Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье вы узнаете, как использовать Azure Speech CLI (также называемый SPX) для доступа к службам распознавания речи, таким как речь, текст в речь и перевод речи, без необходимости писать код. Интерфейс командной строки службы "Речь" готов к использованию в рабочей среде и может применяться для автоматизации простых рабочих процессов в службе "Речь" с помощью .bat или скриптов оболочки.
Предполагается, что у вас есть опыт работы с окном командной строки, терминалом или PowerShell.
Примечание.
В PowerShell токен для отмены синтаксического анализа (--%) должен стоять после spx. Например, выполните команду spx --% config @region, чтобы просмотреть текущее значение конфигурации региона.
Загрузка и установка
Чтобы установить CLI "Speech" в Windows, выполните следующие шаги:
Установите пакет Microsoft Visual C++ Redistributable для Visual Studio для вашей платформы. При первой установке может потребоваться перезагрузка.
Установите .NET 8.
Установите CLI службы "Речь" с использованием интерфейса командной строки .NET. Для этого введите следующую команду:
dotnet tool install --global Microsoft.CognitiveServices.Speech.CLIЧтобы обновить CLI службы "Речь", введите следующую команду:
dotnet tool update --global Microsoft.CognitiveServices.Speech.CLI
Введите spx или spx help, чтобы получить справочную информацию по речевой службе CLI.
Ограничения для шрифтов
В Windows в интерфейсе командной строки службы "Речь" могут отображаться только шрифты, доступные для командной строки на локальном компьютере. Терминал Windows поддерживает все шрифты, создаваемые интерфейсом командной строки службы "Речь" в интерактивном режиме.
При выводе результатов в файл текстовый редактор, например Блокнот, или веб-браузер, например Microsoft Edge, будут также отображать все шрифты.
Создание конфигурации ресурсов
Чтобы приступить к работе, вам нужен ключ API и идентификатор региона (например, eastus, westus). Создайте ресурс Foundry для службы "Речь" на портале Azure. Дополнительные сведения см. в разделе "Создание ресурса Foundry".
Чтобы настроить ключ ресурса и идентификатор региона, выполните следующие команды:
spx config @key --set SPEECH-KEY
spx config @region --set SPEECH-REGION
Ключ и регион сохраняются для использования в будущих командах CLI для речевых технологий. Чтобы просмотреть текущую конфигурацию, выполните следующие команды:
spx config @key
spx config @region
При необходимости укажите параметр clear, чтобы удалить любое сохраненное значение:
spx config @key --clear
spx config @region --clear
Базовое использование
Внимание
При использовании интерфейса командной строки службы "Речь" в контейнере включите параметр --host. Необходимо также указать --key none, чтобы интерфейс командной строки не пытался использовать ключ 'Speech' для аутентификации. Например, выполните запуск spx recognize --key none --host wss://localhost:5000/ --file myaudio.wav для распознавания речи из звукового файла в текстовом контейнере.
В этом разделе описано несколько основных команд SPX, которые зачастую удобно использовать для первого тестирования и экспериментов. Выполните следующую команду, чтобы просмотреть справку в самом инструменте.
spx
Вы также можете выполнить поиск по ключевому слову в разделах справки. Например, чтобы просмотреть примеры использования интерфейса командной строки службы "Речь", выполните следующую команду:
spx help find --topics "examples"
Чтобы просмотреть параметры recognize команды, выполните следующую команду:
spx help recognize
В выходных данных консоли перечислены команды, связанные с помощью. Вы можете ввести эти команды, чтобы получить подробную справку по подкомандам.
Преобразование речи в текст (распознавание речи)
Совет
Если вы застряли или хотите узнать больше о вариантах распознавания речи с помощью CLI, выполните spx help recognize.
Распознавание речи с микрофона
Выполните следующую команду, чтобы начать распознавание речи с микрофона:
spx recognize --microphone --source en-USНачните говорить в микрофон, и вы увидите текстовую расшифровку ваших слов, отображающуюся в реальном времени. CLI системы "Речь" останавливается после паузы, 30 секунд или при нажатии клавиш Ctrl+C.
Connection CONNECTED... RECOGNIZED: I'm excited to try speech to text.
Примечание.
При запуске CLI службы "Речь" в контейнере Docker нельзя использовать микрофон компьютера. Но можно выполнять чтение и сохранение звуковых файлов в локальном подключенном каталоге.
Распознайте речь из файла
Чтобы распознать речь из аудиофайла, используйте --file вместо --microphone. Для сжатых звуковых файлов, таких как MP4, установите GStreamer и используйте --format. Дополнительные сведения см. в разделе Как использовать сжатые входные аудиофайлы.
spx recognize --file YourAudioFile.wav
spx recognize --file YourAudioFile.mp4 --format any
Списки фраз
Чтобы повысить точность распознавания конкретных слов или речевых фрагментов, используйте список фраз. Вы включаете список фраз в строку или текстовый файл вместе с командой recognize :
spx recognize --microphone --phrases "Contoso;Jessie;Rehaan;"
spx recognize --microphone --phrases @phrases.txt
Поддержка языков
Чтобы изменить язык распознавания речи, замените en-US на другой поддерживаемый язык. Например, используется es-ES для испанского языка (Испания). Если язык не указан, значение en-USпо умолчанию .
spx recognize --microphone --source es-ES
Непрерывное распознавание
Для непрерывного распознавания звука дольше 30 секунд добавьте --continuous:
spx recognize --microphone --source es-ES --continuous
Преобразование текста в речь (синтез речи)
Совет
Если вы застряли или хотите узнать больше о вариантах распознавания речи с помощью CLI, выполните spx help synthesize.
Следующая команда использует текст как входные данные и выводит синтезированную речь на текущее активное устройство вывода (например, динамики компьютера).
spx synthesize --text "Testing synthesis using the Speech CLI" --speakers
Вы также можете сохранить синтезированные выходные данные в файл. В этом примере мы создадим файл my-sample.wav в каталоге, где будет выполняться команда.
spx synthesize --text "Enjoy using the Speech CLI." --audio output my-sample.wav
Предполагается, что тестирование выполняется на английском языке. Однако служба "Речь" поддерживает синтез речи на нескольких языках. Полный список голосовых моделей можно вывести, выполнив следующую команду или посетив страницу о поддержке языков.
spx synthesize --voices
Вот команда для использования одного из обнаруженных голосов.
spx synthesize --text "Bienvenue chez moi." --voice fr-FR-AlainNeural --speakers
Преобразование речи в текст
Совет
Если вы застряли или хотите узнать больше о параметрах перевода CLI для работы с речью, выполните команду spx help translate.
Перевод речи с микрофона
Выполните следующую команду, чтобы начать перевод речи с микрофона:
spx translate --source en-US --target it --microphoneПоговорите с микрофоном, и вы увидите транскрибирование переведенной речи в режиме реального времени. CLI системы "Речь" останавливается после паузы, 30 секунд или при нажатии клавиш Ctrl+C.
Connection CONNECTED... TRANSLATING into 'it': Sono (from 'I'm') TRANSLATING into 'it': Sono entusiasta (from 'I'm excited to') TRANSLATING into 'it': Sono entusiasta di provare la parola (from 'I'm excited to try speech') TRANSLATED into 'it': Sono entusiasta di provare la traduzione vocale. (from 'I'm excited to try speech translation.')
Примечание.
При запуске CLI службы "Речь" в контейнере Docker нельзя использовать микрофон компьютера. Но можно выполнять чтение и сохранение звуковых файлов в локальном подключенном каталоге.
Перевод речи из файла
Чтобы перевести речь из звукового файла, используйте --file вместо --microphoneнего. Для сжатых звуковых файлов, таких как MP4, установите GStreamer и используйте --format. Дополнительные сведения см. в разделе Как использовать сжатые входные аудиофайлы.
spx translate --source en-US --target it --file YourAudioFile.wav
spx translate --source en-US --target it --file YourAudioFile.mp4 --format any
Списки фраз
Чтобы повысить точность распознавания конкретных слов или речевых фрагментов, используйте список фраз. Вы включаете список фраз в строку или текстовый файл вместе с командой translate :
spx translate --source en-US --target it --microphone --phrases "Contoso;Jessie;Rehaan;"
spx translate --source en-US --target it --microphone --phrases @phrases.txt
Поддержка языков
Чтобы изменить язык распознавания речи, замените en-US на другой поддерживаемый язык. Укажите полную локаль с техническим разделителем - тире (-). Например, es-ES для испанского (Испания). Если язык не указан, по умолчанию используется en-US.
spx translate --microphone --source es-ES
Чтобы изменить целевой язык перевода, замените it на другой поддерживаемый язык. За редкими исключениями, вы указываете только код языка, который предшествует разделителю языкового стандарта (-). Например, для испанского языка (Испания) используйте es, а не es-ES. Если язык не указан, по умолчанию используется en.
spx translate --microphone --target es
Несколько целевых языков
При переводе на несколько языков разделяйте коды языков точкой с запятой (;).
spx translate --microphone --source en-US --target 'ru-RU;fr-FR;es-ES'
Сохранение выходных данных перевода
Если вы хотите сохранить выходные данные перевода, используйте флаг --output. В этом примере вы также читаете из файла.
spx translate --file /some/file/path/input.wav --source en-US --target ru-RU --output file /some/file/path/russian_translation.txt
Непрерывный перевод
Для непрерывного перевода звука дольше 30 секунд добавьте --continuous:
spx translate --source en-US --target it --microphone --continuous