Share via


Docker ile dil tanımlama kapsayıcıları

Konuşma dili tanımlama kapsayıcısı, ses dosyalarında konuşulan dili algılar. Ara sonuçlarla gerçek zamanlı konuşma veya toplu ses kayıtları alabilirsiniz. Bu makalede, dil tanımlama kapsayıcısını indirmeyi, yüklemeyi ve çalıştırmayı öğreneceksiniz.

Not

Konuşma dili tanımlama kapsayıcısı genel önizlemede kullanılabilir. Önizleme aşamasındaki kapsayıcılar hala geliştirme aşamasındadır ve Microsoft'un kararlılık ve destek gereksinimlerini karşılamamaktadır.

Önkoşullar, bir kapsayıcının çalıştığını doğrulama, aynı konakta birden çok kapsayıcı çalıştırma ve bağlantısı kesilmiş kapsayıcıları çalıştırma hakkında daha fazla bilgi için bkz . Docker ile Konuşma kapsayıcılarını yükleme ve çalıştırma.

İpucu

En yararlı sonuçları almak için Konuşmayı metne dönüştürme veya özel konuşmayı metin kapsayıcılarıyla konuşma dili tanımlama kapsayıcısını kullanın.

Kapsayıcı görüntüleri

Desteklenen tüm sürümler ve yerel ayarlar için Konuşma dili tanımlama kapsayıcı görüntüsü Microsoft Container Registry (MCR) dağıtımında bulunabilir. Depoda azure-cognitive-services/speechservices/ bulunur ve olarak adlandırılır language-detection.

A screenshot of the search connectors and triggers dialog.

Tam kapsayıcı görüntüsü adı: mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection. En son sürümü almak için belirli bir sürümü ekleme veya ekleme :latest .

Sürüm Path
En geç mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection:latest
1.12.0 mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection:1.12.0-amd64-preview

dışındaki latesttüm etiketler aşağıdaki biçimdedir ve büyük/küçük harfe duyarlıdır:

<major>.<minor>.<patch>-<platform>-<prerelease>

Etiketler, kolaylık sağlamak için JSON biçiminde de kullanılabilir. Gövde kapsayıcı yolunu ve etiket listesini içerir. Etiketler sürüme göre sıralanmamıştır, ancak "latest" bu kod parçacığında gösterildiği gibi her zaman listenin sonuna eklenir:

{
  "name": "azure-cognitive-services/speechservices/language-detection",
  "tags": [
    "1.1.0-amd64-preview",
    "1.11.0-amd64-preview",
    "1.12.0-amd64-preview",
    "1.3.0-amd64-preview",
    "1.5.0-amd64-preview",
    <--redacted for brevity-->
    "1.8.0-amd64-preview",
    "latest"
  ]
}

Docker çekme ile kapsayıcı görüntüsünü alma

Gerekli donanım da dahil olmak üzere önkoşullara ihtiyacınız vardır. Ayrıca her Konuşma kapsayıcısı için önerilen kaynak ayırma bölümüne bakın.

Microsoft Container Registry'den kapsayıcı görüntüsü indirmek için docker pull komutunu kullanın:

docker pull mcr.microsoft.com/azure-cognitive-services/speechservices/language-detection:latest

Kapsayıcıyı docker run ile çalıştırma

Kapsayıcıyı çalıştırmak için docker run komutunu kullanın.

Aşağıdaki tablo çeşitli docker run parametreleri ve bunların karşılık gelen açıklamalarını temsil eder:

Parametre Açıklama
{ENDPOINT_URI} Uç nokta, ölçüm ve faturalama için gereklidir. Daha fazla bilgi için bkz . faturalama bağımsız değişkenleri.
{API_KEY} API anahtarı gereklidir. Daha fazla bilgi için bkz . faturalama bağımsız değişkenleri.

Konuşma dili tanımlama kapsayıcısını çalıştırdığınızda, bağlantı noktasını, belleği ve CPU'sunu dil tanımlama kapsayıcısı gereksinimlerine ve önerilerine göre yapılandırın.

Aşağıda yer tutucu değerleri içeren bir örnek docker run komut verilmiştir. ve API_KEY değerlerini belirtmelisinizENDPOINT_URI:

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}

Şu komut:

  • Kapsayıcı görüntüsünden konuşma dili tanımlama kapsayıcısını çalıştırır.
  • 1 CPU çekirdeği ve 1 GB bellek ayırır.
  • TCP bağlantı noktası 5000'i kullanıma sunar ve kapsayıcı için bir sahte TTY ayırır.
  • Kapsayıcı çıktıktan sonra otomatik olarak kaldırılır. Kapsayıcı görüntüsü ana bilgisayarda hala kullanılabilir.

Konuşma kapsayıcıları hakkında docker run daha fazla bilgi için bkz . Docker ile Konuşma kapsayıcılarını yükleme ve çalıştırma.

Konuşmayı metne dönüştürme kapsayıcısıyla çalıştırma

Konuşma metin kapsayıcısıyla dil tanımlama kapsayıcısını çalıştırmak istiyorsanız, bu docker görüntüsünü kullanabilirsiniz. her iki kapsayıcı da başlatıldıktan sonra komutunu yürütmek speech-to-text-with-languagedetection-clientiçin şu docker run komutu kullanın:

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

Eşzamanlı çağrı sayısının artırılması güvenilirliği ve gecikme süresini etkileyebilir. Dil belirleme için, 1 GB belleğe sahip 1 CPU kullanan en fazla dört eşzamanlı çağrı öneririz. 2 CPU ve 2 GB belleği olan konaklar için en fazla altı eşzamanlı çağrı önerilir.

Kapsayıcıyı kullanma

Konuşma kapsayıcıları, Konuşma SDK'sı ve Konuşma CLI'sı aracılığıyla erişilen websocket tabanlı sorgu uç noktası API'leri sağlar. Varsayılan olarak, Konuşma SDK'sı ve Konuşma CLI'sı genel Konuşma hizmetini kullanır. Kapsayıcıyı kullanmak için başlatma yöntemini değiştirmeniz gerekir.

Önemli

Konuşma hizmetini kapsayıcılarla kullanırken konak kimlik doğrulamasını kullandığınızdan emin olun. Anahtarı ve bölgeyi yapılandırdığınızda istekler genel Konuşma hizmetine gider. Konuşma hizmetinin sonuçları beklediğiniz gibi olmayabilir. Bağlantısı kesilmiş kapsayıcılardan gelen istekler başarısız olur.

Bu Azure bulut başlatma yapılandırmasını kullanmak yerine:

var config = SpeechConfig.FromSubscription(...);

Kapsayıcı konağıyla bu yapılandırmayı kullanın:

var config = SpeechConfig.FromHost(
    new Uri("http://localhost:5000"));

Bu Azure bulut başlatma yapılandırmasını kullanmak yerine:

auto speechConfig = SpeechConfig::FromSubscription(...);

Kapsayıcı konağıyla bu yapılandırmayı kullanın:

auto speechConfig = SpeechConfig::FromHost("http://localhost:5000");

Bu Azure bulut başlatma yapılandırmasını kullanmak yerine:

speechConfig, err := speech.NewSpeechConfigFromSubscription(...)

Kapsayıcı konağıyla bu yapılandırmayı kullanın:

speechConfig, err := speech.NewSpeechConfigFromHost("http://localhost:5000")

Bu Azure bulut başlatma yapılandırmasını kullanmak yerine:

SpeechConfig speechConfig = SpeechConfig.fromSubscription(...);

Kapsayıcı konağıyla bu yapılandırmayı kullanın:

SpeechConfig speechConfig = SpeechConfig.fromHost("http://localhost:5000");

Bu Azure bulut başlatma yapılandırmasını kullanmak yerine:

const speechConfig = sdk.SpeechConfig.fromSubscription(...);

Kapsayıcı konağıyla bu yapılandırmayı kullanın:

const speechConfig = sdk.SpeechConfig.fromHost("http://localhost:5000");

Bu Azure bulut başlatma yapılandırmasını kullanmak yerine:

SPXSpeechConfiguration *speechConfig = [[SPXSpeechConfiguration alloc] initWithSubscription:...];

Kapsayıcı konağıyla bu yapılandırmayı kullanın:

SPXSpeechConfiguration *speechConfig = [[SPXSpeechConfiguration alloc] initWithHost:"http://localhost:5000"];

Bu Azure bulut başlatma yapılandırmasını kullanmak yerine:

let speechConfig = SPXSpeechConfiguration(subscription: "", region: "");

Kapsayıcı konağıyla bu yapılandırmayı kullanın:

let speechConfig = SPXSpeechConfiguration(host: "http://localhost:5000");

Bu Azure bulut başlatma yapılandırmasını kullanmak yerine:

speech_config = speechsdk.SpeechConfig(
    subscription=speech_key, region=service_region)

Kapsayıcı uç noktasıyla bu yapılandırmayı kullanın:

speech_config = speechsdk.SpeechConfig(
    host="http://localhost:5000")

Konuşma CLI'sini bir kapsayıcıda kullanırken seçeneğini ekleyin --host http://localhost:5000/ . CLI'nın kimlik doğrulaması için Konuşma anahtarı kullanmadığından emin olmak için de belirtmelisiniz --key none . Konuşma CLI'sını yapılandırma hakkında bilgi için bkz . Azure AI Konuşma CLI'sını kullanmaya başlama.

Anahtar ve bölge yerine konak kimlik doğrulaması kullanarak dil belirlemeyi deneyin. Bir kapsayıcıda dil kimliği çalıştırdığınızda veya TranslationRecognizeryerine SpeechRecognizer nesnesini kullanınSourceLanguageRecognizer.

Sonraki adımlar