Referenz zu Assistants-API-Nachrichten (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.
Nachricht erstellen
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}/messages?api-version=2024-08-01-preview
Erstellen Sie eine Nachricht.
Pfadparameter
Parameter | Type | Erforderlich | Beschreibung |
---|---|---|---|
thread_id |
Zeichenfolge | Erforderlich | Die ID des Threads, für den eine Nachricht erstellt werden soll |
Anforderungstext
Name | Type | Erforderlich | Beschreibung |
---|---|---|---|
role |
Zeichenfolge | Erforderlich | Die Rolle der Entität, die die Nachricht erstellt. Kann user oder assistant sein. user gibt an, dass die Nachricht von einem tatsächlichen Benutzer gesendet wird und in den meisten Fällen verwendet werden sollte, um vom Benutzer generierte Nachrichten darzustellen. assistant gibt an, dass die Nachricht vom Assistenten generiert wird. Verwenden Sie diesen Wert, um Nachrichten aus dem Assistenten in die Unterhaltung einzufügen. |
content |
Zeichenfolge | Erforderlich | Der Inhalt der Nachricht. |
attachments |
array | Optional | Eine Liste mit Dateien, die an die Nachricht angefügt sind, und den Tools, denen sie hinzugefügt werden sollen. |
metadata |
Karte | 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. |
Gibt zurück
Ein message-Objekt
Beispiel für das Erstellen einer Nachrichtenanforderung
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")
)
thread_message = client.beta.threads.messages.create(
"thread_abc123",
role="user",
content="How does AI work? Explain it in simple terms.",
)
print(thread_message)
Nachrichten auflisten
GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}/messages?api-version=2024-08-01-preview
Gibt eine Liste von Nachrichten für einen bestimmten Thread zurück.
Pfadparameter
Parameter | Type | Erforderlich | Beschreibung |
---|---|---|---|
thread_id |
Zeichenfolge | Erforderlich | Die ID des Threads, zu dem die Nachrichten gehören. |
Abfrageparameter
Name | Type | Erforderlich | Beschreibung |
---|---|---|---|
limit |
integer | Optional: Standardwert 20 | Ein Grenzwert für die Anzahl von Objekten, die zurückgegeben werden sollen. Der Grenzwert kann zwischen 1 und 100 liegen. Der Standardwert ist 20. |
order |
Zeichenfolge | Optional: Standardwert „desc“ | Sortierreihenfolge nach dem Zeitstempel „created_at“ der Objekte. „asc“ für aufsteigende Reihenfolge und „desc“ für absteigende Reihenfolge |
after |
Zeichenfolge | Optional | Ein Cursor für die Verwendung bei der Paginierung. „after“ ist eine Objekt-ID, die die Position in der Liste definiert. Wenn Sie z. B. eine Listenanforderung senden und 100 Objekte empfangen, die mit „obj_foo“ enden, kann der nachfolgende Aufruf „after=obj_foo“ enthalten, um die nächste Seite der Liste abzurufen. |
run_id |
Zeichenfolge | Optionanl | Filtern Sie Nachrichten nach der Ausführungs-ID, die sie generiert hat. |
before |
Zeichenfolge | Optional | Ein Cursor für die Verwendung bei der Paginierung. „before“ ist eine Objekt-ID, die die Position in der Liste definiert. Wenn Sie z. B. eine Listenanforderung senden und 100 Objekte empfangen, die mit „obj_foo“ enden, kann der nachfolgende Aufruf „before=obj_foo“ enthalten, um die vorherige Seite der Liste abzurufen. |
Gibt zurück
Eine Liste von message-Objekten.
Beispiel für eine Anforderung zum Auflisten von Nachrichten
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")
)
thread_messages = client.beta.threads.messages.list("thread_abc123")
print(thread_messages.data)
Nachricht abrufen
GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}/messages/{message_id}?api-version=2024-08-01-preview
Ruft eine Nachrichtendatei ab.
Pfadparameter
Parameter | Type | Erforderlich | Beschreibung |
---|---|---|---|
thread_id |
Zeichenfolge | Erforderlich | Die ID des Threads, zu dem die Nachricht gehört. |
message_id |
Zeichenfolge | Erforderlich | Die ID der abzurufenden Nachricht. |
Gibt zurück
Das message-Objekt, das der angegebenen ID entspricht.
Beispiel für das Abrufen einer Nachrichtenanforderung
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")
)
message = client.beta.threads.messages.retrieve(
message_id="msg_abc123",
thread_id="thread_abc123",
)
print(message)
Nachricht ändern
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}/messages/{message_id}?api-version=2024-08-01-preview
Ändert eine Nachricht.
Pfadparameter
Parameter | Type | Erforderlich | Beschreibung |
---|---|---|---|
thread_id |
Zeichenfolge | Erforderlich | Die ID des Threads, zu dem die Nachricht gehört. |
message_id |
Zeichenfolge | Erforderlich | Die ID der zu ändernden Nachricht. |
Anforderungstext
Parameter | 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. |
Gibt zurück
Das geänderte message-Objekt.
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")
)
message = client.beta.threads.messages.update(
message_id="msg_abc12",
thread_id="thread_abc123",
metadata={
"modified": "true",
"user": "abc123",
},
)
print(message)
Nachricht löschen
DELETE https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}/messages/{message_id}?api-version=2024-08-01-preview
Löscht eine Nachricht.
Pfadparameter
Parameter | Type | Erforderlich | Beschreibung |
---|---|---|---|
thread_id |
Zeichenfolge | Erforderlich | Die ID des Threads, zu dem die Nachricht gehört. |
message_id |
Zeichenfolge | Erforderlich | Die ID der zu ändernden Nachricht. |
Gibt zurück
Der Löschstatus des Nachrichtenobjekts.
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")
)
deleted_message = client.beta.threads.messages.delete(
message_id="msg_abc12",
thread_id="thread_abc123",
)
print(deleted_message)
Message-Objekt
Stellt eine Nachricht in einem Thread dar.
Name | Typ | Beschreibung |
---|---|---|
id |
string | Der Bezeichner, auf den in API-Endpunkten verwiesen werden kann |
object |
Zeichenfolge | Der Objekttyp, der immer „thread.message“ ist |
created_at |
integer | Der Unix-Zeitstempel (in Sekunden) des Zeitpunkts, zu dem die Nachricht erstellt wurde. |
thread_id |
Zeichenfolge | Die Thread-ID, zu der diese Nachricht gehört. |
role |
Zeichenfolge | Die Entität, die die Nachricht generiert hat. Einer der folgenden Werte: user oder assistant . |
content |
array | Der Inhalt der Nachricht im Textarray und/oder Bildern. |
assistant_id |
Zeichenfolge oder null | Falls zutreffend, die ID des Assistenten, der diese Nachricht erstellt hat. |
run_id |
Zeichenfolge oder null | Falls zutreffend, die ID der Ausführung, die der Erstellung dieser Nachricht zugeordnet ist. |
file_ids |
array | Eine Liste der Datei-IDs, die der Assistent verwenden soll. Nützlich für Tools wie den Abruf und Code Interpreter, die auf Dateien zugreifen können. An eine Nachricht können maximal 10 Dateien angefügt werden. |
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. |