700개 API를 다루는 챗봇 에이전트가 실패한 이유

해커톤에서 특정 업무용 소프트웨어를 조작하는 챗봇 에이전트를 이틀 동안 만들었지만 목표를 이루지 못했다. 목표는 사용자의 요청을 읽고 약 700개의 중 알맞은 것을 골라 작업을 끝내는 것이었다. 도구는 를 쓰고, 회사 제약 때문에 모델을 사용했다. 가장 큰 문제는 문서가 Swagger에는 있었지만 3.1 형태로 잘 정리되어 있지 않았고, 사용자의 말뜻을 어떤 에 연결해야 하는지 알려주는 예시 목록도 없었다는 점이다.

예를 들어 티켓을 수정한다는 말만으로는 어떤 항목을 바꾸려는지에 따라 다른 를 골라야 하는데, 그 구분이 잘 되지 않았다. 모든 문서를 매번 모델에 넣으면 토큰을 많이 써서 비효율적이었다. 많은 요청은 여러 번의 도 필요했다. 먼저 여러 곳에서 데이터를 가져오고, 분석한 뒤, 필요한 경우 추가 데이터를 더 찾고, 마지막에 수정 요청을 보내야 했다.

사용자 문장에서 검색 조건을 뽑거나 수백 개 API에 맞는 POST/PUT 데이터를 만드는 일도 문서와 예시가 부족하면 매우 어렵다. 결론은 API 색인, 사용자 의도 매칭, 작은 작업별 기술 문서가 거의 필수라는 것이다.

핵심 포인트

  • 약 700개 중 하나를 고르는 넓은 범위의 챗봇 에이전트는 이틀 안에 제대로 동작하지 않았다.
  • 문서가 Swagger에만 있고 3.1로 정리되지 않아 모델이 정확한 호출 방법을 알기 어려웠다.
  • 사용자 표현을 와 연결하는 예시 목록이 없으면 의도 매칭이 크게 흔들린다.
  • 모든 API 문서를 매번 모델에 넣는 방식은 토큰을 많이 써서 비용 면에서 비효율적이다.
  • 복잡한 요청은 데이터 조회, 분석, 추가 조회, 수정 실행처럼 여러 단계로 쪼개야 한다.
원문 보기