Docker ile metin kapsayıcılarına özel konuşma
Metin kapsayıcısına özel konuşma, ara sonuçlarla gerçek zamanlı konuşma veya toplu ses kayıtlarının dökümünü alır. Özel konuşma portalında oluşturduğunuz özel modeli kullanabilirsiniz. Bu makalede, metin kapsayıcısına özel konuşma indirmeyi, yüklemeyi ve çalıştırmayı öğreneceksiniz.
Ö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.
Kapsayıcı görüntüleri
Desteklenen tüm sürümler ve yerel ayarlar için metin kapsayıcı görüntüsüne özel konuşma, Microsoft Container Registry (MCR) dağıtımında bulunabilir. Depoda azure-cognitive-services/speechservices/
bulunur ve olarak adlandırılır custom-speech-to-text
.
Tam kapsayıcı görüntüsü adı: mcr.microsoft.com/azure-cognitive-services/speechservices/custom-speech-to-text
. En son sürümü almak için belirli bir sürümü ekleme veya ekleme :latest
.
Sürüm | Yol |
---|---|
En geç | mcr.microsoft.com/azure-cognitive-services/speechservices/custom-speech-to-text:latest |
4.10.0 | mcr.microsoft.com/azure-cognitive-services/speechservices/custom-speech-to-text:4.10.0-amd64 |
dışındaki latest
tüm etiketler aşağıdaki biçimdedir ve büyük/küçük harfe duyarlıdır:
<major>.<minor>.<patch>-<platform>-<prerelease>
Not
locale
metin kapsayıcılarına özel konuşma için vevoice
, kapsayıcı tarafından alınan özel model tarafından belirlenir.
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/custom-speech-to-text",
"tags": [
<--redacted for brevity-->
"4.4.0-amd64",
"4.5.0-amd64",
"4.6.0-amd64",
"4.7.0-amd64",
"4.8.0-amd64",
"4.9.0-amd64",
"4.10.0-amd64",
"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/custom-speech-to-text:latest
Not
locale
özel Konuşma kapsayıcıları için vevoice
, kapsayıcı tarafından alınan özel model tarafından belirlenir.
Model kimliğini alma
Kapsayıcıyı çalıştırabilmeniz için önce özel modelinizin model kimliğini veya temel model kimliğini bilmeniz gerekir. Kapsayıcıyı çalıştırdığınızda, indirilip kullanılacak model kimliklerinden birini belirtirsiniz.
Özel modelin Speech Studio kullanılarak eğitilmesi gerekir. Model kimliğini alma hakkında bilgi için bkz . özel konuşma modeli yaşam döngüsü.
Komutun parametresine docker run
bağımsız değişken ModelId
olarak kullanılacak Model Kimliğini alın.
Model indirmeyi görüntüleme
Kapsayıcıyı çalıştırmadan önce, isteğe bağlı olarak kullanılabilir görüntü modelleri bilgilerini alabilir ve son derece iyileştirilmiş son ekran çıkışı elde etmek için bu modelleri konuşma kapsayıcınıza indirmeyi seçebilirsiniz. Görüntü modeli indirme özelliği, özel konuşmadan metne kapsayıcı sürüm 3.1.0 ve üzeri ile kullanılabilir.
Not
komutunu kullanmanıza docker run
rağmen, kapsayıcı hizmet için başlatılmaz.
Şu görüntüleme modeli türlerinin herhangi birini veya tümünü sorgulayabilir veya indirebilirsiniz: Yeniden Puanlama (Rescore
), Noktalama (Punct
), ayrıştırma (Resegment
) ve wfstitn (Wfstitn
). Aksi takdirde, tüm görüntüleme modellerini sorgulamak veya indirmek için seçeneğini kullanabilirsiniz FullDisplay
(diğer türlerle birlikte veya olmadan).
BaseModelLocale
Hedef yerel ayarda en son kullanılabilir görüntü modelini sorgulamak için öğesini ayarlayın. Birden çok görüntüleme modeli türü eklerseniz, komut her tür için en son kullanılabilir görüntü modellerini döndürür. Örneğin:
docker run --rm -it \
mcr.microsoft.com/azure-cognitive-services/speechservices/custom-speech-to-text \
Punct Rescore Resegment Wfstitn \ # Specify `FullDisplay` or a space-separated subset of display models
BaseModelLocale={LOCALE} \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}
DisplayLocale
Hedef yerel ayara en son kullanılabilir görüntü modelini indirmek için öğesini ayarlayın. ayarladığınızda DisplayLocale
, görüntü modellerinin boşlukla ayrılmış bir alt kümesini de belirtmeniz FullDisplay
gerekir. komutu, belirtilen her tür için en son kullanılabilir görüntü modelini indirir. Örneğin:
docker run --rm -it \
mcr.microsoft.com/azure-cognitive-services/speechservices/custom-speech-to-text \
Punct Rescore Resegment Wfstitn \ # Specify `FullDisplay` or a space-separated subset of display models
DisplayLocale={LOCALE} \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}
Belirli bir görüntüleme modelini indirmek için bir model kimliği parametresi ayarlayın: Yeniden Puanlama (RescoreId
), Noktalama işareti (PunctId
), ayrıştırma (ResegmentId
) veya wfstitn (WfstitnId
). Bu, parametresi aracılığıyla temel modeli indirme yönteminize ModelId
benzer. Örneğin, yeniden puanlama görüntüleme modelini indirmek için parametresiyle RescoreId
aşağıdaki komutu kullanabilirsiniz:
docker run --rm -it \
mcr.microsoft.com/azure-cognitive-services/speechservices/custom-speech-to-text \
RescoreId={RESCORE_MODEL_ID} \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}
Not
Birden fazla sorgu veya indirme parametresi ayarlarsanız, komut şu sırada öncelik sırasına göre öncelik verir: BaseModelLocale
, model kimliği ve ardından DisplayLocale
(yalnızca görüntüleme modelleri için geçerlidir).
Kapsayıcıyı docker run ile çalıştırma
Hizmet için 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 |
---|---|
{VOLUME_MOUNT} |
Docker'ın özel modeli kalıcı hale getirmek için kullandığı ana bilgisayar birimi bağlama. Bir örnek, c:\CustomSpeech sürücünün konak makinede bulunduğu yerdir c:\ . |
{MODEL_ID} |
Özel konuşma veya temel model kimliği. Daha fazla bilgi için bkz . Model kimliğini alma. |
{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. |
Metin kapsayıcısına özel konuşmayı çalıştırdığınızda, bağlantı noktasını, belleği ve CPU'sunu metin 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. , , MODEL_ID
ENDPOINT_URI
ve API_KEY
değerlerini belirtmelisinizVOLUME_MOUNT
:
docker run --rm -it -p 5000:5000 --memory 8g --cpus 4 \
-v {VOLUME_MOUNT}:/usr/local/models \
mcr.microsoft.com/azure-cognitive-services/speechservices/custom-speech-to-text \
ModelId={MODEL_ID} \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}
Şu komut:
- Kapsayıcı görüntüsünden metin kapsayıcısına özel bir konuşma çalıştırır.
- 4 CPU çekirdeği ve 8 GB bellek ayırır.
- Birim girişi bağlamasından metin modeline özel konuşmayı yükler; örneğin, C:\CustomSpeech.
- TCP bağlantı noktası 5000'i kullanıma sunar ve kapsayıcı için bir sahte TTY ayırır.
- verilen
ModelId
modeli indirir (birim bağlamada bulunamazsa). - Özel model daha önce indirildiyse,
ModelId
yok sayılı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.
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("ws://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("ws://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("ws://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("ws://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("ws://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:"ws://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: "ws://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="ws://localhost:5000")
Konuşma CLI'sini bir kapsayıcıda kullanırken seçeneğini ekleyin --host ws://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.
Sonraki adımlar
- Bkz. Konuşma kapsayıcılara genel bakış
- Yapılandırma ayarları için kapsayıcıları yapılandırmayı gözden geçirin
- Daha fazla Azure AI kapsayıcısı kullanma