The Bitter Lesson of Tool Calling
이 논문은 타입이 지정된 파이썬 스텁(Python stubs)을 도구 호출에 활용하는 프로그래매틱 도구 호출(programmatic tool calling)이 다양한 언어 모델과 병렬 실행 및 컨텍스트 저하와 같은 까다로운 조건 속에서 네이티브 JSON 도구 호출에 비해 견고하며 종종 더 우수한 대안임을 실증적으로 입증한다.
원본 논문은 CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기
당신에게 외부 세계와 대화할 수 있는 아주 똑똑한 로봇 비서가 있다고 상상해 보세요. 일을 완려하기 위해 이 로봇은 날씨를 확인하거나 수학 문제를 계산하는 것처럼 다른 프로그램들에게 도움을 요청해야 합니다. 오랫동안 로봇이 도움을 요청할 수 있는 유일한 방법은 "JSON"이라고 불리는 매우 엄격하고 경직된 형식으로 말하는 것이었습니다. 이것은 마치 로봇이 아주 작은, 미리 인쇄된 엽서로만 요청을 보낼 수 있는 것과 같습니다. 만약 세 가지 일을 해야 한다면, 로봇은 첫 번째 엽서에 대해 답장을 기다린 다음 두 번째 엽서를 쓰는 식으로 세 번의 과정을 거쳐야 합니다. 질서 정연하긴 하지만, 느리고 서투른 방식입니다.
하지만 이 로봇 또한 아주 뛰어난 코더(coder)이기 때문에, 과학자들은 이런 의문을 가졌습니다. 왜 로봇이 직접 일을 수행하기 위한 컴퓨터 프로그램을 작성하게 하지 않을까? 엽서 대신, 로봇이 한 번에 컴퓨터가 정확히 무엇을 해야 하는지 알려주는 짧은 스크립트—즉, 일련의 지침—를 작성하게 하는 것입니다. 이것은 로봇에게 엽서 대신 펜과 공책을 쥐여주는 것과 같습니다. 이것을 "프로그래밍 방식의 도구 호출(programmatic tool calling)"이라고 부릅니다. 큰 질문은 이것입니다. 이 새롭고 유연한 방식이 실제로 더 나은가, 아니면 예전의 엄격한 엽서 방식이 여전히 왕좌를 지키고 있는가? 이 논문은 로봇이 코드를 작성하게 하는 것이 더 빠르고, 똑똑하며, 신뢰할 수 있는 조수로 만드는지를 확인하기 위해 이 질문을 파고듭니다.
연구진은 오래된 모델부터 가장 최신의 강력한 세대에 이르기까지 14가지 서로 다른 버전의 AI 모델을 사용하여 거대한 테스트를 설정했습니다. 그들은 모델들을 단순한 단일 단계 작업부터, 로봇이 동시에 여러 가지 일을 하거나 단계들을 사슬처럼 엮어야 하는 복잡한 시나리오에 이르기까지 309가지의 다양한 과업이라는 가혹한 시험대에 올렸습니다. 그들은 예전의 "엽서" 방식(JSON 도구 호출)과 새로운 "스크립트" 방식(프로그래밍 방식의 도구 호출)을 비교했습니다.
결과는 다소 놀라웠고, 기술이 어떻게 진화하는지에 대한 교훈을 주었습니다. 연구 결과, 대부분의 더 새롭고 똑똑한 모델들에게는 스크립트를 쓰는 것이 엽서를 보내는 것만큼 좋거나 심지어 더 낫다는 것이 밝혀졌습니다. 사실, 가장 최신 모델 제품군(GPT-5.6 시리즈)은 코드를 작성할 수 있게 되었을 때 정확도가 약 10.6% 향상되는 엄청난 상승을 보였습니다. 그것은 마치 레이스카 운전자에게 더 좋은 트랙을 제공한 것과 같았습니다. 그들은 단순히 더 빨리 달린 것이 아니라, 더 똑똑하게 달렸습니다.
하지만 여기 반전이 있습니다. 이 논문은 이 새로운 방식이 모든 로봇을 위한 마법의 지팡이는 아니라고 제안합니다. 오래된 모델들은 스크립트 접근 방식에서 어려움을 겪었습니다. 세 개의 구형 모델은 코드를 작성하라는 요청을 받았을 때 혼란을 느껴, 형식을 제대로 처리하지 못해 작동이 중단되는 깨진 스크립트를 만들어냈습니다. 이처럼 이 새로운 유연한 방식을 사용할 수 있는 능력은 모델의 뇌가 얼마나 "새롭고" 유능한지에 크게 달려 있는 듯합니다. 논문은 그 차이가 로봇을 만든 회사(예: Anthropic 대 OpenAI)의 차이가 아니라, 로봇의 "세대" 차이라고 주장합니다. 최신 모델들은 스크립트를 받아들일 준비가 되어 있지만, 구형 모델들은 여전히 엽서에 머물러 있습니다.
연구진은 또한 이 방식들이 압박 속에서 어떻게 견디는지 테스트했습니다. 로봇이 동시에 많은 일(예: 100개의 요청을 동시에 보내는 것)을 해야 할 때, 예전의 엽서 방식은 호출을 누락하거나 작업을 놓치며 무너지기 시작했습니다. 그러나 스크립트 방식은 업무량을 놓치지 않고 묵묵히 계속 수행했습니다. 마찬가지로, 로봇에게 방대한 양의 혼란스러운 정보를 걸러내야 하는 상황( "컨텍스트 부패(context rot)" 테스트)을 주었을 때도, 스크립트 방식은 안정적으로 유지된 반면, 예전 방식은 성능의 변동을 보였습니다.
그렇다면 시사점은 무엇일까요? 이 논문은 최신이자 최고인 AI 모델들에게 있어, 도구를 호출하기 위해 코드를 작성하게 하는 것이 기존의 경직된 방식에 대한 실행 가능하고, 견고하며, 종종 더 우월한 대안이 될 수 있음을 시사합니다. 이는 복잡한 작업 체인을 더 빠르게 처리하며, 업무량이 많아져도 압도당하지 않습니다. 하지만 이것은 아직 보편적인 해결책이 아닙니다. 만약 당신이 오래된 모델을 사용하고 있다면, 여전히 예전의 엽서 스타일을 고수해야 할 수도 있습니다. 그렇지 않으면 로봇이 자신의 발에 걸려 넘어질 수도 있습니다. 여기서 얻는 "쓰라린 교훈(bitter lesson)"은, 코드 기반의 에이전트가 밝은 미래를 보여주고는 있지만, 우리는 우리의 도구가 과연 그 업그레이드를 감당할 만큼 충분히 똑똑한지 반드시 확인해야 한다는 것입니다.
연구 분야의 논문에 파묻히고 계신가요?
연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.