Använda Docker-containrar i frånkopplade miljöer
Med containrar kan du köra API:er för Azure AI-tjänster i din egen miljö och passar bra för dina specifika krav på säkerhets- och datastyrning. Med frånkopplade containrar kan du använda flera av dessa API:er frånkopplade från Internet. För närvarande kan följande containrar köras på det här sättet:
- Tal till text
- Anpassat tal till text
- Neural text till tal
- Textöversättning (standard)
- Azure AI Language
- Azure AI Vision – Läs
- Dokumentinformation
Innan du försöker köra en Docker-container i en offlinemiljö bör du se till att du känner till stegen för att ladda ned och använda containern. Till exempel:
- Värddatorkrav och rekommendationer.
- Det Docker-kommando
pull
som du använder för att ladda ned containern. - Så här verifierar du att en container körs.
- Så här skickar du frågor till containerns slutpunkt när den körs.
Begär åtkomst för att använda containrar i frånkopplade miljöer
Fyll i och skicka begärandeformuläret för att begära åtkomst till containrarna som är frånkopplade från Internet.
Formuläret begär information om dig, ditt företag och det användarscenario som du ska använda containern för. När du har skickat formuläret granskar Azure AI-tjänsteteamet det och skickar ett e-postmeddelande till dig inom 10 arbetsdagar.
Viktigt!
- I formuläret måste du använda en e-postadress som är associerad med ett Azure-prenumerations-ID.
- Den Azure-resurs som du använder för att köra containern måste ha skapats med det godkända Azure-prenumerations-ID:t.
- Kontrollera din e-post (både inkorg och skräppostmappar) om du vill ha uppdateringar om status för ditt program från Microsoft.
När du har godkänts kan du köra containern när du har laddat ned den från Microsoft Container Registry (MCR), som beskrivs senare i artikeln.
Du kommer inte att kunna köra containern om din Azure-prenumeration inte har godkänts.
Åtkomsten är begränsad till kunder som uppfyller följande krav:
- Din organisation bör identifieras som strategisk kund eller partner med Microsoft.
- Frånkopplade containrar förväntas köras helt offline, därför måste användningsfallen uppfylla något av följande eller liknande krav:
- Miljö eller enheter med noll anslutning till Internet.
- Fjärrplats som ibland har internetåtkomst.
- Organisation under strikt reglering av att inte skicka någon form av data tillbaka till molnet.
- Programmet har slutförts enligt anvisningarna – Var noga med vägledningen i hela programmet för att säkerställa att du tillhandahåller all nödvändig information som krävs för godkännande.
Köpa en prisplan för åtagandenivå för frånkopplade containrar
Skapa en ny resurs
Logga in på Azure Portal och välj Skapa en ny resurs för någon av de tillämpliga Azure AI-tjänsterna som anges ovan.
Ange den information som ska användas för att skapa resursen. Se till att välja frånkopplade containrar på åtagandenivå som prisnivå.
Kommentar
- Du ser bara alternativet att köpa en åtagandenivå om du har godkänts av Microsoft.
- Prisinformation är till exempel endast.
Välj Granska + Skapa längst ned på sidan. Granska informationen och välj Skapa.
Konfigurera container för frånkopplad användning
I följande dokumentation finns anvisningar om hur du laddar ned och konfigurerar containern för frånkopplad användning:
Taltjänst
Språktjänst
- Attitydanalys
- Extrahering av diskussionsämne
- Språkidentifiering
- Igenkänning av namngiven enhet
- Identifiering av personligt identifierbar information (PII)
Miljövariabelnamn i Kubernetes-distributioner
Vissa Azure AI-containrar, till exempel Translator, kräver att användarna skickar miljövariabelnamn som innehåller kolon (:
) när de kör containern. Detta fungerar bra när du använder Docker, men Kubernetes accepterar inte kolon i miljövariabelnamn.
För att lösa detta kan du ersätta kolon med dubbla understreckstecken (__
) när du distribuerar till Kubernetes. Se följande exempel på ett acceptabelt format för miljövariabelnamn:
env:
- name: Mounts__License
value: "/license"
- name: Mounts__Output
value: "/output"
Det här exemplet ersätter standardformatet för miljövariabelnamnen Mounts:License
och Mounts:Output
i kommandot docker run.
Containeravbildning och licensuppdateringar
Containerlicensfiler används som nycklar för att dekryptera vissa filer i varje containeravbildning. Om dessa krypterade filer råkar uppdateras i en ny containeravbildning kan licensfilen som du har inte starta containern även om den fungerade med den tidigare versionen av containeravbildningen. För att undvika det här problemet rekommenderar vi att du laddar ned en ny licensfil från resursslutpunkten för din container som finns i Azure Portal när du har hämtat nya avbildningsversioner från mcr.microsoft.com.
Om du vill ladda ned en ny licensfil kan du lägga till DownloadLicense=True
i docker-körningskommandot tillsammans med en licensmontering, din API-nyckel och din faktureringsslutpunkt. Mer information finns i containerns dokumentation.
Användningsposter
När du använder Docker-containrar i en frånkopplad miljö skriver containern användningsposter till en volym där de samlas in över tid. Du kan också anropa en REST-slutpunkt för att generera en rapport om tjänstanvändning.
Argument för att lagra loggar
När du kör i en frånkopplad miljö måste en utdatamontering vara tillgänglig för containern för att lagra användningsloggar. Du kan till exempel inkludera -v /host/output:{OUTPUT_PATH}
och Mounts:Output={OUTPUT_PATH}
i exemplet nedan ersätta {OUTPUT_PATH}
med sökvägen där loggarna ska lagras:
docker run -v /host/output:{OUTPUT_PATH} ... <image> ... Mounts:Output={OUTPUT_PATH}
Hämta poster med hjälp av containerslutpunkterna
Containern innehåller två slutpunkter för att returnera poster om dess användning.
Hämta alla poster
Följande slutpunkt innehåller en rapport som sammanfattar all användning som samlas in i katalogen för monterade faktureringsposter.
https://<service>/records/usage-logs/
Det returnerar JSON som liknar exemplet nedan.
{
"apiType": "noop",
"serviceName": "noop",
"meters": [
{
"name": "Sample.Meter",
"quantity": 253
}
]
}
Hämta poster för en viss månad
Följande slutpunkt tillhandahåller en rapport som sammanfattar användningen under en viss månad och ett visst år.
https://<service>/records/usage-logs/{MONTH}/{YEAR}
det returnerar ett JSON-svar som liknar exemplet nedan:
{
"apiType": "string",
"serviceName": "string",
"meters": [
{
"name": "string",
"quantity": 253
}
]
}
Köpa en åtagandeplan för att använda containrar i frånkopplade miljöer
Åtagandeplaner för frånkopplade containrar har en åtagandeperiod för kalenderår. När du köper en plan debiteras du det fullständiga priset omedelbart. Under åtagandeperioden kan du inte ändra din åtagandeplan, men du kan köpa ytterligare enheter till ett pris som är proportionellt för de återstående dagarna under året. Du har fram till midnatt (UTC) på den sista dagen av ditt åtagande för att avsluta en åtagandeplan.
Du kan välja en annan åtagandeplan i prisinställningarna för åtagandenivån för din resurs.
Avsluta en åtagandeplan
Om du bestämmer dig för att du inte vill fortsätta köpa en åtagandeplan kan du ställa in resursens automatiska förnyelse på Förnya inte automatiskt. Din åtagandeplan upphör att gälla på det visade slutdatumet för åtagandet. Efter det här datumet debiteras du inte för åtagandeplanen. Du kommer att kunna fortsätta använda Azure-resursen för att göra API-anrop, som debiteras enligt betala per användning-priser. Du har fram till midnatt (UTC) på den sista dagen på året för att avsluta en åtagandeplan för frånkopplade containrar och debiteras inte för följande år.
Felsökning
Om du kör containern med en utdatamontering och loggning aktiverad genererar containern loggfiler som är användbara för att felsöka problem som inträffar när containern startas eller körs.
Dricks
Mer felsökningsinformation och vägledning finns i Vanliga frågor och svar om frånkopplade containrar.