본문 바로가기
스터디 열기

나눌 때마다 맥락이 샌다

멀티 에이전트의 역효과를 이야기할 때 가장 자주 인용되는 글이 있습니다. AI 코딩 에이전트 Devin을 만드는 회사 Cognition의 월든 얀(Walden Yan)이 2025년 6월에 쓴 "멀티 에이전트를 만들지 마라"(Don't Build Multi-Agents)입니다.[6] 이 절에서는 이 글과, 멀티 에이전트가 실제로 어떻게 실패하는지 모아 본 연구를 함께 보겠습니다.

1. 같은 지시를 받은 두 에이전트

얀의 글에는 간단한 예가 나옵니다. 플래피 버드 같은 게임을 만들라는 일을 두 하위 에이전트에게 나누어 맡긴다고 해 봅시다. 하나는 배경과 장애물을, 다른 하나는 날아다니는 새를 맡습니다.

그런데 배경을 맡은 에이전트는 지시를 조금 다르게 이해해 슈퍼마리오 같은 배경을 만듭니다. 새를 맡은 에이전트는 게임의 그림체와도, 움직임의 규칙과도 맞지 않는 새를 만듭니다. 둘 다 받은 지시대로 열심히 일했습니다. 하지만 두 결과를 합치면 하나의 게임이 되지 않습니다. 이제 나누었던 일을 다시 맞추는 일이 남습니다.

얀은 여기서 두 가지 원칙을 끌어냅니다.

  1. 맥락을 공유하라. 그것도 주고받은 메시지 몇 개가 아니라, 에이전트가 일한 과정 전체를 공유하라.
  2. 행동에는 드러나지 않은 결정이 담긴다. 그리고 서로 어긋난 결정은 나쁜 결과를 낳는다.

두 번째 원칙이 특히 중요합니다. 배경을 그리는 일에는 '어떤 그림체로 갈 것인가'라는 결정이 숨어 있습니다. 새를 만드는 일에도 같은 결정이 숨어 있습니다. 한 에이전트가 두 일을 다 한다면 이 결정은 자연스럽게 하나로 맞춰집니다. 두 에이전트가 따로 하면, 서로 상대가 무엇을 정했는지 모른 채 각자 정합니다.

2. 일은 했는데 의도와 다르다

제가 멀티 에이전트를 쓰며 느낀 문제도 이와 같았습니다. 에이전트들이 일을 주고받는 사이에 맥락이 유실되고, 제가 의도하지 않은 일을 하게 되는 경우가 많았습니다.

이것은 에이전트가 게을러서 생기는 문제가 아닙니다. 오히려 각자 받은 일을 성실하게 할수록 생깁니다. 하위 에이전트는 자신이 받은 짧은 지시 안에서 최선을 다합니다. 그 지시에 빠진 맥락, 예를 들어 "우리 회사는 이런 화면을 어색하게 느낀다"거나 "이 기능은 지난주에 방향을 바꿨다"는 사정은 알 수 없습니다. 알 수 없는 것을 메우려고 그럴듯한 추측을 합니다. 그 추측이 제 의도와 다르면, 일은 했는데 원하던 결과가 아닌 상태가 됩니다.

그리고 이렇게 어긋난 결과는 요약을 거쳐 돌아옵니다. 하위 에이전트는 "완료했습니다"라고 보고하고, 부른 쪽은 그 보고를 믿습니다. 어디에서 무엇을 추측했는지는 보고에 잘 드러나지 않습니다.

3. 실패를 모아 보니

멀티 에이전트가 실제로 어떻게 실패하는지 체계적으로 모은 연구도 있습니다. 캘리포니아 대학교 버클리 연구진 등이 낸 "멀티 에이전트 LLM 시스템은 왜 실패하는가"(Why Do Multi-Agent LLM Systems Fail?)는 일곱 가지 멀티 에이전트 프레임워크가 일한 기록 1,600건 이상을 분석해 실패를 14가지 유형, 세 갈래로 나누었습니다.[7]

갈래내용
명세와 시스템 설계의 문제과제나 역할에 대한 지시를 지키지 않거나, 같은 단계를 되풀이하거나, 대화 기록을 잃거나, 언제 끝내야 할지 모르는 경우
에이전트 사이의 어긋남필요한 정보를 다른 에이전트에게 알리지 않거나, 다른 에이전트의 의견을 무시하거나, 대화가 원래 과제에서 벗어나는 경우
결과 확인의 문제확인을 너무 일찍 끝내거나, 제대로 확인하지 않은 결과를 내놓는 경우

분석한 시스템들의 실패율은 과제에 따라 41%에서 86.7%에 이르렀습니다. 연구진은 역할을 더 분명하게 정해 주거나(+9.4%) 확인 단계를 더하면(+15.6%) 성공률이 올라간다는 실험도 함께 보고했습니다. 다만 이 연구가 분석한 것은 GPT-4와 Claude 3 세대 모델로 만든 시스템이라, 지금의 모델에 그대로 옮길 수는 없습니다.

그래도 이 표를 보면 익숙한 장면이 많습니다. 정보를 알리지 않는 것, 대화가 과제에서 벗어나는 것, 확인하지 않고 끝내는 것. 사람의 조직에서도 일어나는 일들입니다. 일을 나누면 나눈 자리마다 이런 틈이 생깁니다. 멀티 에이전트는 그 틈을 없애 주는 기술이 아니라, 오히려 틈의 개수를 늘리는 구조입니다. 틈을 메우는 장치를 따로 마련하지 않으면 에이전트를 늘릴수록 새는 곳도 늘어납니다.

마지막 수정