Assistants API (előzetes verzió) referenciája
Feljegyzé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 újraírást és lekérdezés-újraírást is kínál.
- A vektortároló egy új objektum az API-ban. Miután hozzáadtak egy fájlt egy vektortárolóhoz, a rendszer automatikusan elemzi, darabolja és beágyazja, és készen áll a keresésre. A vektortárolók asszisztensek és szálak között is használhatók, így egyszerűbbé teheti 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
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 . |
file_ids | array | Választható | Alapértelmezett érték: []. Az asszisztenshez csatolt fájlazonosítók listája. Legfeljebb 20 fájl csatolható az asszisztenshez. A fájlok a létrehozási dátumuk szerint növekvő sorrendben vannak rendezve. |
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. |
Válaszok
Példa segédkérelem létrehozására
from openai import AzureOpenAI
client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-05-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"}]
)
Segédfájl létrehozása
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}/files?api-version=2024-05-01-preview
Segédfájl létrehozása egy fájl csatolásávalFile
.assistant
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ájlt csatolni kell. |
Kérelem törzse
Név | Típus | Kötelező | Leírás |
---|---|---|---|
file_id | húr | Szükséges | Az asszisztens által használandó fájlazonosító (purpose="assistants") Olyan eszközök esetén hasznos, mint a fájlokhoz hozzáférő code_interpreter. |
Válaszok
Példa a fájlkérelem létrehozására szolgáló segédre
from openai import AzureOpenAI
client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-05-01-preview",
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
)
assistant_file = client.beta.assistants.files.create(
assistant_id="asst_abc123",
file_id="assistant-abc123"
)
print(assistant_file)
Asszisztensek listázása
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
from openai import AzureOpenAI
client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-05-01-preview",
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
)
my_assistants = client.beta.assistants.list(
order="desc",
limit="20",
)
print(my_assistants.data)
Segédfájlok listázása
GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}/files?api-version=2024-05-01-preview
A segédfájlok listáját adja vissza.
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. |
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
A segédfájl-objektumok listája
Példalista-segédfájlokra
from openai import AzureOpenAI
client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-05-01-preview",
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
)
assistant_files = client.beta.assistants.files.list(
assistant_id="asst_abc123"
)
print(assistant_files)
Asszisztens lekérése
GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}?api-version=2024-05-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
client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-05-01-preview",
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
)
my_assistant = client.beta.assistants.retrieve("asst_abc123")
print(my_assistant)
Segédfájl lekérése
GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}/files/{file-id}?api-version=2024-05-01-preview
Lekéri a segédfájlt.
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. |
file_id | húr | Szükséges | A lekért fájl azonosítója |
Válaszok
A megadott azonosítónak megfelelő asszisztensfájl-objektum
Példa a segédfájl lekéréséhez
client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-05-01-preview",
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
)
assistant_file = client.beta.assistants.files.retrieve(
assistant_id="asst_abc123",
file_id="assistant-abc123"
)
print(assistant_file)
Segéd módosítása
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}?api-version=2024-05-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. |
file_ids |
array | Választható | Alapértelmezett érték: []. Az asszisztenshez csatolt fájlazonosítók listája. Legfeljebb 20 fájl csatolható az asszisztenshez. A fájlok a létrehozási dátumuk szerint növekvő sorrendben vannak rendezve. Ha korábban csatoltak egy fájlt a listához, de nem jelenik meg a listában, a program törli az asszisztensből. |
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. |
Visszatérési érték
A módosított segédobjektum.
Példa a módosítási segédre
client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-05-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
file_ids=["assistant-abc123", "assistant-abc456"],
)
print(my_updated_assistant)
Törlési segéd
DELETE https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}?api-version=2024-05-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
client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-05-01-preview",
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
)
response = client.beta.assistants.delete("asst_abc123")
print(response)
Segédfájl törlése
DELETE https://YOUR_RESOURCE_NAME.openai.azure.com/openai/assistants/{assistant_id}/files/{file-id}?api-version=2024-05-01-preview
Segédfájl 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. |
file_id |
húr | Szükséges | A törölni kívánt fájl azonosítója |
Visszatérési érték
Fájltörlés állapota
Példa a törlési segédfájlra
client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-05-01-preview",
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
)
deleted_assistant_file = client.beta.assistants.files.delete(
assistant_id="asst_abc123",
file_id="assistant-abc123"
)
print(deleted_assistant_file)
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. |
file_ids |
array | Az asszisztenshez csatolt fájlazonosítók listája. Legfeljebb 20 fájl csatolható az asszisztenshez. A fájlok a létrehozási dátumuk szerint növekvő sorrendben vannak rendezve. |
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. |
Segédfájl-objektum
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 assistant.file |
created_at |
egész szám | A Unix időbélyege (másodpercben) a segédfájl létrehozásakor. |
assistant_id |
húr | Az asszisztens azonosítója, amelyhez a fájl csatolva van. |