Dialogue tools

    Generate single-voice text-to-speech audio on Replicate. The generate_dialogue tool accepts one prompt and one voice per call (multi-voice scenes are produced by stitching multiple calls), and supports two providers:

    • ElevenLabs v3 (provider: "elevenlabs", the default) — 26 human-named voices, the most natural prosody.
    • Google Gemini 3.1 Flash TTS (provider: "google") — 30 voices, 70+ languages, a natural-language style prompt, and inline expressive tags ([sigh], [laughing], [whispering], [shouting], [extremely fast], [like dracula]) that are actually performed.

    Both bill at the same rate (26 credits / 1,000 characters). The full live catalog also flows through get_models (filter model_type: "speech").


    #ElevenLabs v3 (default)

    elevenlabs/v3 accepts these 26 voices (case-sensitive). Any value outside this list is rejected with 400 Unsupported voice and you are not charged. Audio tags like [laughs] are stripped server-side before synthesis (not spoken).

    #Female voices

    Voice IDDescriptionPreview
    RachelCalm, articulate American
    AriaExpressive, raspy American
    DomiStrong, confident young American
    SarahSoft, warm young American
    JaneMature, dignified Australian
    JuniperNatural, articulate American
    ArabellaMysterious British narrator
    HopeBright, upbeat American
    BlondieCasual American conversationalist
    PriyankaSultry, soothing Indian
    AlexandraConversational young American
    MonikaDeep, natural Indian

    #Male voices

    Voice IDDescriptionPreview
    DrewWell-rounded American narrator
    ClydeGritty war-veteran character
    PaulAuthoritative ground reporter
    DaveConversational young British
    RogerClassy American businessman
    FinSailor character, Irish accent
    JamesCalm Australian narrator
    BradfordTheatrical, articulate British
    ReginaldIntense, dramatic British character
    GamingAnimated, energetic gaming character
    AustinEasygoing American country
    KuonCheerful, steady character voice
    MarkCasual, relaxed American
    GrimblewoodGruff fantasy creature character

    #Google Gemini 3.1 Flash TTS

    Pass provider: "google". Gemini adds a natural-language style prompt (set the tone, pace, accent, emotion, or a character) and performs inline [tags] instead of stripping them. It accepts 30 voices (case-sensitive) and BCP-47 language codes.

    Inline tags are performed, not stripped: [sigh], [laughing], [uhm], [whispering], [shouting], [sarcasm], [robotic], [extremely fast], [short pause] / [medium pause] / [long pause], and free-form descriptive tags like [like dracula] or [excitedly].

    #Female voices

    Voice IDCharacterPreview
    KoreFirm
    ZephyrBright
    LedaYouthful
    AoedeBreezy
    CallirrhoeEasy-going
    AutonoeBright
    DespinaSmooth
    ErinomeClear
    LaomedeiaUpbeat
    AchernarSoft
    GacruxMature
    PulcherrimaForward
    VindemiatrixGentle
    SulafatWarm

    #Male voices

    Voice IDCharacterPreview
    PuckUpbeat
    CharonInformative
    FenrirExcitable
    OrusFirm
    EnceladusBreathy
    IapetusClear
    UmbrielEasy-going
    AlgenibGravelly
    AlgiebaSmooth
    SchedarEven
    AchirdFriendly
    ZubenelgenubiCasual
    SadachbiaLively
    SadaltagerKnowledgeable
    AlnilamFirm
    RasalgethiInformative

    Languages: BCP-47 codes (e.g. en-US, en-GB, es-ES, es-MX, pt-BR, fr-FR, de-DE, it-IT, ja-JP, ko-KR, hi-IN, ar-001, ru-RU, ro-RO, tr-TR, vi-VN, th-TH, and 70+ more), or auto to auto-detect. Default en-US. Call get_limits_for_model('text-to-dialogue-gemini') for the full list.


    #generate_dialogue

    Generate a single-voice TTS clip.

    Parameters:

    ParameterTypeRequiredDescription
    text (or prompt)stringYesElevenLabs: 5–5000 characters (after [bracket] tags are stripped). Google: up to 4,000 bytes (UTF-8), inline [tags] kept.
    providerstringNoelevenlabs (default) or google.
    voicestringNoA voice ID for the chosen provider. Default: Rachel (ElevenLabs) / Kore (Google).
    style_promptstringNoGoogle only. Natural-language delivery direction (tone, pace, accent, emotion, character). Up to 4,000 bytes; text + style_prompt must be ≤ 8,000 bytes combined. Default: Say the following.
    language_codestringNoElevenLabs: ISO code (default en; 29 supported). Google: BCP-47 code (default en-US) or auto.
    stabilitynumberNoElevenLabs only. 0..1, default 0.5. Higher = more stable, lower = more expressive.
    similarity_boostnumberNoElevenLabs only. 0..1, default 0.75.
    stylenumberNoElevenLabs only. 0..1, default 0. Style exaggeration.
    speednumberNoElevenLabs only. 0.7..1.2, default 1.0.
    previous_text / next_textstringNoElevenLabs only. Surrounding context to keep prosody consistent across stitched chunks.

    ElevenLabs strips [HEY] / [laughs] / [whispers] before synthesis. Google performs inline tags — see the tag list above.

    Example (Google Gemini):

    {
      "provider": "google",
      "text": "[whispering] I have a secret. [laughing] Just kidding!",
      "voice": "Callirrhoe",
      "style_prompt": "Speak playfully, like sharing a fun secret with a friend.",
      "language_code": "en-US"
    }
    

    Example (ElevenLabs):

    {
      "text": "Welcome back, ready to generate?",
      "voice": "Rachel",
      "stability": 0.5,
      "language_code": "en"
    }
    

    Response: Returns a generation_id. Poll with get_generation_status.

    #Multi-voice scenes

    generate_dialogue is single-voice. For dialogue between two speakers, call the tool once per line (ElevenLabs: pass previous_text / next_text for prosody continuity), then concatenate the resulting audio files yourself.

    #get_generation_status

    Use the generation_id returned by generate_dialogue to check progress. When the status is completed, the audio file URL is in the outputs array (media_type: "audio").


    #Credits and limits

    • Cost: 26 credits per 1,000 characters, both providers (rounding: decimal ≤ 0.3 floors, > 0.3 ceils).
    • Minimum: 1 credit for any non-empty text.
    • Minimum length: 5 characters after audio tags are stripped.
    • Maximum length: ElevenLabs 5,000 characters; Google 4,000 bytes for text (and ≤ 8,000 bytes for text + style_prompt combined).

    See Limitations for full details.