Loading source
Pulling the file list, source metadata, and syntax-aware rendering for this listing.
Source from repo
Deploy, evaluate, and manage AI agents end-to-end on Microsoft Azure AI Foundry
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