OpenAI GPT-Realtime-2: Potpuni vodič za glas u stvarnom vremenu

Zadnje ažuriranje: 08/05/2026

  • GPT-Realtime-2 obrađuje end-to-end audio s latencijama od 250–500 ms.
  • API nudi sesije glasovnog agenta, kontinuirano prevođenje i transkripciju uživo.
  • Podržava WebRTC, WebSocket i SIP, s modelima Realtime i Realtime-mini na Azureu.
  • Uključuje napredne VAD, multimodalnost, MCP i višeagentne obrasce za proizvodnju.

OpenAI GPT model u stvarnom vremenu za glas i audio

Dolazak OpenAI GPT-Realtime-2 i cijela obitelj modela govora u stvarnom vremenu To temeljno mijenja način na koji se grade glasovni asistenti, telefonski agenti i iskustva razgovora. Više ne govorimo samo o pretvorbama "audio-u-tekst" i "tekst-u-audio", već o besprijekornim razgovorima s niskom latencijom koji mogu razumjeti ton, namjeru i kontekst gotovo kao osoba.

U ovom članku ćemo analizirati, mirno, ali izravno, Kako funkcioniraju OpenAI i Azure OpenAI Realtime API, koje vrste sesija postoje, koje se latencije mogu postići i kako se integriraju s WebRTC-om, WebSocketom ili SIP-om?Koji su modeli dostupni, kako su sesije konfigurirane (VAD, alati, MCP, multimodalnost itd.) i u kojim je slučajevima klasična STT + LLM + TTS arhitektura još uvijek prikladna? Ako želite izgraditi ozbiljnog glasovnog agenta u 2026. godini, evo potpune slike.

Što je GPT-Realtime-2 i koji problem rješava?

GPT-Realtime-2

Osnovna ideja je jednostavna: model sposoban za obradu zvuka od početka do kraja u stvarnom vremenu, bez prolaska kroz tri odvojena modela (STT, LLM, TTS). Tradicionalno, tijek rada s umjetnom inteligencijom glasom bio je:

  • Pretvaranje govora u tekst (STT): pretvara korisnikov glas u tekst.
  • LLM: generira tekstualni odgovor iz te transkripcije.
  • Pretvaranje teksta u govor (TTS): sintetizira odgovor u zvuk.

Taj cjevovod radi, ali Svaki korak dodaje između 100 i 300 milisekundiKada zbrojite mrežni prijenos, obradu i čekanje, lako dobijete 1-2 sekunde tišine nakon što osoba prestane govoriti. Na telefonu je ta "mrtva" rupa ključna: nema trake napretka, nema okretnog gumba; samo tišina... i mnogi ljudi odluče prekinuti vezu.

S modelima iz obitelji GPT-Realtime, uključujući novi GPT-Realtime-2, Sva obrada se vrši izvorno na audio signaluModel ima pristup tonu, ritmu i emocijama te može generirati audio odgovor bez potrebe za rekonstrukcijom i ponovnom sintetizacijom teksta. U praksi, OpenAI i Azure govore o latencije od kraja do kraja u rasponu od 250-500 msšto već spada u kategoriju "osjeća se kao da razgovaraš s nekim tko malo razmisli prije nego što odgovori".

To ne utječe samo na brzinu. Radeći izravno sa zvukom, model više ne gubi nijanse koje isparavaju u ravnoj transkripcijiUzdasi, promjene tona koje ukazuju na ljutnju ili olakšanje, sumnje, smijeh… Za španjolsko govorno područje, gdje je telefonska interakcija obično izražajnija nego na drugim tržištima, ova nijansa čini razliku između ugodnog poziva i frustrirajuće interakcije.

Vrste sesija u stvarnom vremenu: glasovni agent, prevođenje i transkripcija

Prva stvar koju treba odlučiti prije integracije GPT-Realtime-2 je Koja vrsta seanse vam je potrebna ovisno o rezultatu koji želite postići?API za rad u stvarnom vremenu razlikuje tri glavna obrasca:

1. Sesija (razgovor) s glasovnim agentom
Koristi se kada želite Potpuni asistent za razgovor, sposoban odgovarati, pozivati ​​alate i održavati status.Klijent se povezuje sa standardnom krajnjom točkom /v1/realtimeŠalje zvuk ili tekst i prima događaje s odgovorima modela, pozivima alata, promjenama sesija itd. To je klasični način rada "glasovnog asistenta" za:

  • Agenti za korisničku podršku.
  • Osobni glasovni asistenti.
  • Web ili mobilne aplikacije s kontinuiranom konverzacijom.

2. Sesija prevođenja (kontinuirano prevođenje)
Cilj je ovdje drugačiji: Koristite API kao konkurentnog interpreteraUmjesto krajnje točke glasovnog agenta koristi se sljedeće: /v1/realtime/translationsKlijent šalje zvuk kontinuirano i Usluga vraća prevedeni audio i transkripcijske delteNema izmjena "korisnik/asistent" kao takvih; sesija je kontinuirani tok prevođenja.

3. Sesija transkripcije (transkripcija uživo)
U ovom slučaju samo želimo tekst iz zvuka, u stvarnom vremenu, bez da model generira govorne odgovoreDelte transkripcije primaju se kako zvuk stiže, ali asistent ne emitira glasovnu poruku. Idealno je za titlovanje, zapisnike u stvarnom vremenu ili analitiku razgovora.

Ukratko, Koristite sesije glasovnog agenta kada vam je potreban asistent za govor; koristite prijevod kada vam je potreban tumač; i koristite transkripciju kada vam je potreban samo tekst bez generiranog odgovora.Svaka vrsta sesije ima svoju krajnju točku, tijek događaja i specifične karakteristike.

Dostupni modeli u stvarnom vremenu i osnovne mogućnosti

Na razini Azure OpenAI-a, obitelj modela u stvarnom vremenu za glas i zvuk je opsežna. Među uobičajenim implementacijama su:

  • gpt-4o-realtime-pregled-2024-12-17varijanta u stvarnom vremenu temeljena na GPT-4o.
  • gpt-4o-mini-realtime-preview-2024-12-17lakša i jeftinija verzija.
  • gpt-realtime-2025-08-28Opća linija u stvarnom vremenu.
  • gpt-realtime-mini-2025-10-06 y 2025-12-15: modeli s optimiziranim troškovima.
  • gpt-realtime-1.5-2026-02-23: naknadna evolucija s većim mogućnostima.

Svi ovi modeli dijele nekoliko ključnih značajki:

  • Ulazni kontekst do 32 000 tokena i izlaz od 4.096 tokena, više nego dovoljno za bogate razgovore s proširenim kontekstom.
  • Audio i tekstualni načini radaMogu primati i prenositi zvuk, kao i obrađivati ​​"klasični" tekst.
  • Ujedinjena krajnja točka GA-e s nastavkom /openai/v1 u Azureu, i za Realtime API i za sve ostale operacije.
Ekskluzivan sadržaj - Kliknite ovdje  Što je testiranje integracije automatizacije aplikacija?

Osim toga, dodaje se sljedeće Specifični glasovi za Realtime API, kao što su Cedar i MarinUz klasični Alloy, ovi su dizajnirani kako bi glasovne interakcije zvučele prirodnije. Idealni su za projekte gdje je cijena ključna, a složenost zadatka nije prevelika. gpt-realtime-mini Obično je to najbolja kombinacija latencije i cijene.

API veza: WebRTC, WebSocket i SIP

GPT-Realtime-2-model

Jedna od velikih prednosti GPT-Realtime-2 i pridruženog Realtime API-ja je ta što Niste vezani za jedan način prijevozaMožete birati prema vrsti aplikacije:

WebRTC
To je preporučena opcija za Klijentske aplikacije (web i mobilne) gdje je niska latencija prioritetWebRTC u mnogim slučajevima postiže vrijeme odziva od oko ~100 ms i optimizirano upravljanje zvukom za preglednike.

WebSocket
Idealno za komunikacija između poslužiteljaIntegracije s medijskim cjevovodima ili kada želite veću kontrolu nad tokom događaja iz pozadine. Tipična latencija je oko 200 ms. Vrlo je korisno pri povezivanju Realtime API-ja sa sustavima čekanja, mikroservisima ili grupnom obradom zvuka.

SIP (Protokol za inicijalizaciju sesije)
Evo najsočnijeg dijela iz svijeta telefonskih poziva: Realtime API podržava SIP za integraciju s telefonskim mrežamaTo znači da možete izravno povezati AI agenta s poslovnom telefonskom infrastrukturom (PBX, cloud PBX-ovi, VoIP pružatelji usluga itd.) bez potrebe da sami postavljate posrednički audio most.

Na tržištima poput Španjolske ili većeg dijela Latinske Amerike, gdje Telefonska podrška ostaje primarni kanal kontakta s klijentimaOva izvorna SIP podrška uvelike smanjuje složenost inženjeringa: manje dijelova, manja latencija, niži troškovi i manje točaka kvara.

Tijek razgovora, događaji i postavke sesije

U suštini, sesije u stvarnom vremenu temelje se na Sustav događaja koji kontrolira sve: stvaranje sesije, konfiguraciju, slanje zvuka, generiranje odgovora, alate, VAD... Nakon što se otvori veza s krajnjom točkom /realtimePoslužitelj obično odgovara događajem session.created koji sadrži:

  • ID sesije.
  • Aktivni model (Na primjer, gpt-4o-mini-realtime-preview-2024-12-17).
  • Podržani modaliteti (audio, tekst).
  • Početne upute i zadani glas.
  • VAD konfiguracija i ulazno/izlazni audio formati.
  • Datum isteka (do 30 minuta po sesiji).

Obično je prva poruka koju klijent šalje nakon povezivanja session.update za fino podešavanje ponašanja sesijeU ovom opterećenju možete:

  • Definiraj glas koristiti i upute asistenta (uloga, ton, ograničenja, format odgovora…).
  • Odaberite ulazni i izlazni audio format (na primjer, PCM16 na 24 kHz, mono).
  • Aktivirajte ulazni audio transkript što ukazuje na STT model kao whisper-1 primati događaje audio_transcription.completed.
  • Konfigurirajte detekcija glasovne aktivnosti (VAD) kroz polje turn_detection.
  • Proglasiti MCP alati i poslužitelji koje će model moći pozvati.

Tipičan primjer konfiguracije sesije uključuje nešto poput ovoga:

{ "type": "session.update", "session": { "voice": "alloy", "instructions": "", "input_audio_format": "pcm16", "input_audio_transcription": { "model": "whisper-1" }, "turn_detection": { "type": "server_vad", "threshold": 0.5, "prefix_padding_ms": 300, "silence_duration_ms": 200, "create_response": true }, "tools": [] } }

Poslužitelj će potvrditi događajem session.updated što označava da je konfiguracija aktivna. Odatle, Razgovori se upravljaju putem događaja kao što su response.create, response.done, conversation.item.createDelte teksta i zvuka te alati.

VAD, smjene u razgovoru i kontrola toka zvuka

Ključni element za prirodno glasovno iskustvo je način na koji sustav prepoznaje kada je korisnik završio s govorom. Realtime API nudi nekoliko načina za to. detekcija vokalne aktivnosti (VAD), kojim upravlja nekretnina turn_detection sjednice.

poslužitelj_vad
To je zadani način rada. Automatski fragmentira zvuk na temelju tišinePoslužitelj održava ulazni audio međuspremnik (ono što klijent šalje s događajima poput input_audio_buffer.append) i, kada otkrije kraj govora prema pragu tišine, može:

  • Potvrdite primljeni zvuk.
  • Pokreni generiranje odgovora, ako create_response je na true.

semantički_vad
Evo je model Odlučite kraj okretanja na temelju riječi i semantičkog kontekstane samo iz tišine. Manja je vjerojatnost da će prekinuti korisnika usred rečenice ili prerano fragmentirati transkript. Vrlo korisno za prirodnije glasovne razgovore.

nijedan
U ovom načinu rada potpuno onemogućujete automatski VAD. Klijent ručno kontrolira smjene, obično s uzorkom "pritisni za razgovor" (PTT). Koristi se eksplicitnim slanjem događaja potvrde međuspremnika i response.create kada želite izazvati odgovor. Idealno je kada već imate vlastiti vanjski VAD ili programirani audio stream.

Ekskluzivan sadržaj - Kliknite ovdje  Burry protiv Nvidije: bitka koja dovodi u pitanje procvat umjetne inteligencije

Nadalje, moguće je Koristite VAD poslužitelja bez automatskog generiranja odgovoraJednostavno popravi turn_detection.create_response a falseSustav nastavlja detektirati kraj glasovnih poruka, ali ne pokreće odgovore dok ih ne pošaljete. response.createVrlo je korisno za scenarije s moderiranjem ili prethodnom ljudskom validacijom.

Odgovori, otkazivanja, kontekst i korištenje izvan opsega

Da bi generirao odgovor, klijent šalje događaj response.createPoslužitelj odgovara s response.created I, dok obrađuje, emitira niz međudogađaja:

  • response.output_item.added
  • conversation.item.created
  • response.content_part.added
  • response.audio_transcript.delta / response.output_audio_transcript.delta
  • response.audio.delta / response.output_audio.delta
  • Događaji ...done za svaki dio (audio, tekst, sadržaj).

Zahvaljujući ovim deltama, Možete gotovo odmah početi reproducirati zvuk, dok model nastavlja "razgovarati". Kada završi, šalje response.done s konačnim strukturiranim odgovorom, uključujući metrike korištenja transkripta i tokena.

Ponekad nije poželjno da se odgovor doda glavnom statusu razgovora. Tu dolazi do izražaja koncept... odgovori izvan opsegaMožete kreirati odgovor pomoću "conversation": "none" unutar objekta response, što ukazuje na to da:

  • Taj odgovor neće biti dodan u zadanu nit razgovora.
  • Možete koristiti response.metadata označiti temu ili svrhu.

Također je moguće proći prilagođeni kontekst za ove izvanpojasne odgovorekorištenjem matrice input s referencama na postojeće stavke razgovora ili dodatne poruke. To je elegantan način za:

  • Generirajte alternativne odgovore.
  • Ograničite broj pomaka koje model uzima u obzir.
  • Postavljajte konkretna pitanja bez "kontaminacije" glavnog razgovora.

Ako u bilo kojem trenutku trebate prekidanje asistenta Budući da korisnik govori preko njih ili više ne želi slušati, možete koristiti response.cancelNadalje, događaj conversation.item.truncate dopušta skraćivanje generiranog zvuka i njegove transkripcije na strani poslužiteljatako da u kontekstu ne ostane tekst koji osoba nikada nije čula.

Unos slike i kompatibilnost s MCP-om

Modeli u stvarnom vremenu nisu ograničeni samo na zvuk i tekst. Također prihvaćaju slike kao dio razgovoraTo otvara vrata multimodalnim iskustvima, gdje korisnik prikazuje nešto na ekranu i istovremeno govori:

Za dodavanje slike šalje se događaj. conversation.item.create čiji sadržaj uključuje blok input_image sa slikom kodiranom u base64 ili URL-om sa shemom data:imageModel tada može temelji svoj odgovor na onome što vidiš, idealno na primjer za vizualnu tehničku podršku ili vođene ture.

S druge strane, Realtime API ima podršku za MCP (Model Context Protocol) poslužiteljiUglavnom, udaljeni MCP poslužitelj možete deklarirati kao alat u postavkama sesije:

  • Vi definirate server_label (na primjer, "pruga").
  • Vi navodite server_url, autorizacijski token i pravila odobravanja (require_approval).

S tim se usluga brine o automatski upravlja pozivima tim alatima unutar razgovora. To je vrlo moćan način za masovno proširenje onoga što agent može učiniti (plaćanja, CRM, ERP itd.) bez potrebe da samostalno implementirate cijeli protokol orkestracije.

Sigurnost, identifikatori i moderiranje

Pri radu s krajnjim korisnicima, posebno onima koje je lako prepoznati (kupci, pacijenti, studenti…), preporučljivo je koristiti sigurnosni identifikatoriRealtime API omogućuje slanje stabilne i privatnost poštujuće vrijednosti (npr. hashiranog internog ID-a) u zaglavlju OpenAI-Safety-Identifier.

Taj identifikator Nije obavezno, ali se preporučuje. Jer pomaže OpenAI-ju da otkrije i ublaži zlouporabu bez potrebe za zatvaranjem cijele organizacije: protiv određenog korisnika mogu se poduzeti mjere ako nešto izmakne kontroli. Važno: Nije naslijeđeno od drugih API-jaAko već koristite safety_identifier U Responses API-ju morate ga eksplicitno ponovno proslijediti u svakoj vezi ili sesiji u stvarnom vremenu.

Na razini korisničkog sučelja, mnogi referentni primjeri integriraju moderatorske ograde izravno u toku događajaNa primjer, označavanje poruke kao "u tijeku" kada počne stizati response.text.deltai mijenjajući u „neuspješno“ ili „odobreno“ ovisno o tome je li događaj primljen guardrail_tripped o response.doneOva moderacija može se prilagoditi slučaju upotrebe: od jednostavnog jezičnog filtera do strogih politika u reguliranim sektorima.

Napredne arhitekture: nadzornici, višeagentski sustav i primopredaje

Osim „jednog modela koji komunicira s korisnikom“, kombinacija GPT-Realtime-2 s moćnim tekstualnim modelima omogućuje napredni obrasci agenataSam OpenAI je demonstrirao neke od njih sa svojim Agents SDK-om:

Uzorak nadzornika chata
U ovoj arhitekturi, uloge su odvojene:

  • Un agent za chat u stvarnom vremenu (temeljeno na modelu u stvarnom vremenu) odgovorno je za razgovor s korisnikom, prikupljanje podataka, održavanje tečnosti i rješavanje jednostavnih zadataka.
  • Un model nadzornika teksta (na primjer, gpt-4.1) obrađuje složene pozive alata, dugo zaključivanje i odgovore visoke razine.

Prednosti ovog pristupa:

  • Jednostavno uvođenjeAko već imate dobro podešenog tekstualnog chatbota, možete ponovno upotrijebiti njegov upit i alate kao nadzornik.
  • Kontrolirani trošakGlasovni agent može koristiti jeftin Realtime-mini model, dok se skaliranje na fat model vrši samo kada je to potrebno.
  • Prirodnije korisničko iskustvoGlasovni model odmah odgovara, iako potom interno delegira i postoji malo kašnjenje prije isporuke konačnog sadržaja.
Ekskluzivan sadržaj - Kliknite ovdje  Kako omogućiti ChatGPT-u kontrolu i integraciju s Windowsima

Uzorak sekvencijalnog prebacivanja (višeagentni)
Inspiriran OpenAI Swarmom, ovaj uzorak definira mreža specijaliziranih agenataJedan agent obrađuje autentifikaciju korisnika, drugi obrađuje povrate, treći obrađuje prodaju, treći eskalira ljudskim agentima i tako dalje. Korisnik se prebacuje između agenata na temelju njihove namjere, a svaki prijenos je koordiniran s događajima. session.update koje mijenjaju upute i aktivne alate.

Ovaj model omogućuje:

  • Imati agente s vrlo duge i specifične upute bez miješanja svega u jedan mega-prompt.
  • Primijeni skuplji modeli zaključivanja samo na točkama visokog rizika (na primjer, potvrđivanje povrata novca).
  • Implementirati strojevi stanja za prikupljanje osjetljivih podataka (ime, broj telefona…) s potvrdama znak po znak.

SDK za agente i primjeri u Next.js obično pokazuju:

  • Selektor „scenarija“ za odabir grafa agenta.
  • Zapisivanje i transkripcija događaja u stvarnom vremenu.
  • Tipke za prebacivanje između automatskog VAD-a i PTT-a ili za onemogućavanje reprodukcije zvuka.

Azure OpenAI Realtime: Zahtjevi, primjeri i alati

U ekosustavu Azure, Realtime API za GPT integriran je unutar Obitelj GPT-4o za glasovne interakcije s niskom latencijomZa korištenje vam je potrebno:

  • Azure pretplata.
  • Resurs Microsoft Foundryja u kompatibilnoj regiji.
  • API ključ ili autentifikacija s Microsoft Enter ID-om (preporučeno za proizvodnju).
  • Implementacija GPT modela u stvarnom vremenu (Na primjer, gpt-realtime) u toj regiji.

Na Foundry portalu konfigurirate projekt, odaberete "Izradi", odete na karticu modeli, odaberete osnovni model u stvarnom vremenu i kliknete "Implementiraj". Odatle možete čak i pokrenite probni chat na samom portalu:

  • Vi birate implementaciju gpt-realtime.
  • Ako želite, možete prilagoditi upute, osobnost, format odgovora i parametre kao što su VAD prag, popunjavanje prefiksa ili trajanje tišine.
  • Pritisnete "Počni slušati" i govorite u mikrofon.
  • Za prekid razgovora prestajete slušati s sučelja.

Na razini koda postoje primjeri u Pythonu (s knjižnica openai[realtime] i, opcionalno, azure-identity za autentifikaciju bez ključa) i u C#, s tipičnim brzim početkom koji stvara konzolni projekt, konfigurira varijable okruženja AZURE_OPENAI_ENDPOINT, AZURE_OPENAI_DEPLOYMENT_NAME, AZURE_OPENAI_API_KEYi koristi RealtimeClient y RealtimeSessionClient za prijavu, slanje teksta, primanje streaming zvuka i teksta itd.

Primjeri jasno ilustriraju vrstu izlaza koju možete očekivati: tekstualne delte poput "Ja", "radim", "dobro" i audio blokove od 4.800, 7.200, 12 000 bajtova itd., za sastavljanje cjelovitih fraza poput „Naravno, ovdje sam da pomognem. S čime vam treba pomoć?“. Ova granularnost omogućuje vam sinkronizaciju titlova, prikaz djelomičnog teksta u korisničkom sučelju ili otklanjanje pogrešaka u latenciji.

Audio format, ograničenja, pogreške i najbolje prakse

Kako biste izbjegli glavobolje, najbolje je poštivati ​​očekivanja API-ja u vezi audio format:

  • PCM16 (16-bitni linearni).
  • Punđa (jedan kanal).
  • 24 kHz frekvencija uzorkovanja.

Ako ćete koristiti datoteke, uobičajeno ih je pretvoriti pomoću FFmpegNa primjer:

ffmpeg -i ulaz.wav -ar 24000 -ac 1 -f s16le ulaz.pcm

Kada šaljete zvuk putem JSON-a, fragmenti moraju biti kodirano u base64 i preporučuje se da ih se nasjecka na dijelovi od oko 100 ms kako bi se izbjeglo preopterećenje mreže ili sesije. Sesije, sa svoje strane, imaju Maksimalno trajanje od otprilike 30 minutaNakon tog vremena, potrebno je obnoviti vezu i, ako želite kontinuitet, ponovno izgraditi kontekst u novoj sesiji.

Što se tiče grešaka, najčešći problemi su:

  • 401 Neovlašteno: nevažeći ključ ili sukob s autentifikacijom bez ključa (npr. varijabla okruženja) AZURE_OPENAI_API_KEY uspostavljeno kada ne bi trebalo biti).
  • 429 Previše zahtjevaPrekoračeno je ograničenje brzine, što zahtijeva provedbu ponovnih pokušaja s eksponencijalno povlačenje i provjerite naknade na portalu.
  • Pogreške povezivanja s WebSocketomBlokirani portovi, pogrešno konfigurirani proxy, netočna krajnja točka… obično se rješavaju validacijom https://<endpoint>/openai/v1 i da je port 443 operativan.

Konačno, Sesije u stvarnom vremenu i dovršeci chata imaju odvojene kvoteStoga je dobra ideja pratiti oba ako paralelno koristite oba pristupa.

Zajedno, GPT-Realtime-2 i njegov okolni Realtime ekosustav omogućuju vam prelazak s djelomičnih glasovnih prototipova na konverzacijske agente koji govore, slušaju, razumiju i djeluju gotovo u stvarnom vremenu, s arhitekturama jednostavnim ili sofisticiranim koliko vaš proizvod zahtijeva. Uz pravi izbor vrste sesije, transporta (WebRTC, WebSocket, SIP), VAD konfiguracije i modela, iskustvo se transformira iz sporog, nereaktivnog robota u nešto mnogo bliže fluidnom razgovoru s nekim tko se jednostavno nikad ne umara odgovaranjem na pozive.