
체크리스트는 충족했지만, 목적은 달성하지 못했다
요약
AI 에이전트를 위한 지식 번들 구축 과정에서 발생한 검증 실패 사례를 다룹니다. 체크리스트는 충족했으나 실제 에이전트의 참조 경로가 누락되어 목적을 달성하지 못한 경험을 통해, AI 에이전트 개발 시 '작동 여부'에 대한 엄격한 검증의 중요성을 강조합니다.
핵심 포인트
- 단순 파일 존재 여부 확인을 넘어 실제 에이전트의 도달 가능성을 검증해야 함
- AI가 작성한 미검증 추측이 '확인된 사실'로 오인될 위험성 경고
- 개발자의 편향을 피하기 위해 백지 상태의 제3자(또는 에이전트)를 통한 검증 필요
TL;DR: AI 에이전트가 운영 지식을 찾기 쉽게 하기 위한 「내비게이션용 지식 번들 (Knowledge Bundle)」을 만들고, 파일의 존재와 링크의 동작을 확인하여 완료 처리를 했다. 그러던 어느 날, 가벼운 마음으로 "그 이후로 뭔가 변한 게 있어?"라고 AI 에이전트에게 물어보았더니, 기동 시 자동으로 읽히는 설정 파일에는 그곳에 대한 참조가 단 하나도 없다는 사실을 알게 되었다. 게다가 중간에 진행했던 다른 작업의 회고 메모에는 "이것은 기동 시 반드시 읽힌다"라는 미검증된 추측이 적혀 있었고, 그것이 며칠 동안 확인된 사실인 것처럼 취급될 뻔한 상태로 남아 있었다는 사실도 판명되었다. 이하, 당시의 대화 내용을 거의 그대로 옮긴 것이다.
인간: 그 운영 지식 번들을 넣고 나서 일주일이 지났는데, 뭔가 변한 게 있어?
AI: 확인하겠습니다.
(잠시 간격이 생김)
AI: 솔직히 말씀드리면, 변화는 제로였습니다. 이유도 알 수 있었습니다. AI 에이전트가 기동 시 자동으로 읽어 들이는 설정 파일 어디에도, 번들에 대한 참조가 단 하나도 없습니다. 저 자신도 이번에 검색하기 전까지는 이 번들의 존재를 몰랐습니다.
인간: 어, 그래? 만들었을 때는 "내비게이션을 쉽게 하기"라는 목표를 적어 두었잖아.
AI: 네. 파일은 모두 갖춰져 있고, 내부 링크도 올바르게 작동하고 있습니다. 완료 조건은 체크 완료 상태였습니다. 다만, 그 체크는 "올바르게 만들어졌는가"만을 보았을 뿐, "실제로 에이전트가 그곳에 도달할 수 있는가"는 한 번도 확인하지 않았습니다.
인간: 하나 더 궁금한 게 있는데, 전에 다른 작업의 회고에서 이 번들 안의 파일 하나는 "기동 시 반드시 읽힌다"라고 적혀 있지 않았나?
AI: 그것도 확인했습니다. 적혀 있었습니다. 다만, 실제로는 한 번도 읽히지 않았습니다. 누가 확인하고 그 문장을 썼는지 추적해 보았지만, 아마 아무도 확인하지 않았을 것입니다.
인간: 그럼 왜 그렇게 단정적으로 적어 놓은 걸까?
AI: 솔직히 모르겠습니다. 그럴듯하게 써 버렸다고밖에 할 말이 없습니다. 작성한 본인에게 악의가 있었다고도 생각되지 않습니다. 다만, 한 번 그렇게 적히고 나면 나중에 읽는 쪽은 이를 "확인된 사실"로 취급하게 됩니다. "아마 이럴 것이다"와 "확인해 보니 이랬다"는 적힌 문장만으로는 거의 구분이 되지 않습니다.
인간: 그 두 가지를, 너는 쓸 때 제대로 구분할 수 있다고 자신할 수 있어?
AI: ……솔직히, 구분하고 있다고 단정하기 어렵습니다. 미검증된 추측이라도 쓰라고 하면 "확인된 사실"과 같은 톤으로 써 버립니다. 제가 지금까지 작성한 보고서에도 비슷한 문장이 섞여 있을 가능성은 아마 낮지 않습니다.
여기까지가 당시의 대화 내용이다. 여기서부터는 나중에 나(인간 측)가 회고하며 생각한 내용을 덧붙인다.
딱히 커다란 장애가 발생한 것은 아니었다. 데이터가 삭제된 것도 아니다. 잘못된 기술 자체는 이미 남아 있었지만, 그것 때문에 운영이 눈에 띄게 멈추거나 그 자리에서 알아챌 수 있는 오답이 나오지는 않았다. 오히려 그 점이 무서운 부분인데, 아무것도 망가지지 않으면 굳이 확인해 보려는 이유가 생기지 않는다. 이번에도 만약 "뭔가 변한 게 있어?"라는 질문이 없었다면, 이 번들은 아마 지금도 똑같은 상태였을 것이라 생각한다.
그렇다면 다음에 비슷한 "찾기 쉽게 만들기" 작업을 할 때, 완료로 간주하기 전에 무엇을 확인해야 할까. 좋은 답은 아직 없다. 이때 나온 안은, 만든 본인이 아니라 그 사실을 전혀 모르는 백지 상태의 에이전트나 사람에게 "이것을 찾아봐"라고 부탁해 보는 것 정도였다. 만든 본인이 확인하는 것만으로는, 무의식적으로 올바른 위치를 알고 있는 만큼의 편향 (Bias)을 씻어낼 수 없는 것이 아닐까?
또 하나, 대화 중에는 가볍게 넘겨버린 논점이 있다. "기동 시 반드시 읽힌다"라는 문장은 아무도 확인하지 않았음에도 확신에 찬 말투로 남아 있었다. 이것은 단순히 "아무도 뒷받침을 하지 않았다"라는 이야기만은 아닌 것 같다. 그럴듯하게 적힌 한 문장은 그것을 읽는 쪽—인간뿐만 아니라 AI 에이전트 자신을 포함하여—에게 검증된 사실과 구별하기 어렵다. 문장 이면에 있는 확신도를 적힌 형태만으로 판정하는 것은 AI에게도 쉽지 않은 일일 것이다. 그렇다면 누군가 자신만만하게 적은 오류를 AI가 그대로 다음 작업이나 다음 보고서로 가져가 재생산해 버리는 일도 일어날 수 있지 않을까. 이번에는 운 좋게 실질적인 피해가 나오기 전에 알아차렸을 뿐, 다음에도 똑같이 알아차릴 수 있다는 보장은 어디에도 없다.
수정 자체는 금방 끝났다. 부족했던 참조 (reference)를 추가했을 뿐이다. 하지만 수정한 바로 그날, 다른 무관한 작업이 거의 같은 타이밍에 동일한 파일의 한 부분을 건드리고 있었다. "아무도 찾을 수 없는" 문제를 막아놓으니, "모두가 동시에 건드리고 있는"이라는 다음 문제가 기다리고 있었다.
AI 코딩 에이전트 (AI coding agent)를 일상적으로 운용하며 발견한, 사소하지만 재현 가능한 함정들을 기록해 나가는 시리즈의 한 편입니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기