Spring AI로 LLM의 '생각'을 엿보세요!

by DD
5개월 전
조회수 31

Spring AITool Argument Augmenter를 통해 LLM이 선택한 도구의 추론 과정을 캡처한다.

Java Record를 사용하여 도구 입력 스키마를 동적으로 확장하고, 추가 정보를 획득한다.

메모리 강화, 관찰 및 디버깅을 통해 AI 시스템의 신뢰성을 향상시킨다.

Tool Argument Augmenter의 작동 원리

Tool Argument Augmenter도구 정의를 가로채, Java Record로 정의된 추가 인자를 스키마에 동적으로 추가한다. 따라서 LLM은 확장된 스키마를 통해 추론 과정과 같은 부가 정보를 제공한다. Augmenter는 이 정보를 추출하여 AI 애플리케이션에서 활용할 수 있도록 한다.

장점: 기존 도구 변경 없이 확장

이 기술의 핵심은 기존 도구의 코드를 변경하지 않고 LLM의 추론을 캡처할 수 있다는 점이다. 분리된 관심사를 유지하며, MCP 도구와도 호환된다. 메모리 시스템에 추론을 저장하여 지속적인 대화를 가능하게 하고, 디버깅에도 활용할 수 있다.

실전 적용 가이드: 예시 코드 분석

구체적으로, @ToolParam 어노테이션을 사용하여 추가 인자를 정의하고, AugmentedToolCallbackProvider를 통해 기존 도구를 감싼다. AgentThinking record를 통해 LLM의 추론을 캡처하고, 메모리 저장로그 기록에 활용한다. 따라서 AI 에이전트의 성능과 관찰 가능성을 향상시킬 수 있다.

Explainable AI Agents: Capture LLM Tool Call Reasoning with Spring AI