Referenz zu Assistants-API-Threads (Vorschau)
Hinweis
- Die Dateisuche kann bis zu 10.000 Dateien pro Assistent erfassen – 500 mal mehr als bisher. Sie ist schnell, unterstützt parallele Abfragen durch Multithreadsuchvorgänge und beinhaltet verbesserte Funktionen für Neusortierung und das Umschreiben von Abfragen.
- Der Vektorspeicher ist ein neues Objekt in der API. Sobald eine Datei einem Vektorspeicher hinzugefügt wurde, wird sie automatisch geparst, aufgeteilt und eingebettet, damit sie durchsucht werden kann. Vektorspeicher können über Assistenten und Threads hinweg verwendet werden und vereinfachen so die Dateiverwaltung und Abrechnung.
- Wir haben Unterstützung für den Parameter
tool_choice
hinzugefügt. Dieser kann verwendet werden, um die Nutzung eines bestimmten Tools (z. B. Dateisuche, Codeinterpreter oder eine Funktion) in einer bestimmten Ausführung zu erzwingen.
Dieser Artikel enthält eine Referenzdokumentation für Python und REST für die neue Assistants-API (Vorschau). Ausführlichere Schrittanleitungen finden Sie im Leitfaden für erste Schritte.
Erstellen eines Threads
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads?api-version=2024-08-01-preview
Erstellen Sie einen Thread.
Anforderungstext
Name | Type | Erforderlich | Beschreibung |
---|---|---|---|
messages |
array | Optional | Eine Liste der Nachrichten, mit der der Thread gestartet werden soll. |
metadata |
map | Optional | 16 Schlüssel-Wert-Paare, die an ein Objekt angefügt werden können. Dies kann hilfreich sein, um zusätzliche Informationen zum Objekt in einem strukturierten Format zu speichern. Schlüssel dürfen maximal 64 Zeichen und Werte dürfen höchstens 512 Zeichen lang sein. |
tool_resources |
object | Optional | Eine Reihe von Ressourcen, die für die Tools des Assistenten in diesem Thread verfügbar gemacht werden. Die Ressourcen sind spezifisch für den Tooltyp. Beispielsweise erfordert das Tool code_interpreter eine Liste mit Datei-IDs, während das Tool file_search eine Liste mit Vektorspeicher-IDs erfordert. |
tool_resources Eigenschaften
code_interpreter
Name | Typ | Beschreibung | Standard |
---|---|---|---|
file_ids |
array | Eine Liste mit Datei-IDs, die für das Tool „code_interpreter“ zur Verfügung gestellt wurden. Dem Tool können maximal 20 Dateien zugeordnet sein. | [] |
file_search
Name | Typ | Beschreibung | Standard |
---|---|---|---|
vector_store_ids |
array | Der an diesen Thread angefügte Vektorspeicher. An den Thread kann maximal ein einzelner Vektorspeicher angefügt werden. | [] |
vector_stores |
array | Ein Hilfsprogramm, das dazu dient, einen Vektorspeicher mit Datei-IDs (file_ids) zu erstellen und an diesen Thread anzufügen. An den Thread kann maximal ein einzelner Vektorspeicher angefügt werden. | [] |
Gibt zurück
Ein Threadobjekt.
Beispiel: Erstellen einer Threadanforderung
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")
)
empty_thread = client.beta.threads.create()
print(empty_thread)
Thread abrufen
GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}?api-version=2024-08-01-preview
Ruft einen Thread ab.
Pfadparameter
Parameter | Type | Erforderlich | Beschreibung |
---|---|---|---|
thread_id |
Zeichenfolge | Erforderlich | Die ID des abzurufenden Threads |
Gibt zurück
Das Threadobjekt, das der angegebenen ID entspricht.
Beispiel: Abrufen einer Threadanforderung
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_thread = client.beta.threads.retrieve("thread_abc123")
print(my_thread)
Thread ändern
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}?api-version=2024-08-01-preview
Ändert einen Thread.
Pfadparameter
Parameter | Type | Erforderlich | Beschreibung |
---|---|---|---|
thread_id |
Zeichenfolge | Erforderlich | Die ID des zu ändernden Threads. |
Anforderungstext
Name | Type | Erforderlich | Beschreibung |
---|---|---|---|
metadata |
map | Optional | 16 Schlüssel-Wert-Paare, die an ein Objekt angefügt werden können. Dies kann hilfreich sein, um zusätzliche Informationen zum Objekt in einem strukturierten Format zu speichern. Schlüssel dürfen maximal 64 Zeichen und Werte dürfen höchstens 512 Zeichen lang sein. |
tool_resources |
object | Optional | Eine Reihe von Ressourcen, die für die Tools des Assistenten in diesem Thread verfügbar gemacht werden. Die Ressourcen sind spezifisch für den Tooltyp. Beispielsweise erfordert das Tool code_interpreter eine Liste mit Datei-IDs, während das Tool file_search eine Liste mit Vektorspeicher-IDs erfordert. |
Gibt zurück
Das geänderte Threadobjekt, das der angegebenen ID entspricht.
Beispiel: Ändern der Threadanforderung
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_updated_thread = client.beta.threads.update(
"thread_abc123",
metadata={
"modified": "true",
"user": "abc123"
}
)
print(my_updated_thread)
Thread löschen
DELETE https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}?api-version=2024-05-01-preview
Löscht einen Thread.
Pfadparameter
Parameter | Type | Erforderlich | Beschreibung |
---|---|---|---|
thread_id |
Zeichenfolge | Erforderlich | Die ID des zu löschenden Threads. |
Gibt zurück
Löschstatus.
Beispiel: Löschen einer Threadanforderung
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")
)
response = client.beta.threads.delete("thread_abc123")
print(response)
Threadobjekt
Feld | Typ | Beschreibung |
---|---|---|
id |
string | Der Bezeichner, auf den in API-Endpunkten verwiesen werden kann |
object |
Zeichenfolge | Der Objekttyp, der immer „thread“ ist. |
created_at |
integer | Der Unix-Zeitstempel (in Sekunden) des Zeitpunkts, zu dem der Thread erstellt wurde. |
metadata |
map | 16 Schlüssel-Wert-Paare, die an ein Objekt angefügt werden können. Dies kann hilfreich sein, um zusätzliche Informationen zum Objekt in einem strukturierten Format zu speichern. Schlüssel dürfen maximal 64 Zeichen und Werte dürfen höchstens 512 Zeichen lang sein. |