Verwenden von Containern für den Speech-Dienst mit Kubernetes und Helm
Eine Möglichkeit zur lokalen Verwaltung Ihrer Speech-Container ist die Verwendung von Kubernetes und Helm. Hier erfahren Sie, wie Sie ein Kubernetes-Paket erstellen und Kubernetes und Helm verwenden, um die Containerimages für Spracherkennung und Sprachsynthese zu definieren. Dieses Paket wird lokal für einen Kubernetes-Cluster bereitgestellt. Schließlich erfahren Sie, wie Sie die bereitgestellten Dienste und verschiedene Konfigurationsoptionen testen können. Weitere Informationen zum Ausführen von Docker-Containern ohne Kubernetes-Orchestrierung finden Sie unter Installieren und Ausführen von Containern für den Speech-Dienst.
Voraussetzungen
Die folgenden Voraussetzungen müssen erfüllt sein, damit Speech-Container lokal verwendet werden können:
Erforderlich | Zweck |
---|---|
Azure-Konto | Wenn Sie kein Azure-Abonnement besitzen, können Sie ein kostenloses Konto erstellen, bevor Sie beginnen. |
Zugriff auf die Containerregistrierung | Kubernetes benötigt Zugriff auf die Containerregistrierung, um die Docker-Images in den Cluster pullen zu können. |
Kubernetes-Befehlszeilenschnittstelle | Mithilfe der Kubernetes-Befehlszeilenschnittstelle werden die gemeinsam genutzten Anmeldeinformationen aus der Containerregistrierung verwaltet. Kubernetes wird außerdem vor Helm (Kubernetes-Paket-Manager) benötigt. |
Helm-Befehlszeilenschnittstelle | Installieren Sie die Helm-Befehlszeilenschnittstelle. Sie wird zum Installieren eines Helm-Charts (Containerpaketdefinition) verwendet. |
Speech-Ressource | Um diese Container zu verwenden, benötigen Sie Folgendes: Eine Azure-Ressource vom Typ Speech, um den entsprechenden Abrechnungsschlüssel und den URI des Abrechnungsendpunkts zu erhalten. Beide Werte stehen im Azure-Portal auf der Übersichts- und auf der Schlüsselseite für Speech zur Verfügung und werden zum Starten des Containers benötigt. {API_KEY} : Der Ressourcenschlüssel. {ENDPOINT_URI} : Der Endpunkt-URI. Beispiel: https://eastus.api.cognitive.microsoft.com/sts/v1.0 |
Empfohlene Hostcomputerkonfiguration
Orientieren Sie sich an den Details unter Der Hostcomputer des Artikels „Installieren und Ausführen von Containern für den Speech-Dienst“. Dieses Helm-Chart berechnet automatisch die CPU- und Arbeitsspeicheranforderungen auf der Grundlage der vom Benutzer angegebenen Anzahl von Decodierungen (gleichzeitige Anforderungen). Außerdem wird es entsprechend angepasst, wenn Optimierungen für die Audio-/Texteingabe als enabled
konfiguriert sind. Standardmäßig verwendet das Helm-Chart zwei gleichzeitige Anforderungen und keine Optimierung.
Dienst | CPU/Container | Arbeitsspeicher/Container |
---|---|---|
Spracherkennung | Für einen einzelnen Decoder sind mindestens 1.150 Millicores erforderlich. Wenn optimizedForAudioFile aktiviert ist, werden 1.950 Millicores benötigt. (Standard: zwei Decoder) |
Erforderlich: 2 GB Eingeschränkt: 4 GB |
Sprachsynthese | Pro gleichzeitiger Anforderung sind mindestens 500 Millicores erforderlich. Wenn optimizeForTurboMode aktiviert ist, werden 1.000 Millicores benötigt. (Standard: zwei gleichzeitige Anforderungen) |
Erforderlich: 1 GB Eingeschränkt: 2 GB |
Herstellen einer Verbindung mit dem Kubernetes-Cluster
Für den Hostcomputer muss ein verfügbarer Kubernetes-Cluster vorhanden sein. Das Konzept der Bereitstellung eines Kubernetes-Clusters für einen Hostcomputer wird im Tutorial Bereitstellen eines Azure Kubernetes Service-Clusters (AKS) erläutert.
Konfigurieren von Helm-Chart-Werten für die Bereitstellung
Im Helm-Hub von Microsoft finden Sie alle öffentlich verfügbaren Helm-Charts von Microsoft. Im Microsoft Helm Hub steht das lokale Azure KI Speech-Diagramm zur Verfügung. Das lokale Azure KI Speech-Diagramm ist das Diagramm, das wir installieren. Zunächst müssen wir jedoch die Datei config-values.yaml
mit expliziten Konfigurationen erstellen. Als Erstes fügen wir das Microsoft-Repository unserer Helm-Instanz hinzu:
helm repo add microsoft https://microsoft.github.io/charts/repo
Danach konfigurieren wir unsere Helm-Chart-Werte. Kopieren Sie den folgenden YAML-Code, und fügen Sie ihn in eine Datei mit dem Namen config-values.yaml
ein. Weitere Informationen zum Anpassen des lokalen Helm-Diagramms von Azure KI Speech finden Sie unter Anpassen von Helm-Diagrammen. Ersetzen Sie die Kommentare # {ENDPOINT_URI}
und # {API_KEY}
durch Ihre eigenen Werte.
# These settings are deployment specific and users can provide customizations
# speech to text configurations
speechToText:
enabled: true
numberOfConcurrentRequest: 3
optimizeForAudioFile: true
image:
registry: mcr.microsoft.com
repository: azure-cognitive-services/speechservices/speech-to-text
tag: latest
pullSecrets:
- mcr # Or an existing secret
args:
eula: accept
billing: # {ENDPOINT_URI}
apikey: # {API_KEY}
# text to speech configurations
textToSpeech:
enabled: true
numberOfConcurrentRequest: 3
optimizeForTurboMode: true
image:
registry: mcr.microsoft.com
repository: azure-cognitive-services/speechservices/neural-text-to-speech
tag: latest
pullSecrets:
- mcr # Or an existing secret
args:
eula: accept
billing: # {ENDPOINT_URI}
apikey: # {API_KEY}
Wichtig
Ohne Angabe der Werte billing
und apikey
laufen die Dienste nach 15 Minuten ab. Dies führt dann dazu, dass die Überprüfung nicht erfolgreich ist, da die Dienste nicht zur Verfügung stehen.
Das Kubernetes-Paket (Helm-Chart)
Das Helm-Chart enthält die Konfiguration, die angibt, welche Docker-Images aus der Containerregistrierung mcr.microsoft.com
gepullt werden sollen.
Bei einem Helm-Chart handelt es sich um eine Sammlung von Dateien, die eine zusammengehörige Gruppe von Kubernetes-Ressourcen beschreiben. Ein einzelnes Chart kann sowohl für eine einfache Bereitstellung (beispielsweise eines Memcached-Pods) als auch für komplexere Bereitstellungen (etwa eines vollständigen Web-App-Stapels mit HTTP-Servern, Datenbanken, Caches und Ähnlichem) verwendet werden.
Die bereitgestellten Helm-Charts pullen die Docker-Images des Speech-Diensts (Sprachsynthese- und Spracherkennungsdienst) aus der Containerregistrierung mcr.microsoft.com
.
Installieren des Helm-Charts für den Kubernetes-Cluster
Führen Sie den Befehl helm install
aus, um das Helm-Chart zu installieren, wobei Sie <config-values.yaml>
durch das entsprechende Pfad- und Dateinamenargument ersetzen. Das Helm-Chart microsoft/cognitive-services-speech-onpremise
ist im Microsoft Helm Hub verfügbar.
helm install onprem-speech microsoft/cognitive-services-speech-onpremise \
--version 0.1.1 \
--values <config-values.yaml>
Nach einer erfolgreichen Installation kann die Ausgabe beispielsweise wie folgt aussehen:
NAME: onprem-speech
LAST DEPLOYED: Tue Jul 2 12:51:42 2019
NAMESPACE: default
STATUS: DEPLOYED
RESOURCES:
==> v1/Pod(related)
NAME READY STATUS RESTARTS AGE
speech-to-text-7664f5f465-87w2d 0/1 Pending 0 0s
speech-to-text-7664f5f465-klbr8 0/1 ContainerCreating 0 0s
neural-text-to-speech-56f8fb685b-4jtzh 0/1 ContainerCreating 0 0s
neural-text-to-speech-56f8fb685b-frwxf 0/1 Pending 0 0s
==> v1/Service
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
speech-to-text LoadBalancer 10.0.252.106 <pending> 80:31811/TCP 1s
neural-text-to-speech LoadBalancer 10.0.125.187 <pending> 80:31247/TCP 0s
==> v1beta1/PodDisruptionBudget
NAME MIN AVAILABLE MAX UNAVAILABLE ALLOWED DISRUPTIONS AGE
speech-to-text-poddisruptionbudget N/A 20% 0 1s
neural-text-to-speech-poddisruptionbudget N/A 20% 0 1s
==> v1beta2/Deployment
NAME READY UP-TO-DATE AVAILABLE AGE
speech-to-text 0/2 2 0 0s
neural-text-to-speech 0/2 2 0 0s
==> v2beta2/HorizontalPodAutoscaler
NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS AGE
speech-to-text-autoscaler Deployment/speech-to-text <unknown>/50% 2 10 0 0s
neural-text-to-speech-autoscaler Deployment/neural-text-to-speech <unknown>/50% 2 10 0 0s
NOTES:
cognitive-services-speech-onpremise has been installed!
Release is named onprem-speech
Der Kubernetes-Bereitstellungsvorgang kann mehrere Minuten dauern. Vergewissern Sie sich durch Ausführen des folgenden Befehls, dass die Pods und Dienste ordnungsgemäß bereitgestellt wurden und verfügbar sind:
kubectl get all
Die Ausgabe sollte in etwa wie folgt aussehen:
NAME READY STATUS RESTARTS AGE
pod/speech-to-text-7664f5f465-87w2d 1/1 Running 0 34m
pod/speech-to-text-7664f5f465-klbr8 1/1 Running 0 34m
pod/neural-text-to-speech-56f8fb685b-4jtzh 1/1 Running 0 34m
pod/neural-text-to-speech-56f8fb685b-frwxf 1/1 Running 0 34m
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/kubernetes ClusterIP 10.0.0.1 <none> 443/TCP 3h
service/speech-to-text LoadBalancer 10.0.252.106 52.162.123.151 80:31811/TCP 34m
service/neural-text-to-speech LoadBalancer 10.0.125.187 65.52.233.162 80:31247/TCP 34m
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
deployment.apps/speech-to-text 2 2 2 2 34m
deployment.apps/neural-text-to-speech 2 2 2 2 34m
NAME DESIRED CURRENT READY AGE
replicaset.apps/speech-to-text-7664f5f465 2 2 2 34m
replicaset.apps/neural-text-to-speech-56f8fb685b 2 2 2 34m
NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS AGE
horizontalpodautoscaler.autoscaling/speech-to-text-autoscaler Deployment/speech-to-text 1%/50% 2 10 2 34m
horizontalpodautoscaler.autoscaling/neural-text-to-speech-autoscaler Deployment/neural-text-to-speech 0%/50% 2 10 2 34m
Überprüfen der Helm-Bereitstellung mit Helm-Tests
Die installierten Helm-Charts definieren Helm-Tests, um die Überprüfung zu vereinfachen. Diese Tests dienen zur Überprüfung der Dienstbereitschaft. Sie führen den Befehl Helm test aus, um sowohl die Spracherkennung als auch die Sprachsynthese zu überprüfen.
helm test onprem-speech
Wichtig
Diese Tests sind nicht erfolgreich, wenn der Podstatus nicht Running
lautet oder die Bereitstellung nicht in der Spalte AVAILABLE
aufgeführt ist. Dieser Vorgang kann mehr als zehn Minuten dauern.
Diese Tests geben verschiedene Statusergebnisse aus:
RUNNING: speech to text-readiness-test
PASSED: speech to text-readiness-test
RUNNING: text to speech-readiness-test
PASSED: text to speech-readiness-test
Als Alternative zur Ausführung der Helm-Tests können Sie auch die externen IP-Adressen und die entsprechenden Ports des Befehls kubectl get all
sammeln. Öffnen Sie unter Verwendung der IP-Adresse und des Ports einen Webbrowser, und navigieren Sie zu http://<external-ip>:<port>:/swagger/index.html
, um die API-Swagger-Seite(n) anzuzeigen.
Anpassen von Helm-Charts
Helm-Charts sind hierarchisch. Die hierarchische Struktur ermöglicht Chart-Vererbungen und kommt auch dem Konzept der Spezifität zugute, das dafür sorgt, dass geerbte Regeln durch spezifischere Einstellungen überschrieben werden.
Sprache (übergeordnetes Diagramm)
Werte im übergeordneten Diagramm auf oberster Ebene überschreiben die entsprechenden Werte im untergeordneten Diagramm. Deshalb sollten alle lokal angepassten Werte hier hinzugefügt werden.
Parameter | BESCHREIBUNG | Standard |
---|---|---|
speechToText.enabled |
Gibt an, ob der Spracherkennungsdienst aktiviert ist. | true |
speechToText.verification.enabled |
Gibt an, ob die helm test -Funktion für den Spracherkennungsdienst aktiviert ist. |
true |
speechToText.verification.image.registry |
Das Docker-Imagerepository, das von helm test zum Testen des Spracherkennungsdiensts verwendet wird. Helm erstellt separate Pods innerhalb des Clusters zum Testen und ruft das test-use-Image aus dieser Registrierung ab. |
docker.io |
speechToText.verification.image.repository |
Das Docker-Imagerepository, das von helm test zum Testen des Spracherkennungsdiensts verwendet wird. Der Helm-Testpod verwendet dieses Repository zum Abrufen des test-use-Images. |
antsu/on-prem-client |
speechToText.verification.image.tag |
Das Docker-Imagetag, das mit helm test für den Spracherkennungsdienst verwendet wird. Der Helm-Testpod verwendet dieses Tag zum Abrufen des test-use-Images. |
latest |
speechToText.verification.image.pullByHash |
Gibt an, ob das Docker-Image test-use mithilfe von Hashing abgerufen wird. Wenn true , sollte speechToText.verification.image.hash mit einem gültigen Imagehashwert hinzugefügt werden. |
false |
speechToText.verification.image.arguments |
Die Argumente, die zum Ausführen des Docker-Images test-use verwendet werden. Der Helm-Testpod übergibt diese Argumente beim Ausführen von helm test an den Container. |
"./speech-to-text-client" "./audio/whatstheweatherlike.wav" "--expect=What's the weather like" "--host=$(SPEECH_TO_TEXT_HOST)" "--port=$(SPEECH_TO_TEXT_PORT)" |
textToSpeech.enabled |
Gibt an, ob der Sprachsynthesedienst aktiviert ist. | true |
textToSpeech.verification.enabled |
Gibt an, ob die helm test -Funktion für den Spracherkennungsdienst aktiviert ist. |
true |
textToSpeech.verification.image.registry |
Das Docker-Imagerepository, das von helm test zum Testen des Spracherkennungsdiensts verwendet wird. Helm erstellt separate Pods innerhalb des Clusters zum Testen und ruft das test-use-Image aus dieser Registrierung ab. |
docker.io |
textToSpeech.verification.image.repository |
Das Docker-Imagerepository, das von helm test zum Testen des Spracherkennungsdiensts verwendet wird. Der Helm-Testpod verwendet dieses Repository zum Abrufen des test-use-Images. |
antsu/on-prem-client |
textToSpeech.verification.image.tag |
Das Docker-Imagetag, das mit helm test für den Spracherkennungsdienst verwendet wird. Der Helm-Testpod verwendet dieses Tag zum Abrufen des test-use-Images. |
latest |
textToSpeech.verification.image.pullByHash |
Gibt an, ob das Docker-Image test-use mithilfe von Hashing abgerufen wird. Wenn true , sollte textToSpeech.verification.image.hash mit einem gültigen Imagehashwert hinzugefügt werden. |
false |
textToSpeech.verification.image.arguments |
Die Argumente für die Ausführung mit dem Docker-Image test-use. Der Helm-Testpod übergibt diese Argumente beim Ausführen von helm test an den Container. |
"./text-to-speech-client" "--input='What's the weather like'" "--host=$(TEXT_TO_SPEECH_HOST)" "--port=$(TEXT_TO_SPEECH_PORT)" |
Spracherkennung (Unterdiagramm: charts/speechToText)
Zum Überschreiben des übergeordneten Diagramms fügen Sie das Präfix speechToText.
bei einem beliebigen Parameter hinzu, um das Diagramm genauer zu definieren. Dadurch wird der entsprechende Parameter überschrieben. Beispielsweise überschreibt speechToText.numberOfConcurrentRequest
den Parameter numberOfConcurrentRequest
.
Parameter | BESCHREIBUNG | Standard |
---|---|---|
enabled |
Gibt an, ob der Spracherkennungsdienst aktiviert ist. | false |
numberOfConcurrentRequest |
Die Anzahl gleichzeitiger Anforderungen für den Spracherkennungsdienst. In diesem Diagramm werden automatisch CPU- und Speicherressourcen basierend auf diesem Wert berechnet. | 2 |
optimizeForAudioFile |
Gibt an, ob der Dienst für die Audioeingabe über Audiodateien optimiert werden muss. Wenn true , werden in diesem Diagramm dem Dienst mehr CPU-Ressourcen zugeordnet. |
false |
image.registry |
Die Docker-Imageregistrierung für Spracherkennung. | containerpreview.azurecr.io |
image.repository |
Das Docker-Imagerepository für Spracherkennung. | microsoft/cognitive-services-speech-to-text |
image.tag |
Das Docker-Imagetag für Spracherkennung. | latest |
image.pullSecrets |
Die Imagegeheimnisse zum Abrufen des Docker-Images für Spracherkennung. | |
image.pullByHash |
Gibt an, ob das Docker-Image mithilfe von Hashing abgerufen wird. Wenn true , ist image.hash erforderlich. |
false |
image.hash |
Der Docker-Imagehash für Spracherkennung. Nur verwendet, wenn image.pullByHash: true . |
|
image.args.eula (erforderlich) |
Gibt an, dass Sie die Lizenz akzeptiert haben. Der einzige gültige Wert ist accept . |
|
image.args.billing (erforderlich) |
Den URI des Abrechnungsendpunkts finden Sie im Azure-Portal auf der Speech-Übersichtsseite. | |
image.args.apikey (erforderlich) |
Wird zum Nachverfolgen von Abrechnungsinformationen verwendet. | |
service.type |
Der Kubernetes-Diensttyp des Spracherkennungsdiensts. Weitere Informationen finden Sie unter den Kubernetes-Anweisungen für Diensttypen und beim Support des Cloudanbieters. | LoadBalancer |
service.port |
Der Port des Spracherkennungsdiensts. | 80 |
service.annotations |
Die Spracherkennungs-Anmerkungen für die Dienstmetadaten. Anmerkungen sind Schlüssel-Wert-Paare. annotations: some/annotation1: value1 some/annotation2: value2 |
|
service.autoScaler.enabled |
Gibt an, ob die horizontale automatische Podskalierung aktiviert ist. Wenn true , wird speech-to-text-autoscaler im Kubernetes-Cluster bereitgestellt. |
true |
service.podDisruption.enabled |
Gibt an, ob das Budget für die Unterbrechung von Pods aktiviert ist. Wenn true , wird speech-to-text-poddisruptionbudget im Kubernetes-Cluster bereitgestellt. |
true |
Standpunktanalyse (Unterdiagramm: charts/speechToText)
Ab Version 2.2.0 des Spracherkennungs-Containers und Version 0.2.0 des Helm-Charts werden folgende Parameter für die Stimmungsanalyse mit der Sprachdienst-API verwendet.
Parameter | BESCHREIBUNG | Werte | Standard |
---|---|---|---|
textanalytics.enabled |
Gibt an, ob der Dienst Textanalyse aktiviert ist. | TRUE/FALSE | false |
textanalytics.image.registry |
Die Docker-Imageregistrierung für Textanalyse. | Gültige Docker-Imageregistrierung | |
textanalytics.image.repository |
Das Docker-Imagerepository für Textanalyse. | Gültiges Docker-Imagerepository | |
textanalytics.image.tag |
Das Docker-Imagetag für Textanalyse. | Gültiges Docker-Imagetag | |
textanalytics.image.pullSecrets |
Die Imagegeheimnisse zum Pullen des Docker-Images für Textanalyse. | Gültiger Geheimnisname | |
textanalytics.image.pullByHash |
Gibt an, ob das Docker-Image per Hash gepullt wird. yes : image.hash muss ebenfalls vorhanden sein. no : Legen Sie die Einstellung auf „false“ fest. Der Standardwert ist false . |
TRUE/FALSE | false |
textanalytics.image.hash |
Der Docker-Imagehash für Textanalyse. Darf nur in Kombination mit image.pullByHash:true verwendet werden. |
Gültiger Docker-Imagehash | |
textanalytics.image.args.eula |
Eines der für den Container vom Typ Textanalyse erforderlichen Argumente, um anzugeben, dass Sie die Lizenz akzeptiert haben. Der Wert dieser Option muss accept lauten. |
accept , wenn Sie den Container verwenden möchten |
|
textanalytics.image.args.billing |
Eines der für den Container vom Typ Textanalyse erforderlichen Argumente zur Angabe des URI des Abrechnungsendpunkts. Den URI des Abrechnungsendpunkts finden Sie im Azure-Portal auf der Speech-Übersichtsseite. | Gültiger URI des Abrechnungsendpunkts | |
textanalytics.image.args.apikey |
Eines der für den Container vom Typ Textanalyse erforderlichen Argumente zur Nachverfolgung von Abrechnungsinformationen. | Gültiger API-Schlüssel | |
textanalytics.cpuRequest |
Die angeforderte CPU für den Container vom Typ Textanalyse. | INT | 3000m |
textanalytics.cpuLimit |
Die eingeschränkte CPU für den Container vom Typ Textanalyse. | 8000m |
|
textanalytics.memoryRequest |
Der angeforderte Arbeitsspeicher für den Container vom Typ Textanalyse. | 3Gi |
|
textanalytics.memoryLimit |
Der eingeschränkte Arbeitsspeicher für den Container vom Typ Textanalyse. | 8Gi |
|
textanalytics.service.sentimentURISuffix |
Das URI-Suffix der Standpunktanalyse. Der gesamte URI hat das Format „http://<service> :<port> /<sentimentURISuffix> “. |
text/analytics/v3.0-preview/sentiment |
|
textanalytics.service.type |
Die Art des Diensts Textanalyse in Kubernetes. Weitere Informationen zu Kubernetes-Diensttypen finden Sie hier. | Gültiger Kubernetes-Diensttyp | LoadBalancer |
textanalytics.service.port |
Der Port des Diensts Textanalyse. | INT | 50085 |
textanalytics.service.annotations |
Die Anmerkungen, die Benutzer den Metadaten des Diensts Textanalyse hinzufügen können. Beispiel: annotations: beliebige/Anmerkung1: Wert1 beliebige/Anmerkung2: Wert2 |
Anmerkungen, jeweils eine pro Zeile | |
textanalytics.serivce.autoScaler.enabled |
Gibt an, ob die horizontale automatische Podskalierung aktiviert ist. Falls ja, wird text-analytics-autoscaler im Kubernetes-Cluster bereitgestellt. |
TRUE/FALSE | true |
textanalytics.service.podDisruption.enabled |
Gibt an, ob das Budget für die Unterbrechung von Pods aktiviert ist. Falls ja, wird text-analytics-poddisruptionbudget im Kubernetes-Cluster bereitgestellt. |
TRUE/FALSE | true |
Sprachsynthese (Unterdiagramm: charts/textToSpeech)
Zum Überschreiben des übergeordneten Diagramms fügen Sie das Präfix textToSpeech.
bei einem beliebigen Parameter hinzu, um das Diagramm genauer zu definieren. Dadurch wird der entsprechende Parameter überschrieben. Beispielsweise überschreibt textToSpeech.numberOfConcurrentRequest
den Parameter numberOfConcurrentRequest
.
Parameter | BESCHREIBUNG | Standard |
---|---|---|
enabled |
Gibt an, ob der Sprachsynthesedienst aktiviert ist. | false |
numberOfConcurrentRequest |
Die Anzahl gleichzeitiger Anforderungen für den Sprachsynthesedienst. In diesem Diagramm werden automatisch CPU- und Speicherressourcen basierend auf diesem Wert berechnet. | 2 |
optimizeForTurboMode |
Gibt an, ob der Dienst für die Texteingabe über Textdateien optimiert werden muss. Wenn true , werden in diesem Diagramm dem Dienst mehr CPU-Ressourcen zugeordnet. |
false |
image.registry |
Die Docker-Imageregistrierung für Sprachsynthese. | containerpreview.azurecr.io |
image.repository |
Das Docker-Imagerepository für Sprachsynthese. | microsoft/cognitive-services-text-to-speech |
image.tag |
Das Docker-Imagetag für Sprachsynthese. | latest |
image.pullSecrets |
Die Imagegeheimnisse zum Abrufen des Docker-Images für Sprachsynthese. | |
image.pullByHash |
Gibt an, ob das Docker-Image mithilfe von Hashing abgerufen wird. Wenn true , ist image.hash erforderlich. |
false |
image.hash |
Der Docker-Imagehash für Sprachsynthese. Nur verwendet, wenn image.pullByHash: true . |
|
image.args.eula (erforderlich) |
Gibt an, dass Sie die Lizenz akzeptiert haben. Der einzige gültige Wert ist accept . |
|
image.args.billing (erforderlich) |
Den URI des Abrechnungsendpunkts finden Sie im Azure-Portal auf der Speech-Übersichtsseite. | |
image.args.apikey (erforderlich) |
Wird zum Nachverfolgen von Abrechnungsinformationen verwendet. | |
service.type |
Der Kubernetes-Diensttyp des Sprachsynthesediensts. Weitere Informationen finden Sie unter den Kubernetes-Anweisungen für Diensttypen und beim Support des Cloudanbieters. | LoadBalancer |
service.port |
Der Port des Sprachsynthesediensts. | 80 |
service.annotations |
Die Sprachsynthese-Anmerkungen für die Dienstmetadaten. Anmerkungen sind Schlüssel-Wert-Paare. annotations: some/annotation1: value1 some/annotation2: value2 |
|
service.autoScaler.enabled |
Gibt an, ob die horizontale automatische Podskalierung aktiviert ist. Wenn true , wird text-to-speech-autoscaler im Kubernetes-Cluster bereitgestellt. |
true |
service.podDisruption.enabled |
Gibt an, ob das Budget für die Unterbrechung von Pods aktiviert ist. Wenn true , wird text-to-speech-poddisruptionbudget im Kubernetes-Cluster bereitgestellt. |
true |
Nächste Schritte
Ausführlichere Informationen zum Installieren von Anwendungen mit Helm in Azure Kubernetes Service (AKS) finden Sie hier.