Jamba 함수 호출 — 모델에 도구 달아주기

Jamba 함수 호출 — 모델에 도구 달아주기

LLM이 단독으로는 답할 수 없는 작업, 예컨대 DB 조회나 API 호출 같은 건 함수 호출(function calling)로 해결해요. Jamba도 이 패턴을 지원해서, 모델이 정해진 도구를 골라 호출하도록 만들 수 있습니다.

출처: https://docs.ai21.com/llms.txt

함수 호출이 필요한 상황

"어제 매출이 얼마야?" 같은 질문은 모델이 학습 시점 이후의 데이터를 모르니까 답할 수 없어요. 이때 모델이 도구(함수)를 호출하고, 그 결과를 받아 최종 답을 만들게 하면 됩니다.

API 형태

AI21의 채팅 API는 tools 파라미터로 함수 목록을 받아요. 각 함수는 이름·설명·파라미터 스키마(JSON Schema)로 정의합니다.

{
  "model": "jamba-1.6-large",
  "messages": [{"role": "user", "content": "오늘의 매출을 알려줘"}],
  "tools": [
    {
      "type": "function",
      "function": {
        "name": "get_sales",
        "description": "조회 기간의 매출을 반환한다",
        "parameters": {
          "type": "object",
          "properties": {"date": {"type": "string"}},
          "required": ["date"]
        }
      }
    }
  ]
}

모델이 get_sales를 호출하겠다고 하면, 앱 쪽에서 그 함수를 실행하고 결과를 다시 모델에 돌려줘 최종 응답을 뽑아냅니다.

더 알아보기

  • https://docs.ai21.com/docs/prompt-engineering-jamba — Jamba 프롬프트 엔지니어링
  • https://docs.ai21.com/llms.txt — 함수 호출·파인튜닝 관련 페이지 인덱스