OpenAI
Táto stránka bola strojovo preložená. Prečítaj si pôvodný článok v angličtine.

Volanie funkcie v rozhraní OpenAI API

Čo je volanie funkcie a ako funguje v rozhraní OpenAI API?

Aktualizované: 6 days ago

K 11. marcu 2025 sme sprístupnili základné stavebné prvky našej novej platformy Agents. Podrobnosti nájdete v našej dokumentácii API pre Responses API, nástroje vrátane Web Search, File Search a Computer Use a v našom Agents SDK s funkciou Tracing.

Volanie funkcie umožňuje prepojiť modely OpenAI s externými nástrojmi a systémami. Je to užitočné na mnohé účely, napríklad na rozšírenie možností asistentov s umelou inteligenciou alebo vytváranie úzkych prepojení medzi vašimi aplikáciami a veľkými jazykovými modelmi.

Ďalšie informácie nájdete v našej príručke pre vývojárov k volaniu funkcie.

V júni 2024 sme uviedli štruktúrované výstupy. Ak pri podporovaných modeloch a konfiguráciách požiadaviek model vyšle volanie funkcie, nastavenie strict: true v definícii funkcie zabezpečí, že vygenerované argumenty budú zodpovedať zadanej schéme, pokiaľ schéma používa podporovanú podmnožinu JSON Schema a spĺňa požiadavky striktného režimu. Požiadavky s nepodporovanými alebo nevyhovujúcimi schémami sa odmietnu s chybovým hlásením.

V októbri 2024 sme uviedli funkciu 'Vygenerovať čokoľvek', ktorá vývojárom umožňuje opísať funkciu alebo priamo vložiť jej opis či vlastný kód a následne vygenerovať platnú schému funkcie. Ďalšie informácie o funkcii 'Vygenerovať čokoľvek' nájdete v tomto článku centra pomoci.

Ako môžem používať volanie funkcie?

Volanie funkcie je užitočné pri veľkom počte prípadov použitia, napríklad:

  • Umožnenie asistentom načítavať údaje:

  • Umožnenie asistentom vykonávať akcie:

  • Umožnenie asistentom vykonávať výpočty:

  • Vytváranie bohatých pracovných postupov:

  • kanál na extrakciu údajov, ktorý načíta nespracovaný text, potom ho prevedie na štruktúrované údaje a uloží ho do databázy.

Volanie funkcie je podporované v rozhraní API Responses, ktoré zjednocuje možnosti, ktoré boli predtým rozdelené medzi API na dokončovanie četu a API Assistants.

Ako môžem používať režim JSON?

Keď je režim JSON zapnutý, výstup modelu je zaručene platný JSON, okrem niektorých hraničných prípadov, ktoré by ste mali zistiť a primerane spracovať.

Ak chcete požiadať o režim JSON pomocou API na dokončovanie četu, nastavte response_format na { "type": "json_object" } v podporovaných modeloch. V API Responses nastavte text.format na { "type": "json_object" }, napríklad text: { "format": { "type": "json_object" } }, kde je to relevantné. V oboch API režim JSON funguje iba vtedy, keď sú splnené predpoklady modelu, správy a nástroja (napríklad model podporuje json_object, konverzácia obsahuje pokyny na vytvorenie JSON a všetky obmedzenia nástrojov sú kompatibilné). Aspoň jedna správa požiadavky alebo vstupná správa v efektívnom vstupnom kontexte musí obsahovať json vo forme bez rozlišovania veľkých a malých písmen, napríklad JSON, json alebo Json; inak API vráti chybu. V Responses samotné pole pokynov najvyššej úrovne túto validáciu nespĺňa. Keď sa volanie funkcie používa na kompatibilných modeloch/cestách, obmedzenia JSON sa automaticky použijú na argumenty volania funkcie; nekompatibilné modely alebo kombinácie nástroja a formátu odpovede môžu byť odmietnuté alebo nemusia používať vzorkovanie obmedzené na JSON.

Dôležité poznámky:

  • Pri používaní režimu JSON musíte vždy modelu prostredníctvom niektorej správy v konverzácii prikázať, aby vytvoril JSON, napríklad prostredníctvom systémovej správy. Ak nezahrniete výslovný pokyn na vygenerovanie JSON, model môže generovať nekonečný prúd prázdnych znakov a požiadavka môže bežať nepretržite, kým nedosiahne limit tokenov. Aby ste na to nezabudli, režim JSON odmieta požiadavky, pokiaľ príslušné vstupné správy alebo pokyny neobsahujú slovo json v nejakej forme, bez rozlišovania veľkých a malých písmen.

  • Režim JSON nezaručuje, že výstup zodpovedá konkrétnej schéme, iba to, že je platný a dá sa analyzovať bez chýb. Mali by ste použiť štruktúrované výstupy, aby ste zabezpečili zhodu s vašou schémou, alebo ak to nie je možné, mali by ste použiť validačnú knižnicu a prípadne opakované pokusy, aby ste zabezpečili, že výstup zodpovedá požadovanej schéme.

  • Vaša aplikácia musí zistiť a spracovať hraničné prípady, ktoré môžu viesť k tomu, že výstup modelu nebude úplným objektom JSON (pozrite nižšie)

Bol tento článok užitočný?