Перейти к основному содержимому

ASR и TTS в текстовых каналах

Вы можете использовать ASR и TTS не только в звонках, но и в текстовых каналах. В Agent Platform доступны функции:

  • Asr.recognize — получает файл по URL и распознает речь в нем.

    С помощью этой функции вы можете, например, распознать речь в записи совещания. Полученный текст можно передать в агента и попросить составить краткое содержание встречи.

  • Tts.synthesize — синтезирует речь из текста и возвращает URL, по которому можно скачать аудиофайл.

    Например, вы можете попросить агента подготовить текст для подкаста и далее озвучить его с помощью этой функции.

ASR

Как настроить интеграцию

Функция Asr.recognize использует интеграцию типа Модель ASR.

Чтобы создать такую интеграцию:

  1. Добавьте учетные данные для провайдера ASR/TTS:

    1. В проекте перейдите в раздел Учетные данные.

    2. Добавьте новые учетные данные с типом Провайдер ASR/TTS.

      Подробнее о нужных данных читайте в статье Учетные данные для ASR/TTS.

  2. Перейдите в раздел Интеграции.

  3. Создайте интеграцию с типом Модель ASR.

    Подробнее о настройках для интеграции читайте в статье Модели ASR и голоса TTS.

Вызов функции

Функция Asr.recognize принимает следующие параметры:

  • asrIntegrationKey — идентификатор интеграции Модель ASR. В разделе Интеграции вы можете скопировать этот идентификатор на карточке интеграции. Пример: 1000001-name-abC.
  • audioUrl — URL аудиофайла, в котором нужно распознать речь. Файл должен быть доступен из интернета без авторизации.

Функция возвращает объект с результатами распознавания. Пример:

{
"metadata":{
"initiatedAt":1763637249747,
"requestId":"1abc3def-1a23-4567-8901-164aaa3d6662"
},
"settings":{
"type":"YANDEX",
"model":"general",
"languageCode":"ru-RU",
"numbersAsWords":true,
"sensitivityReduction":true
},
"result":{
"text":"хочу отменить заказ"
}
}

Здесь:

  • metadata — метаданные запроса.
  • settings — настройки интеграции ASR, которые использовались для распознавания.
  • result.text — результат распознавания.

TTS

Как настроить интеграцию

Функция Tts.synthesize использует интеграцию типа Голос TTS.

Чтобы создать такую интеграцию:

  1. Добавьте учетные данные для провайдера ASR/TTS:

    1. В проекте перейдите в раздел Учетные данные.

    2. Добавьте новые учетные данные с типом Провайдер ASR/TTS.

      Подробнее о нужных данных читайте в статье Учетные данные для ASR/TTS.

  2. Перейдите в раздел Интеграции.

  3. Создайте интеграцию с типом Голос TTS.

    Подробнее о настройках для интеграции читайте в статье Модели ASR и голоса TTS.

Вызов функции

Функция Tts.synthesize принимает следующие параметры:

  • ttsIntegrationKey — идентификатор интеграции Голос TTS. В разделе Интеграции вы можете скопировать этот идентификатор на карточке интеграции. Пример: 1000001-name-abC.

  • text — текст для синтеза речи.

  • languageCode — код языка, на котором будет синтезироваться речь. Возможные значения: DE, KK или KZ, RU, US, UZ. Ваш TTS-провайдер должен поддерживать выбранный язык.

  • audioFormat — формат аудиофайла:

    • MP3 — для провайдера ElevenLabs.
    • WAV — для всех остальных провайдеров.

Функция возвращает объект с результатами синтеза речи. Пример:

{
"settings":{
"type":"YANDEX",
"languageCode":"ru-RU",
"voice":"alena",
"speakingRate":1,
"volume":-19,
"role":"neutral",
"useVariables":false
},
"result":{
"url":"https://a12345b6-1234-41ec-ab00-790c5c412a3b.example.com/tts-cache/a123b45c-a123-45bc-d678-eef86d26abc1.wav"
}
}

Здесь:

  • settings — настройки интеграции TTS, которые использовались для синтеза речи.
  • result.url — публичный URL, по которому можно скачать сгенерированный аудиофайл. Файл хранится на сервере бессрочно.