Краткое руководство. Начало работы с Azure AI Speech CLI

В этой статье вы узнаете, как использовать интерфейс командной строки службы "Речь" Azure AI (также называемый SPX) для доступа к службам распознавания речи, таким как речь, текст в речь и перевод речи, без необходимости писать код. Интерфейс командной строки службы "Речь" готов к использованию в рабочей среде и может применяться для автоматизации простых рабочих процессов в службе "Речь" с помощью .bat или скриптов оболочки.

Предполагается, что у вас есть опыт работы с окном командной строки, терминалом или PowerShell.

Примечание.

В PowerShell токен для отмены синтаксического анализа (--%) должен стоять после spx. Например, выполните команду spx --% config @region, чтобы просмотреть текущее значение конфигурации региона.

Загрузка и установка

Вот как установить интерфейс командной строки службы "Речь" в Windows:

  1. Установите распространяемый компонент Microsoft Visual C++ для Visual Studio 2019 для своей платформы. При первой установке может потребоваться перезагрузка.

  2. Установить .NET 6.

  3. Установите 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. Дополнительные сведения см. в разделе "Создание ресурса с несколькими службами".

Чтобы настроить ключ ресурса и идентификатор региона, выполните следующие команды:

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.

Следующие шаги