자체 수정 능력이 없는 에이전트 설정이 작동하는 이유
요약
자율적으로 코드를 수정하는 에이전트 대신, 변화를 감지하고 제안하되 최종 승인은 인간이 담당하는 'Human-in-the-loop' 방식의 에이전트 설계가 왜 더 효과적인지 설명합니다. 무감독 자체 수정은 오류를 복리화하고 통제력을 상실하게 만들 위험이 있습니다.
핵심 포인트
- 자율적 자체 수정은 오류를 복리화하고 시스템 드리프트를 유발함
- 에이전트의 핵심 가치는 편집(Editing)이 아닌 탐지(Detection)에 있음
- 관찰은 자동화하되, 결정은 인간의 관문(Human gate)을 통과해야 함
- 통제 가능한 루프를 통해 시스템의 신뢰성과 예측 가능성을 유지함
모두가 스스로를 다시 쓰는(rewrite) 에이전트를 원합니다.
그 꿈은 매혹적입니다. 한 번만 설정해 두고 자리를 비운 다음, 잠자는 동안 더 똑똑해진 시스템을 마주하게 되는 것이죠. 유지보수도 필요 없고, 돌봐줄 사람도 필요 없는 순수한 복리 효과(compounding)를 누릴 수 있습니다.
저는 몇 주 동안 스스로 개선되는 무언가를 운영하고 있습니다. 그리고 이것이 작동하는 이유는 그 꿈과는 정반대입니다. 그것은 스스로를 수정하도록 허용되지 않습니다.
왜 그런지 설명해 드리겠습니다. 이 차이가 핵심입니다.
모두가 잘못된 것을 원합니다.
'자체 개선 에이전트(Self-improving agent)'라는 말은 자율성(autonomy)을 의미하게 되었습니다. 즉, 인간의 개입 없이 스스로 지침을 변경하고, 도구를 다시 쓰고, 행동 방식을 수정하는 에이전트입니다.
이것은 진보처럼 들립니다. 하지만 이것은 우리가 의존하는 시스템에 대한 통제력을 잃는 방법입니다. 자신의 규칙을 조용히 다시 쓸 수 있는 에이전트는 그 규칙들을 조용히 깨뜨릴 수도 있으며, 하위 단계(downstream)에서 추적할 수 없는 방식으로 무언가 실패하기 전까지는 알지 못하게 됩니다.
더 능숙한 자체 수정 능력은 잘못 수정했을 때 더 큰 폭발 반경(blast radius)을 의미합니다.
제 설정이 실제로 하는 일.
저의 시스템은 하나의 엄격한 한계(hard limit)를 가진 루프를 통해 개선됩니다. 그것은 감지할 수 있고, 제안할 수는 있지만, 채택(adopt)할 수는 없습니다.
매일 무언가를 알아차립니다. 제가 의존하는 도구가 새 버전을 출시했습니다. 이번 주에 두 번 수정했던 패턴이 이제는 표준 규칙이 되어야 합니다. 반복되는 저 자신의 행동 방식 조각도 있습니다. 그것은 이 모든 것을 수집하여 제게 제시합니다.
그리고 멈춥니다. 그 변화는 제가 그것을 보고 '예'라고 말할 때까지 일어나지 않습니다.
따라서 시스템은 시간이 지남에 따라 날카로워지지만, 단 하나의 개선 사항도 인간의 관문(human gate)을 통과했습니다. 제가 보지 않은 것은 이 설정 안으로 들어가지 못합니다.
왜 비감독적 자체 수정이 함정인가.
제가 의도적으로 만들지 않은 대안을 상상해 보세요. 스스로 규칙이 바뀌어야 한다고 결정하고 변경하는 에이전트입니다.
단 한 번의 잘못된 추론(inference)으로 어제 저를 보호했던 규칙이 오늘 조용히 사라집니다. 다음 잘못된 수정은 첫 번째 것에 기반합니다. 오류는 자체 수정 시스템에서는 고립되지 않고 복리화됩니다. 왜냐하면 모든 변화가 다음 추론의 기초가 되기 때문입니다.
당신이 알아차렸을 때쯤에는, 50개의 비감독 (unsupervised) 수정 중 어떤 것이 드리프트 (drift)를 유발했는지 구분할 수 없게 됩니다. 당신은 이해할 수 있는 시스템을 당신을 놀라게 만드는 시스템과 맞바꾼 것이며, 당신이 신뢰를 맡긴 대상으로부터 '놀라움'을 얻는 것은 당신이 가장 원치 않는 일입니다.
탐지 (Detection)가 핵심 기능이지, 자율성 (autonomy)이 아닙니다.
제가 깨닫기까지 시간이 좀 걸렸던 사실이 있습니다. 가치 있는 부분은 편집 (editing)이 아니었습니다. 그것은 알아차리는 것 (noticing)이었습니다.
의존성 (dependency)이 변경되었다는 것, 습관이 패턴으로 굳어졌다는 것, 그리고 내가 계속해서 고치고 있는 무언가를 단번에 해결해야 한다는 것을 포착하는 것. 그것이 어려운 부분이며, 바로 그것을 자동화했습니다. 변경 사항을 승인하는 것은 비용이 적게 들며 몇 초면 충분합니다.
그래서 저는 관찰 (watching)을 자동화하고 결정 (deciding)은 유지했습니다. 제 기계는 지루하고 잊기 쉬운 부분을 수행합니다. 저는 판단이 필요하고 위험을 수반하는 부분을 수행합니다. 각 측면은 자신이 실제로 잘하는 일을 합니다.
저의 솔직한 의견.
제 의견은 이렇습니다. 개인용 에이전트 시스템 (personal agent system)에 있어 자율성 (autonomy)은 잘못된 목표입니다. 감사 가능성 (auditability)이 올바른 목표입니다.
아무도 감사할 수 없는 설정은 단지 진보된 것처럼 보일 뿐입니다. 그 밑바닥은 취약합니다. 저의 가장 뛰어난 자기 개선 (self-improving) 시스템은 개선이 실제적이고 지속적이면서도, 제가 먼저 확인하지 않고서는 그 어떤 것도 변하지 않는 시스템입니다. 이 두 가지는 서로 조화를 이룹니다. 그것이 설계의 전부입니다.
완전 자율적인 자기 재작성 (self-rewriting) 에이전트를 쫓는 사람은 데모 (demo)를 위해 최적화하고 있는 것이지, 6개월 뒤 어느 화요일에 시스템이 조용히 잘못된 것을 수정하고 있을 상황을 위해 최적화하고 있는 것이 아닙니다.
이 과정을 3주간 진행했을 때의 모습.
저는 몇 주 동안 설정을 수동으로 편집하지 않았습니다. 제가 마지막으로 손을 댔을 때보다 지금이 더 정교합니다.
스스로를 재작성해서가 아니라, 제가 몇 초 만에 승인할 수 있는 작고 구체적이며 이미 추론이 완료된 개선 사항들을 저에게 전달해주기 때문입니다. 여기서는 복리 효과 (compounding)가 실제로 나타납니다. 통제권은 결코 제 손을 떠나지 않았습니다.
시간이 지남에 따라 개선되는 무언가를 구축하고 있다면, 당신이 어느 절반을 자동화하고 있는지 자문해 보십시오. 알아차리는 것 (noticing)을 자동화하십시오. 결정 (deciding)은 유지하십시오. 끊임없이 관찰하고 오직 당신의 승인(yes)이 있을 때만 변경하는 시스템이, 매주 당신을 놀라게 만드는 영리한 시스템보다 훨씬 낫습니다.
당신의 차례
당신은 에이전트가 당신에게 먼저 묻지도 않고 자신의 규칙을 스스로 변경하도록 허용하시겠습니까?
이 내용이 유익했다면
저는 성공과 정체(freezes)를 모두 포함한 과정을 주로 LinkedIn과 YouTube를 통해 공개적으로 진행하고 있습니다. 공개적으로 빌딩(building in the open)하는 실제 과정이 당신에게 유익하다면, 그곳에서 확인하실 수 있습니다. LinkedIn, YouTube 및 X는 Mirza Iqbal 이름으로 운영되며, 작업물은 next8n.com에서 확인 가능합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기