>_toolkitbox

~/tools / Tool Definition Checker

Tool Definition Checker — Sprawdź definicje narzędzi i funkcji dla OpenAI, Anthropic i Gemini

Sprawdź definicje narzędzi (funkcji) wysyłane do OpenAI, Anthropic lub Gemini pod kątem formatu opisanego w dokumentacji każdego API: nazw, opisów, schematów parametrów, strict mode i przykładów wejścia. Znajdź błędy, zanim żądanie się nie powiedzie. Nic nie opuszcza twojej przeglądarki.

Reguły sprawdzono z dokumentacją w dniu 2026-10-23.

Dokumentacja: OpenAI / Anthropic / Dokumentacja API Gemini

Nie sprawdzono: czy model obsługuje narzędzie, szczegółów strict tool use w Anthropic, narzędzi dostarczanych przez samego Anthropic ani reguł, których dokumentacja nie opisuje.

Wszystko działa w twojej przeglądarce. Definicje nie są przesyłane.

Korzystanie z narzędzi (tool use), nazywane też wywoływaniem funkcji (function calling), pozwala modelowi poprosić twój kod o uruchomienie funkcji. Każdą funkcję opisujesz w definicji JSON, a trzy duże API oczekują różnych kształtów: OpenAI Chat Completions zagnieżdża funkcję w obiekcie function, OpenAI Responses trzyma pola na jednym poziomie, Anthropic używa name i input_schema, a Gemini używa deklaracji funkcji. Różnią się też reguły nazw. To narzędzie czyta wklejoną definicję, ustala, dla którego API została napisana, i sprawdza ją z tym, co mówi dokumentacja danego dostawcy: nazwę, opis, schemat parametrów, strict mode oraz, w przypadku Anthropic, czy każdy przykład wejścia pasuje do schematu. Wskazuje także, kiedy nazwa działająca w jednym API zostałaby odrzucona w innym. Reguły sprawdzono z dokumentacją w dniu podanym pod narzędziem.

Zastosowania

  • Sprawdzenie definicji narzędzia, zanim dodasz ją do żądania, żeby zła nazwa lub błędny kształt nie psuły wywołania
  • Ustalenie, dlaczego strict mode odrzuca schemat funkcji
  • Przenoszenie narzędzia od jednego dostawcy do drugiego i sprawdzenie, co trzeba zmienić

Jak używać

  1. Wklej jedną definicję narzędzia, tablicę narzędzi albo treść żądania z tablicą tools, albo wczytaj przykład.
  2. Sprawdź, jako które API rozpoznano każde narzędzie, a potem listę znalezionych problemów. Popraw oznacza, że według dokumentacji definicja zostanie odrzucona lub jest nieprawidłowa, Sprawdź oznacza, że warto się temu przyjrzeć, a Uwaga to sama informacja.
  3. Popraw definicje i wklej je ponownie. W przypadku problemów ze strict mode Structured Output Schema Checker pokazuje każdy z nich szczegółowo.

FAQ

Skąd wie, dla którego API jest dana definicja?

Z jej kształtu. Definicja z input_schema jest odczytywana jako Anthropic. Definicja z type function i zagnieżdżonym obiektem function jest odczytywana jako OpenAI Chat Completions, a z type function i polami na najwyższym poziomie jako OpenAI Responses. Obiekt z functionDeclarations albo z name, description i parameters jest odczytywany jako Gemini. Wynik pokazuje, jako co rozpoznano każde narzędzie.

Jakie są reguły nazw?

OpenAI dopuszcza litery, cyfry, podkreślenia i myślniki, do 64 znaków. Anthropic dopuszcza litery, cyfry, podkreślenia i myślniki, do 128 znaków. Gemini dopuszcza litery, cyfry, podkreślenia, dwukropki, kropki i myślniki, do 128 znaków. Nazwa poprawna w jednym API może zostać odrzucona w innym, a narzędzie informuje, kiedy tak się dzieje.

Dlaczego sprawdza schemat jeszcze raz, gdy strict ma wartość true?

OpenAI podaje, że strict mode wymaga additionalProperties ustawionego na false w każdym obiekcie oraz wszystkich właściwości wymienionych w required, przy czym wartości opcjonalne zapisuje się jako typ dopuszczający także null. Schemat łamiący te reguły jest odrzucany. Narzędzie liczy problemy i pokazuje, gdzie jest pierwszy z nich.

Co sprawdza w input_examples?

Anthropic podaje, że każdy przykład musi być zgodny z input_schema narzędzia, a nieprawidłowy przykład zwraca błąd 400. Narzędzie sprawdza każdy przykład ze schematem i mówi, który zawodzi.

Czego nie sprawdza?

Tego, czy dany model obsługuje narzędzie, szczegółów strict tool use w Anthropic, narzędzi dostarczanych przez samego Anthropic ani niczego, czego dokumentacja nie opisuje. Nie wywołuje żadnego API, więc definicja, która przejdzie kontrolę, nadal może zawieść w prawdziwym żądaniu.

Czy moja definicja jest wysyłana na serwer?

Nie. Sprawdzanie działa w twojej przeglądarce.

Powiązane