Opisz kontrakt funkcji
Narzędzie zawiera nazwę, jasny opis i schemat JSON parametrów. Opis wskazuje, kiedy narzędzie należy wybrać, a schemat ogranicza argumenty.
Model proponuje wywołanie; sam nie uzyskuje dostępu do Twojej sieci, bazy danych ani plików.
Narzędzie funkcyjne w żądaniu czatu
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"
}Wykonaj po swojej stronie
- Sprawdź nazwę narzędzia względem listy dozwolonych nazw.
- Przed wywołaniem usługi wewnętrznej sprawdź argumenty względem schematu.
- Stosuj własną autoryzację, limity czasu i idempotencję do działania narzędzia.
Zwróć wynik
Dodaj wiadomość tool z tool_call_id i zwięzłym, zserializowanym wynikiem, a następnie kontynuuj rozmowę z tym samym kontekstem.
Rozróżniaj błąd wykonania narzędzia od błędu modelu: zwracaj ustrukturyzowaną przyczynę, którą model może wyjaśnić użytkownikowi.