Nasazení kontejneru pro extrakci klíčových frází do Azure Kubernetes Service
Zjistěte, jak nasadit image kontejneru Dockeru pro extrakci klíčových frází do Azure Kubernetes Service (AKS). Tento postup ukazuje, jak vytvořit prostředek jazyka, jak přidružit image kontejneru a jak tuto orchestraci provést z prohlížeče. Používání kontejnerů může přesunout vaši pozornost od správy infrastruktury k tomu, aby se místo toho zaměřila na vývoj aplikací. V tomto článku se jako příklad používá kontejner extrakce klíčových frází, ale tento proces můžete použít pro jiné kontejnery, které nabízí jazyk Azure AI.
Požadavky
Tento postup vyžaduje několik nástrojů, které musí být nainstalovány a spuštěny místně. Nepoužívejte Azure Cloud Shell. Potřebujete následující:
- Předplatné Azure. Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.
- Textový editor, například Visual Studio Code.
- Nainstalované Rozhraní příkazového řádku Azure
- Nainstalované rozhraní příkazového řádku Kubernetes .
- Prostředek Azure se správnou cenovou úrovní. Ne všechny cenové úrovně fungují s tímto kontejnerem:
- Prostředek jazyka Azure AI pouze s cenovou úrovní F0 nebo Standard.
- Prostředek služeb Azure AI s cenovou úrovní S0
Vytvoření prostředku jazyka Azure AI
Přihlaste se k webu Azure Portal.
Vyberte Vytvořit prostředek a pak přejděte na AI a jazyk strojového učení>. Nebo přejděte na Vytvořit prostředek jazyka.
Nastavte všechny požadované hodnoty:
Nastavení Hodnota Název Zadejte název (2–64 znaků). Předplatné Vyberte příslušné předplatné. Umístění Vyberte umístění ve svém okolí. Cenová úroveň Zadejte S, což je standardní cenová úroveň. Skupina prostředků Vyberte dostupnou skupinu prostředků. Vyberte Vytvořit a počkejte na vytvoření prostředku. Prohlížeč se automaticky přesměruje na nově vytvořenou stránku prostředku.
Shromážděte nakonfigurovaný
endpoint
klíč a klíč rozhraní API:Karta Prostředek na portálu Nastavení Hodnota Přehled Koncový bod Zkopírujte koncový bod. Vypadá podobně jako https://my-resource.cognitiveservices.azure.com/text/analytics/v3.0
.Klíče Klíč rozhraní API Zkopírujte jeden ze dvou klíčů. Jedná se o 32znakový alfanumerický řetězec bez mezer nebo pomlček: < xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
>.
Vytvoření prostředku clusteru Azure Kubernetes Service
Přejděte na Azure Kubernetes Service a vyberte Vytvořit.
Na kartě Základní informace zadejte následující údaje:
Nastavení Hodnota Předplatné Vyberte odpovídající předplatné. Skupina prostředků Vyberte dostupnou skupinu prostředků. Název clusteru Kubernetes Zadejte název (malými písmeny). Oblast Vyberte umístění ve svém okolí. Verze Kubernetes Libovolná hodnota je označená jako (výchozí) Předpona názvu DNS Vytvoří se automaticky, ale můžete ji přepsat. Velikost uzlu Standard DS2 v2: 2 vCPUs
,7 GB
Počet uzlů Ponechte posuvník na výchozí hodnotě. Na kartě Fondy uzlů nechte virtuální uzly a škálovací sady virtuálních počítačů nastavené na výchozí hodnoty.
Na kartě Ověřování ponechte instanční objekt a Povolit RBAC nastavené výchozí hodnoty.
Na kartě Sítě zadejte následující možnosti:
Nastavení Hodnota Směrování aplikace HTTP No Konfigurace sítě Basic Na kartě Integrace se ujistěte, že je monitorování kontejnerů nastavené na Povoleno, a jako výchozí hodnotu ponechte pracovní prostor služby Log Analytics .
Na kartě Značky ponechte páry název/hodnota zatím prázdné.
Vyberte Zkontrolovat a vytvořit.
Po ověření vyberte Vytvořit.
Poznámka
Pokud se ověření nezdaří, příčinou může být chyba instančního objektu. Zpět na kartu Ověřování a pak se vraťte do části Zkontrolovat a vytvořit, kde by se mělo ověření spustit a pak projít.
Nasazení kontejneru Extrakce klíčových frází do clusteru AKS
Otevřete Azure CLI a přihlaste se k Azure.
az login
Přihlaste se ke clusteru AKS. Nahraďte
your-cluster-name
ayour-resource-group
příslušnými hodnotami.az aks get-credentials -n your-cluster-name -g -your-resource-group
Po spuštění tohoto příkazu se zobrazí zpráva podobná této:
Merged "your-cluster-name" as current context in /home/username/.kube/config
Upozornění
Pokud máte na účtu Azure k dispozici více předplatných a
az aks get-credentials
příkaz vrátí chybu, běžným problémem je, že používáte nesprávné předplatné. Nastavte kontext relace Azure CLI tak, aby používal stejné předplatné, pomocí kterého jste vytvořili prostředky, a zkuste to znovu.az account set -s subscription-id
Otevřete textový editor podle výběru. Tento příklad používá Visual Studio Code.
code .
V textovém editoru vytvořte nový soubor s názvem keyphrase.yaml a vložte do něj následující YAML. Nezapomeňte nahradit
billing/value
aapikey/value
vlastními informacemi.apiVersion: apps/v1beta1 kind: Deployment metadata: name: keyphrase spec: template: metadata: labels: app: keyphrase-app spec: containers: - name: keyphrase image: mcr.microsoft.com/azure-cognitive-services/keyphrase ports: - containerPort: 5000 resources: requests: memory: 2Gi cpu: 1 limits: memory: 4Gi cpu: 1 env: - name: EULA value: "accept" - name: billing value: # {ENDPOINT_URI} - name: apikey value: # {API_KEY} --- apiVersion: v1 kind: Service metadata: name: keyphrase spec: type: LoadBalancer ports: - port: 5000 selector: app: keyphrase-app
Důležité
Až budete hotovi, nezapomeňte klíč z kódu odebrat a nikdy ho nezveřejníte. V produkčním prostředí použijte zabezpečený způsob ukládání a přístupu k přihlašovacím údajům, jako je Azure Key Vault. Další informace najdete v článku zabezpečení služeb Azure AI.
Uložte soubor a zavřete textový editor.
Spusťte příkaz Kubernetes
apply
se souborem keyphrase.yaml jako cílem:kubectl apply -f keyphrase.yaml
Jakmile příkaz úspěšně použije konfiguraci nasazení, zobrazí se zpráva podobná následujícímu výstupu:
deployment.apps "keyphrase" created service "keyphrase" created
Ověřte, že byl pod nasazený:
kubectl get pods
Výstup stavu spuštění podu:
NAME READY STATUS RESTARTS AGE keyphrase-5c9ccdf575-mf6k5 1/1 Running 0 1m
Ověřte, že je služba dostupná, a získejte IP adresu.
kubectl get services
Výstup stavu spuštění služby klíčové fráze v podu:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE kubernetes ClusterIP 10.0.0.1 <none> 443/TCP 2m keyphrase LoadBalancer 10.0.100.64 168.61.156.180 5000:31234/TCP 2m
Ověření instance kontejneru extrakce klíčových frází
Vyberte kartu Přehled a zkopírujte IP adresu.
Otevřete novou kartu prohlížeče a zadejte IP adresu. Zadejte
http://<IP-address>:5000 (http://55.55.55.55:5000
například ). Zobrazí se domovská stránka kontejneru, která vás upozorní, že kontejner běží.Výběrem odkazu Service API Description (Popis rozhraní API služby ) přejděte na stránku kontejneru Swagger.
Zvolte libovolné rozhraní POST API a vyberte Vyzkoušet. Zobrazí se parametry, které zahrnují tento příklad vstupu:
{ "documents": [ { "id": "1", "text": "Hello world" }, { "id": "2", "text": "Bonjour tout le monde" }, { "id": "3", "text": "La carretera estaba atascada. Había mucho tráfico el día de ayer." }, { "id": "4", "text": ":) :( :D" } ] }
Nahraďte vstup následujícím obsahem JSON:
{ "documents": [ { "language": "en", "id": "7", "text": "I was fortunate to attend the KubeCon Conference in Barcelona, it is one of the best conferences I have ever attended. Great people, great sessions and I thoroughly enjoyed it!" } ] }
Nastavte showStats na
true
.Vyberte Spustit a určete mínění textu.
Model zabalený v kontejneru vygeneruje skóre v rozsahu od 0 do 1, kde 0 je záporné a 1 kladné.
Vrácená odpověď JSON obsahuje mínění pro aktualizovaný textový vstup:
{ "documents": [ { "id": "7", "keyPhrases": [ "Great people", "great sessions", "KubeCon Conference", "Barcelona", "best conferences" ], "statistics": { "charactersCount": 176, "transactionsCount": 1 } } ], "errors": [], "statistics": { "documentsCount": 1, "validDocumentsCount": 1, "erroneousDocumentsCount": 0, "transactionsCount": 1 } }
Dokument dat JSON datové části odpovědi teď můžeme korelovat id
s dokumentem id
původní datové části požadavku . Výsledný dokument má pole keyPhrases
, které obsahuje seznam klíčových frází, které byly extrahovány z odpovídajícího vstupního dokumentu. Kromě toho existují různé statistiky, jako characterCount
jsou a transactionCount
pro každý výsledný dokument.
Další kroky
- Použití více kontejnerů Azure AI
- Přehled extrakce klíčových frází