Контейнеры идентификации языка с помощью Docker
Контейнер идентификации языка речи обнаруживает язык, произнесенных в звуковых файлах. Вы можете получить речь в режиме реального времени или пакетную звукозапись с промежуточными результатами. Из этой статьи вы узнаете, как скачать, установить и запустить контейнер идентификации языка.
Примечание.
Контейнер идентификации языка речи доступен в общедоступной предварительной версии. Контейнеры в предварительной версии по-прежнему находятся в процессе разработки и не соответствуют требованиям к стабильности и поддержке Корпорации Майкрософт.
Дополнительные сведения о предварительных требованиях, проверке запуска контейнера, выполнении нескольких контейнеров на одном узле и выполнении отключенных контейнеров см. в разделе "Установка и запуск контейнеров службы "Речь" с помощью Docker.
Совет
Чтобы получить наиболее полезные результаты, используйте контейнер идентификации языка речи с речью для текста или пользовательской речи в текстовые контейнеры.
Образы контейнеров
Образ контейнера идентификации языка речи для всех поддерживаемых версий и языковых стандартов можно найти в синдикате Реестра контейнеров Майкрософт (MCR ). Он находится в репозитории azure-cognitive-services/speechservices/
и называется language-detection
.
Полное имя образа контейнера — mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection
. Добавьте определенную версию или добавьте :latest
ее, чтобы получить последнюю версию.
Версия | Путь |
---|---|
Latest | mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection:latest |
1.16.0 | mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection:1.16.0-amd64-preview |
Все теги, кроме latest
, имеют следующий формат и учитывают регистр:
<major>.<minor>.<patch>-<platform>-<prerelease>
Теги также доступны в формате JSON для удобства. Текст содержит путь к контейнеру и список тегов. Теги не отсортированы по версии, но "latest"
всегда включаются в конец списка, как показано в этом фрагменте кода:
{
"name": "azure-cognitive-services/speechservices/language-detection",
"tags": [
"1.1.0-amd64-preview",
"1.11.0-amd64-preview",
"1.12.0-amd64-preview",
"1.13.0-amd64-preview",
"1.14.0-amd64-preview",
"1.15.0-amd64-preview",
"1.16.0-amd64-preview",
"1.3.0-amd64-preview",
"1.5.0-amd64-preview",
"1.6.1-amd64-preview",
"1.7.0-amd64-preview",
"1.8.0-amd64-preview",
"latest"
]
}
Получение образа контейнера с помощью команды docker pull
Необходимые компоненты , включая необходимое оборудование. Также см. рекомендуемое выделение ресурсов для каждого контейнера службы "Речь".
Воспользуйтесь командой docker pull, чтобы скачать образ контейнера из реестра контейнеров Microsoft:
docker pull mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection:latest
Запуск контейнера с помощью запуска Docker
Воспользуйтесь командой docker run для запуска контейнера.
В следующей таблице представлены различные параметры docker run
и соответствующие им описания.
Параметр | Описание |
---|---|
{ENDPOINT_URI} |
Для оценки и выставления счетов требуется конечная точка. Дополнительные сведения см . в разделе аргументов выставления счетов. |
{API_KEY} |
Ключ API не требуется. Дополнительные сведения см . в разделе аргументов выставления счетов. |
При запуске контейнера идентификации языка речи настройте порт, память и ЦП в соответствии с требованиями и рекомендациями к контейнеру идентификации языка.
Ниже приведен пример docker run
команды со значениями заполнителей. Необходимо указать ENDPOINT_URI
значения и API_KEY
значения:
docker run --rm -it -p 5000:5003 --memory 1g --cpus 1 \
mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}
Команда:
- Запускает контейнер идентификации языка речи из образа контейнера.
- выделяет 1 ядро ЦП и 1 Гб памяти.
- предоставляет TCP-порт 5000 и выделяет псевдотелетайп для контейнера;
- автоматически удаляет контейнер после завершения его работы. Образ контейнера остается доступным на главном компьютере.
Дополнительные сведения о контейнерах службы "Речь" см. в docker run
разделе "Установка и запуск контейнеров службы "Речь" с помощью Docker.
Запуск с помощью преобразования речи в текстовый контейнер
Если вы хотите запустить контейнер идентификации языка с речью в текстовый контейнер, можно использовать этот образ Docker. После запуска обоих контейнеров выполните следующую docker run
команду speech-to-text-with-languagedetection-client
:
docker run --rm -v ${HOME}:/root -ti antsu/on-prem-client:latest ./speech-to-text-with-languagedetection-client ./audio/LanguageDetection_en-us.wav --host localhost --lport 5003 --sport 5000
Увеличение числа одновременных вызовов может сказаться на надежности передачи и задержке. Для идентификации языка рекомендуется задать не более 1 одновременных вызовов, использующих 1 ЦП и объем памяти 1 ГБ. Для узлов с двумя процессорами и 2 ГБ памяти рекомендуется не более шести одновременных вызовов.
Использование контейнера
Контейнеры службы "Речь" предоставляют API конечных точек запросов на основе websocket, к которым обращается пакет SDK службы "Речь" и CLI службы "Речь". По умолчанию пакет SDK службы "Речь" и cli службы "Речь" используют общедоступную службу "Речь". Чтобы использовать контейнер, вам необходимо изменить метод инициализации.
Внимание
При использовании службы "Речь" с контейнерами обязательно используйте проверку подлинности узла. Если вы настроите ключ и регион, запросы будут отправляться в общедоступную службу "Речь". Результаты службы "Речь" могут не быть ожидаемыми. Запросы от отключенных контейнеров завершаются ошибкой.
Вместо использования этой конфигурации инициализации в облаке Azure:
var config = SpeechConfig.FromSubscription(...);
Используйте эту конфигурацию с узлом контейнера:
var config = SpeechConfig.FromHost(
new Uri("http://localhost:5000"));
Вместо использования этой конфигурации инициализации в облаке Azure:
auto speechConfig = SpeechConfig::FromSubscription(...);
Используйте эту конфигурацию с узлом контейнера:
auto speechConfig = SpeechConfig::FromHost("http://localhost:5000");
Вместо использования этой конфигурации инициализации в облаке Azure:
speechConfig, err := speech.NewSpeechConfigFromSubscription(...)
Используйте эту конфигурацию с узлом контейнера:
speechConfig, err := speech.NewSpeechConfigFromHost("http://localhost:5000")
Вместо использования этой конфигурации инициализации в облаке Azure:
SpeechConfig speechConfig = SpeechConfig.fromSubscription(...);
Используйте эту конфигурацию с узлом контейнера:
SpeechConfig speechConfig = SpeechConfig.fromHost("http://localhost:5000");
Вместо использования этой конфигурации инициализации в облаке Azure:
const speechConfig = sdk.SpeechConfig.fromSubscription(...);
Используйте эту конфигурацию с узлом контейнера:
const speechConfig = sdk.SpeechConfig.fromHost("http://localhost:5000");
Вместо использования этой конфигурации инициализации в облаке Azure:
SPXSpeechConfiguration *speechConfig = [[SPXSpeechConfiguration alloc] initWithSubscription:...];
Используйте эту конфигурацию с узлом контейнера:
SPXSpeechConfiguration *speechConfig = [[SPXSpeechConfiguration alloc] initWithHost:"http://localhost:5000"];
Вместо использования этой конфигурации инициализации в облаке Azure:
let speechConfig = SPXSpeechConfiguration(subscription: "", region: "");
Используйте эту конфигурацию с узлом контейнера:
let speechConfig = SPXSpeechConfiguration(host: "http://localhost:5000");
Вместо использования этой конфигурации инициализации в облаке Azure:
speech_config = speechsdk.SpeechConfig(
subscription=speech_key, region=service_region)
Используйте эту конфигурацию с конечной точкой контейнера:
speech_config = speechsdk.SpeechConfig(
host="http://localhost:5000")
При использовании интерфейса командной строки службы "Речь" в контейнере включите --host http://localhost:5000/
этот параметр. Необходимо также указать --key none
, чтобы интерфейс командной строки не использовал ключ службы "Речь" для проверки подлинности. Сведения о настройке интерфейса командной строки службы "Речь" см. в статье "Начало работы с azure AI Speech CLI".
Попробуйте использовать идентификацию языка с помощью проверки подлинности узла вместо ключа и региона. При запуске идентификатора языка в контейнере используйте SourceLanguageRecognizer
объект вместо SpeechRecognizer
него.TranslationRecognizer
Следующие шаги
- Общие сведения о контейнерах службы "Речь"
- Ознакомьтесь со статьей о конфигурации контейнеров.
- Использование дополнительных контейнеров ИИ Azure