OpenAI
See leht on masintõlgitud. Vaadake algset ingliskeelset artiklit.

Funktsiooni kutsumine OpenAI API-s

Mis on funktsiooni kutsumine ja kuidas see OpenAI API-s töötab?

Värskendatud: 18 days ago

11. märtsi 2025 seisuga oleme välja andnud meie uue agentide platvormi põhikomponendid. Üksikasju leiate meie API dokumentatsioonist Responses API kohta, tööriistade kohta, sealhulgas Web Search, File Search ja Computer Use, ning meie Agents SDK kohta koos funktsiooniga Tracing.

Funktsiooni kutsumine võimaldab ühendada OpenAI mudelid väliste tööriistade ja süsteemidega. Sellest on kasu paljudel juhtudel, näiteks tehisintellektiassistentidele uute võimaluste andmisel või rakenduste ja LLM-ide tihedal integreerimisel.

Lisateavet leiate meie funktsiooni kutsumise arendajajuhendist.

2024. aasta juunis tõime turule struktureeritud väljundid. Kui toetatud mudelite ja päringukonfiguratsioonide korral väljastab mudel funktsioonikutse, tagab funktsiooni definitsioonis sätte strict: true kasutamine, et genereeritud argumendid vastavad esitatud skeemile, eeldusel et skeem kasutab JSON Schema toetatud alamhulka ja vastab range režiimi nõuetele. Toetamata või nõuetele mittevastavate skeemidega päringud lükatakse veateatega tagasi.

2024. aasta oktoobris tõime turule funktsiooni „Loo mida tahes“, mis võimaldab arendajatel funktsiooni kirjeldada, selle otse kleepida või oma koodi kleepida ning genereerida kehtiva funktsiooniskeemi. Lisateavet funktsiooni „Loo mida tahes“ kohta leiate sellest abikeskuse artiklist.

Kuidas funktsiooni kutsumist kasutada?

Funktsiooni kutsumine on kasulik paljudel kasutusjuhtudel, näiteks:

  • Assistentidele andmete toomise võimaldamine:

  • Assistentidele toimingute tegemise võimaldamine:

  • Assistentidele arvutuste tegemise võimaldamine:

  • Rikaste töövoogude loomine:

  • andmete ekstraktimise konveier, mis toob toorteksti, teisendab selle seejärel struktureeritud andmeteks ja salvestab andmebaasi.

Funktsiooni kutsumist toetatakse Responses API-s, mis ühendab võimalused, mis olid varem jagatud vestluse lõpetamise API ja Assistants API vahel.

Kuidas JSON-režiimi kasutada?

Kui JSON-režiim on sisse lülitatud, tagatakse, et mudeli väljund on kehtiv JSON, välja arvatud mõnedel erijuhtudel, mille peaksite tuvastama ja asjakohaselt käsitlema.

JSON-režiimi taotlemiseks vestluse lõpetamise API-ga määrake toetatud mudelites response_format väärtuseks { "type": "json_object" }. Responses API-ga määrake text.format väärtuseks { "type": "json_object" }, näiteks text: { "format": { "type": "json_object" } }, kus see on kohaldatav. Mõlemas API-s töötab JSON-režiim ainult siis, kui mudeli/sõnumi/tööriista eeltingimused on täidetud (näiteks mudel toetab json_object, vestlus sisaldab juhiseid JSON-i loomiseks ja kõik tööriistapiirangud on ühilduvad). Vähemalt üks päringusõnum või sisendsõnum tegelikus sisendkontekstis peab sisaldama json-i tõstutundetul kujul, näiteks JSON, json või Json; vastasel juhul tagastab API vea. Responsesis ei rahulda ainult ülataseme juhiste väli seda valideerimist. Kui funktsiooni kutsumist kasutatakse ühilduvatel mudelitel/teedel, rakendatakse JSON-piirangud funktsioonikutse argumentidele automaatselt; ühildumatud mudelid või tööriista/vastusevormingu kombinatsioonid võidakse tagasi lükata või need ei pruugi kasutada JSON-iga piiratud valimit.

Olulised märkused:

  • JSON-režiimi kasutamisel peate alati juhendama mudelit vestluses mõne sõnumi kaudu JSON-i looma, näiteks oma süsteemisõnumi kaudu. Kui te ei lisa selgesõnalist juhist JSON-i genereerimiseks, võib mudel genereerida lõputu tühimärkide voo ja päring võib jätkuda, kuni see jõuab tokeni piiranguni. Et te ei unustaks, lükkab JSON-režiim päringud tagasi, kui asjakohased sisendsõnumid või juhised ei sisalda sõna json mingil kujul ja tõstutundetult.

  • JSON-režiim ei taga, et väljund vastab konkreetsele skeemile, vaid ainult seda, et see on kehtiv ja seda saab vigadeta parsida. Peaksite kasutama struktureeritud väljundeid, et tagada selle vastavus teie skeemile, või kui see pole võimalik, kasutama valideerimisteeki ja vajaduse korral korduskatseid, et tagada väljundi vastavus soovitud skeemile.

  • Teie rakendus peab tuvastama ja käsitlema erijuhtumeid, mille tõttu mudeli väljund ei pruugi olla täielik JSON-objekt (vt allpool)

Kas sellest artiklist oli abi?