Подготовка и загрузка данных для Brand Voice Self Service
С помощью сервиса Brand Voice Self Service можно создать уникальный голос на основе записанных аудио. Голос можно использовать для синтеза речи на основе произвольного текста или замены переменных в аудиошаблоне. Сервис SpeechKit уже поддерживает голоса для русского и казахского языка. Если вы хотите создать голос для другого языка, свяжитесь с нами для уточнения деталей.
Примечание
Чтобы подготовить модель Brand Voice Self Service по загруженным данным, требуется до 1 месяца.
Какие данные нужны для обучения
Чтобы создать свой голос Brand Voice Self Service, необходимо подготовить и загрузить данные для обучения — записи аудио и соответствующие им тексты. Объем данных, необходимых для обучения модели, зависит от целей использования создаваемого голоса и особенностей дикции диктора. Так голос для озвучки художественной литературы потребует больше данных, чем голос для голосового робота. Пришлите нам образцы аудиозаписей голоса без музыки и обработки, чтобы получить конкретные рекомендации для записи и требования к объему данных.
Данные для обучения загружаются двумя файлами:
- ZIP-архив аудиозаписей в формате WAV.
- Таблица в формате TSV
в кодировке UTF-8, содержащей текстовые расшифровки аудиозаписей из архива. Таблица должна состоять из двух колонок:- имя файла с аудиозаписью, на которой диктор произносит текст
- строка, содержащая дословную расшифровку аудиозаписи. Если текст описывает шаблон с переменной, переменная часть должна быть представлена в формате
{variable_name = variable_value}.
Рекомендуется загружать данные порциями после каждой записи в студии. Если по какой-либо причине это невозможно, вы можете загрузить весь объем аудиоданных в одном архиве с соответствующей таблицей с расшифровками. Формат предоставляемых данных не меняется.
Важно
В каждой аудиозаписи должна быть полностью произнесенная фраза из одного или нескольких предложений длительностью не более 15 секунд. Текстовая расшифровка в таблице должна полностью совпадать с текстом на аудиозаписи.
В каждой аудиозаписи в начале и в конце должны присутствовать интервалы тишины, обрезанные звуки и слова недопустимы. Нельзя взять аудиозапись подкаста и нарезать ее на отрезки по 15 секунд: в этом случае границы аудиозаписей будут попадать на середину слова или фразы и не будут соответствовать логическим фразам. Обучить качественную модель на таких данных не получится.
Пример правильно подготовленной аудиозаписи: в начале и в конце аудио есть несколько миллисекунд тишины, фраза произнесена полностью.
Пример плохой аудиозаписи: в начале и в конце аудио нет интервалов тишины, начало и конец фразы обрезаны.
Такие аудиозаписи будут иметь искажения и не подойдут для обучения модели.
Пример подготовленных данных
-
Архив recordings.zip, содержащий файлы 1.wav, 2.wav, 3.wav.
-
Таблица в формате TSV, соотносящая аудиофайлы и их расшифровки:
Заголовок таблицы приведен для наглядности, в файле для загрузки он должен отсутствовать.
recordings text 1.wav Книги собирают жемчужины человеческой мысли и передают их потомству. 2.wav Мы предлагаем вам замечательную книгу! 3.wav Книга рекомендована школьникам от пяти лет.
Подготовьте данные
Brand Voice Self Service позволяет синтезировать как произвольный текст — полнотекстовый синтез, так и фразу на основе предварительно записанного аудиошаблона — синтез по шаблону. При синтезе по шаблону помимо текста передается аудиофайл, из которого SpeechKit будет копировать конкретные интонации диктора.
Чтобы ваш голос мог работать для двух режимов синтеза, мы рекомендуем:
- Сначала записать аудио и соответствующие им тексты для полнотекстового синтеза: 1.wav Проверяем ваш заказ.
- Для поддержки синтеза по шаблонам дополнительно нужно будет записать аудио и загрузить соответствующие размеченные тексты с переменными: 1.wav Здравствуйте, {agent_name=Анастасия}! У нас есть уникальное предложение специально для вас. Хотите послушать?
Шаблоны для синтеза в Brand Voice Self Service
Аудиошаблоны стоит использовать, когда нужно добиться особой интонационной выразительности и схожести с человеком.
Например, диктор записывает аудио:
Здравствуйте, это Жанна! Я представляю компанию Интернетометр Один. Вам удобно разговаривать?Вам нравится, как звучит эта фраза в исполнении диктора. При этом использовать непосредственно это аудио не получится, поскольку часть слов должна меняться в зависимости от контекста. Тогда в текстовой расшифровке вы указываете, что часть текста — это переменные:
Здравствуйте, это Жанна! Я представляю компанию {company_name=Интернетометр Один}. Вам удобно разговаривать?Используйте исходное аудио с нужными интонациями и оригинальный текст в качестве шаблона для синтеза, чтобы сохранить интонацию диктора, заменяя переменные части. Например,
Здравствуйте, это Жанна! Я представляю компанию Трубы и трубопроводы. Вам удобно разговаривать?
Старайтесь записывать аудиошаблоны, максимально приближенные к тому, что вы будете использовать при синтезе. Если на этапе подготовки данных это невозможно, вы сможете прислать их позднее или обучить модель вообще без них, при этом вы сможете использовать синтез по шаблонам. Однако чем раньше вы отдадите шаблоны в модель, тем лучше будет результат.
Примечание
Исходный аудиошаблон для синтеза голосом Brand Voice Self Service должен быть записан тем же диктором, чей голос использовался для создания голоса.
Тексты для обучения
Команда SpeechKit может помочь подготовить исходные тексты для обучения, если вы не планируете озвучивать созданным голосом книги, большое количество специальных терминов и перечислений. При этом вам самостоятельно необходимо будет добавить в обучающие тексты 500–1000 фраз, специфичных для вашей области использования. Перед записью вы можете прислать нам подготовленные тексты, чтобы проверить лингвистическое разнообразие обучающих данных.
Исходные данные для шаблонов необходимо подготовить самостоятельно: только вы знаете, как и для чего будет использоваться создаваемый голос.
Как минимум 30% обучающих данных должны содержать вопросы, чтобы обученный голос мог синтезировать вопросительную интонацию в тексте.
Требования ко всем текстам
Совет
Результат обучения голосовой модели Brand Voice Self Service напрямую зависит от обучающих данных. Выполняйте приведенные требования и рекомендации к текстам, чтобы получить качественный голос Brand Voice Self Service.
-
Текст в расшифровке должен полностью совпадать с озвученным в аудио.
-
Рекомендуемая длина фразы — не более 250 символов.
-
Все фразы должны быть полными, без обрывов на полуслове.
"..ть Время! Разве такое ему может понравиться! Если б ты с ним не ссорилась, могла бы просить у него все, что хо."
-
Тексты не должны содержать грамматических ошибок.
-
При записи речи на русском языке обязательно указывайте букву «ё» в расшифровке. Использование «е» вместо «ё» в любых текстах для синтеза недопустимо.
-
В словах-омографах, где ударение может быть поставлено неоднозначно, явно указывайте ударную гласную знаком
+
.«Он вставил ключ в зам+ок.», ударение падает на второй слог.
«Михайловский з+амок — главный корпус Пушкинского музея.», ударение падает на первый слог. -
Строки текста для синтеза не должны содержать цифр и сокращений вида «ул. Строителей, д.15 к.3» или «13 руб 10 коп». Цифры и числа записывайте прописью, сокращения — полностью раскрывайте.
Улица Строителей, дом пятнадцать, корпус три.
Тринадцать рублей десять копеек. -
В вопросительных предложениях укажите, на какое слово приходится **логическое ударение** — вопросительная интонация предложения.
Предложение «Кот пошел в лес?» можно прочитать тремя разными способами:
- **Кот** пошел в лес? — со смыслом «Кто пошел в лес? Это был действительно кот?»
- Кот **пошел** в лес? — со смыслом «Кот пошел или побежал?» или «Было ли совершено само действие? Кот ушел или нет?»
- Кот пошел **в лес**? — со смыслом «Куда или за чем пошел кот? В лес, в школу, за колбасой?»
Во всех предложениях логическое ударение выделяет основной смысл предложения.
Требования к шаблонам
-
Максимальная длина фразы вместе с переменной частью — 250 символов.
-
Длина переменной части не должна превышать 25% от всей фразы. То же ограничение действует на длительность переменной части относительно длительности итоговой аудиозаписи.
-
В шаблоне должна быть одна фраза и одна или несколько переменных для замены.
-
Переменные должны быть размечены.
Фраза для шаблона:
Ваш рейс по маршруту Москва Санкт-Петербург состоится восьмого сентября.
Список переменных:variable_name = '{date}', variable_value = 'восьмого сентября'
.
Размеченный текст шаблона должен выглядеть так:Ваш рейс по маршруту Москва Санкт-Петербург состоится {date}.
-
Имена переменных не должны меняться в рамках одного шаблона.
Запишите аудиофайлы
Общие рекомендации для записи аудио
Шумы и эхо при записи напрямую влияют на качество обучения и работы модели для синтеза речи. Поэтому при записи аудио для обучения и дообучения модели или шаблонов для синтеза по шаблонам старайтесь максимально уменьшить отражение звука в помещении. Идеальным местом для записи будет комната, оборудованная акустическими панелями. Если запись происходит в бытовых условиях, снизить эхо помогут мягкие поверхности и мебель: ковер, мягкий диван и т.д.
Используйте одинаково настроенное и расположенное оборудование для записи всех аудио.
Не совмещайте роли звукорежиссера записи, диктора и войскоуча в одном лице. Войскоуч — специалист, который следит, чтобы диктор строго следовал тексту и не менял манеры повествования.
При записи любых аудио, предназначенных для модели синтеза речи, придерживайтесь правила «одна фраза — один файл».
Неточности, микроповторы, оговорки и замены слов недопустимы. Любые дефекты дикции в записях, на основе которых работает модель синтеза, значительно снижают качество синтезируемой речи.
Каждая запись шаблона или фразы для обучения модели должна сопровождаться абсолютно точной текстовой расшифровкой. Шаблоны, обучающие фразы и их расшифровки не должны содержать грамматических ошибок.
Требования к аудиозаписям
Требование | Значение |
---|---|
Частота дискретизации | 48 кГц |
Глубина аудио (audio bit depth) | 16 бит PCM |
Количество каналов | 1 (моно) |
Формат | WAV |
Продолжительность | ≤15 секунд |
Тишина в начале и в конце | 100–200 миллисекунд |
Сохраните все аудиозаписи в ZIP-архив для загрузки.
Загрузите данные
Текстовые данные и аудиофайлы загружаются через интерфейс Yandex DataSphere. Для получения подробной инструкции по загрузке заполните форму, обратитесь к своему менеджеру или в техническую поддержку
Часто задаваемые вопросы
Можно ли загрузить аудиоданные с другими характеристиками?
Аудиоданные, не соответствующие требованиям, загрузить нельзя.
Где будет доступен голос?
В Yandex Cloud по заранее предоставленному voice_id
. Голос может быть предоставлен в формате решения SpeechKit Hybrid.