Vad är Azure AI-containrar?

Azure AI-tjänster tillhandahåller flera Docker-containrar som låter dig använda samma API:er som är tillgängliga i Azure lokalt. Med de här containrarna får du flexibiliteten att föra Azure AI-tjänster närmare dina data av kompatibilitets-, säkerhets- eller andra driftsskäl. Containerstöd är för närvarande tillgängligt för en delmängd av Azure AI-tjänster.

Containerisering är en metod för programvarudistribution där ett program eller en tjänst, inklusive dess beroenden och konfiguration, paketeras tillsammans som en containeravbildning. Med liten eller ingen ändring kan en containeravbildning distribueras på en containervärd. Containrar är isolerade från varandra och det underliggande operativsystemet, med ett mindre fotavtryck än en virtuell dator. Containrar kan instansieras från containeravbildningar för kortsiktiga uppgifter och tas bort när de inte längre behövs.

Funktioner och erbjudanden

  • Oföränderlig infrastruktur: Gör det möjligt för DevOps-team att utnyttja en konsekvent och tillförlitlig uppsättning kända systemparametrar samtidigt som de kan anpassa sig till förändringar. Containrar ger flexibiliteten att pivoter inom ett förutsägbart ekosystem och undvika konfigurationsavvikelser.
  • Kontroll över data: Välj var dina data ska bearbetas av Azure AI-tjänster. Detta kan vara viktigt om du inte kan skicka data till molnet men behöver åtkomst till API:er för Azure AI-tjänster. Stöd för konsekvens i hybridmiljöer – över data, hantering, identitet och säkerhet.
  • Kontroll över modelluppdateringar: Flexibilitet vid versionshantering och uppdatering av modeller som distribueras i deras lösningar.
  • Bärbar arkitektur: Gör det möjligt att skapa en portabel programarkitektur som kan distribueras i Azure, lokalt och på gränsen. Containrar kan distribueras direkt till Azure Kubernetes Service, Azure Container Instances eller till ett Kubernetes-kluster som distribuerats till Azure Stack. Mer information finns i Distribuera Kubernetes till Azure Stack.
  • Högt dataflöde/låg svarstid: Ge kunderna möjlighet att skala för krav på högt dataflöde och låg svarstid genom att göra det möjligt för Azure AI-tjänster att köra fysiskt nära sin programlogik och sina data. Containrar tar inte upp transaktioner per sekund (TPS) och kan göras för att skala upp och ut för att hantera efterfrågan om du tillhandahåller nödvändiga maskinvaruresurser.
  • Skalbarhet: Med den ständigt växande populariteten för programvara för containerorkestrering och containerorkestrering, till exempel Kubernetes, ligger skalbarheten i framkant när det gäller tekniska framsteg. Programutveckling bygger på en skalbar klustergrund och erbjuder hög tillgänglighet.

Containrar i Azure AI-tjänster

Azure AI-containrar tillhandahåller följande uppsättning Docker-containrar, som var och en innehåller en delmängd funktioner från tjänster i Azure AI-tjänster. Du hittar instruktioner och bildplatser i tabellerna nedan.

Kommentar

Se Installera och köra Dokumentinformationscontainrar för Azure AI Document Intelligence-containerinstruktioner och avbildningsplatser.

Beslutscontainrar

Tjänst Behållare beskrivning Tillgänglighet
Avvikelseidentifiering Avvikelseidentifiering (bild) Med Avvikelseidentifiering-API:et kan du övervaka och identifiera avvikelser i dina tidsseriedata med maskininlärning. Allmänt tillgängligt

Språkcontainrar

Tjänst Behållare beskrivning Tillgänglighet
LUIS LUIS (bild) Läser in en tränad eller publicerad Language Understanding-modell, även känd som en LUIS-app, i en dockercontainer och ger åtkomst till frågeförutsägelserna från containerns API-slutpunkter. Du kan samla in frågeloggar från containern och ladda upp dem tillbaka till LUIS-portalen för att förbättra appens förutsägelsenoggrannhet. Allmänt tillgänglig.
Den här containern kan också köras i frånkopplade miljöer.
Språktjänst Extrahering av nyckelfras (bild) Extraherar nyckelfraser för att identifiera huvudpunkterna. Exempel: För den inmatade texten ”Maten var härlig och personalen var underbar” returnerar API:et de huvudsakliga diskussionsämnena: ”mat” och ”underbar personal”. Allmänt tillgänglig.
Den här containern kan också köras i frånkopplade miljöer.
Språktjänst Identifiering av textspråk (bild) För upp till 120 språk identifierar vilket språk indatatexten är skriven i och rapporterar en enda språkkod för varje dokument som skickas på begäran. Språkkoden paras med poäng som anger styrkan hos poängen. Allmänt tillgänglig.
Den här containern kan också köras i frånkopplade miljöer.
Språktjänst Attitydanalys (bild) Analyserar rådata för ledtrådar om positiva eller negativa sentiment. Den här versionen av attitydanalysen returnerar sentimentetiketter (till exempel positiva eller negativa) för varje dokument och mening i det. Allmänt tillgänglig.
Den här containern kan också köras i frånkopplade miljöer.
Språktjänst Textanalys för hälsa (bild) Extrahera och märka medicinsk information från ostrukturerad klinisk text. Allmänt tillgängligt
Språktjänst Namngiven entitetsigenkänning (bild) Extrahera namngivna entiteter från text. Allmänt tillgänglig.
Den här containern kan också köras i frånkopplade miljöer.
Språktjänst Anpassad namngiven entitetsigenkänning (bild) Extrahera namngivna entiteter från text med hjälp av en anpassad modell som du skapar med dina data. Allmänt tillgängligt
Språktjänst Sammanfattning (bild) Sammanfatta text från olika källor. Offentlig förhandsversion.
Den här containern kan också köras i frånkopplade miljöer.
Översättare Translator (bild) Översätt text på flera språk och dialekter. Allmänt tillgänglig. Gated – begär åtkomst.
Den här containern kan också köras i frånkopplade miljöer.

Speech-containrar

Tjänst Behållare beskrivning Tillgänglighet
Speech Service API Tal till text (bild) Transkriberar kontinuerlig realtidsöversättning av tal till text. Allmänt tillgänglig.
Den här containern kan också köras i frånkopplade miljöer.
Speech Service API Anpassat tal till text (bild) Transkriberar tal i kontinuerlig realtid till text med hjälp av en anpassad modell. Allmänt tillgänglig
Den här containern kan också köras i frånkopplade miljöer.
Speech Service API Neural text till tal (bild) Konverterar text till naturligt klingande tal med hjälp av djup neural nätverksteknik, vilket möjliggör mer naturligt syntetiserat tal. Allmänt tillgänglig.
Den här containern kan också köras i frånkopplade miljöer.
Speech Service API Talspråksidentifiering (bild) Avgör språket för talat ljud. Förhandsgranska

Containrar för visuellt innehåll

Tjänst Behållare beskrivning Tillgänglighet
Azure AI Vision Läs OCR (bild) Med read OCR-containern kan du extrahera tryckt och handskriven text från bilder och dokument med stöd för JPEG-, PNG-, BMP-, PDF- och TIFF-filformat. Mer information finns i läs API-dokumentationen. Allmänt tillgänglig.
Den här containern kan också köras i frånkopplade miljöer.
Rumslig analys Rumslig analys (bild) Analyserar strömmande video i realtid för att förstå rumsliga relationer mellan människor, deras rörelse och interaktioner med objekt i fysiska miljöer. Förhandsgranska

Dessutom stöds vissa containrar i azure AI-tjänsternas resurserbjudande för flera tjänster. Du kan skapa en enda Azure AI-tjänst allt-i-ett-resurs och använda samma faktureringsnyckel för tjänster som stöds för följande tjänster:

  • Azure AI Vision
  • LUIS
  • Språktjänst

Förutsättningar

Du måste uppfylla följande krav innan du använder Azure AI-containrar:

Docker Engine: Du måste ha Docker Engine installerat lokalt. Docker tillhandahåller paket som konfigurerar Docker-miljön i macOS, Linux och Windows. I Windows måste Docker konfigureras för att stödja Linux-containrar. Docker-containrar kan också distribueras direkt till Azure Kubernetes Service eller Azure Container Instances.

Docker måste konfigureras så att containrarna kan ansluta till och skicka faktureringsdata till Azure.

Kunskaper om Microsoft Container Registry och Docker: Du bör ha en grundläggande förståelse för både Microsoft Container Registry och Docker-begrepp, till exempel register, lagringsplatser, containrar och containeravbildningar, samt kunskaper om grundläggande docker kommandon.

En introduktion till grunderna för Docker och containrar finns i Docker-översikt.

Enskilda containrar kan också ha sina egna krav, inklusive krav på server- och minnesallokering.

Containersäkerhet för Azure AI-tjänster

Säkerhet bör vara ett primärt fokus när du utvecklar program. Vikten av säkerhet är ett mått för att lyckas. När du utformar en programvarulösning som innehåller Azure AI-containrar är det viktigt att du förstår de begränsningar och funktioner som är tillgängliga för dig. Mer information om nätverkssäkerhet finns i Konfigurera virtuella Nätverk för Azure AI-tjänster.

Viktigt!

Som standard finns det ingen säkerhet i Azure AI Services-container-API:et. Anledningen till detta är att containern oftast körs som en del av en podd som skyddas utifrån av en nätverksbrygga. Det är dock möjligt för användare att skapa en egen autentiseringsinfrastruktur för att approximera de autentiseringsmetoder som används vid åtkomst till molnbaserade Azure AI-tjänster.

Följande diagram illustrerar standardmetoden och den icke-säkra metoden:

Container security

Som ett exempel på en alternativ och säker metod kan konsumenter av Azure AI-containrar utöka en container med en frontriktad komponent och hålla containerslutpunkten privat. Nu ska vi överväga ett scenario där vi använder Istio som en ingressgateway. Istio stöder HTTPS/TLS- och klientcertifikatautentisering. I det här scenariot exponerar Istio-klientdelen containeråtkomsten och presenterar klientcertifikatet som godkänns i förväg med Istio.

Nginx är ett annat populärt val i samma kategori. Både Istio och Nginx fungerar som ett tjänstnät och erbjuder ytterligare funktioner, till exempel belastningsutjämning, routning och hastighetskontroll.

Nätverk för containrar

Azure AI-containrarna krävs för att skicka avläsningsinformation i faktureringssyfte. Om det inte går att tillåtalistning av olika nätverkskanaler som Azure AI-containrarna förlitar sig på kommer containern inte att fungera.

Tillåtlistning av Azure AI-tjänstdomäner och portar

Värden bör tillåtalistning av port 443 och följande domäner:

  • *.cognitive.microsoft.com
  • *.cognitiveservices.azure.com

Inaktivera djup paketinspektion

Djup paketinspektion (DPI) är en typ av databehandling som i detalj inspekterar data som skickas via ett datornätverk och vanligtvis vidtar åtgärder genom att blockera, omdirigera eller logga dem i enlighet med detta.

Inaktivera DPI på de säkra kanaler som Azure AI-containrarna skapar till Microsoft-servrar. Om du inte gör det hindrar du containern från att fungera korrekt.

Utvecklarexempel

Utvecklarexempel finns på vår GitHub-lagringsplats.

Nästa steg

Lär dig mer om containerrecept som du kan använda med Azure AI-tjänsterna.

Installera och utforska funktionerna i containrar i Azure AI-tjänster: