Voice Agent Prompts
The voice agent speaks whatever the LLM generates, so your prompt shapes not only the meaning but the sound — pauses, stress, how numbers are read. Below: the markup supported by the synthesis engines and the practices that make an agent sound natural and clear on the phone.
Speech markup
Markup goes directly into the text the agent speaks. To make it reach synthesis (instead of being stripped), enable the “Speech markup” toggle in the project’s voice settings.
| Tag | Effect | Engines |
|---|---|---|
[pause:500] | 500 ms pause, converted by MAIA for the selected engine | Supported MAIA engines |
+ before a vowel | Stress: з+амок vs за́мок | Yandex, Silero |
, — … | Natural micro-pause on punctuation | All engines |
Example:
Здравствуйте! [pause:300] Вас приветствует клиника «Здоровье». Чем могу помочь?Manual
+stress is not supported by every engine. MAIA converts universal pause tags into native markup or inserted silence. Listen to the same text with your chosen model and settings to verify the result.
Numbers, dates, phone numbers
Engines read digits differently:
- Yandex reads digits natively:
1 200 rubles,8 916 321 45 67come out correctly. - Silero / clone engines (F5, CosyVoice, XTTS) may not voice bare digits. Spell numbers out as words for them, or instruct the LLM to do so:
Speak all amounts, dates and phone numbers as words, not digits.Foreign words / Latin script
Russian synthesis may mispronounce Latin script. Write brand names in Cyrillic (“Вотсап” not “WhatsApp”). You can add a rule to the prompt:
Write foreign names in Russian letters the way they sound.Best practices for voice
- Short sentences — TTS pauses naturally on periods and commas.
- No markdown — no lists,
**bold**,#headings, emoji; the engine reads symbols aloud. - Keep it short for phone — 1–3 sentences per turn.
- Greeting goes in the “Greeting” field, not the system prompt.
- Control tempo via the slider, not text — speed is independent of the engine.
- Preview in the simulator before going live.
Pauses from the prompt
With “Speech markup” enabled you can ask the agent to place pauses by meaning:
Before naming a price or a date, add a short pause [pause:400].The agent inserts the tags and MAIA adapts them to the selected synthesis engine. MAIA converts universal pause tags into native markup or inserted silence for supported engines. Legacy sil<[400]> is Yandex-specific; use [pause:400] in new prompts and verify the result in a test session.