11. maaliskuuta 2025 lähtien olemme julkaisseet uuden agentti-alustamme perusrakennuspalikat. Lisätietoja on API-dokumentaatiossamme: Responses API, työkalut kuten Web Search, File Search ja Computer Use sekä Agents SDK, jossa on Tracing.
Toiminnon kutsumisen avulla voit yhdistää OpenAI-malleja ulkoisiin työkaluihin ja järjestelmiin. Tästä on hyötyä monissa asioissa, kuten AI-avustajien varustamisessa ominaisuuksilla tai syvien integraatioiden rakentamisessa sovellustesi ja suurten kielimallien välille.
Lue lisää Toiminnon kutsumisen kehittäjäoppaastamme.
Kesäkuussa 2024 julkaisimme Strukturoidut tuotokset. Kun otat sen käyttöön asettamalla strict: true funktion määritelmässä, Strukturoidut tuotokset takaa, että mallin funktion kutsua varten luomat argumentit vastaavat täsmälleen funktion määritelmässä antamaasi JSON Schemaa.
Lokakuussa 2024 julkaisimme ”Luo mitä tahansa” -ominaisuuden, jonka avulla kehittäjät voivat kuvata funktion, liittää sen suoraan tai liittää koodinsa ja luoda kelvollisen funktioskeeman. Lue lisää ”Luo mitä tahansa” -ominaisuudesta tästä ohjekeskuksen artikkelista
Miten voin käyttää Toiminnon kutsumista?
Toiminnon kutsumisesta on hyötyä monissa käyttötapauksissa, kuten:
Avustajien mahdollistaminen noutamaan dataa:
Avustajien mahdollistaminen suorittamaan toimia:
Avustajien mahdollistaminen suorittamaan laskentaa:
Monipuolisten työnkulkujen rakentaminen:
datan poimintaputki, joka noutaa raakatekstin, muuntaa sen sitten strukturoiduksi dataksi ja tallentaa sen tietokantaan.
Toiminnon kutsumista tuetaan Responses APIssa, joka yhdistää ominaisuuksia, jotka oli aiemmin jaettu Keskustelun täydennys-APIn ja Assistants APIn kesken.
Miten voin käyttää JSON-tilaa?
Kun JSON-tila on käytössä, mallin tuotos varmistetaan kelvolliseksi JSONiksi, lukuun ottamatta joitakin reunatapauksia, jotka sinun tulee havaita ja käsitellä asianmukaisesti.
Jos haluat pyytää JSON-tilaa Keskustelun täydennys-APIlla, aseta response_format-arvoksi { "type": "json_object" } tuetuissa malleissa. Responses APIssa aseta text.format-arvoksi { "type": "json_object" }, esimerkiksi text: { "format": { "type": "json_object" } }, kun se on sovellettavissa. Kummassakin APIssa JSON-tila toimii vain, kun mallia, viestiä ja työkalua koskevat edellytykset täyttyvät (esimerkiksi malli tukee json_object-arvoa, keskustelu sisältää ohjeet JSONin tuottamiseen ja mahdolliset työkalurajoitteet ovat yhteensopivia). Vähintään yhden pyynnön viestin tai syöteviestin tosiasiallisessa syötekontekstissa on sisällettävä json kirjainkoosta riippumattomassa muodossa, kuten JSON, json tai Json; muussa tapauksessa API palauttaa virheen. Responsesissa pelkkä ylätason instructions-kenttä ei täytä tätä validointia. Kun Toiminnon kutsumista käytetään yhteensopivissa malleissa tai poluissa, JSON-rajoitteet otetaan automaattisesti käyttöön funktion kutsun argumenteille; yhteensopimattomat mallit tai työkalun ja vastausmuodon yhdistelmät voidaan hylätä tai ne eivät välttämättä käytä JSON-rajoitettua otantaa.
Tärkeitä huomautuksia:
Kun käytät JSON-tilaa, sinun on aina ohjeistettava mallia tuottamaan JSONia jonkin keskustelun viestin kautta, esimerkiksi järjestelmäviestissäsi. Jos et sisällytä nimenomaista ohjetta JSONin luomiseen, malli voi tuottaa loputtoman välilyöntivirran ja pyyntö voi jatkua, kunnes se saavuttaa tokenrajan. Jotta et unohtaisi tätä, JSON-tila hylkää pyynnöt, elleivät asiaankuuluvat syöteviestit tai ohjeet sisällä sanaa
jsonjossakin muodossa kirjainkoosta riippumatta.JSON-tila ei takaa, että tuotos vastaa mitään tiettyä skeemaa, vaan ainoastaan että se on kelvollinen ja jäsentyy ilman virheitä. Sinun tulisi käyttää Strukturoituja tuotoksia varmistaaksesi, että se vastaa skeemaasi, tai jos se ei ole mahdollista, käyttää validointikirjastoa ja mahdollisesti uudelleenyrityksiä varmistaaksesi, että tuotos vastaa haluamaasi skeemaa.
Sovelluksesi on havaittava ja käsiteltävä reunatapaukset, joiden vuoksi mallin tuotos ei välttämättä ole täydellinen JSON-objekti (katso alla).
