For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
Start buildingGet support
DocumentationAPI ReferenceChangelogDiscord
  • Introduction
    • Welcome to Hume AI
    • Getting your API keys
    • Support
    • Pricing
  • Voice
    • Overview
    • Voice design
    • Voice cloning
    • Voice management
  • Text-to-Speech (TTS)
    • Overview
    • Voice
    • Acting instructions
    • Voice conversion
    • Continuation
    • Timestamps
    • FAQ
  • Speech-to-Speech (EVI)
    • Overview
      • Build a configuration
      • Session settings
      • EVI version
      • Voice
      • System prompt
      • Language model
      • Tools
      • Event messages
      • Turn detection
      • Interruption
      • Timeouts
      • Webhooks
    • FAQ
  • Expression Measurement
    • Overview
    • About the science
    • FAQ
  • Integrations
    • MCP
    • Vercel AI SDK
    • LiveKit
    • Pipecat
    • Vapi
    • Twilio
    • Agora
  • Resources
    • Terms of use
    • Use case guidelines
    • Billing
    • Errors
    • Privacy
    • Status
Start buildingGet support
LogoLogo
LogoLogo
On this page
  • Voice options
  • Voice configuration
  • UI
  • API
  • Dynamic voice selection
  • Resources
Speech-to-Speech (EVI)Configuration

Voice

Guide to configuring the voice of the Empathic Voice Interface (EVI).

Was this page helpful?
Edit this page
Previous

System Prompt

Define EVI’s behavior, responses, and style.

Next
Built with

EVI can use any voice from the Voice Library or a Custom Voice you have created. You can choose from more than 100 predesigned voices or design and clone voices with the voice model to create a unique sound.

This guide explains the available voice types, how to set them in your EVI configuration, and how to override the configured voice for a single session.

Voice options

EVI supports two types of voices:

Voice Type Provider Description
Voice Library HUME_AI

Predesigned voices available to all users. Includes over 100 styles you can preview and use immediately.

Custom Voice CUSTOM_VOICE

Voices you have designed or cloned. These are stored in your account and only accessible to you.

You can browse and preview both in the Platform’s Voice Library page.

Voice configuration

You can set the voice for your EVI configuration through the Platform UI or the API.

UI

  1. Visit the EVI Playground.
  2. In the config panel on the right, select the configuration you want to update.
  3. Select a voice from your saved voices or from the Voice Library.
  4. Click Save to update the configuration.

API

When creating or updating an EVI configuration via the API, include the voice field in the request body.

  • You can specify a voice by its id or name.
  • Each voice belongs to a provider.
Provider Description
HUME_AI

Voices from the Voice Library. These are available to all users.

CUSTOM_VOICE

Voices you have designed or cloned. These are private to your account.

CUSTOM_VOICE is the default provider. To use a Voice Library voice, explicitly set provider to HUME_AI.

1curl https://api.hume.ai/v0/evi/configs \
2 -H "X-Hume-Api-Key: $HUME_API_KEY" \
3 --json '{
4 "evi_version": "3",
5 "name": "Example Config",
6 "voice": {
7 "id": "9e068547-5ba4-4c8e-8e03-69282a008f04",
8 "provider": "HUME_AI"
9 }
10 }'

Dynamic voice selection

You can override the voice in your EVI configuration for a single chat session by including a voice_id as a query parameter in your handshake request.

The voice_id must reference either a Custom Voice in your account or a Voice Library voice available to all users.

This override applies only to the current chat session and does not update the saved configuration.

1'use client';
2import { useVoice } from "@humeai/voice-react";
3
4export function Chat({ accessToken }: { accessToken: string }) {
5 const { connect, disconnect, status } = useVoice();
6 return (
7 <button
8 onClick={() =>
9 status.value === 'connected'
10 ? disconnect()
11 : connect({
12 auth: { type: 'accessToken', value: accessToken },
13 configId: process.env.NEXT_PUBLIC_HUME_CONFIG_ID,
14 voiceId: "9e068547-5ba4-4c8e-8e03-69282a008f04"
15 })
16 }
17 >
18 {status.value === 'connected' ? 'End Call' : 'Start Call'}
19 </button>
20 );
21}

Resources

Voice Library

Browse predesigned voices.

Voice Design Guide

Design and create a custom voice.

Voice Cloning Guide

Clone a voice from a live recording or audio file.

Voice Management Guide

View, rename, and delete saved voices.