> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://poly-ai.ferndocs.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://poly-ai.ferndocs.com/_mcp/server.

# Use more than one voice

> Assign multiple voices to simulate a team of agents.

Use multi-voice when you want callers to hear different voices across interactions – simulating a team of agents or varying the experience for repeat callers. You can configure this through the UI or programmatically in Python.

![multi-voice-ui](/_fern-files/_img/e0564b190f12b691074068bfe78fe64bd0a5018d53a55054b8834f178d95f6c7.webp)

#### Add voices

Click **New voice** to add additional voices to your agent. You can select from the available languages, genders, and styles or [add a new voice](/agent-studio/voice/voice-design/add-a-voice).

Once added, all voices will appear in the list and can be configured independently.

![multi-voice-add-voice](/_fern-files/_img/142b1468cddb54cda42c877a42e489e3ae4880d4b548369bdabcbebbceb6bffd.webp)

#### Adjust weights

After adding multiple voices, use the weight sliders to define how frequently each voice is selected during conversations. All weights must add up to 100%.

For example:

* 80% main voice
* 10% each for two alternates

![multi-voice-configure](/_fern-files/_img/d6cd06616e3cce5109346b5d1d5195185b0d7479c8d1260d0b9fcee870263106.webp)

#### Configure settings

For each voice, you can fine-tune the advanced settings:

* **Stability (%):** Control how consistent the voice sounds across generations.
* **Clarity and Similarity (%):** Balance naturalness and similarity to the target voice.

![multi-voice-settings](/_fern-files/_img/d6cd06616e3cce5109346b5d1d5195185b0d7479c8d1260d0b9fcee870263106.webp)

## Using Python in a code field

You can configure this in any function, though this guide assumes you're using the [start function](/agent-studio/tools/start-tool).

To use multiple voices, you need their voice IDs from your chosen TTS provider. Refer to the [function TTS provider configuration](/agent-studio/tools/classes-and-objects/classes) for full details on supported providers and their configuration options.

Here is an example of how to configure multiple voices, where the agent is randomly assigned a voice at the start of each interaction:

```python
def start_function(conv: Conversation):
    conv.randomize_voice([
        VoiceWeighting(
            voice=ElevenLabsVoice(
                voice_id="LcfCDJNUPlGQjkzn1xUU",
                similarity_boost=0.2,
                stability=0.4
            ),
            weight=0.5
        ),
        VoiceWeighting(
            voice=RimeVoice(
                provider_voice_id="s3://path-to-manifest.json",
                style="neutral"
            ),
            weight=0.5
        )
    ])
```

* `conv.randomize_voice([...])`: Selects a voice at random based on the assigned weights.
* `VoiceWeighting`: Associates a voice with a probability of being selected.
* **Weights** define selection probability:
  * The sum of all weights must equal 1.0.

## Understanding voice weights

You can add a maximum of **ten voices** to an AI agent.

> **Note**
>
> In the UI, weights are displayed as percentages (must total 100%). In code, weights are decimal values (must total 1.0).

The `weight` parameter determines how often each voice is selected. The sum of all weights must equal **1.0** (or 100% in the UI).

Examples:

* One voice at `1.0`: Always uses that voice.
* Two voices at `0.5` each: Each is selected 50% of the time.
* Four voices at `0.25` each.

## Personalizing repeat caller experiences

Assigning different voices to repeat callers can help create a sense of interacting with different team members, which may reduce escalation requests. Use the `conv.randomize_voice()` method in your [start function](/agent-studio/tools/start-tool) to vary voice selection across interactions.

## Related pages

#### [Voice library](/agent-studio/voice/voice-design/voice-library)

Browse and select voices

#### [Choosing a good voice](/agent-studio/voice/voice-design/choosing-a-good-voice)

Guidelines for voice selection and matching

#### [Add a voice](/agent-studio/voice/voice-design/add-a-voice)

Configure custom voices programmatically

#### [Agent Voice](/agent-studio/voice/settings)

Configure voice settings and fine-tuning