API de Assistants e Threads da OpenAI
Agentes gerenciados pela OpenAI: infraestrutura zero, mas dependência do fornecedor e uma lacuna na observabilidade.
API de Assistants e Threads da OpenAI é uma aula grátis de AI Agents no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de AI Agents, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de AI Agents inclui 4 aulas no total.
Partes desta aula ainda não foram traduzidas e aparecem em inglês.
O que é?
A API de Assistants da OpenAI é um produto gerenciado para agentes. Você define um assistente (modelo + instruções + ferramentas); os usuários interagem por meio de "threads" (conversas). A OpenAI gerencia o estado, o RAG, o interpretador de código e o armazenamento de arquivos.
Duas grandes atrações
- file_search integrado — RAG gerenciado, sem banco de dados vetorial para executar
- code_interpreter integrado — execução isolada de Python
Se quiser esses recursos sem precisar desenvolvê-los, a API de assistentes é rápida.
Creating an Assistant
from openai import OpenAI
client = OpenAI()
assistant = client.beta.assistants.create(
name='Support Bot',
instructions='You help customers with orders.',
model='gpt-4o-mini',
tools=[{'type': 'file_search'}, {'type': 'code_interpreter'}]
)Threads = Conversations
thread = client.beta.threads.create()
client.beta.threads.messages.create(
thread_id=thread.id,
role='user',
content='Where is my order?'
)
run = client.beta.threads.runs.create(
thread_id=thread.id,
assistant_id=assistant.id
)Aguardando a conclusão
As execuções são assíncronas. Faça consultas periódicas até que terminem:
import time
while run.status not in ('completed', 'failed', 'requires_action'):
time.sleep(1)
run = client.beta.threads.runs.retrieve(thread_id=thread.id, run_id=run.id)Chamada de funções
O padrão é o mesmo das ferramentas de chat.completions. Quando run.status == 'requires_action', despache as chamadas de ferramentas e envie os resultados:
if run.status == 'requires_action':
tool_outputs = []
for tc in run.required_action.submit_tool_outputs.tool_calls:
result = dispatch(tc)
tool_outputs.append({'tool_call_id': tc.id, 'output': json.dumps(result)})
client.beta.threads.runs.submit_tool_outputs(thread_id=thread.id, run_id=run.id, tool_outputs=tool_outputs)File Search (Vector Store)
vector_store = client.beta.vector_stores.create(name='docs')
client.beta.vector_stores.file_batches.upload_and_poll(
vector_store_id=vector_store.id,
files=[open('handbook.pdf', 'rb')]
)
assistant = client.beta.assistants.update(assistant.id, tool_resources={'file_search': {'vector_store_ids': [vector_store.id]}})Interpretador de código
Adicione code_interpreter e o assistente receberá um ambiente isolado de Python. Excelente para tarefas com dados:
{'type': 'code_interpreter'}Streaming
with client.beta.threads.runs.stream(thread_id=thread.id, assistant_id=assistant.id) as stream:
for event in stream:
print(event)Compromissos
- + Nenhuma infraestrutura para armazenamentos vetoriais e ambientes isolados
- + Memória e estado dos tópicos gerenciados
- + Citações integradas do file_search
- - Dependência do fornecedor
- - Menos controle sobre a estratégia de recuperação
- - Latência maior que a do chat.completions direto
- - Observabilidade mais limitada
Roteiro
A OpenAI anunciou a API Responses como sucessora da API de assistentes. Algumas equipes aguardam a estabilização de Responses antes de adotar a API de assistentes.
Use para protótipos
Colocar no ar um robô de perguntas e respostas sobre documentos em 50 linhas? É difícil superar a API de assistentes. Para produção com SLAs rigorosos e recuperação personalizada? Desenvolva a solução por conta própria.
Custo
A API de assistentes cobra:
- Custos normais de tokens
- file_search: armazenamento cobrado por dia e por GB
- code_interpreter: cobrança por sessão
É barato para baixo volume, mas o custo pode aumentar com uso intenso.
Melhor uso da API de assistentes
Qual caso de uso se adapta melhor à API de assistentes?
Recapitulação
A API de assistentes = produto de agentes gerenciado. file_search + code_interpreter + tópicos. Excelente para protótipos; menos adequado para produção em grande escala. Acompanhe a API Responses.
Aprenda AI Agents com um tutor de IA — grátis
Escreva e execute código real no seu navegador, obtenha ajuda instantânea de um tutor de IA 24/7 e continue de onde parou na web ou no app.
- Cursos
- 60
- Aulas
- 239
Perguntas Frequentes
A aula “API de Assistants e Threads da OpenAI” é grátis?
Sim — o texto completo de “API de Assistants e Threads da OpenAI” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de AI Agents, atualize para CoddyKit PRO. O curso de AI Agents inclui 4 aulas no total.
O que vou aprender em “API de Assistants e Threads da OpenAI”?
Agentes gerenciados pela OpenAI: infraestrutura zero, mas dependência do fornecedor e uma lacuna na observabilidade. Você pratica AI Agents com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar AI Agents?
Nenhuma experiência prévia é necessária. AI Agents no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.
Quanto tempo leva a aula “API de Assistants e Threads da OpenAI”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de AI Agents?
Sim. Cada aula de AI Agents inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- LangGraph vs CrewAI vs AutoGen
- Letta (anteriormente MemGPT) para agentes de longa duração
- API de Assistants e Threads da OpenAI
- Escolhendo a estrutura certa para cada caso de uso