Tworzenie wielojęzycznego agenta głosowego przy użyciu OpenAI Zestaw SDK agenta

Tworzenie wielojęzycznych agentów głosowych przy użyciu OpenAI Zestaw SDK agenta

Aplikacje sterowane głosem przeszły od koncepcji science fiction do wdrażalnych rozwiązań z OpenAI's najnowsze narzędzia. Ten przewodnik przeprowadzi Cię przez praktyczną implementację wielojęzyczni agenci głosowi korzystający z OpenAI Zestaw SDK agenta, pokazując, jak tworzyć systemy przetwarzające mowę w różnych językach, zachowując przy tym rytm interakcji zbliżony do ludzkiego.

Co jest otwarteAI Agent SDK?

OtwarteAI Agent SDK zapewnia deweloperom ramy do tworzenia AI agentów, którzy mogą przetwarzać i reagować na różne dane wejściowe, w tym głosowe. SDK obsługuje model GPT-4o-realtime-preview, który umożliwia możliwość prowadzenia rozmów w czasie rzeczywistym poprzez swoje zaawansowane Przetwarzanie języka naturalnego Funkcje (NLP).

SDK zawiera konkretnie VoicePipeline, komponent zaprojektowany do bezproblemowej obsługi interakcji opartych na głosie. Ten pipeline zarządza złożonym procesem konwersji mowy na tekst, przetwarzania informacji i generowania naturalnie brzmiących odpowiedzi.

Podstawowa architektura nowoczesnych agentów głosowych

Architektura nowoczesnych agentów głosowych

1. Proces przetwarzania mowy

OpenAI's VoicePipeline działa poprzez trzy zsynchronizowane etapy: przechwytywanie dźwięku, przetwarzanie języka i generowanie odpowiedzi. System zaczyna od konwersji surowych sygnałów audio na tekst za pomocą zamiana mowy na tekst modele takie jak GPT-4o Transcribe. Następnie te dane tekstowe trafiają do modeli językowych, które analizują kontekst, intencję i ton emocjonalny. Na koniec komponenty text-to-speech generują naturalnie brzmiące odpowiedzi wokalne, utrzymując jednocześnie płynność konwersacji.

2. Architektury multimodalne i łańcuchowe

W rozwoju agentów głosowych dominują dwa odrębne podejścia:

Bezpośrednie przetwarzanie dźwięku (multimodalne)

GPT-4o-realtime-preview przetwarza dźwięk bez konwersji tekstu, dostarczając odpowiedzi 200-300 ms. Ta architektura przechwytuje niuanse wokalne, w tym wysokość dźwięku i pauzy, umożliwiając świadomy emocji odpowiada w trakcie interakcji z klientami, utrzymując w ten sposób natywne przetwarzanie dźwięku.

Przetwarzanie zorientowane na tekst (łańcuchowe)

Tradycyjne rurociągi są rozdzielone transkrypcja, analiza i etapy syntezy. To modułowe podejście umożliwia szczegółowe rejestrowanie dla aplikacji wrażliwych na zgodność, takich jak triage w opiece zdrowotnej. Deweloperzy uzyskują precyzyjną kontrolę nad każdym etapem, korzystając z modeli zoptymalizowanych pod kątem konkretnych zadań.

Przewodnik po wielojęzycznym agencie głosowym: od kodu do rozmowy

Tworzenie agentów głosowych z OpenAI Agent SDK wymaga określonych konfiguracji środowiska. Wykonaj poniższe kroki, aby utworzyć funkcjonalne środowisko programistyczne z możliwościami głosowymi.

Krok 1. Konfiguracja Pythona i środowiska wirtualnego

Upewnij się, że Python 3.8+ jest zainstalowany. Sprawdź za pomocą:

python --version  

W przypadku nowych instalacji pobierz Pythona z python.org.

a. Utwórz środowisko wirtualne

Wyizoluj zależności, aby uniknąć konfliktów:

p-ython -m venv voice_agent_env  

b. Aktywacja:

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

c. Zainstaluj zależności specyficzne dla głosu

Zainstaluj OpenAI Agents SDK z rozszerzeniami głosowymi i bibliotekami audio:

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

d. Skonfiguruj OtwórzAI Klucz API: Przechowuj swój klucz API w bezpieczny sposób, korzystając ze zmiennych środowiskowych:

  1. Stwórz .env file:
echo "OPENAI_API_KEY=your-api-key-here" > .env  
  1. Klonuj przykładowe repozytorium (opcjonalnie):

Aby przyspieszyć działanie, możesz sklonować oficjalny przykład z OtwarteAI Repozytorium Agents SDK GitHub.

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

Krok 2. Budowanie agenta wielojęzycznego

Główne komponenty obejmują:

  • Agenci językowi dla różnych języków (hiszpański, hindi)
  • Główny agent, który obsługuje początkowe interakcje
  • Narzędzia funkcyjne zapewniające dodatkowe możliwości (np. informacje o pogodzie)

Tutaj's uproszczona wersja struktury kodu:

a. Zdefiniuj swoich agentów

Utwórz różne wystąpienia agenta dla każdego języka, który chcesz obsługiwać. Na przykład agenta hiszpańskiego i agenta hindi można utworzyć z instrukcjami w ich odpowiednich językach:

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

Utwórz swojego głównego asystenta, który będzie wykrywał język wypowiedzi użytkownika i w razie potrzeby delegował zadania odpowiedniemu agentowi:

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. Dodaj narzędzia (opcjonalnie)

Możesz na przykład dodać proste narzędzie pogodowe, które agent może wywołać:

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)

Krok 3. Konfigurowanie kanału głosowego

OtwarteAI Przepływ głosu w programie Agent SDK
Źródło obrazu: OpenAI

Proces przesyłania głosu w ramach SDK łączy w sobie trzy komponenty:

  1. Mowa na tekst (STT): Konwertuje dane wejściowe audio na tekst.
  2. Przepływ pracy agenta: Przetwarza tekst (w tym wykrywa język i wywołuje narzędzia).
  3. Tekst na mowę (TTS): Konwertuje agenta's odpowiedź tekstowa z powrotem w formie audio.

Tutaj's uproszczony przykład:

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

W rzeczywistym zastosowaniu zamiast ciszy przechwytywalibyśmy dźwięk z mikrofonu na żywo, a agent wykrywałby język w czasie rzeczywistym.

Krok 4: Uruchom swojego agenta głosowego

python -m examples.voice.static.main

Najlepsze praktyki w zakresie rozwoju agentów głosowych

Podczas tworzenia agentów głosowych z OpenAI Agent SDK, rozważ następujące najlepsze praktyki:

Podaj jasne instrukcje:Twój agent potrzebuje szczegółowych wskazówek dotyczących tonu, używanego języka i wzorców reakcji.
Test z różnymi akcentamiNawet w obrębie jednego języka różnice w akcencie mogą stanowić wyzwanie rozpoznawanie mowy.
Wdrażanie świadomości emocji:Skonfiguruj swojego agenta tak, aby rozpoznawał emocje użytkowników i odpowiednio na nie reagował.
Dodaj zrozumienie multimodalne:Połącz głos z innymi danymi wejściowymi, takimi jak obrazy lub tekst, aby uzyskać bogatsze interakcje.
Utwórz mechanizmy awaryjne: Zaprojektuj dla swojego agenta eleganckie sposoby radzenia sobie z sytuacjami, których nie rozumie.

Zostań liderem dzięki swojemu wielojęzycznemu agentowi głosowemu już dziś

Tworzenie agentów głosowych z OpenAI Agent SDK stał się znacznie bardziej dostępny. Deweloperzy mogą teraz wybierać między architekturami multimodalnymi lub łańcuchowymi w zależności od swoich konkretnych potrzeb, skonfigurować VoicePipeline i pozwolić SDK obsłużyć przetwarzanie złożone.

W przypadku jakości przepływu konwersacji podejście multimodalne sprawdza się najlepiej. W przypadku struktury i kontroli bardziej odpowiednia jest metoda łańcuchowa. Ta technologia nadal się rozwija, otwierając nowe możliwości dla aplikacji sterowanych głosem.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Ta strona używa Akismet do redukcji spamu. Dowiedz się, w jaki sposób przetwarzane są Twoje dane dotyczące komentarzy.

Dołącz Aimojo Plemię!

Dołącz do ponad 76,200 XNUMX członków i otrzymuj co tydzień fachowe porady! 
???? BONUS: Odbierz nasze 200 dolarówAI „Zestaw narzędzi Mastery Toolkit” GRATIS po rejestracji!

Trendy AI Narzędzia
Voiset

Przekształć swój głos w działanie Google, Outlook, Zoom zintegrowane i automatycznie zsynchronizowane Usprawnij projekty zespołowe i cele osobiste

Vessium

Twórz strony, przepływy e-maili i CRM Uniwersalny silnik sprzedaży Zwiększ konwersje dzięki inteligentnemu narzędziu do tworzenia aplikacji Vessium

Sklep Apify

Potężne narzędzia do scrapowania stron internetowych, zero kodowania Zbieraj dane z Amazon, Google, LinkedIn i innych źródeł Zastąp ręczne kopiowanie i wklejanie automatyzacją

Jedenaście laboratoriów 

Stwórz unikalne syntetyczne głosy lub klonuj swoje własne! Wygeneruj AI głosy w 28 językach mające globalny wpływ. Popraw dźwięk w grze dzięki urzekającym dialogom NPC.

Kling AI

Przekształć tekst w filmy o jakości Hollywood Generuj, edytuj i eksportuj jednym kliknięciem dzięki Kling AI Synchronizacja ruchu ust AI, szacowanie pozy, opowiadanie historii w wielu scenach

© Copyright 2023 - 2025 | Zostań AI Pro | Wykonane z ♥