Nätverksisolering i promptflöde
Du kan skydda promptflödet med hjälp av privata nätverk. I den här artikeln beskrivs kraven för att använda promptflöde i en miljö som skyddas av privata nätverk.
Berörda tjänster
När du utvecklar ditt LLM-program med hjälp av promptflöde vill du ha en säker miljö. Du kan göra följande tjänster privata via nätverksinställning.
- Arbetsyta: Du kan göra Azure Machine Learning-arbetsytan privat och begränsa inkommande och utgående trafik.
- Beräkningsresurs: Du kan även begränsa regeln för inkommande och utgående trafik för beräkningsresursen på arbetsytan.
- Lagringskonto: Du kan begränsa tillgängligheten för lagringskontot för ett specifikt virtuellt nätverk.
- Containerregister: Du vill även skydda ditt containerregister med det virtuella nätverket.
- Slutpunkt: Du vill begränsa Azure-tjänster eller IP-adress för åtkomst till slutpunkten.
- Relaterade Azure Cognitive Services som Azure OpenAI, Azure-innehållssäkerhet och Azure AI Search kan du använda nätverkskonfiguration för att göra dem privata och sedan använda privat slutpunkt för att låta Azure Machine Learning-tjänster kommunicera med dem.
- Andra icke Azure-resurser, till exempel SerpAPI osv. Om du har en strikt regel för utgående trafik måste du lägga till FQDN-regel för att få åtkomst till dem.
Alternativ i olika nätverksuppsättningar
I Azure Machine Learning har vi två alternativ för att skydda nätverksisolering, ta med ditt eget nätverk eller använda ett hanterat virtuellt nätverk på arbetsytan. Läs mer om säkra arbetsyteresurser.
Här är en tabell som illustrerar alternativen i olika nätverksuppsättningar för prompt-flöde.
Ingress | Utgående | Beräkningstyp i redigering | Slutsatsdragning för beräkningstyp | Nätverksalternativ för arbetsyta |
---|---|---|---|---|
Offentliga | Offentliga | Serverlös (rekommendera), Beräkningsinstans | Hanterad onlineslutpunkt (rekommenderas) | Hanterad (rekommenderad) |
Offentliga | Offentliga | Serverlös (rekommendera), Beräkningsinstans | K8s onlineslutpunkt | Bring you own |
Privat | Offentliga | Serverlös (rekommendera), Beräkningsinstans | Hanterad onlineslutpunkt (rekommenderas) | Hanterad (rekommenderad) |
Privat | Offentliga | Serverlös (rekommendera), Beräkningsinstans | K8s onlineslutpunkt | Bring you own |
Offentliga | Privat | Serverlös (rekommendera), Beräkningsinstans | Hanterad onlineslutpunkt | Hanterade |
Privat | Privat | Serverlös (rekommendera), Beräkningsinstans | Hanterad onlineslutpunkt | Hanterade |
- I ett privat VNet-scenario rekommenderar vi att du använder arbetsytans aktiverade hanterade virtuella nätverk. Det är det enklaste sättet att skydda din arbetsyta och relaterade resurser.
- Du kan också ha en arbetsyta för redigering av promptflöde med ditt virtuella nätverk och en annan arbetsyta för distribution av promptflöde med hanterad onlineslutpunkt med arbetsytehanterat virtuellt nätverk.
- Vi har inte stöd för blandad användning av hanterade virtuella nätverk och ta med ditt eget virtuella nätverk i en enda arbetsyta. Och eftersom hanterad onlineslutpunkt endast har stöd för hanterat virtuellt nätverk kan du inte distribuera promptflöde till hanterad onlineslutpunkt på arbetsytan som aktiverade Bring Your Own Virtual Network.
Skydda promptflöde med arbetsytehanterat virtuellt nätverk
Arbetsytehanterat virtuellt nätverk är det rekommenderade sättet att stödja nätverksisolering i promptflödet. Det ger enkel konfiguration för att skydda din arbetsyta. När du har aktiverat hanterat virtuellt nätverk på arbetsytans nivå använder resurser som är relaterade till arbetsytan i samma virtuella nätverk samma nätverksinställning på arbetsytans nivå. Du kan också konfigurera arbetsytan så att den använder privat slutpunkt för att få åtkomst till andra Azure-resurser, till exempel Azure OpenAI, Azure-innehållssäkerhet och Azure AI Search. Du kan också konfigurera FQDN-regeln för att godkänna utgående till icke-Azure-resurser som används av ditt promptflöde, till exempel SerpAPI osv.
Följ Arbetsytehanterad nätverksisolering för att aktivera arbetsytehanterade virtuella nätverk.
Viktigt!
Skapandet av det hanterade virtuella nätverket skjuts upp tills en beräkningsresurs skapas eller etableringen startas manuellt. Du kan använda följande kommando för att manuellt utlösa nätverksetablering.
az ml workspace provision-network --subscription <sub_id> -g <resource_group_name> -n <workspace_name>
Lägg till MSI för arbetsytan som
Storage File Data Privileged Contributor
till lagringskontot som är länkat till arbetsytan.2.1 Gå till Azure Portal och leta upp arbetsytan.
2.2 Hitta lagringskontot som är länkat till arbetsytan.
2.3 Hoppa till rolltilldelningssidan för lagringskontot.
2.4 Hitta rollen som privilegierad deltagare för lagringsfildata.
2.5 Tilldela lagringsfilens dataprivilegierade deltagarroll till arbetsytans hanterade identitet.
Kommentar
Den här åtgärden kan ta flera minuter att börja gälla.
Om du vill kommunicera med privata Azure Cognitive Services måste du lägga till relaterade användardefinierade regler för utgående trafik till relaterade resurser. Azure Machine Learning-arbetsytan skapar en privat slutpunkt i den relaterade resursen med automatisk godkännande. Om statusen har fastnat i väntande går du till den relaterade resursen för att godkänna den privata slutpunkten manuellt.
Om du begränsar utgående trafik till att endast tillåta specifika mål måste du lägga till en motsvarande användardefinierad utgående regel för att tillåta relevant FQDN.
På arbetsytor som aktiverar hanterade virtuella nätverk kan du endast distribuera promptflöde till hanterade onlineslutpunkter. Du kan följa Skydda dina hanterade onlineslutpunkter med nätverksisolering för att skydda din hanterade onlineslutpunkt.
Skydda promptflöde använder ditt eget virtuella nätverk
För att konfigurera Azure Machine Learning-relaterade resurser som privata, läs Skydda arbetsyteresurser.
Om du har en strikt regel för utgående trafik kontrollerar du att du har öppnat den offentliga internetåtkomst som krävs.
Lägg till MSI för arbetsytan i lagringskontot som
Storage File Data Privileged Contributor
är länkat till arbetsytan. Följ steg 2 i Säkert promptflöde med arbetsytehanterat virtuellt nätverk.Om du använder serverlös beräkningstyp i flödesredigering behöver du ange det anpassade virtuella nätverket på arbetsytenivå. Läs mer om Att skydda en Azure Machine Learning-träningsmiljö med virtuella nätverk
serverless_compute: custom_subnet: /subscriptions/<sub id>/resourceGroups/<resource group>/providers/Microsoft.Network/virtualNetworks/<vnet name>/subnets/<subnet name> no_public_ip: false # Set to true if you don't want to assign public IP to the compute
Under tiden kan du följa privata Azure Cognitive Services för att göra dem som privata.
Om du vill distribuera promptflöde på arbetsytan som skyddas av ditt eget virtuella nätverk kan du distribuera det till AKS-kluster som finns i samma virtuella nätverk. Du kan följa den säkra inferensmiljön för Azure Kubernetes Service för att skydda DITT AKS-kluster. Läs mer om hur du distribuerar promptflöde till ASK-kluster via kod.
Du kan antingen skapa en privat slutpunkt till samma virtuella nätverk eller använda peering för virtuella nätverk för att få dem att kommunicera med varandra.
Kända begränsningar
- Azure AI Foundry stöder inte Bring Your Own Virtual Network, det stöder endast arbetsytehanterat virtuellt nätverk.
- Hanterad onlineslutpunkt med vald utgående endast stöder arbetsyta med hanterat virtuellt nätverk. Om du vill använda ett eget virtuellt nätverk kan du behöva en arbetsyta för redigering av promptflöde med ditt virtuella nätverk och en annan arbetsyta för distribution av promptflöde med hanterad onlineslutpunkt med arbetsytehanterat virtuellt nätverk.