Northstar Assistant is a secure web API that answers questions only from approved documents. The production-shaped design separates ingestion from serving, uses managed identity, trims search by tenant/access, validates citations, traces each stage, evaluates releases, and keeps every expensive component removable through infrastructure as code.
Time: 3–6 hours · Cost: multiple billable services; estimate first, use smallest approved development tiers, set a budget, and delete the complete environment · Do not use: confidential documents in the learning deployment.
Method note: This production lab is one integrated delivery sequence, not a set of interchangeable single-tool procedures. Use the Portal, CLI, SDK, and IaC alternatives taught in the linked service chapters when implementing each resource, while keeping this end-to-end security and verification order intact.
Protect the main branch. Add secret scanning, dependency checks, tests, and IaC validation.
Use one environment resource group and explicit parameters. Deploy:
Run Bicep what-if or Terraform plan. Save non-secret outputs such as hostnames and resource IDs. Never output account keys.
Persist status so a retry does not duplicate chunks. Propagate deletion and access changes.
Pseudocode:
Reject a request if the claimed tenant differs from the authenticated context. Verify every citation maps to a retrieved, authorized chunk.
Create at least 30 synthetic questions covering answerable, unanswerable, ambiguous, multilingual, injection, cross-tenant, and citation cases. Measure retrieval recall, access correctness, groundedness, citation validity, schema validity, latency, tokens, and estimated cost.
Block deployment on any cross-tenant retrieval or critical injection/tool failure. Canary prompt/model changes and record the exact deployment/model version.
Use one correlation ID through edge, API, search, model, and ingestion. Dashboard:
Create runbooks for quota exhaustion, search outage, model deployment failure, poisoned document, access leak, and bad release.
Delete the application resource group through IaC or Azure. Then verify separately created role assignments, Entra applications, DNS records, model deployments, search service, storage, log retention, container registry artifacts, and budgets. If private DNS or shared networking is central, remove only the lab records/endpoints—not shared infrastructure.
Add active/passive regional deployment, a global edge, regional model/search capacity, a content governance workflow, private connectivity, data-loss prevention, online feedback review, and quarterly recovery/red-team exercises. Complete the Well-Architected review before real data.