AI 검색 용어집: Function Calling
Function Calling은 LLM이 외부 기능을 직접 실행한다는 뜻이 아닙니다.
모델이 어떤 함수를 어떤 인자로 호출해야 하는지 구조화된 요청을 만들고, 실제 실행은 애플리케이션이 담당합니다.
한 문장으로 잡으면
- Function Calling은 LLM에게 사용할 수 있는 함수의 이름, 설명, 인자 구조를 알려주고, 모델이 필요한 함수 호출을 구조화된 형태로 요청하게 만드는 방식입니다.
핵심 포인트
포인트 1
개발자가 함수 목록과 schema를 제공합니다.
포인트 2
모델이 어떤 함수를 어떤 인자로 호출할지 결정합니다.
포인트 3
애플리케이션이 실제 함수를 실행합니다.
포인트 4
실행 결과를 다시 모델에 전달합니다.
어디에 쓰이나
날씨 조회
모델이 `get_weather(city)` 같은 함수 호출 인자를 구조화해 요청할 수 있습니다.
DB 검색
사용자 질문을 기반으로 안전한 조회 함수 호출을 만들 수 있습니다.
실행 책임
함수를 실제로 실행하고 검증하는 일은 애플리케이션 코드가 맡습니다.
헷갈리기 쉬운 부분
- 모델은 외부 시스템 실행 요청을 구조화하고, 실제 실행은 애플리케이션이 담당합니다.
- 인자 검증, 권한 확인, 예외 처리는 반드시 애플리케이션 쪽에서 해야 합니다.
기억할 것
- Function Calling은 모델의 도구 호출 의도를 구조화하는 방식입니다.
- 함수 실행, 권한 확인, 인자 검증은 애플리케이션 코드가 책임져야 합니다.