Sdílet prostřednictvím


Reference ke zprávám rozhraní API asistentů (Preview)

Poznámka:

  • Hledání souborů může ingestovat až 10 000 souborů na asistenta – 500krát více než dříve. Je to rychlý způsob, podporuje paralelní dotazy prostřednictvím vícevláknového vyhledávání a vylepšeného řazení a přepisování dotazů.
    • Vektorové úložiště je nový objekt v rozhraní API. Jakmile se soubor přidá do úložiště vektorů, automaticky se parsuje, zachytá a vloží a připraví k hledání. Vektorová úložiště se dají používat napříč asistenty a vlákny, což zjednodušuje správu souborů a fakturaci.
  • Přidali jsme podporu parametru tool_choice , který se dá použít k vynucení použití konkrétního nástroje (například vyhledávání souborů, interpret kódu nebo funkce) v určitém spuštění.

Tento článek obsahuje referenční dokumentaci pro Python a REST pro nové rozhraní API asistentů (Preview). Podrobnější podrobné pokyny najdete v úvodní příručce.

Vytvořit zprávu

POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}/messages?api-version=2024-08-01-preview

Vytvořit zprávu.

Parametr cesty

Parametr Type Požadováno Popis
thread_id string Požaduje se ID vlákna pro vytvoření zprávy.

Text požadavku

Name Type Požadováno Popis
role string Požaduje se Role entity, která vytváří zprávu. Může být user nebo assistant. user označuje, že zpráva je odeslána skutečným uživatelem a měla by být použita ve většině případů k reprezentaci uživatelem generovaných zpráv. assistant označuje, že zpráva je generována asistentem. Tato hodnota slouží k vložení zpráv z asistenta do konverzace.
content řetězec Požaduje se Obsah zprávy.
attachments pole Volitelné Seznam souborů připojených ke zprávě a nástroje, do které by se měly přidat.
metadata map Volitelné Sada 16 párů klíč-hodnota, které lze připojit k objektu. To může být užitečné pro ukládání dalších informací o objektu ve strukturovaném formátu. Klíče můžou mít maximálně 64 znaků a hodnoty můžou mít maximálně 512 znaků.

Návraty

Objekt zprávy.

Příklad žádosti o vytvoření zprávy

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)

Seznam zpráv

GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}/messages?api-version=2024-08-01-preview

Vrátí seznam zpráv pro dané vlákno.

Parametry cesty

Parametr Type Požadováno Popis
thread_id string Požaduje se ID vlákna, do kterého zprávy patří.

Parametry dotazu

Name Type Požadováno Popis
limit integer Volitelné – výchozí hodnota je 20. Omezení počtu vrácených objektů. Limit může být v rozsahu 1 až 100 a výchozí hodnota je 20.
order string Volitelné – výchozí hodnoty pro desc Seřaďte pořadí podle časového razítka created_at objektů. asc pro vzestupné pořadí a desc pro sestupné pořadí.
after řetězec Volitelné Kurzor pro použití ve stránkování poté je ID objektu, které definuje vaše místo v seznamu. Pokud například vytvoříte požadavek na seznam a obdržíte 100 objektů, končící na obj_foo, může následující volání zahrnovat after=obj_foo, aby se načte další stránka seznamu.
run_id string Optionanl Filtrovat zprávy podle ID spuštění, které je vygenerovalo.
before řetězec Volitelné Kurzor pro použití ve stránkování předtím je ID objektu, které definuje vaše místo v seznamu. Pokud například vytvoříte požadavek na seznam a obdržíte 100 objektů, končící na obj_foo, může následující volání zahrnovat před=obj_foo, aby bylo možné načíst předchozí stránku seznamu.

Návraty

Seznam objektů zpráv .

Příklad žádosti o výpis zpráv

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)

Načtení zprávy

GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}/messages/{message_id}?api-version=2024-08-01-preview

Načte soubor zprávy.

Parametry cesty

Parametr Type Požadováno Popis
thread_id string Požaduje se ID vlákna, ke kterému zpráva patří.
message_id řetězec Požaduje se ID zprávy, která se má načíst.

Návraty

Objekt zprávy odpovídající zadanému ID.

Příklad žádosti o načtení zprávy

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)

Úprava zprávy

POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}/messages/{message_id}?api-version=2024-08-01-preview

Upraví zprávu.

Parametry cesty

Parametr Type Požadováno Popis
thread_id string Požaduje se ID vlákna, do kterého zpráva patří.
message_id řetězec Požaduje se ID zprávy, kterou chcete upravit.

Text požadavku

Parametr Type Požadováno Popis
metadata map Volitelné Sada 16 párů klíč-hodnota, které lze připojit k objektu. To může být užitečné pro ukládání dalších informací o objektu ve strukturovaném formátu. Klíče můžou mít maximálně 64 znaků a hodnoty můžou mít maximálně 512 znaků.

Návraty

Upravený objekt zprávy .

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)

Odstranění zprávy

DELETE https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}/messages/{message_id}?api-version=2024-08-01-preview

Odstraní zprávu.

Parametry cesty

Parametr Type Požadováno Popis
thread_id string Požaduje se ID vlákna, do kterého zpráva patří.
message_id řetězec Požaduje se ID zprávy, kterou chcete upravit.

Návraty

Stav odstranění objektu zprávy .

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)

Objekt zprávy

Představuje zprávu v rámci vlákna.

Name Typ Description
id string Identifikátor, na který se dá odkazovat v koncových bodech rozhraní API.
object string Typ objektu, který je vždy thread.message.
created_at integer Časové razítko unixu (v sekundách) pro vytvoření zprávy.
thread_id string ID vlákna, do kterého tato zpráva patří.
role string Entita, která zprávu vytvořila. Jeden z user nebo assistant.
content pole Obsah zprávy v poli textu nebo obrázků.
assistant_id řetězec nebo null Pokud je to možné, ID asistenta, který tuto zprávu vytvořil.
run_id řetězec nebo null Pokud je to možné, ID spuštění přidruženého k vytváření této zprávy.
file_ids pole Seznam ID souborů, které má asistent používat. Užitečné pro nástroje, jako je načtení a code_interpreter, které mají přístup k souborům. Ke zprávě lze připojit maximálně 10 souborů.
metadata map Sada 16 párů klíč-hodnota, které lze připojit k objektu. To může být užitečné pro ukládání dalších informací o objektu ve strukturovaném formátu. Klíče můžou mít maximálně 64 znaků a hodnoty můžou mít maximálně 512 znaků.