Skip to main content
Pick the path that matches your stack. They all cover the same underlying protocol described in the reference; what differs is how much of the surrounding harness you’re writing yourself versus reusing.

Python from scratch

No framework, full control: plain websockets, a tool dispatcher, and real audio input.

Browser (JavaScript)

Microphone capture and streamed replies, directly in a browser tab, no SDK.

Speech to text

Transcribe a microphone with the stock openai SDK in Python or Node, then turn it into a voice-in, text-out agent.

Streaming to TTS

Wire the streamed reply into a text-to-speech provider: barge-in, unspeakable text, and the latency that’s actually felt.

Voice agent with Cartesia

A browser voice agent end to end: a Python server, Cartesia speech from the first words, barge-in and playback reports.

LiveKit Agents

Use Dialog-RSN-1 as the model in a LiveKit AgentSession, in place of the STT, turn detector and LLM.

Migrating from OpenAI Realtime

Already have an OpenAI Realtime client? What stays, what changes, what to strip out.
New to the API entirely? Start with the quickstart instead. It covers the connection, the session, and a single turn before any of these guides pick up.
Last modified on October 14, 2026