openai-agents-js: A Lightweight Framework for Multi-Agent Workflows and Voice Agents

Summary
The OpenAI Agents SDK for JavaScript/TypeScript is a powerful, lightweight, and provider-agnostic framework designed for building complex multi-agent workflows. It enables developers to create sophisticated AI applications, including real-time voice agents, by orchestrating multiple LLMs with tools, guardrails, and dynamic handoffs. This SDK streamlines the development of intelligent systems, offering robust features for tracing, debugging, and integrating human-in-the-loop processes.
Repository Info
Tags
Click on any tag to explore related repositories
Introdução
O openai-agents-js é o SDK oficial da OpenAI para a construção de fluxos de trabalho multi-agente e agentes de voz em JavaScript/TypeScript. Este framework leve e poderoso é agnóstico em relação ao provedor, suportando as APIs da OpenAI e outras. Ele foi projetado para simplificar a orquestração de múltiplos LLMs, permitindo a criação de sistemas complexos com agentes configurados com instruções, ferramentas, guardrails e transferências de controle (handoffs).
Os conceitos centrais incluem:
- Agentes: LLMs configurados com instruções, ferramentas, guardrails e handoffs.
- Handoffs: Chamadas de ferramentas especializadas para transferir o controle entre agentes.
- Guardrails: Verificações de segurança configuráveis para validação de entrada e saída.
- Tracing: Rastreamento integrado de execuções de agentes para visualização, depuração e otimização de fluxos de trabalho.
Instalação
Para começar a usar o OpenAI Agents SDK, você pode instalá-lo via npm:
npm install @openai/agents zod@3
Ambientes suportados incluem Node.js 22 ou posterior, Deno e Bun. Há também suporte experimental para Cloudflare Workers com nodejs_compat ativado.
Exemplos
O SDK oferece uma variedade de exemplos para demonstrar suas capacidades. Aqui está um exemplo básico de "Hello World" para criar um agente simples:
import { Agent, run } from '@openai/agents';
const agent = new Agent({
name: 'Assistant',
instructions: 'You are a helpful assistant',
});
const result = await run(
agent,
'Write a haiku about recursion in programming.',
);
console.log(result.finalOutput);
// Code within the code,
// Functions calling themselves,
// Infinite loop's dance.
O diretório examples/ no repositório GitHub contém exemplos mais completos, incluindo uso de ferramentas, handoffs, agentes de voz em tempo real, paralelização e integração de "human-in-the-loop".
Porquê usar
O openai-agents-js é uma escolha excelente para desenvolvedores que buscam construir aplicações AI avançadas devido às suas características robustas:
- Fluxos de trabalho multi-agente: Componha e orquestre múltiplos agentes em um único fluxo de trabalho.
- Integração de ferramentas: Chame ferramentas/funções de forma transparente a partir das respostas do agente.
- Handoffs dinâmicos: Transfira o controle entre agentes dinamicamente durante uma execução.
- Agentes de voz em tempo real: Construa agentes de voz em tempo real usando WebRTC ou WebSockets.
- Rastreamento e depuração: Rastreamento integrado para visualizar e depurar execuções de agentes.
- Guardrails: Validação de entrada e saída para segurança e confiabilidade.
- Human-in-the-Loop: Integre aprovação ou intervenção humana em fluxos de trabalho.
- Suporte a modelos mais amplos: Use modelos não-OpenAI através do adaptador Vercel AI SDK.
Links
- Repositório GitHub: https://github.com/openai/openai-agents-js
- Documentação Oficial: https://openai.github.io/openai-agents-js