Dokumentacja wątków interfejsu API asystentów (wersja zapoznawcza)
Uwaga
- Wyszukiwanie plików może pozyskiwać maksymalnie 10 000 plików na asystenta — 500 razy więcej niż wcześniej. Jest szybkie, obsługuje zapytania równoległe za pośrednictwem wyszukiwania wielowątkowego i oferuje ulepszone ponowne klasyfikowanie praz ponowne zapisywanie zapytań.
- Magazyn wektorów to nowy obiekt w interfejsie API. Po dodaniu pliku do magazynu wektorów jest on automatycznie analizowany, fragmentowany i osadzany oraz przygotowywany do wyszukiwania. Magazyny wektorów mogą być używane między asystentami i wątkami, upraszczając zarządzanie plikami i rozliczenia.
- Dodaliśmy obsługę parametru
tool_choice
, który może służyć do wymuszenia użycia określonego narzędzia (takiego jak wyszukiwanie plików, interpreter kodu lub funkcja) w określonym uruchomieniu.
Ten artykuł zawiera dokumentację referencyjną dla języka Python i interfejsu API REST dla nowego interfejsu API Asystentów (wersja zapoznawcza). Więcej szczegółowych wskazówek krok po kroku znajduje się w przewodniku wprowadzającym.
Tworzenie wątku
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads?api-version=2024-08-01-preview
Utwórz wątek.
Treść żądania
Nazwisko | Type | Wymagania | opis |
---|---|---|---|
messages |
tablica | Opcjonalnie | Lista komunikatów do uruchomienia wątku. |
metadata |
map | Opcjonalnie | Zestaw 16 par klucz-wartość, które można dołączyć do obiektu. Może to być przydatne do przechowywania dodatkowych informacji o obiekcie w formacie ustrukturyzowanym. Klucze mogą mieć długość maksymalnie 64 znaków, a wartości mogą mieć długość maksymalnie 512 znaków. |
tool_resources |
object | Opcjonalnie | Zestaw zasobów udostępnianych narzędziom asystenta w tym wątku. Zasoby są specyficzne dla typu narzędzia. Na przykład code_interpreter narzędzie wymaga listy identyfikatorów plików, a file_search narzędzie wymaga listy identyfikatorów magazynów wektorów. |
tool_resources właściwości
code_interpreter
Nazwisko | Pisz | Opis | Wartość domyślna |
---|---|---|---|
file_ids |
tablica | Lista identyfikatorów plików udostępnionych narzędziu code_interpreter. Może istnieć maksymalnie 20 plików skojarzonych z narzędziem. | [] |
file_search
Nazwisko | Pisz | Opis | Wartość domyślna |
---|---|---|---|
vector_store_ids |
tablica | Magazyn wektorów dołączony do tego wątku. Może istnieć maksymalnie 1 magazyn wektorów dołączony do wątku. | [] |
vector_stores |
tablica | Pomocnik do tworzenia magazynu wektorów z file_ids i dołączania go do tego wątku. Może istnieć maksymalnie 1 magazyn wektorów dołączony do wątku. | [] |
Zwraca
Obiekt wątku.
Przykład: tworzenie żądania wątku
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)
Pobieranie wątku
GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}?api-version=2024-08-01-preview
Pobiera wątek.
Parametry ścieżki
Parametr | Type | Wymagania | opis |
---|---|---|---|
thread_id |
string | Wymagania | Identyfikator wątku do pobrania |
Zwraca
Obiekt wątku pasujący do określonego identyfikatora.
Przykład: pobieranie żądania wątku
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)
Modyfikowanie wątku
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}?api-version=2024-08-01-preview
Modyfikuje wątek.
Parametry ścieżki
Parametr | Type | Wymagania | opis |
---|---|---|---|
thread_id |
string | Wymagania | Identyfikator wątku do zmodyfikowania. |
Treść żądania
Nazwisko | Type | Wymagania | opis |
---|---|---|---|
metadata |
map | Opcjonalnie | Zestaw 16 par klucz-wartość, które można dołączyć do obiektu. Może to być przydatne do przechowywania dodatkowych informacji o obiekcie w formacie ustrukturyzowanym. Klucze mogą mieć długość maksymalnie 64 znaków, a wartości mogą mieć długość maksymalnie 512 znaków. |
tool_resources |
object | Opcjonalnie | Zestaw zasobów udostępnianych narzędziom asystenta w tym wątku. Zasoby są specyficzne dla typu narzędzia. Na przykład code_interpreter narzędzie wymaga listy identyfikatorów plików, a file_search narzędzie wymaga listy identyfikatorów magazynów wektorów. |
Zwraca
Zmodyfikowany obiekt wątku zgodny z określonym identyfikatorem.
Przykład: modyfikowanie żądania wątku
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)
Usuń wątek
DELETE https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}?api-version=2024-05-01-preview
Usuń wątek.
Parametry ścieżki
Parametr | Type | Wymagania | opis |
---|---|---|---|
thread_id |
string | Wymagania | Identyfikator wątku do usunięcia. |
Zwraca
Stan usunięcia.
Przykład: żądanie usunięcia wątku
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)
Obiekt wątku
Pole | Typ | opis |
---|---|---|
id |
string | Identyfikator, do którego można odwoływać się w punktach końcowych interfejsu API. |
object |
string | Typ obiektu, który jest zawsze wątkiem. |
created_at |
integer | Sygnatura czasowa systemu Unix (w sekundach) dla momentu utworzenia wątku. |
metadata |
map | Zestaw 16 par klucz-wartość, które można dołączyć do obiektu. Może to być przydatne do przechowywania dodatkowych informacji o obiekcie w formacie ustrukturyzowanym. Klucze mogą mieć długość maksymalnie 64 znaków, a wartości mogą mieć długość maksymalnie 512 znaków. |