# OpenAI Realtime

> Run your AI voice agent on OpenAI Realtime, a native-audio model that listens and speaks directly - providers, models and how to switch it on.

Source: https://edesy.in/docs/voice-agent/llm/openai-realtime

OpenAI Realtime is a **native-audio** model: it hears the caller and speaks back itself, instead of chaining separate speech-to-text, LLM and text-to-speech steps. When you select it, the agent's `sttProvider` and `ttsProvider` are ignored.

| `llmProvider` | `llmModel` | Notes |
|---------------|------------|-------|
| `openai-realtime` | `gpt-realtime-1.5` | Recommended |
| `openai-realtime` | `gpt-realtime` | GA model |
| `openai-realtime` | `gpt-4o-realtime-preview` | Legacy preview |
| `openai-realtime-mini` | `gpt-realtime-mini` | Recommended mini model |
| `openai-realtime-mini` | `gpt-4o-mini-realtime-preview` | Legacy preview |

## When to use it

- **Choose native audio** when natural turn-taking and tone matter most.
- **Choose a separate STT + LLM + TTS chain** when you need a specific voice (for example an Indian-language voice from [Sarvam](https://edesy.in/docs/voice-agent/tts/sarvam)) or a specific speech-to-text model.

## Set it in the dashboard

1. Open your agent at [voice-agent.edesy.in](https://voice-agent.edesy.in).
2. In the model settings, pick **OpenAI Realtime** and a model.
3. Place a test call.

## Set it with the API

```bash
curl -X PATCH https://voice-agent.edesy.in/api/v1/agents/{agentId} \
  -H "Authorization: Bearer $EDESY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "llmProvider": "openai-realtime", "llmModel": "gpt-realtime-1.5" }'
```

Only the fields you send change. See [Agents API](https://edesy.in/docs/voice-agent/api/agents).

## Related

- [Provider & Voice Catalog](https://edesy.in/docs/voice-agent/api/provider-catalog), which also lists the Gemini Live native-audio models
- [LLM Providers](https://edesy.in/docs/voice-agent/llm)
