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

# Voice & Language

> Choose the voice your agent speaks with and the language it converses in

Your agent speaks with a voice model from the Fish Audio Voice Library: the same voices you use for text to speech. Pick one in the Builder, or set it through the API, and choose the language the agent holds conversations in.

<CardGroup cols={3}>
  <Card title="Configuration page" icon="sliders" href="/agents/build/configuration">
    Where the voice and language settings live in the Builder.
  </Card>

  <Card title="Voice Library" icon="book-open" href="/features/manage-voices">
    Browse public voices and manage your own.
  </Card>

  <Card title="Voice Cloning" icon="clone">
    Create a custom voice, then use it here. See [Voice Cloning](/features/voice-cloning).
  </Card>
</CardGroup>

## Pick a voice in the Builder

The voice picker on the **Configuration** page has two levels: a curated list for a fast start, and the full Voice Library when you want something specific.

<Steps>
  <Step title="Open the voice selector">
    In your agent's **Configuration** page, open the voice card. The **Choose a voice** view shows a curated selection of voices.
  </Step>

  <Step title="Browse the full library (optional)">
    Not seeing the right fit? Select **More voices** to open the **Select Voice** browser: the full Voice Library, with your own cloned voices under **My Voices**.
  </Step>

  <Step title="Save automatically">
    Your selection is written to the agent's draft configuration as soon as you pick it. Start a [preview call](/agents/test/preview-calls) to hear the voice in a real conversation.
  </Step>

  <Step title="Publish">
    Draft changes don't affect live sessions until you **Publish**. See [Versions & publishing](/agents/deploy/versions-publishing).
  </Step>
</Steps>

## Use any voice model

The agent's voice is a **voice model id** (`voice_id`): the same ids used as `reference_id` in [Text to Speech](/features/text-to-speech). Any public voice model from the Voice Library works, including:

* **Library voices**: Ready-made public voices. Find ids in the [Voice Library](/features/manage-voices).
* **Your cloned voices**: [Clone a voice](/features/voice-cloning) once, then use its model id as your agent's voice.

## Set the voice via API

Voice settings live in the `voice` section of the agent's configuration. Patches are partial: only the fields you send change, and the result is saved to the draft:

<CodeGroup>
  ```bash API (curl) theme={null}
  curl --request PATCH "https://api.fish.audio/v1/agent/agents/$AGENT_ID/config" \
    --header "Authorization: Bearer $FISH_API_KEY" \
    --header "Content-Type: application/json" \
    --data '{
      "voice": {
        "voice_id": "802e3bc2b27e49c2995d23ef70e6ac89"
      }
    }'
  ```
</CodeGroup>

`voice.speaking_language` lives in the same section and is patched the same way. As in the Builder, API edits land in the draft. Publish to roll them out.

## Speaking language

**Speaking language** sets the language for the agent's conversations: one of `en`, `ja`, `zh`, `ko`, `es`, `fr`, or `de` (`voice.speaking_language` on the wire). Every session converses in this language.

<Note>
  The voice model and the speaking language are independent settings: picking a voice does not change the language, and vice versa. Choose a voice that sounds natural in the language you configure.
</Note>

Both settings can also be replaced for a single session: send `overrides.voice_id` or `overrides.language` on the session request. See [Overrides](/agents/deploy/authenticated-sessions#overrides).

## Speaking speed

**Speaking speed** sets how fast the agent talks, as a multiplier from `0.5` (half speed) to `2.0` (double speed). The default is `1.0`. Many English-language agents sound more natural at a slightly faster rate, such as `1.2`.

Set it with the **Speaking speed** slider in the Builder's voice section, or via the API (`voice.speed`, default `1.0`):

<CodeGroup>
  ```bash API (curl) theme={null}
  curl --request PATCH "https://api.fish.audio/v1/agent/agents/$AGENT_ID/config" \
    --header "Authorization: Bearer $FISH_API_KEY" \
    --header "Content-Type: application/json" \
    --data '{
      "voice": {
        "speed": 1.2
      }
    }'
  ```
</CodeGroup>

The rate applies to everything the agent speaks in voice and phone sessions. As with every voice setting, the change lands in the draft: publish to roll it out.

## Expressive mode

**Expressive mode** makes the agent steer its own delivery: it opens sentences with emotion cues, adds natural pauses and emphasis, laughs where it genuinely fits, and speaks the way people talk, with contractions and the occasional "um". You get lively, emotionally aware speech without writing any delivery rules into your prompt.

Turn it on with the **Expressive mode** switch in the Builder's voice section, or via the API (`voice.expressive`, default `false`):

<CodeGroup>
  ```bash API (curl) theme={null}
  curl --request PATCH "https://api.fish.audio/v1/agent/agents/$AGENT_ID/config" \
    --header "Authorization: Bearer $FISH_API_KEY" \
    --header "Content-Type: application/json" \
    --data '{
      "voice": {
        "expressive": true
      }
    }'
  ```
</CodeGroup>

The delivery cues are rendered by the voice model. They are never spoken and never appear in transcripts or message history. Expressive mode applies to spoken sessions (voice calls and phone); text chat is unaffected.

<Tip>
  Keep your system prompt about **what** the agent says: who it is, what it knows, what it should do. With expressive mode on, **how** it sounds is handled for you.
</Tip>

## Going further

<CardGroup cols={2}>
  <Card title="Agent configuration" icon="sliders" href="/agents/build/configuration">
    System prompt, first message, and conversation settings.
  </Card>

  <Card title="System tools" icon="wrench" href="/agents/build/system-tools">
    Built-in capabilities like hanging up the call.
  </Card>

  <Card title="Preview calls" icon="phone" href="/agents/test/preview-calls">
    Talk to your draft agent and hear the voice live.
  </Card>

  <Card title="Versions & publishing" icon="rocket" href="/agents/deploy/versions-publishing">
    How drafts become the live agent.
  </Card>
</CardGroup>
