Olvasás angol nyelven

Megosztás a következőn keresztül:


Assistants API (előzetes verzió) referenciája

Megjegyzés

  • A fájlkeresés asszisztensenként akár 10 000 fájlt is betölthet – 500-szor több, mint korábban. Gyors, többszálas keresésekkel támogatja a párhuzamos lekérdezéseket, és továbbfejlesztett újrarangsorolást és lekérdezés-újraírást is kínál.
    • A vektortároló egy új objektum az API-ban. Miután hozzáadnak egy fájlt egy vektortárolóhoz, a rendszer automatikusan elemzi, darabolja és beágyazza azt, és készen áll a keresésre. A vektortárolók segédeken és szálakon átnyúlóan is használhatók, így egyszerűbbé téve a fájlkezelést és a számlázást.
  • Hozzáadtuk a tool_choice paraméter támogatását, amely egy adott eszköz (például fájlkeresés, kódértelmező vagy függvény) egy adott futtatáshoz való kényszerítésére használható.

Ez a cikk referenciadokumentációt tartalmaz a Pythonhoz és a REST-hez az új Assistants API-hoz (előzetes verzió). Az első lépések útmutatójában részletesebb részletes útmutatást talál.

Segéd létrehozása

HTTP
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants?api-version=2024-05-01-preview

Hozzon létre egy asszisztenst egy modellel és útmutatással.

Kérés törzse

Név Típus Kötelező Leírás
modell húr Szükséges A használni kívánt modell üzembehelyezési neve.
név sztring vagy null Választható Az asszisztens neve. A maximális hossz 256 karakter.
leírás sztring vagy null Választható Az asszisztens leírása. A maximális hossz 512 karakter.
útmutató sztring vagy null Választható Az asszisztens által használt rendszerutasítások. A maximális hossz 256 000 karakter.
eszközök array Választható Alapértelmezett érték: []. Az asszisztensen engedélyezett eszközök listája. Asszisztensenként legfeljebb 128 eszköz lehet. Az eszközök jelenleg lehetnek típusok code_interpreter, vagy function. A function leírás legfeljebb 1024 karakter hosszúságú lehet.
metaadatok térkép Választható Egy objektumhoz csatolható 16 kulcs-érték pár készlete. Ez hasznos lehet az objektumra vonatkozó további információk strukturált formátumban történő tárolásához. A kulcsok legfeljebb 64 karakter hosszúak lehetnek, az értékek pedig legfeljebb 512 karakter hosszúak lehetnek.
hőmérséklet szám vagy null Választható Alapértelmezett érték: 1. Meghatározza, hogy milyen mintavételi hőmérsékletet használjon 0 és 2 között. A magasabb értékek, például a 0,8 véletlenszerűbbé teszik a kimenetet, míg az alacsonyabb értékek, például a 0,2, koncentráltabbá és determinisztikusabbá teszik a kimenetet.
top_p szám vagy null Választható Alapértelmezett érték: 1. A hőmérséklettel történő mintavételezés alternatíva, az úgynevezett magmintavétel, ahol a modell a tokenek eredményeit top_p valószínűségi tömeggel veszi figyelembe. A 0.1 tehát csak a felső 10%-os valószínűségi tömeget tartalmazó jogkivonatokat jelenti. Általában azt javasoljuk, hogy módosítsa ezt vagy a hőmérsékletet, de mindkettőt nem.
response_format sztring vagy objektum Választható Megadja a modell kimenetének formátumát. Kompatibilis a GPT-4 Turbo és az összes GPT-3.5 Turbo modellel a gpt-3.5-turbo-1106 óta. A paraméter { "type": "json_object" } beállítása A JSON mód engedélyezése érdekében, amely garantálja, hogy a modell által generált üzenet érvényes JSON-ként jelenik meg. Fontos, hogy JSON mód használata esetén a modellt arra is utasítania kell, hogy saját maga állítson elő JSON-t rendszer vagy felhasználói üzenet használatával. E nélkül az utasítás nélkül a modell létrehozhat egy korlátlan térközfolyamot, amíg a generáció el nem éri a jogkivonat korlátját, ami egy hosszú ideig futó és látszólag "elakadt" kérést eredményez. Emellett előfordulhat, hogy az üzenet tartalma részben le lesz vágva, ha használja finish_reason="length", ami azt jelzi, hogy a létrehozás túllépte max_tokens vagy a beszélgetés túllépte a környezet maximális hosszát.
tool_resources object Választható Az asszisztens eszközei által használt erőforrások készlete. Az erőforrások az eszköz típusára vonatkoznak. Az eszköznek például code_interpreter a fájlazonosítók listájára van szüksége, míg az file_search eszköznek a vektortároló azonosítóinak listájára van szüksége.

response_format típusok

húr

auto az alapértelmezett érték.

tárgy

Lehetséges type értékek: text, json_object. json_schema

json_schema

Név Típus Leírás Alapértelmezett Kötelező/nem kötelező
description húr A modell a válaszformátum leírásával határozza meg, hogyan válaszoljon a formátumra. Választható
name húr A válaszformátum neve. A-z, A-Z, 0-9, vagy aláhúzásjeleket és kötőjeleket kell tartalmaznia, legfeljebb 64 hosszúságúak. Kötelező
schema object A válaszformátum sémája, amely JSON-sémaobjektumként van leírva. Választható
strict logikai vagy null A kimenet létrehozásakor engedélyezze-e a szigorú sémabetartást. Ha igaz értékre van állítva, a modell mindig a mezőben meghatározott sémát schema követi. Csak a JSON-séma egy részhalmaza támogatott, ha strict az .true false Választható

tool_resources tulajdonságok

code_interpreter

Név Típus Leírás Alapértelmezett
file_ids array A code_interpreter eszköz számára elérhetővé tett fájlazonosítók listája. Az eszközhöz legfeljebb 20 fájl társítható. []

file_search

Név Típus Leírás Kötelező/nem kötelező
vector_store_ids array A szálhoz csatolt vektortároló. A szálhoz legfeljebb 1 vektortároló csatolható. Választható
vector_stores array Segéd egy vektortároló létrehozásához file_ids és csatolja ehhez a szálhoz. A szálhoz legfeljebb 1 vektortároló csatolható. Választható

vector_stores

Név Típus Leírás Kötelező/nem kötelező
file_ids array A vektortárolóhoz hozzáadni kívánt fájlazonosítók listája. Legfeljebb 10000 fájl lehet egy vektortárolóban. Választható
chunking_strategy object A fájl(ok) darabolásához használt adattömb-stratégia. Ha nincs beállítva, az automatikus stratégiát fogja használni. Választható
metadata térkép Egy vektortárolóhoz csatolható 16 kulcs-érték pár készlete. Ez hasznos lehet a vektortárolóval kapcsolatos további információk strukturált formátumban történő tárolásához. A kulcsok legfeljebb 64 karakter hosszúak lehetnek, az értékek pedig legfeljebb 512 karakter hosszúak lehetnek. Választható

chunking_strategy

Név Típus Leírás Kötelező/nem kötelező
Auto Chunking Strategy object Az alapértelmezett stratégia. Ez a stratégia jelenleg egy max_chunk_size_tokens és 800chunk_overlap_tokens több elemet 400használ. A type értéke mindig auto Kötelező
Static Chunking Strategy object type Mindig static Kötelező

Statikus adattömb-stratégia

Név Típus Leírás Kötelező/nem kötelező
max_chunk_size_tokens egész szám Az egyes adattömbökben lévő tokenek maximális száma. Az alapértelmezett érték 800. A minimális érték és 100 a maximális érték 4096. Kötelező
chunk_overlap_tokens egész szám Az adattömbök között átfedésben lévő tokenek száma. Az alapértelmezett érték 400. Vegye figyelembe, hogy az átfedés nem haladhatja meg a max_chunk_size_tokensfelét. Kötelező

Válaszok

Segédobjektum.

Példa segédkérelem létrehozására

Python
from openai import AzureOpenAI
    
client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-08-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

assistant = client.beta.assistants.create(
  instructions="You are an AI assistant that can write code to help answer math questions",
  model="<REPLACE WITH MODEL DEPLOYMENT NAME>", # replace with model deployment name. 
  tools=[{"type": "code_interpreter"}]
)

Asszisztensek listázása

HTTP
GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants?api-version=2024-05-01-preview

Az összes asszisztens listáját adja vissza.

Paraméterek lekérdezése

Paraméter Típus Kötelező Leírás
limit egész szám Választható A visszaadandó objektumok számának korlátja. A korlát 1 és 100 közötti lehet, az alapértelmezett érték pedig 20.
order húr Nem kötelező – Alapértelmezések a desc Rendezze a sorrendet az objektumok created_at időbélyege alapján. asc növekvő sorrendhez és csökkenő sorrendhez.
after húr Választható Kurzor lapozáshoz. after egy objektumazonosító, amely meghatározza a helyet a listában. Ha például listakérelmet küld, és 100 objektumot fogad, obj_foo végződve, a következő hívás az after=obj_foo függvényt is belefoglalhatja a lista következő oldalának lekéréséhez.
before húr Választható Kurzor lapozáshoz. before egy objektumazonosító, amely meghatározza a helyet a listában. Ha például listakérelmet küld, és 100 objektumot fogad, és obj_foo végződik, a következő hívás a before=obj_foo függvényt is belefoglalhatja a lista előző oldalának lekéréséhez.

Válaszok

Segédobjektumok listája

Példalista-asszisztensek

Python
from openai import AzureOpenAI
    
client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-08-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

my_assistants = client.beta.assistants.list(
    order="desc",
    limit="20",
)
print(my_assistants.data)

Asszisztens lekérése

HTTP
GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}?api-version=2024-08-01-preview

Lekéri az asszisztenst.

Elérésiút-paraméterek

Paraméter Típus Kötelező Leírás
assistant_id húr Szükséges A lekérendő asszisztens azonosítója.

Visszatérési érték

A megadott azonosítónak megfelelő segédobjektum .

Példa a lekérési segédre

Python
client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-08-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

my_assistant = client.beta.assistants.retrieve("asst_abc123")
print(my_assistant)

Segéd módosítása

HTTP
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}?api-version=2024-08-01-preview

Módosítja az asszisztenst.

Elérésiút-paraméterek

Paraméter Típus Kötelező Leírás
assistant_id húr Szükséges Annak az asszisztensnek az azonosítója, amelyhez a fájl tartozik.

Kérelem törzse

Paraméter Típus Kötelező Leírás
model Lehetséges A használni kívánt modell üzembehelyezési neve.
name sztring vagy null Választható Az asszisztens neve. A maximális hossz 256 karakter.
description sztring vagy null Választható Az asszisztens leírása. A maximális hossz 512 karakter.
instructions sztring vagy null Választható Az asszisztens által használt rendszerutasítások. A maximális hossz 32768 karakter.
tools array Választható Alapértelmezett érték: []. Az asszisztensen engedélyezett eszközök listája. Asszisztensenként legfeljebb 128 eszköz lehet. Az eszközök lehetnek code_interpreter típusúak vagy függvények. A function leírás legfeljebb 1024 karakter hosszúságú lehet.
metadata térkép Választható Egy objektumhoz csatolható 16 kulcs-érték pár készlete. Ez hasznos lehet az objektumra vonatkozó további információk strukturált formátumban történő tárolásához. A kulcsok legfeljebb 64 karakter hosszúak lehetnek, az értékek pedig legfeljebb 512 karakter hosszúak lehetnek.
temperature szám vagy null Választható Alapértelmezett érték: 1. Meghatározza, hogy milyen mintavételi hőmérsékletet használjon 0 és 2 között. A magasabb értékek, például a 0,8 véletlenszerűbbé teszik a kimenetet, míg az alacsonyabb értékek, például a 0,2, koncentráltabbá és determinisztikusabbá teszik a kimenetet.
top_p szám vagy null Választható Alapértelmezett érték: 1. A hőmérséklettel történő mintavételezés alternatíva, az úgynevezett magmintavétel, ahol a modell a tokenek eredményeit top_p valószínűségi tömeggel veszi figyelembe. A 0.1 tehát csak a felső 10%-os valószínűségi tömeget tartalmazó jogkivonatokat jelenti. Általában azt javasoljuk, hogy módosítsa ezt vagy a hőmérsékletet, de mindkettőt nem.
response_format sztring vagy objektum Választható Megadja a modell kimenetének formátumát. Kompatibilis a GPT-4 Turbo és az összes GPT-3.5 Turbo modellel a gpt-3.5-turbo-1106 óta. A paraméter { "type": "json_object" } beállítása A JSON mód engedélyezése érdekében, amely garantálja, hogy a modell által generált üzenet érvényes JSON-ként jelenik meg. Fontos, hogy JSON mód használata esetén a modellt arra is utasítania kell, hogy saját maga állítson elő JSON-t rendszer vagy felhasználói üzenet használatával. E nélkül az utasítás nélkül a modell létrehozhat egy korlátlan térközfolyamot, amíg a generáció el nem éri a jogkivonat korlátját, ami egy hosszú ideig futó és látszólag "elakadt" kérést eredményez. Emellett előfordulhat, hogy az üzenet tartalma részben le lesz vágva, ha használja finish_reason="length", ami azt jelzi, hogy a létrehozás túllépte max_tokens vagy a beszélgetés túllépte a környezet maximális hosszát.
tool_resources object Választható Az asszisztens eszközei által használt erőforrások készlete. Az erőforrások az eszköz típusára vonatkoznak. Az eszköznek például code_interpreter a fájlazonosítók listájára van szüksége, míg az file_search eszköznek a vektortároló azonosítóinak listájára van szüksége.

Visszatérési érték

A módosított segédobjektum.

Példa a módosítási segédre

Python
client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-08-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

my_updated_assistant = client.beta.assistants.update(
  "asst_abc123",
  instructions="You are an HR bot, and you have access to files to answer employee questions about company policies. Always respond with info from either of the files.",
  name="HR Helper",
  tools=[{"type": "code-interpreter"}],
  model="gpt-4", #model = model deployment name
)

print(my_updated_assistant)

Törlési segéd

HTTP
DELETE https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}?api-version=2024-08-01-preview

Segéd törlése.

Elérésiút-paraméterek

Paraméter Típus Kötelező Leírás
assistant_id húr Szükséges Annak az asszisztensnek az azonosítója, amelyhez a fájl tartozik.

Visszatérési érték

Törlés állapota.

Példa törlési segédre

Python
client = AzureOpenAI(
    api_key=os.getenv("AZURE_OPENAI_API_KEY"),  
    api_version="2024-08-01-preview",
    azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
    )

response = client.beta.assistants.delete("asst_abc123")
print(response)

Fájlfeltöltési API-referencia

Az asszisztensek ugyanazt az API-t használják a fájlfeltöltéshez, mint a finomhangolást. Fájl feltöltésekor meg kell adnia a célparaméter megfelelő értékét.

Segédobjektum

Mező Típus Leírás
id húr Az API-végpontokban hivatkozható azonosító.
object húr Az objektum típusa, amely mindig asszisztens.
created_at egész szám A Unix időbélyege (másodpercben) az asszisztens létrehozásakor.
name sztring vagy null Az asszisztens neve. A maximális hossz 256 karakter.
description sztring vagy null Az asszisztens leírása. A maximális hossz 512 karakter.
model húr A használni kívánt modell üzembehelyezési nevének neve.
instructions sztring vagy null Az asszisztens által használt rendszerutasítások. A maximális hossz 32768 karakter.
tools array Az asszisztensen engedélyezett eszközlista. Asszisztensenként legfeljebb 128 eszköz lehet. Az eszközök lehetnek code_interpreter típusúak vagy függvények. A function leírás legfeljebb 1024 karakter hosszúságú lehet.
metadata térkép Egy objektumhoz csatolható 16 kulcs-érték pár készlete. Ez hasznos lehet az objektumra vonatkozó további információk strukturált formátumban történő tárolásához. A kulcsok legfeljebb 64 karakter hosszúak lehetnek, az értékek pedig legfeljebb 512 karakter hosszúak lehetnek.
temperature szám vagy null Alapértelmezett érték: 1. Meghatározza, hogy milyen mintavételi hőmérsékletet használjon 0 és 2 között. A magasabb értékek, például a 0,8 véletlenszerűbbé teszik a kimenetet, míg az alacsonyabb értékek, például a 0,2, koncentráltabbá és determinisztikusabbá teszik a kimenetet.
top_p szám vagy null Alapértelmezett érték: 1. A hőmérséklettel történő mintavételezés alternatíva, az úgynevezett magmintavétel, ahol a modell a tokenek eredményeit top_p valószínűségi tömeggel veszi figyelembe. A 0.1 tehát csak a felső 10%-os valószínűségi tömeget tartalmazó jogkivonatokat jelenti. Általában azt javasoljuk, hogy módosítsa ezt vagy a hőmérsékletet, de mindkettőt nem.
response_format sztring vagy objektum Megadja a modell kimenetének formátumát. Kompatibilis a GPT-4 Turbo és az összes GPT-3.5 Turbo modellel a gpt-3.5-turbo-1106 óta. A paraméter { "type": "json_object" } beállítása A JSON mód engedélyezése érdekében, amely garantálja, hogy a modell által generált üzenet érvényes JSON-ként jelenik meg. Fontos, hogy JSON mód használata esetén a modellt arra is utasítania kell, hogy saját maga állítson elő JSON-t rendszer vagy felhasználói üzenet használatával. E nélkül az utasítás nélkül a modell létrehozhat egy korlátlan térközfolyamot, amíg a generáció el nem éri a jogkivonat korlátját, ami egy hosszú ideig futó és látszólag "elakadt" kérést eredményez. Emellett előfordulhat, hogy az üzenet tartalma részben le lesz vágva, ha használja finish_reason="length", ami azt jelzi, hogy a létrehozás túllépte max_tokens vagy a beszélgetés túllépte a környezet maximális hosszát.
tool_resources object Az asszisztens eszközei által használt erőforrások készlete. Az erőforrások az eszköz típusára vonatkoznak. Az eszköznek például code_interpreter a fájlazonosítók listájára van szüksége, míg az file_search eszköznek a vektortároló azonosítóinak listájára van szüksége.