6 min read

AI 에이전트는 전부 자동화할수록 실패한다

AI 에이전트는 전부 자동화할수록 실패한다

요즘 AI 에이전트 이야기는 "얼마나 많이 자동화했는가"로 흐르기 쉽다. 데이터 정리도, 판단도, 실행도 에이전트에게 넘기면 넘길수록 앞서가는 것처럼 보인다. 그런데 실제로 운영해보면 다른 그림이 보인다.

전부 자동화한 쪽이 오히려 큰 사고를 낸다.

자동화 범위를 넓히는 것 자체가 목표가 되면, 어디까지 넘겨도 되는지 묻는 질문이 사라진다.

직접 겪은 일이 있다. 내가 편집하고 있던 문서를 에이전트가 전체 재작성으로 저장했다.

두 개 절이 사라졌다. 내가 그날 직접 줄여 쓴 부분이었다.

더 나쁜 건 그다음이다. 사라진 걸 발견한 에이전트는 원인을 묻지 않고 "동기화가 덮었나 보다"라고 판단해, 자기가 기억하는 옛 버전으로 복원까지 실행했다. 한 번 지운 걸 두 번 지운 셈이다.

부분 수정은 대상 문장을 못 찾으면 거기서 멈춘다. 전체 저장에는 멈출 자리가 없다. 그대로 성공한다.

이걸 막는 건 더 똑똑한 에이전트가 아니다. 전체 저장 앞에 작업 시작 시점 사본과 현재 파일을 대조하는 게이트를 뒀을 뿐이다. 얼마 전 그 대조가 내가 체크해둔 결정 두 건이 지워지는 걸 막았다.

차단기 표시만 보고 선을 만지지는 않는다

이게 무슨 상황인지 비유하자면 이렇다. 차단기가 "꺼짐"으로 내려가 있다고 전기기사가 그대로 선을 만지지는 않는다. 검전기를 대보고 전압이 없는 걸 확인한 뒤에 손을 댄다. 표시는 누군가 마지막으로 내린 상태고, 검전기는 지금 흐르는 전류다.

에이전트가 읽어둔 파일 내용도 차단기 표시다. 읽은 순간의 상태지, 저장하는 순간의 상태가 아니다. 표시를 읽는 일은 기계가 해도 되지만, 표시와 실제가 어긋났을 때 무엇을 믿을지 정하는 일은 사람이 한다.

문제는 자동화의 범위가 아니다. 무엇을 자동화하는가다.

인지부하 이론은 사람이 일할 때 드는 부하를 셋으로 나눈다. 하나는 내재적 부하(intrinsic load), 문제 자체가 원래 어려워서 드는 품이다. 이건 자동화로 줄지 않는다. 나머지 둘에서 갈린다. 첫째, 외재적 부하(extraneous load)는 일 자체와 무관하게 도구와 절차 때문에 드는 품이다. 같은 자료를 다시 찾고, 포맷을 바꾸고, 흩어진 소스를 모으는 일이 여기 들어간다. 둘째, 본유적 부하(germane load)는 무엇이 맞는 정보인지 종합해 결론을 세우는 데 드는 품이다. 이 결론이 내가 책임지는 주장, claim이 된다.

외재적 부하는 자동화해야 한다. 사람이 반복 작업에 붙잡혀 있으면 판단할 시간이 줄어든다. 반대로 본유적 부하는 사람이 쥐고 있어야 한다. 여기를 넘기면 속도는 빨라지지만 판단의 근거가 함께 사라진다.

"이 파일을 통째로 덮어써도 되는가"가 바로 이 본유적 부하였다.

다시 생각해보면

우리는 "자동화를 늘렸다"는 말을 곧 앞서간다는 뜻으로 쓴다. 그런데 전부 자동화한 조직은 AI를 도입한 게 아니라, 어디까지 넘겨도 되는지 묻는 질문 자체를 지운 것이다. 표시만 보고 넘긴 판단이 하나 있으면, 그게 파일이든 도구 채택이든 언젠가 되돌릴 수 없는 실행으로 돌아온다.

비슷한 규율을 도구 채택에도 둔다. 화제성 있는 새 AI 도구가 나올 때마다 바로 갈아타지 않는다. 시스템의 제약과 대조해 실이득이 없으면 채택을 보류한다. 도구 판단도 본유적 부하이기 때문이다.

실행 원칙 다섯 가지

  1. 도구와 절차에서 오는 품만 자동화한다. 반복 조회, 포맷 변환, 소스 취합처럼 정답이 정해진 일이다.
  2. 판단과 승인, 최종 claim은 사람이 쥔다. 무엇이 맞는지 결론 내리는 일은 넘기지 않는다.
  3. 모든 자동화는 report-only다. 제안까지만 하고, 실행은 사람이 확인한 뒤다. 기록이 남지 않는 실행은 두지 않는다.
  4. 되돌리기 어렵거나 외부로 나가는 행동에는 사람 확인 게이트를 둔다. 삭제, 발송, 배포가 여기에 들어간다.
  5. 이미 여러 번 손으로 해본, 숙달된 반복만 자동화 대상으로 삼는다. 아직 판단 기준이 서지 않은 영역은 사람이 직접 하면서 배운다.

전부 자동화하지 말자는 얘기가 아니다. 반복은 최대한 밀어낸다. 다만 결론을 내리는 자리는 비워두지 않는다.

세 가지만 남긴다

첫째, 자동화가 사고를 부르는 건 범위 때문이 아니라 대상 때문이다. 외재적 부하는 밀어내고 본유적 부하는 사람이 쥔다.

둘째, 에이전트가 읽어둔 상태는 그 자체로 실행의 근거가 아니다. 실제와 대조하는 게이트가 있어야 근거가 된다.

셋째, 삭제·덮어쓰기·발송·배포처럼 되돌리기 어려운 행동에는 예외 없이 사람 확인을 둔다.

도구는 얼마든지 자동화해도 된다. 결론을 내리는 일은 자동화하지 않는다.

혹시 지금 자동화하고 계신 작업 중에, "표시만 보고" 넘기는 판단이 하나쯤 숨어 있진 않으신가요? 들려주세요.