Docker ile metin okuma kapsayıcıları
Nöral metinden konuşmaya kapsayıcısı, daha doğal sentezlenmiş konuşmayı sağlayan derin sinir ağı teknolojisini kullanarak metni doğal sesli konuşmaya dönüştürür. Bu makalede, metin okuma kapsayıcısını 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 nöral metinden konuşmaya 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 neural-text-to-speech
.
Tam kapsayıcı görüntüsü adı: mcr.microsoft.com/azure-cognitive-services/speechservices/neural-text-to-speech
. 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/neural-text-to-speech:latest latest Etiketi yerel ayarı ve en-us-arianeural sesi çekeren-US . |
3.5.0 | mcr.microsoft.com/azure-cognitive-services/speechservices/neural-text-to-speech:3.5.0-amd64-en-us-arianeural |
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>-<voice>-<preview>
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/neural-text-to-speech",
"tags": [
<--redacted for brevity-->
"3.5.0-amd64-uk-ua-ostapneural",
"3.5.0-amd64-zh-cn-xiaochenneural-preview",
"3.5.0-amd64-zh-cn-xiaohanneural",
"3.5.0-amd64-zh-cn-xiaomoneural",
"3.5.0-amd64-zh-cn-xiaoqiuneural-preview",
"3.5.0-amd64-zh-cn-xiaoruineural",
"3.5.0-amd64-zh-cn-xiaoshuangneural-preview",
"3.5.0-amd64-zh-cn-xiaoxiaoneural",
"3.5.0-amd64-zh-cn-xiaoyanneural-preview",
"3.5.0-amd64-zh-cn-xiaoyouneural",
"3.5.0-amd64-zh-cn-yunxineural",
"3.5.0-amd64-zh-cn-yunyangneural",
"3.5.0-amd64-zh-cn-yunyeneural",
"latest"
]
}
Önemli
31 Ağustos 2021'de standart konuşma sentezi seslerini ve standart metni konuşma kapsayıcısını kullanımdan kaldırdık. Bunun yerine nöral sesleri nöral metin okuma kapsayıcısı sürüm 3.0 ve üzeri ile kullanmanız gerekir.
29 Şubat 2024'ten itibaren metin okuma ve nöral metinden konuşmaya kapsayıcı 2.19 ve önceki sürümleri desteklenmez. Uygulamanızı güncelleştirme hakkında daha fazla bilgi için bkz . Standart sesten önceden oluşturulmuş sinir sesine geçiş.
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/neural-text-to-speech:latest
Önemli
latest
Etiketi yerel ayarı ve en-us-arianeural
sesi çekeren-US
. Ek yerel ayarlar ve sesler için bkz . Metinden konuşmaya kapsayıcı görüntüleri.
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. |
Metni konuşma kapsayıcısına çalıştırdığınızda, bağlantı noktasını, belleği ve CPU'ları metin okuma 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:5000 --memory 12g --cpus 6 \
mcr.microsoft.com/azure-cognitive-services/speechservices/neural-text-to-speech \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}
Şu komut:
- Kapsayıcı görüntüsünden sinir metninden konuşma kapsayıcısına doğru bir sinir metni çalıştırır.
- 6 CPU çekirdeği ve 12 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.
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ını kullanarak konuşma metni hızlı başlangıcını deneyin.
SSML ses öğesi
HTTP POST'un konuşmasına bir nöral metin oluşturduğunuzda, SSML iletisi özniteliği olan bir voice
name
öğe gerektirir. Sesin yerel ayarı, kapsayıcı modelinin yerel ayarına karşılık gelir. SSML etiket desteği, hem Azure bulutunda hem de kapsayıcı ortamında her metinden konuşmaya yönelik ses için tutarlıdır.
Örneğin, etiketi (varsayılan olarak "en-US" olarak adlandırılır) aracılığıyla latest
indirilen bir modelin ses adı olacaktır en-US-AriaNeural
.
<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-US">
<voice name="en-US-AriaNeural">
This is the text that is spoken.
</voice>
</speak>
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