
Hääljuhitavad rakendused on OpenAI abil nihkunud ulmekontseptsioonidest rakendatavateks lahendusteks.'s uusimad tööriistad. See juhend tutvustab praktilist rakendamist Mitmekeelsed häälagendid, kes kasutavad OpenitAI Agendi SDK, mis näitab, kuidas luua süsteeme, mis töötlevad kõnet erinevates keeltes, säilitades samal ajal inimliku suhtluse rütmi.
Mis on avatudAI Agendi SDK?
avatudAI Agent SDK pakub arendajatele raamistikku loomiseks AI agendid, mis suudavad töödelda ja reageerida mitmesugustele sisenditele, sealhulgas häälele. SDK toetab GPT-4o reaalajas eelvaate mudelit, mis võimaldab reaalajas vestluse võimalused oma edasijõudnute kaudu Natural Language Processing (NLP) funktsioonid.
SDK sisaldab spetsiaalselt VoicePipeline'i, komponenti, mis on loodud häälepõhiste interaktsioonide sujuvaks käsitlemiseks. See konveier juhib kõne tekstiks teisendamise, teabe töötlemise ja loomuliku kõlaga vastuste genereerimise keerulist protsessi.
Kaasaegsete häälagentide põhiarhitektuur

1. Kõnetöötlustoru
OpenAI's VoicePipeline töötab kolmes sünkroniseeritud etapis: heli jäädvustamine, keeletöötlus ja vastuse genereerimine. Süsteem alustab toorhelisignaalide teisendamisega tekstiks, kasutades järgmist. kõnest tekstiks mudelid nagu GPT-4o Transcribe. See tekstisisend sisestatakse seejärel keelemudelitesse, mis analüüsivad konteksti, kavatsusi ja emotsionaalset tooni. Lõpuks loovad kõneks muutvad komponendid loomuliku kõlaga vokaalseid vastuseid, säilitades samal ajal vestluse voo.
2. Multimodaalne vs aheldatud arhitektuur
Kõneagendi arendamisel domineerivad kaks erinevat lähenemisviisi:
Otsene helitöötlus (multimodaalne)
GPT-4o-reaalajas eelvaade töötleb heli ilma teksti teisendamiseta, pakkudes 200–300 ms vastuseid. See arhitektuur jäädvustab häälenüansse, sealhulgas helikõrgust ja pause, võimaldades emotsiooniteadlik vastab klientidega suhtlemise ajal, säilitades kogu oma helitöötluse.
Tekstikeskne töötlemine (aheldatud)
Traditsioonilised torujuhtmed eraldavad transkriptsioon, analüüsi ja sünteesi etapid. See modulaarne lähenemisviis võimaldab üksikasjalikku logimist vastavustundlike rakenduste jaoks, nagu tervishoiu triaaž. Arendajad saavad iga etapi üle täpse kontrolli, kasutades ülesandepõhiseid optimeeritud mudeleid.
Mitmekeelne häälagendi juhend: koodist vestluseni
Häälagentide loomine OpenigaAI Agenti SDK nõuab spetsiifilisi keskkonnakonfiguratsioone. Toimiva arenduskeskkonna loomiseks, millel on häälevõimalused, järgige neid samme.
Samm 1. Pythoni ja virtuaalse keskkonna seadistamine
Veenduge, et Python 3.8+ oleks installitud. Kinnitage:
python --version
Uute installide jaoks laadige Python alla aadressilt python.org.
a. Looge virtuaalne keskkond
Konfliktide vältimiseks eraldage sõltuvused:
p-ython -m venv voice_agent_env
b. Aktiveerimine:
- Linux/macOS:
source voice_agent_env/bin/activate
- Windows:
voice_agent_env\Scripts\activate
c. Installige häälepõhised sõltuvused
Paigaldage avatudAI Agentide SDK koos häällaienduste ja heliteekidega:
pip install 'openai-agents[voice]' numpy sounddevice scipy python-dotenv
d. Avatud seadistamineAI API võti: salvestage oma API võti turvaliselt, kasutades keskkonnamuutujaid:
- Loo
.envfaili:
echo "OPENAI_API_KEY=your-api-key-here" > .env
- Kloonige näidishoidla (valikuline):
Asjade kiirendamiseks võite kloonida ametliku näite rakendusest avatudAI Agentide SDK GitHubi hoidla.
git clone https://github.com/openai/openai-agents-python.git
cd openai-agents-python/examples/voice/static
2. samm. Mitmekeelse agendi loomine
Peamised komponendid hõlmavad järgmist:
- Keelespetsiifilised agendid erinevate keelte jaoks (hispaania, hindi)
- Esmane agent, mis tegeleb esialgsete interaktsioonidega
- Funktsioonitööriistad lisavõimaluste jaoks (nt ilmateave)
Siin's Koodistruktuuri lihtsustatud versioon:
a. Määrake oma agendid
Looge iga keele jaoks, mida soovite toetada, erinevad agendi eksemplarid. Näiteks saab luua hispaania ja hindi agendi koos juhistega nende vastavas keeles:
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",
)
Looge oma peamine assistent, kes tuvastab kasutaja kõnest keele ja delegeerib vajaduse korral vastavale agendile:
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. Lisa tööriistad (valikuline)
Näiteks saate lisada lihtsa ilmatööriista, millele agent võib helistada:
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)
Samm 3. Häältoru seadistamine

SDK hääletoru ühendab kolm komponenti.
- Kõne tekstiks (STT): Teisendab teie helisisendi tekstiks.
- Agendi töövoog: Töötleb teksti (sealhulgas keeletuvastus ja tööriista väljakutsumine).
- Kõnesünteesi (TTS): Konverteerib agendi's tekstivastus tagasi helina.
Siin's lihtsustatud näide:
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())
Reaalses rakenduses jäädvustate vaikuse asemel mikrofoni otsesisendi ja agent tuvastab keele reaalajas.
4. samm: käivitage oma häälagent
python -m examples.voice.static.main
Häälagendi arendamise parimad tavad
Häälagentide loomisel Openi abilAI Agent SDK puhul arvestage järgmiste parimate tavadega:
Võtke oma mitmekeelse kõneagendiga juhtroll juba täna
Häälagentide loomine Openi abilAI Agent SDK on muutunud oluliselt kättesaadavamaks. Arendajad saavad nüüd valida multimodaalsete või aheldatud arhitektuuride vahel vastavalt oma konkreetsetele vajadustele, seadistada VoicePipeline'i ja lasta SDK-l hallata keeruline töötlemine.
Vestlusvoo kvaliteedi tagamiseks toimib kõige paremini multimodaalne lähenemine. Struktuuri ja juhtimise jaoks on aheldatud meetod sobivam. See tehnoloogia areneb edasi, avades uusi võimalusi hääljuhtimisega rakenduste jaoks.

