Construindo um agente de voz multilíngue usando o OpenAI SDK do agente

Construindo agentes de voz multilíngues usando o OpenAI SDK do agente

Os aplicativos controlados por voz mudaram de conceitos de ficção científica para soluções implantáveis ​​com OpenAI's ferramentas mais recentes. Este guia aborda a implementação prática de agentes de voz multilíngues usando o OpenAI SDK do agente, demonstrando como criar sistemas que processam a fala em diferentes idiomas, mantendo ritmos de interação semelhantes aos humanos.

O que está abertoAI SDK do agente?

AbraAI O Agent SDK fornece aos desenvolvedores uma estrutura para construir AI agentes que podem processar e responder a várias entradas, incluindo voz. O SDK suporta o modelo GPT-4o-realtime-preview, que permite capacidades de conversação em tempo real através de seu avançado Processamento de Linguagem Natural (PNL) apresenta.

O SDK inclui especificamente o VoicePipeline, um componente projetado para lidar com interações baseadas em voz perfeitamente. Este pipeline gerencia o complexo processo de conversão de fala em texto, processamento de informações e geração de respostas com som natural.

Arquitetura central dos agentes de voz modernos

Arquitetura de agentes de voz modernos

1. O pipeline de processamento de fala

OpenAI's O VoicePipeline opera em três estágios sincronizados: captura de áudio, processamento de linguagem e geração de resposta. O sistema começa convertendo sinais de áudio brutos em texto usando fala para texto modelos como GPT-4o Transcribe. Essa entrada textual então alimenta modelos de linguagem que analisam contexto, intenção e tom emocional. Finalmente, componentes de texto para fala geram respostas vocais de som natural, mantendo o fluxo da conversa.

2. Arquiteturas multimodais vs encadeadas

Duas abordagens distintas dominam o desenvolvimento do agente de voz:

Processamento de Áudio Direto (Multimodal)

GPT-4o-realtime-preview processa áudio sem conversão de texto, fornecendo respostas de 200-300 ms. Esta arquitetura captura nuances vocais, incluindo tom e pausas, permitindo consciente da emoção responde durante as interações com o cliente, mantendo o processamento de áudio nativo durante todo o processo.

Processamento centrado em texto (encadeado)

Os gasodutos tradicionais separam transcrição, estágios de análise e síntese. Essa abordagem modular permite registro detalhado para aplicativos sensíveis à conformidade, como triagem de assistência médica. Os desenvolvedores ganham controle preciso sobre cada estágio enquanto usam modelos otimizados específicos para tarefas.

Guia do agente de voz multilíngue: do código à conversação

Criando agentes de voz com OpenAI O SDK do Agente requer configurações de ambiente específicas. Siga estas etapas para estabelecer um ambiente de desenvolvimento funcional com recursos de voz.

Etapa 1. Configuração do Python e do ambiente virtual

Certifique-se de que o Python 3.8+ esteja instalado. Verifique com:

python --version  

Para novas instalações, baixe o Python em python.org.

a. Crie um ambiente virtual

Isole dependências para evitar conflitos:

p-ython -m venv voice_agent_env  

b. Ativação:

  • Linux/macOS:
source voice_agent_env/bin/activate  
  • Windows:
voice_agent_env\Scripts\activate  

c. Instalar dependências específicas de voz

Instalar o OpenAI SDK de agentes com extensões de voz e bibliotecas de áudio:

pip install 'openai-agents[voice]' numpy sounddevice scipy python-dotenv  

d. Configurar AbrirAI Chave API: Armazene sua chave de API com segurança usando variáveis ​​de ambiente:

  1. Crie uma .env arquivo:
echo "OPENAI_API_KEY=your-api-key-here" > .env  
  1. Clonar o repositório de exemplo (opcional):

Para acelerar as coisas, você pode clonar o exemplo oficial do AbraAI Repositório GitHub do SDK de agentes.

git clone https://github.com/openai/openai-agents-python.git
cd openai-agents-python/examples/voice/static

Etapa 2. Construindo o agente multilíngue

Os principais componentes incluem:

  • Agentes específicos de idioma para diferentes idiomas (espanhol, hindi)
  • Um agente primário que lida com interações iniciais
  • Ferramentas de função para recursos adicionais (como informações meteorológicas)

Aqui você encontra's uma versão simplificada da estrutura do código:

a. Defina seus agentes

Crie diferentes instâncias de agente para cada idioma que você deseja oferecer suporte. Por exemplo, um agente espanhol e um agente hindi podem ser criados com instruções em seus respectivos idiomas:

from agents import Agent
from agents.extensions.handoff_prompt import prompt_with_handoff_instructions

spanish_agent = Agent(
    name="Spanish",
    handoff_description="A Spanish speaking agent.",
    instructions=prompt_with_handoff_instructions(
        "You're speaking to a human, so be polite and concise. Speak in Spanish."
    ),
    model="gpt-4o-mini",
)

hindi_agent = Agent(
    name="Hindi",
    handoff_description="A Hindi speaking agent.",
    instructions=prompt_with_handoff_instructions(
        "You're speaking to a human, so be polite and concise. Speak in Hindi."
    ),
    model="gpt-4o-mini",
)

Crie seu assistente principal que detectará o idioma da fala do usuário e delegará ao agente apropriado, se necessário:

agent = Agent(
    name="Assistant",
    instructions=prompt_with_handoff_instructions(
        "You're speaking to a human, so be polite and concise. If the user speaks in Spanish, hand off to the Spanish agent. If the user speaks in Hindi, hand off to the Hindi agent."
    ),
    model="gpt-4o-mini",
    handoffs=[spanish_agent, hindi_agent],
)

b. Adicionar ferramentas (opcional)

Por exemplo, você pode adicionar uma ferramenta meteorológica simples que o agente pode chamar:

import random
from agents import function_tool

@function_tool
def get_weather(city: str) -> str:
    choices = ["sunny", "cloudy", "rainy", "snowy"]
    return f"The weather in {city} is {random.choice(choices)}."
    
agent.tools.append(get_weather)

Etapa 3. Configurando o pipeline de voz

AbraAI Pipeline de voz do SDK do agente
Fonte da imagem: OpenAI

O pipeline de voz do SDK combina três componentes:

  1. Conversão de fala em texto (STT): Converte sua entrada de áudio em texto.
  2. Fluxo de trabalho do Agentic: Processa o texto (incluindo detecção de idioma e invocação de ferramenta).
  3. Conversão de texto para fala (TTS): Converte o agente's resposta de texto em áudio.

Aqui você encontra's um exemplo simplificado:

import asyncio
import numpy as np
import sounddevice as sd
from agents.voice import AudioInput, SingleAgentVoiceWorkflow, VoicePipeline

async def main():
    # Create the voice pipeline with your primary agent
    pipeline = VoicePipeline(workflow=SingleAgentVoiceWorkflow(agent))
    
    # For demonstration, we'll simulate 3 seconds of audio input with silence.
    buffer = np.zeros(24000 * 3, dtype=np.int16)
    audio_input = AudioInput(buffer=buffer)
    
    # Run the pipeline
    result = await pipeline.run(audio_input)
    
    # Set up the audio player (using sounddevice)
    player = sd.OutputStream(samplerate=24000, channels=1, dtype=np.int16)
    player.start()
    
    # Stream and play audio events from the agent's output
    async for event in result.stream():
        if event.type == "voice_stream_event_audio":
            player.write(event.data)

if __name__ == "__main__":
    asyncio.run(main())

Em uma aplicação do mundo real, em vez de silêncio, você capturaria a entrada do microfone ao vivo, e o agente detectaria o idioma em tempo real.

Etapa 4: execute seu agente de voz

python -m examples.voice.static.main

Melhores práticas para desenvolvimento de agentes de voz

Ao construir agentes de voz com o OpenAI SDK do agente, considere estas práticas recomendadas:

Forneça instruções claras:Seu agente precisa de orientação específica sobre tom, uso da linguagem e padrões de resposta.
Teste com sotaques diversos:Mesmo dentro de uma única língua, as variações de sotaque podem desafiar reconhecimento de fala.
Implementar a consciência emocional: Configure seu agente para reconhecer e responder adequadamente às emoções do usuário.
Adicionar compreensão multimodal: Combine voz com outras entradas, como imagens ou texto, para interações mais ricas.
Crie mecanismos de fallback: Crie maneiras elegantes para seu agente lidar com situações que ele não entende.

Assuma a liderança com seu agente de voz multilíngue hoje

Construindo agentes de voz com o OpenAI O SDK do Agente tornou-se significativamente mais acessível. Os desenvolvedores agora podem escolher entre arquiteturas multimodais ou encadeadas com base em suas necessidades específicas, configurar um VoicePipeline e deixar o SDK cuidar de tudo. processamento complexo.

Para qualidade de fluxo de conversação, a abordagem multimodal funciona melhor. Para estrutura e controle, o método encadeado é mais adequado. Essa tecnologia continua a avançar, abrindo novas possibilidades para aplicativos orientados por voz.

Deixa um comentário

O seu endereço de e-mail não será publicado. Os campos obrigatórios são marcados com *

Este site usa o Akismet para reduzir o spam. Saiba como seus dados de comentários são processados.

Participe no Aimojo Tribo!

Junte-se a mais de 76,200 membros para receber dicas privilegiadas toda semana! 
🎁 BONUS: Receba nossos $ 200 “AI “Kit de ferramentas de domínio” GRÁTIS ao se inscrever!

Tendência AI Ferramentas
Kaiber

Transforme som, texto e imagens em trabalhos impressionantes. AI Vídeo gerado A Tela Infinita para Músicos, Artistas e Criadores Visuais

IA DeepBrain

Criar profissional AI Vídeos de avatar a partir de texto em minutos O processo de AI Gerador de vídeo desenvolvido para velocidade e escalabilidade

Murf IA

Grau Empresarial AI Gerador de voz que reduz o tempo de produção de locuções em 10 vezes. A plataforma de conversão de texto em fala mais rápida para criadores, desenvolvedores e equipes de localização.

paymefy 

Reduza seu DSO e recupere faturas em aberto mais rapidamente com AI Completa A Plataforma Inteligente de Cobrança de Dívidas e Contas a Receber

Workato AI

Unifique todos os aplicativos, agentes e fluxos de trabalho em uma única plataforma de automação empresarial. A iPaaS nº 1 para AI Orquestração de negócios impulsionada

© Copyright 2023 - 2026 | Torne-se um AI Pro | Feito com ♥