Referência de threads da API de Assistentes (versão prévia)

Observação

  • A pesquisa de arquivos pode ingerir até 10.000 arquivos por assistente – 500 vezes mais do que antes. Ela é rápida, dá suporte a consultas paralelas por meio de pesquisas com vários threads e recursos aprimorados de reclassificação e reescrita de consulta.
    • O repositório de vetores é um novo objeto na API. Depois que um arquivo é adicionado a um repositório de vetores, ele é analisado automaticamente, em partes e inserido, pronto para ser pesquisado. Os repositórios de vetores podem ser usados entre assistentes e threads, simplificando o gerenciamento de arquivos e a cobrança.
  • Adicionamos suporte para o parâmetro tool_choice que pode ser usado para forçar o uso de uma ferramenta específica (como pesquisa de arquivo, interpretador de código ou uma função) em uma execução específica.

Este artigo fornece documentação de referência para Python e REST para a nova API de Assistentes (Versão prévia). Diretrizes passo a passo mais detalhadas são fornecidas no guia de introdução.

Criar um thread

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

Criar um thread.

Corpo da solicitação

Nome Digitar Obrigatória Descrição
messages matriz Opcional Uma lista de mensagens para iniciar o thread.
metadata map Opcional Conjunto de 16 pares chave-valor que podem ser anexados a um objeto. Isso pode ser útil para armazenar informações adicionais sobre o objeto em um formato estruturado. As chaves podem ter no máximo 64 caracteres e os valores podem ter no máximo 512 caracteres.
tool_resources object Opcional Um conjunto de recursos que são disponibilizados para as ferramentas do assistente neste thread. Os recursos são específicos para o tipo de ferramenta. Por exemplo, a ferramenta code_interpreter requer uma lista de IDs de arquivo, enquanto a ferramenta file_search requer uma lista de IDs do repositório de vetores.

propriedades tool_resources

code_interpreter

Nome Tipo Descrição Padrão
file_ids matriz Uma lista de IDs de arquivo disponibilizadas para a ferramenta code_interpreter. Pode haver no máximo 20 arquivos associados à ferramenta. []

file_search

Nome Tipo Descrição Padrão
vector_store_ids matriz O repositório de vetores anexado a esse thread. Pode haver um máximo de 1 repositório de vetores anexado ao thread. []
vector_stores matriz Um auxiliar para criar um repositório de vetores com file_ids e anexá-lo a esse thread. Pode haver um máximo de 1 repositório de vetores anexado ao thread. []

Devoluções

A objeto de thread.

Exemplo: criar solicitação de thread

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)

Recuperar thread

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

Recupera um thread.

Parâmetros de caminho

Parâmetro Type Obrigatória Descrição
thread_id string Obrigatório A ID do thread a ser recuperado

Retornos

O objeto de thread que corresponde à ID especificada.

Exemplo: recuperar solicitação de thread

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)

Modificar thread

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

Modifica um thread.

Parâmetros de caminho

Parâmetro Type Obrigatória Descrição
thread_id string Obrigatório A ID do thread a ser modificado.

Corpo da solicitação

Nome Digitar Obrigatória Descrição
metadata map Opcional Conjunto de 16 pares chave-valor que podem ser anexados a um objeto. Isso pode ser útil para armazenar informações adicionais sobre o objeto em um formato estruturado. As chaves podem ter no máximo 64 caracteres e os valores podem ter no máximo 512 caracteres.
tool_resources object Opcional Um conjunto de recursos que são disponibilizados para as ferramentas do assistente neste thread. Os recursos são específicos para o tipo de ferramenta. Por exemplo, a ferramenta code_interpreter requer uma lista de IDs de arquivo, enquanto a ferramenta file_search requer uma lista de IDs do repositório de vetores.

Devoluções

O objeto de thread modificado que corresponde à ID especificada.

Exemplo: modificar solicitação de thread

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)

Excluir thread

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

Excluir um thread.

Parâmetros de caminho

Parâmetro Type Obrigatória Descrição
thread_id string Obrigatório A ID do thread a ser excluído.

Retornos

Status da exclusão.

Exemplo: excluir solicitação de thread

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)

Objeto de thread

Campo Type Descrição
id string O identificador, que pode ser referenciado em pontos de extremidade de API.
object string O tipo de objeto, que é sempre thread.
created_at Número inteiro O carimbo de data/hora do Unix (em segundos), para quando o thread foi criado.
metadata map Conjunto de 16 pares chave-valor que podem ser anexados a um objeto. Isso pode ser útil para armazenar informações adicionais sobre o objeto em um formato estruturado. As chaves podem ter no máximo 64 caracteres e os valores podem ter no máximo 512 caracteres.