GGateYourWay API
Status EN Создать ключ
Agents

Tool calling

Передавайте определения инструментов модели, исполняйте вызов в своем приложении и возвращайте результат с тем же ID.

01

OpenAI tools

json
{
  "model": "gpt-5.6-luna",
  "messages": [{"role": "user", "content": "What is the weather in Moscow?"}],
  "tools": [{
    "type": "function",
    "function": {
      "name": "get_weather",
      "description": "Get current weather",
      "parameters": {
        "type": "object",
        "properties": {"city": {"type": "string"}},
        "required": ["city"]
      }
    }
  }]
}

Ответ может содержать message.tool_calls. Верните каждый результат сообщением роли tool с соответствующим tool_call_id.

02

Anthropic tool_use

Сохраните блок assistant с tool_use, выполните инструмент и добавьте следующий user-блок tool_result.

json
{
  "role": "user",
  "content": [{
    "type": "tool_result",
    "tool_use_id": "toolu_...",
    "content": "18 C, clear"
  }]
}
03

Надежный цикл

  1. Не изменяйте tool-call ID.
  2. Сохраняйте порядок assistant и tool-result сообщений.
  3. На streaming собирайте аргументы до полного JSON.
  4. Продолжайте читать поток после выполнения инструмента до видимого текста или следующего tool call.