Создание многоязычного голосового агента с использованием OpenAI Агент SDK

Создание многоязычных голосовых агентов с использованием OpenAI Агент SDK

Приложения с голосовым управлением перешли от научно-фантастических концепций к развертываемым решениям с OpenAI's новейшие инструменты. Это руководство проходит через практическую реализацию многоязычные голосовые агенты с использованием OpenAI Агент SDK, демонстрируя, как создавать системы, обрабатывающие речь на разных языках, сохраняя при этом ритмы взаимодействия, свойственные человеческому.

Что открытоAI Агент SDK?

ОткрытоAI Agent SDK предоставляет разработчикам фреймворк для создания AI агенты, которые могут обрабатывать и реагировать на различные входы, включая голос. SDK поддерживает модель GPT-4o-realtime-preview, которая позволяет возможности общения в реальном времени благодаря своему передовому Обработка естественного языка (НЛП) особенности.

SDK в частности включает VoicePipeline, компонент, разработанный для бесшовной обработки голосовых взаимодействий. Этот конвейер управляет сложным процессом преобразования речи в текст, обработки информации и генерации естественно звучащих ответов.

Основная архитектура современных голосовых агентов

Архитектура современных голосовых агентов

1. Конвейер обработки речи

OpenAI's VoicePipeline работает через три синхронизированных этапа: захват звука, обработка языка и генерация ответа. Система начинает с преобразования необработанных аудиосигналов в текст с помощью речи в текст Модели, такие как GPT-4o Transcribe. Затем этот текстовый ввод поступает в языковые модели, которые анализируют контекст, намерение и эмоциональный тон. Наконец, компоненты преобразования текста в речь генерируют естественно звучащие голосовые ответы, поддерживая при этом поток разговора.

2. Мультимодальная и цепочечная архитектура

При разработке голосовых агентов доминируют два различных подхода:

Прямая обработка звука (мультимодальная)

GPT-4o-realtime-preview обрабатывает аудио без преобразования текста, обеспечивая отклики в течение 200-300 мс. Эта архитектура улавливает вокальные нюансы, включая высоту тона и паузы, что позволяет осознающий эмоции ответы во время взаимодействия с клиентами, сохраняя исходную обработку звука на протяжении всего времени.

Обработка, ориентированная на текст (связанная)

Традиционные трубопроводы разделяют запись, анализ и этапы синтеза. Этот модульный подход позволяет вести подробную регистрацию для приложений, чувствительных к соблюдению требований, таких как сортировка в здравоохранении. Разработчики получают точный контроль над каждым этапом, используя оптимизированные для конкретных задач модели.

Многоязычное руководство по голосовому агенту: от кода к разговору

Создание голосовых агентов с помощью OpenAI Agent SDK требует определенных конфигураций среды. Выполните следующие шаги, чтобы создать функциональную среду разработки с голосовыми возможностями.

Шаг 1. Настройка Python и виртуальной среды

Убедитесь, что установлен Python 3.8+. Проверьте с помощью:

python --version  

Для новых установок загрузите Python с сайта python.org.

а. Создать виртуальную среду

Изолируйте зависимости, чтобы избежать конфликтов:

p-ython -m venv voice_agent_env  

б. Активация:

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

c. Установка зависимостей, специфичных для голоса

Установить OpenAI Agents SDK с голосовыми расширениями и аудиобиблиотеками:

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

г. Настроить открытиеAI API ключ: Безопасно храните свой ключ API, используя переменные среды:

  1. Создайте  .env файл:
echo "OPENAI_API_KEY=your-api-key-here" > .env  
  1. Клонируйте репозиторий примеров (необязательно):

Чтобы ускорить процесс, вы можете скопировать официальный пример из ОткрытоAI Репозиторий GitHub для Agents SDK.

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

Шаг 2. Создание многоязычного агента

К основным компонентам относятся:

  • Агенты, специфичные для языка для разных языков (испанский, хинди)
  • Основной агент, который занимается первоначальными взаимодействиями
  • Функциональные инструменты для дополнительных возможностей (например, информация о погоде)

Здесь's упрощенная версия структуры кода:

а. Определите своих агентов

Создайте разные экземпляры агента для каждого языка, который вы хотите поддерживать. Например, испанский агент и агент хинди могут быть созданы с инструкциями на соответствующих языках:

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",
)

Создайте своего основного помощника, который будет определять язык речи пользователя и при необходимости делегировать полномочия соответствующему агенту:

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],
)

б. Добавить инструменты (необязательно)

Например, вы можете добавить простой погодный инструмент, который агент может вызвать:

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)

Шаг 3. Настройка голосового конвейера

ОткрытоAI Голосовой конвейер Agent SDK
Источник изображения: OpenAI

Голосовой конвейер SDK объединяет три компонента:

  1. Преобразование речи в текст (STT): Преобразует ваш аудиовход в текст.
  2. Рабочий процесс агента: Обрабатывает текст (включая определение языка и вызов инструментов).
  3. Преобразование текста в речь (TTS): Преобразует агента's текстовый ответ обратно в аудио.

Здесь's упрощенный пример:

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())

В реальном приложении вместо тишины вы бы захватывали живой ввод с микрофона, а агент определял бы язык в реальном времени.

Шаг 4: Запустите голосовой агент

python -m examples.voice.static.main

Лучшие практики разработки голосовых агентов

При создании голосовых агентов с помощью OpenAI Agent SDK, рассмотрите следующие рекомендации:

Дайте четкие инструкции: Вашему агенту необходимы особые указания по тону, использованию языка и моделям реагирования.
Тест с разными акцентами: Даже в пределах одного языка различия в акцентах могут стать проблемой распознавание речи.
Внедрите осознание эмоций: Настройте своего агента для распознавания и адекватного реагирования на эмоции пользователя.
Добавить мультимодальное понимание: Объединяйте голос с другими входными данными, такими как изображения или текст, для более интерактивного взаимодействия.
Создавайте резервные механизмы: Разработайте для своего агента изящные способы решения ситуаций, которые он не понимает.

Возьмите на себя инициативу с вашим многоязычным голосовым помощником уже сегодня

Создание голосовых агентов с помощью OpenAI Agent SDK стал значительно более доступным. Теперь разработчики могут выбирать между мультимодальными или цепочечными архитектурами в зависимости от своих конкретных потребностей, настраивать VoicePipeline и позволять SDK управлять комплексная обработка.

Для качества разговорного потока лучше всего подходит мультимодальный подход. Для структуры и управления больше подходит цепной метод. Эта технология продолжает развиваться, открывая новые возможности для голосовых приложений.

Оставьте комментарий

Ваш электронный адрес не будет опубликован. Обязательные поля помечены * *

Этот сайт использует Akismet для уменьшения количества спама. Узнайте, как обрабатываются данные ваших комментариев.

Присоединяйтесь к команде Aimojo Племя!

Присоединяйтесь к более чем 76,200 XNUMX участникам, чтобы получать инсайдерские советы каждую неделю! 
???? БОНУС: Получите наши 200 долларов “AI «Мастерский набор инструментов» БЕСПЛАТНО при регистрации!

Топ AI Инструменты
Кайбер

Превратите звук, текст и статичные изображения в потрясающие шедевры. AI Сгенерированное видео Бесконечное полотно для музыкантов, художников и создателей визуального контента.

DeepBrain AI

Создать профессионала AI Создание аватар-видео из текста за считанные минуты AI Генератор видео, созданный для скорости и масштабируемости.

Мерф ИИ

Корпоративный уровень AI Генератор голоса, сокращающий время создания озвучки в 10 раз. Самая быстрая платформа преобразования текста в речь для создателей контента, разработчиков и команд локализации.

платить 

Сократите свой DSO и быстрее взыскайте просроченные платежи с помощью AI Автоматизация Интеллектуальная платформа для взыскания долгов и управления дебиторской задолженностью.

Workato AI

Объедините все приложения, агенты и рабочие процессы на единой корпоративной платформе автоматизации. iPaaS №1 для AI Управление бизнес-процессами