Краткое руководство. Начало работы с Azure AI Speech CLI
В этой статье вы узнаете, как использовать интерфейс командной строки службы "Речь" Azure AI (также называемый SPX) для доступа к службам распознавания речи, таким как речь, текст в речь и перевод речи, без необходимости писать код. Интерфейс командной строки службы "Речь" готов к использованию в рабочей среде и может применяться для автоматизации простых рабочих процессов в службе "Речь" с помощью .bat
или скриптов оболочки.
Предполагается, что у вас есть опыт работы с окном командной строки, терминалом или PowerShell.
Примечание.
В PowerShell токен для отмены синтаксического анализа (--%
) должен стоять после spx
. Например, выполните команду spx --% config @region
, чтобы просмотреть текущее значение конфигурации региона.
Загрузка и установка
Вот как установить интерфейс командной строки службы "Речь" в Windows:
Установите распространяемый компонент Microsoft Visual C++ для Visual Studio 2019 для своей платформы. При первой установке может потребоваться перезагрузка.
Установить .NET 6.
Установите CLI службы "Речь" с использованием интерфейса командной строки NuGet. Для этого введите следующую команду:
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, будут также отображать все шрифты.
Создание конфигурации ресурсов
Чтобы приступить к работе, вам потребуется ключ ресурса службы "Речь" и идентификатор региона (например, eastus
). westus
Создайте ресурс службы "Речь" на портале Azure. Дополнительные сведения см. в статье "Создание ресурса служб искусственного интеллекта Azure".
Чтобы настроить ключ ресурса и идентификатор региона, выполните следующие команды:
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
, чтобы интерфейс командной строки не использовал ключ службы "Речь" для проверки подлинности. Например, выполните запуск spx recognize --key none --host wss://localhost:5000/ --file myaudio.wav
для распознавания речи из звукового файла в текстовом контейнере.
В этом разделе описано несколько основных команд SPX, которые зачастую удобно использовать для первого тестирования и экспериментов. Выполните следующую команду, чтобы просмотреть справку в средстве:
spx
Вы также можете выполнить поиск по ключевому слову в разделах справки. Например, чтобы просмотреть примеры использования CLI службы "Речь", выполните следующую команду:
spx help find --topics "examples"
Чтобы просмотреть параметры recognize
команды, выполните следующую команду:
spx help recognize
Дополнительные команды справки перечислены в выходных данных консоли. Вы можете ввести эти команды, чтобы получить подробную справку по подкомандам.
Преобразование речи в текст (распознавание речи)
Примечание.
При запуске CLI службы "Речь" в контейнере Docker нельзя использовать микрофон компьютера. Но можно выполнять чтение и сохранение звуковых файлов в локальном подключенном каталоге.
Чтобы преобразовать речь в текст (распознать речь) с помощью стандартного микрофона системы, выполните следующую команду:
spx recognize --microphone
После ввода этой команды SPX начнет прослушивать звук на текущем активном устройстве ввода. Прослушивание прекратится при нажатии клавиши Ввод. Затем записанная речь перевод распознается и преобразуется в текст в выходных данных консоли.
С помощью CLI службы "Речь" можно также распознать речь из аудиофайла. Выполните следующую команду:
spx recognize --file /path/to/file.wav
Совет
Если на каком-то этапе у вас возникли трудности или вы хотите узнать больше о возможностях распознавания с помощью CLI службы "Речь", выполните spx help recognize
.
Преобразование текста в речь (синтез речи)
Следующая команда использует текст как входные данные и выводит синтезированную речь на текущее активное устройство вывода (например, динамики компьютера).
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 synthesize
.
Перевод преобразованной речи в текст
С помощью CLI службы "Речь" можно также выполнять перевод преобразованной речи в текст. Выполните приведенную ниже команду, чтобы записать звук с микрофона по умолчанию и вывести перевод в виде текста. Обязательно укажите языки source
и target
в строке команды translate
.
spx translate --microphone --source en-US --target ru-RU
При переводе на несколько языков разделяйте коды языков точкой с запятой (;
).
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
Совет
Если на каком-то этапе у вас возникли трудности или вы хотите узнать больше о возможностях распознавания с помощью CLI службы "Речь", выполните spx help translate
.