함수 계약 설명
도구에는 이름, 명확한 설명, 매개변수용 JSON Schema가 포함됩니다. 설명은 도구를 선택해야 하는 시점을 알리고, 스키마는 인수를 제한합니다.
모델은 호출을 제안할 뿐이며 그 자체로 네트워크, 데이터베이스 또는 파일에 접근할 수 없습니다.
채팅 요청의 함수 도구
json
{
"model": "openai/gpt-5.6-sol",
"messages": [{"role": "user", "content": "What is the weather in Tashkent?"}],
"tools": [{
"type": "function",
"function": {
"name": "get_weather",
"description": "Read current weather for a city.",
"parameters": {
"type": "object",
"properties": {"city": {"type": "string"}},
"required": ["city"],
"additionalProperties": false
}
}
}],
"tool_choice": "auto"
}애플리케이션 측 실행
- 도구 이름을 허용 목록과 대조하세요.
- 내부 서비스를 호출하기 전에 스키마에 따라 인수를 검증하세요.
- 도구 작업에 자체 권한 확인, 시간 초과 및 멱등성을 적용하세요.
결과 반환
tool_call_id와 간결하게 직렬화한 결과가 담긴 tool 메시지를 추가한 다음 같은 컨텍스트로 대화를 계속하세요.
도구 실행 실패와 모델 실패를 구분하세요. 모델이 사용자에게 설명할 수 있는 구조화된 이유를 반환하세요.