도구 라우팅 설계 + 컨텍스트 요약 메모리 + 함수 스키마 정의 + 시나리오 기반 평가 경험
졸업 프로젝트에서 LLM이 도구를 선택해서 작업을 수행하는 에이전트를 처음 구현해봤습니다. 가장 먼저 설계한 건 어떤 요청이 들어왔을 때 어떤 도구를 호출할지 결정하는 라우팅 로직이었습니다. 메모리 측면에서는 대화 맥락을 유지하면서도 컨텍스트 창 한계를 넘지 않도록 요약하는 방식을 배웠습니다. 도구 측면에서는 함수 스키마 정의가 에이전트가 도구를 올바르게 쓰는 데 결정적이라는 걸 경험했는데, 스키마가 모호하면 잘못된 파라미터로 호출하는 경우가 생겼습니다. 평가 측면에서는 에이전트가 의도한 방향으로 작동하는지 확인하는 기준을 미리 정의해두는 것이 중요하다는 걸 배웠습니다. LLM 에이전트는 예측 가능하게 만드는 게 생각보다 어렵고, 시나리오 기반 테스트가 신뢰성을 높이는 핵심이라는 걸 느꼈습니다.
에이전트를 만들면서 LLM의 강점보다 어디서 실패하는지를 더 많이 배웠습니다.