Голосовые ассистенты звонят клиентам монотонным роботом — 65% пользователей сбрасывают вызов за первые 5 секунд. SSML (Speech Synthesis Markup Language) решает эту проблему, давая точный контроль произношения, пауз, интонации и темпа. В одном из проектов для банка мы внедрили SSML-разметку IVR-сценариев — отток клиентов на первом шаге снизился с 65% до 38% за счёт естественных пауз и акцентов. SSML — это XML-стандарт W3C XML-стандарт W3C, поддерживаемый всеми крупными TTS-провайдерами. Мы реализуем SSML-шаблоны и генераторы под ключ, интегрируя с Google TTS, Azure, Amazon Polly, Yandex SpeechKit. Оценим ваш проект за 1 день. На рынке более 8 лет, реализовали более 50 проектов по голосовым интерфейсам — гарантируем качество и поддержку на всех этапах.
Почему SSML критически важен для TTS?
Без SSML синтезированная речь звучит неестественно: слитные фразы, неправильные ударения, монотонность. Исследования показывают, что естественный голос повышает удержание клиентов на 40%. SSML даёт точный контроль без замены TTS-движка. Экономия до 1.5 млн руб. в месяц для операторов с 10 000 звонков за счёт снижения оттока. Дополнительно: правильно расставленные паузы и акценты сокращают среднее время диалога на 12 секунд, что экономит до 800 тыс. руб. в год.
Как SSML помогает избежать оттока клиентов?
Каждый дополнительный секунда удержания повышает конверсию в целевое действие на 2–3%. SSML позволяет сделать сообщения более человечными: добавление пауз после приветствия, снижение темпа при назывании цифр, выделение ключевых слов голосом. В IVR-сценариях это критично — неправильное ударение в фамилии клиента может вызвать раздражение и сброс. Мы используем словари произношения для имен, адресов и специфичных терминов (например, OOO "Ромашка").
Как мы реализуем SSML: стек и пример
Используем Python для генерации SSML-структур. Пример класса SSMLBuilder позволяет динамически создавать разметку для любого сценария. Поддерживаем все современные провайдеры, добавляем обработку ошибок, логирование и кастомные словари произношения.
from xml.etree.ElementTree import Element, SubElement, tostring
class SSMLBuilder:
def __init__(self, lang: str = "ru-RU"):
self.speak = Element("speak", {
"version": "1.0",
"xmlns": "http://www.w3.org/2001/10/synthesis",
"xml:lang": lang
})
def add_text(self, text: str) -> "SSMLBuilder":
self.speak.text = (self.speak.text or "") + text
return self
def add_pause(self, ms: int) -> "SSMLBuilder":
br = SubElement(self.speak, "break", {"time": f"{ms}ms"})
return self
def add_prosody(self, text: str, rate: str = "medium",
pitch: str = "medium") -> "SSMLBuilder":
p = SubElement(self.speak, "prosody",
{"rate": rate, "pitch": pitch})
p.text = text
return self
def build(self) -> str:
return tostring(self.speak, encoding="unicode")
# Использование
ssml = (SSMLBuilder()
.add_text("Добрый день! ")
.add_pause(300)
.add_prosody("Ваш баланс составляет пять тысяч рублей.", rate="slow")
.build())
Сравнение подходов и провайдеров
SSML-шаблоны сокращают время разработки в 5 раз по сравнению с ручной настройкой. Генератор экономит 80% времени при изменении сценариев. Ниже таблица поддержки тегов у популярных провайдеров и сравнение статического и динамического подходов.
| Тег | Azure | AWS Polly | Yandex | |
|---|---|---|---|---|
<break> |
✓ | ✓ | ✓ | ✓ |
<prosody> |
✓ | ✓ | ✓ | частично |
<say-as> |
✓ | ✓ | ✓ | ограниченно |
<phoneme> |
✓ | ✓ | ✓ | — |
<emphasis> |
✓ | ✓ | ✓ | — |
<lang> |
✓ | ✓ | — | — |
| Характеристика | Шаблоны | Генератор |
|---|---|---|
| Скорость изменений | Низкая | Высокая |
| Поддержка кастомных сценариев | Ограничена | Полная |
| Стоимость разработки | Ниже | Выше |
| Гибкость | Низкая | Высокая |
Что входит в работу
- Анализ сценариев: аудит текущих голосовых потоков, выявление мест, где SSML даст наибольший эффект.
- Проектирование SSML-структуры: определение необходимых тегов, создание словарей произношения (имена, числа, адреса).
- Реализация: написание шаблонов или генератора на Python с поддержкой всех целевых провайдеров.
- Документация: полная техническая документация с примерами использования и инструкциями по интеграции.
- Тестирование: A/B-тесты с реальными TTS-провайдерами, замер конверсии и удержания.
- Деплой: поставка в виде API-модуля, готового к интеграции через REST или gRPC.
- Обучение: обучение ваших инженеров работе с SSML-шаблонами и генератором.
- Поддержка: гарантийное обслуживание 6 месяцев, быстрая обратная связь по доработкам.
Процесс внедрения и сроки
- Анализ сценариев IVR и текущих TTS-шаблонов.
- Проектирование SSML-структуры: паузы, акценты, словари произношения.
- Реализация: написание шаблонов или генератора на Python.
- Тестирование с реальными TTS-провайдерами (A/B-тесты).
- Деплой в вашу инфраструктуру (S3, API Gateway).
- Разработка SSML-шаблонов для IVR — от 2 до 3 дней.
- SSML-генератор для динамических ответов — от 3 до 5 дней.
- Интеграция с существующими системами — от 1 до 2 дней.
Типичные ошибки и чек-лист
- Забывают закрыть тег
<speak>. - Используют
<break time="500ms">без дефиса —breakбез времени. - Путают
<say-as>сinterpret-as: для чиселdigits, для датdate. - Не проверяют поддержку тегов у провайдера (например, Yandex не поддерживает
<phoneme>). - Избыточные
<emphasis>— голос становится неестественным.
Пример базовых SSML-тегов
<speak>
<!-- Пауза -->
Добрый день. <break time="500ms"/> Рад вас слышать.
<!-- Скорость и тональность -->
<prosody rate="slow" pitch="+2st" volume="loud">
Важное объявление!
</prosody>
<!-- Произношение чисел и валюты -->
Ваш заказ <say-as interpret-as="digits">12345</say-as>
на сумму <say-as interpret-as="currency" language="ru-RU">1500 RUB</say-as>.
<!-- Фонетическое произношение -->
Компания <phoneme alphabet="ipa" ph="ˈbɛtə">Beta</phoneme>.
<!-- Акцент на слове -->
Позвоните <emphasis level="strong">сейчас</emphasis>!
<!-- Переключение языка -->
<lang xml:lang="en-US">Machine learning</lang> — ключевая технология.
<!-- Эффекты для телефонии (Azure) -->
<mstts:express-as style="customerservice">
Чем могу помочь?
</mstts:express-as>
</speak>
Получите консультацию нашего инженера — подберём оптимальное решение под вашу архитектуру. Свяжитесь с нами для детального аудита и предварительной оценки.







