Потоковое распознавание с синхронным ответом в конце
Описание
Метод используется, если:
- есть большие аудио, которые не укладываются в текущие ограничения;
- нужен результат распознавания сразу после окончания аудиопотока, но без промежуточных результатов.
Стриминговые сессии нужно закрывать после окончания передачи последнего сообщения. Если сессия не закрывается, могут расходоваться выданные лимиты.
Параметры запроса
Настройки распознавания config
отправляются в первом сообщении, audio_content
― в последующих сообщениях.
Поле | Тип | Возможные значения | Описание |
---|---|---|---|
config | RecognitionConfig | Настройки потокового распознавания. | |
audio_content | bytes | Аудиофайл | Обязательный параметр. Фрагмент аудио. |
RecognitionConfig
Настройки распознавания.
Поле | Тип | Возможные значения | Описание |
---|---|---|---|
encoding | AudioEncoding | Обязательный параметр. Формат аудио. Определяет и контейнер, и кодек. Должен задаваться явно. Как правильно указать encoding | |
sample_rate_hertz | uint32 | Значение должно соответствовать частоте дискретизации аудио — 8000 , 11025 , 12000 , 16000 , 22050 , 24000 , 32000 , 44100 , 48000 , 96000 . | Обязательный параметр. Частота дискретизации в герцах. |
num_channels | uint32 | Значение должно соответствовать количеству каналов в аудио — 1 или 2 . | Обязательный параметр. Количество каналов в аудио. |
max_alternatives | uint32 | Значение по умолчанию — 1 .[1, 15] . | Опциональный параметр. Максимальное количество альтернатив для финальных и промежуточных результатов. |
profanity_filter | bool |
| Опциональный параметр. Скрыть ненормативную лексику. Пример скрытого слова: «б****». |
speech_contexts | SpeechContext | Опциональный параметр. Контекст для распознавания. | |
enable_automatic_punctuation | bool | Значение по умолчанию —
| Опциональный параметр. Добавить пунктуацию (запятые, точки и знаки вопроса) и прописные буквы. |
do_not_perform_vad | bool | Значение по умолчанию —
| Опциональный параметр. Отключить разбиение текста на фразы. |
vad_config | VoiceActivityDetectionConfig | Опциональный параметр. Настройки разбиения на фразы. | |
enable_denormalization | bool | Значение по умолчанию —
| Опциональный параметр. Примеры:
|
enable_sentiment_analysis | bool | Значение по умолчанию — false . | Опциональный параметр. β Определить вероятность негативных и позитивных эмоций. Используется для каждой финальной гипотезы. |
enable_gender_identification | bool | Значение по умолчанию — false . | Опциональный параметр. β Определить вероятность пола говорящего: мужской или женский. Используется для каждой финальной гипотезы. |
RecognitionConfig.SpeechContext
Контекст для распознавания. С его помощью можно повысить или понизить вероятность распознавания фраз — например, можно указать имена, узкоспециализированные термины, названия брендов.
Поле | Тип | Описание | |
---|---|---|---|
phrases | SpeechContextPhrase | Опциональный параметр. Фразы для контекста. | |
speech_context_dictionary_id | string | Значение, полученное при создании словаря. | Опциональный параметр. Идентификатор заранее подготовленного контекстного словаря на стороне облака VoiceKit. Подробнее про контекстный словарь. |
SpeechContext.SpeechContextPhrase
Фраза для контекста.
Тип | Возможные значения | Описание | |
---|---|---|---|
text | string | Не рекомендуется указывать фразы длиной меньше 5 символов. | Опциональный параметр. Текст фразы на русском языке в нижнем регистре. |
score | float | Значение по умолчанию ― 1.0 . Этого достаточно, чтобы фраза распознавалась с большей вероятностью, чем фраза не из контекста. Диапазон значений ― [-10.0, 10.0] . | Опциональный параметр. Вес фразы. Чем больше вес, тем выше вероятность распознавания фразы. Если указать отрицательное значение, вероятность распознавания фразы или слова ниже. |
RecognitionConfig.VoiceActivityDetectionConfig
Настройки определения тишины в аудио (VAD).
Поле | Тип | Описание | |
---|---|---|---|
silence_duration_threshold | float | Значение по умолчанию — 0.6 . | Опциональный параметр. Длительность паузы в секундах, после которой фраза считается завершенной. |
silence_prob_threshold | float | Значение по умолчанию — 0.9 . | Опциональный параметр. Вероятность определения тишины. Фрагмент аудио считается тишиной, если она определилась с вероятностью выше этого значения. |
Параметры ответа
SpeechRecognitionResult
Распознанные фразы.
Поле | Тип | Описание |
---|---|---|
results | SpeechRecognitionResult | Распознанные фразы. |
SpeechRecognitionResult
Распознанные фразы.
Поле | Тип | Описание |
---|---|---|
alternatives | SpeechRecognitionAlternative | Список альтернатив, отсортированных по убыванию confidence . |
channel | int32 | Канал, к которому относится версия фразы. Нумерация с 0. |
start_time | google.protobuf.Duration | Время начала фразы в исходном аудио. |
end_time | google.protobuf.Duration | Время окончания фразы в исходном аудио. |
sentiment_analysis_result | SpeechSentimentAnalysisResult | Результат определения негативных эмоций. |
gender_identification_result | SpeechGenderIdentificationResult | Результат определения пола. |
SpeechRecognitionResult.SpeechRecognitionAlternative
Список альтернатив, отсортированных по убыванию confidence
.
Поле | Тип | Описание |
---|---|---|
transcript | string | Распознанный текст. |
confidence | float | Показатель уверенности распознавания относительно других слов во фразе при max_alternatives > 1 . Значение может быть отрицательным. |
words | WordInfo | Список отдельных слов внутри фразы. |
SpeechRecognitionAlternative.WordInfo
Список отдельных слов внутри фразы.
Поле | Тип | Описание |
---|---|---|
start_time | google.protobuf.Duration | Время начала слова в исходном аудио. |
end_time | google.protobuf.Duration | Время окончания слова в исходном аудио. |
word | string | Слово во фразе. |
confidence | float | Показатель уверенности распознавания относительно других слов во фразе при max_alternatives > 1 . Значение может быть отрицательным |
SpeechRecognitionResult.SpeechSentimentAnalysisResult
Результат определения негативных эмоций.
Поле | Тип | Описание |
---|---|---|
negative_prob_audio | float | Вероятность негативных эмоций на основе анализа аудио. |
negative_prob_audio_text | float | Вероятность негативных эмоций на основе анализа аудио и распознанного текста. |
positive_prob_audio_text | float | Вероятность позитивных эмоций на основе анализа аудио и распознанного текста. |
SpeechRecognitionResult.SpeechGenderIdentificationResult
Результат определения пола.
Поле | Тип | Описание |
---|---|---|
male_proba | float | Вероятность, что пол мужской. |
female_proba | float | Вероятность, что пол женский. |
AudioEncoding
Формат аудио. Определяет и контейнер, и кодек. Подробнее о PCM и LPCM.
Имя | Описание |
---|---|
LINEAR16 | LPCM без заголовка, битовая глубина ― 16 бит. |
MULAW | PCM без заголовков в распределении μ-law (PCMU), битовая глубина ― 8 бит. |
ALAW | PCM без заголовков в распределении a-law (PCMA), битовая глубина ― 8 бит. |
RAW_OPUS | Фреймы Opus, запакованные в сообщения Protobuf. Каждый фрейм должен быть запакован в поле content сообщения RecognitionAudio . При этом каждый фрейм нужно отправлять так, как он был закодирован ― не нужно объединять несколько фреймов в один. |
MPEG_AUDIO | MPEG |
ADTS_AAC | AAC аудио в ADTS потоке. |
RAW_AAC_LC | AAC LC (Low Complexy) фреймы, запакованные в сообщения Protobuf. Поддерживается только в стриминговых методах. Важно Как и в RAW_OPUS-формате, каждый фрeйм должен отправляться отдельном сообщении. |
RAW_ER_AAC_LD | ER AAC LD фреймы, запакованные в сообщения Protobuf. Поддерживается только в стриминговых методах. Важно Как и в RAW_OPUS-формате, каждый фрeйм должен отправляться в отдельном сообщении. |