Loading source
Pulling the file list, source metadata, and syntax-aware rendering for this listing.
Source from repo
Build and deploy AI applications on Azure AI Foundry using Microsoft's model catalog and AI services
Files
Skill
Size
Entrypoint
Format
Open file
Syntax-highlighted preview of this file as included in the skill package.
resource/private-network/references/intake.md
1# Intake23Collect all inputs in one pass, tiered by priority. Extract implicit answers from the user’s message before asking. Use `AskUserQuestion` for unanswered items — batch related questions.45---67## Tier 1 — Core89### 1.0 Verify Subscription1011Run:1213```bash14az account show --query "{Name:name, Id:id, State:state}" -o table15```1617Confirm with user. Switch if needed:1819```bash20az account set --subscription "<name-or-id>"21```2223### 1.1 Extract Known Answers2425Scan the user's message before asking:2627| User Says | Inferred |28|-----------|----------|29| "my existing VNet" / "my VNet" | BYO VNet |30| "managed virtual network" | Managed VNet |31| "user-assigned identity" / "UAI" | User-assigned identity |32| "APIM" / "API Management" | Needs APIM |33| "MCP servers on the VNet" | Needs MCP subnet |34| "I have a Bicep/Terraform template" | Extend existing IaC |35| "add Foundry to my existing infra" | Extend existing IaC |3637### 1.2 Architecture Questions3839For unanswered items, use `AskUserQuestion`:4041**VNet model:** BYO VNet or Managed VNet (preview)?4243**Agents:** Agent workloads, or just models/projects?4445**Region:** Which Azure region? After answer, verify capacity:4647```bash48az cognitiveservices account list-skus --location <region> --kind AIServices -o table49```5051If empty, warn the user and suggest alternatives.5253**Resource Group:** New or existing?5455**VNet:** New or existing? If new: address space (default `192.168.0.0/16`), subnet CIDRs (agent `/24`, PE `/24`).5657### 1.3 Determine Approach5859Based on the answers collected, select one of three paths:6061```62User has existing IaC they want to extend?63├── Yes → EXTEND64│65└── No → check template-index.md66├── Template fits as-is → OFFICIAL67└── Partial or no fit → ADAPT (start from closest template)68```6970**OFFICIAL:** Load [template-index.md](template-index.md), fetch the best-fit README from GitHub. Present the match using the template's descriptive name.7172**ADAPT:** Fetch the closest template's README. Explain what doesn't fit, present the delta, offer to adapt.7374**EXTEND:** The user has existing Bicep/Terraform — no template selection needed yet. Continue to Tier 2.7576Confirm the approach with the user before continuing to Tier 2.7778---7980## Tier 2 — Architecture8182*Skip questions already answered or not applicable.*8384### BYO VNet only8586**Topology:** Standalone, hub-spoke, or Azure vWAN?8788**On-prem connectivity:** VPN Gateway, ExpressRoute, or none?8990**DNS:** Azure-provided, custom DNS resolver, or on-prem DNS forwarding?9192**Address space:** Is `192.168.0.0/16` available, or use a specific range?9394**NSG / Firewall:** Existing rules on the subnets?9596**Deployment executor:** Where will post-deployment commands run? (VM, Bastion, VPN, Cloud Shell)9798**Subscription scope:** Same subscription/tenant, cross-subscription, or cross-tenant?99100**Team ownership:** Same team controls VNet, DNS, NSG, and policy? If different team, block and get pre-approval before deploying.101102### Managed VNet only103104**Feature flag:** Run `az feature show` to verify `AI.ManagedVnetPreview` is registered. If not, register and wait 15–30 min.105106**Outbound mode:** Internet outbound (default) or approved outbound only?107108**MCP:** Public MCP endpoints or private MCP on VNet?109110**Client access:** Where will clients connect from? (Same VNet, peered VNet, on-prem via VPN/ER, Azure-hosted service)111112### Both paths113114**MCP servers:** Needed on VNet?115116**APIM:** Needed?117118**Identity:** System-assigned (default) or user-assigned?119120**BYO resources:** Reuse existing Cosmos DB / Storage / AI Search, or create new?121122> If reusing, confirm all in same region as VNet.123124**Key Vault / App Insights:** If user mentions existing ones, collect resource IDs. Optional.125126---127128## Tier 3 — Enterprise129130**Agent tools:** Which tools? (AI Search, Cosmos DB, Storage, MCP, external APIs, Bing grounding, Code Interpreter)131132**Model:** Name, vendor, version. Verify version format:133134| Vendor | Format | Example |135|--------|--------|---------|136| OpenAI | Date | `2025-04-14` |137| Mistral AI | Integer | `1` |138| Meta | Integer | `9` |139140**Client type:** SDK, web app, Teams bot, other service?141142**Client network path:** Inside VNet, peered VNet, VPN/ExpressRoute?143144**Authentication:** Entra ID (recommended) or API key?145146> Entra ID token audience for Foundry Agents API: `https://ai.azure.com`147148**GitHub access:** Can deployment environment reach `github.com`? If not, pre-stage template.149150**Azure Policy:** Known policies (e.g., `disableLocalAuth`, `defaultOutboundAccess`)? If unknown, `what-if` catches them in Step 4.151152**Monitoring:** Existing Log Analytics workspace, create new, or not needed?153154---155156## Validate Against Learn157158After collecting all requirements, validate the user's configuration against current documentation. Use `microsoft_docs_fetch` on the relevant pages below, then `microsoft_docs_search` for any requirement-specific concerns not covered.159160### Reference Pages161162| Topic | URL |163|-------|-----|164| Network isolation overview | https://learn.microsoft.com/azure/ai-foundry/how-to/configure-private-link |165| Agent Service private networking | https://learn.microsoft.com/azure/ai-services/agents/how-to/virtual-networks |166| Managed VNet configuration | https://learn.microsoft.com/azure/ai-foundry/how-to/configure-managed-network |167| Agent Service FAQ — VNet | https://learn.microsoft.com/azure/foundry/agents/faq#virtual-networking |168| Supported regions & availability | https://learn.microsoft.com/azure/ai-foundry/reference/region-support |169| NSP | https://learn.microsoft.com/en-us/azure/networking/network-security-perimeter |170| Feature Limitations | https://learn.microsoft.com/en-us/azure/foundry/how-to/configure-private-link#foundry-feature-limitations |171172> These URLs may change. If a fetch returns 404, use `microsoft_docs_search` to find the current page.173174If a conflict is found, present:1751. The constraint and its source URL1762. Which requirement it affects1773. Options to resolve178179Do NOT proceed until all conflicts are resolved or accepted.180181---182183## Confirmation184185Present a summary of all gathered requirements. Ask: **"Confirm this is accurate before I generate a deployment plan."**186187> Do NOT proceed to Plan Generation until you validated requirements against documents and the user confirms.188