3.3.1 Tool Use의 개념과 동작 흐름 이해하기
Tool Use란 LLM이 외부 도구나 서비스를 활용해 문제를 해결하는 방식입니다. LLM은 상황에 따라 필요한 도구를 선택하고, 그 실행 결과를 바탕으로 최종 응답을 생성합니다. 즉, LLM이 텍스트를 생성하는 역할을 넘어 외부 시스템과 협력하는 구조로 확장되는 것입니다.
이 개념은 플랫폼에 따라 서로 다른 용어로 표현하기도 합니다.
• Tool Use(도구 사용): 랭체인, Anthropic(Claude) 등에서 사용하는 용어
• Function Calling(함수 호출): OpenAI에서 사용하는 용어
두 용어는 동일한 맥락을 가리키지만 Tool Use는 개념 전체를 의미하고, Function Calling은 이를 구현하는 대표적인 방식으로 이해하면 됩니다.
Function Calling에서는 LLM이 특정 함수를 호출해야 하는지 판단하고, 함수 이름과 입력값을 구조화된 형태(JSON)로 반환합니다. 이때 중요한 점은 LLM이 직접 함수를 실행하지 않고 어떤 함수를 어떤 값으로 호출해야 하는지를 제안한다는 것입니다. 실제 함수 실행은 애플리케이션 코드가 담당합니다.
Tool Use는 일반적으로 다음과 같은 단계로 동작합니다.