> ## Documentation Index
> Fetch the complete documentation index at: https://developers.telnyx.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Speech-to-speech models

> The speech-to-speech models available to Telnyx AI Assistants, GPT Live and PersonaPlex, what each one needs, and how to configure them with delegation for tools.

A speech-to-speech model hears the caller and speaks its answer in one model, rather than through separate transcription, language model, and speech synthesis stages. Telnyx AI Assistants support two speech-to-speech models:

* **GPT Live**, OpenAI's speech-to-speech model, used with your OpenAI API key.
* **PersonaPlex** (beta), NVIDIA's PersonaPlex 7B, hosted by Telnyx.

Neither model calls the assistant's tools itself. For lookups and actions, keep [delegation](/docs/inference/ai-assistants/delegation) enabled: the speaking model handles the conversation, and a backend model or a server you host performs the work and returns the result.

## Requirements at a glance

| | GPT Live | PersonaPlex (beta) |
| - | - | - |
| `model` | `openai/gpt-live-1` | `nvidia/personaplex-7b-v1` |
| Provider API key | An OpenAI API key stored as an integration secret, set in `llm_api_key_ref` | None |
| `voice_settings.voice` | An `OpenAILive.` voice, such as `OpenAILive.marin` | A `PersonaPlex.` voice, such as `PersonaPlex.NATF1` |
| Languages | Multilingual | English only |
| Tools | Through delegation | Through delegation |
| Conversation flows | Not supported | Not supported |

In both cases the model and voice must be paired: a speech-to-speech model with a voice from another provider is rejected when the assistant is saved.

## GPT Live

GPT Live runs on OpenAI with an OpenAI API key you store as an [integration secret](/api-reference/integration-secrets/create-a-secret). It supports `OpenAILive.` voices and [Telnyx avatars](/docs/inference/ai-assistants/avatars#voice-compatibility). The [vision tool](/docs/inference/ai-assistants/vision#model-support) works through a delegation model that accepts images; this is currently available in the development environment.

See [GPT Live voice assistants](/docs/inference/ai-assistants/gpt-live) for the full configuration, delegation behavior, and verification steps.

## PersonaPlex

> [!NOTE]
>
> PersonaPlex is in beta.

PersonaPlex is NVIDIA's PersonaPlex 7B speech-to-speech model, hosted by Telnyx. It needs no provider API key. It speaks English, in one of the `PersonaPlex.` voices.

### Configure the speaking model

Set these fields on the assistant:

| Field | Configuration |
| - | - |
| `model` | `nvidia/personaplex-7b-v1` |
| `voice_settings.voice` | A `PersonaPlex.` voice, such as `PersonaPlex.NATF1`. Required. |
| `enabled_features` | Include `"telephony"` to enable calls. |
| `greeting` | The opening message. PersonaPlex speaks it as written when the conversation starts, then listens. |
| `delegation_settings` | The backend configuration for lookups and actions. Set `enabled: true`, `mode: "telnyx"`, and an available backend `model`. If you omit `delegation_settings` when creating the assistant, a Telnyx-hosted backend model is set for you. |

Send this body to [Create an assistant](/api-reference/assistants/create-an-assistant), `POST /v2/ai/assistants`:

```json theme={null}
{
  "name": "PersonaPlex support assistant",
  "enabled_features": ["telephony"],
  "model": "nvidia/personaplex-7b-v1",
  "instructions": "Help callers with order questions. Ask for the order number before a lookup. Never invent an order status or claim an action succeeded without a result.",
  "greeting": "Hi, I'm your order support assistant. How can I help you today?",
  "voice_settings": {
    "voice": "PersonaPlex.NATF1"
  },
  "delegation_settings": {
    "enabled": true,
    "mode": "telnyx",
    "model": "zai-org/GLM-5.3-Flash",
    "instructions": "Use the configured order lookup tool to retrieve order status. If no lookup tool is available or the lookup fails, explain that the status cannot be verified.",
    "speak_results": true
  }
}
```

The example selects `zai-org/GLM-5.3-Flash` as the delegation backend. Confirm that this model is available to your account, or replace it with another supported backend model. Attach a shared lookup tool using the [tools library](/docs/inference/ai-assistants/tools-library) before testing order lookups.

### Voices

PersonaPlex has 18 voices: Natural voices, which sound more natural and conversational, and Varied voices, a more varied set. Every voice speaks English, the only language PersonaPlex supports. `PersonaPlex.NATM1`, `PersonaPlex.VARF2`, and `PersonaPlex.VARM3` have British English accents; the other voices have American English accents.

| Voices | IDs |
| - | - |
| Natural, female | `PersonaPlex.NATF0` to `PersonaPlex.NATF3` |
| Natural, male | `PersonaPlex.NATM0` to `PersonaPlex.NATM3` |
| Varied, female | `PersonaPlex.VARF0` to `PersonaPlex.VARF4` |
| Varied, male | `PersonaPlex.VARM0` to `PersonaPlex.VARM4` |

[List available voices](/api-reference/text-to-speech-commands/list-available-voices) returns them with `provider: "personaplex"`.

### Tools and delegation

PersonaPlex hands a request that needs a lookup or action to the delegation backend: it tells the caller it is checking, waits for the result, then speaks it. The backend runs the assistant's tools. The [delegation guide](/docs/inference/ai-assistants/delegation) covers the settings, `telnyx` and `client` modes, and result handling.

[Post-conversation processing](/docs/inference/ai-assistants/post-conversation-processing) runs on the delegation backend, so it requires delegation enabled in `telnyx` mode with a backend model.

### Limits

* **Language:** English only.
* **Instructions:** up to 1,030 tokens, post-conversation instructions included. That is about 4,100 characters of plain English, fewer with numbers or codes. The exact count is checked when the assistant is saved.
* **Conversation flows and fallback models:** not supported.

### Pricing

PersonaPlex conversations cost **\$0.04 USD per minute**.

### Verify the assistant

Use the assistant ID with the [voice assistant calling setup](/docs/inference/ai-assistants/no-code-voice-assistant) or the [realtime voice conversation WebSocket](/docs/inference/ai-assistants/realtime-conversations), then:

1. Confirm the assistant speaks its configured greeting, then ask a conversational question and verify the response uses the selected `PersonaPlex.` voice.
2. Ask for information that requires a configured tool. Confirm the backend performs the lookup and the assistant speaks the returned result without inventing data.

## Next steps

* [GPT Live voice assistants](/docs/inference/ai-assistants/gpt-live) — GPT Live configuration in full
* [Delegation](/docs/inference/ai-assistants/delegation) — backend settings, spoken results, and the client event contract
* [Tools library](/docs/inference/ai-assistants/tools-library) — attach tools for delegated lookups and actions
