The Python 3.12 ingestion service for Agent Landing Zone. It chunks documents, generates embeddings, writes Azure AI Search content, and runs Blob, SharePoint, NL2SQL, and maintenance jobs. It also exposes ingestion APIs, an operator dashboard, and a separately gated hosted retrieval API. It does not execute conversational agents or store their full chat history.
- Product documentation owns deployment topology and shared setup.
- Canonical documentation source
is on
Azure/AI-Landing-Zonesmain, not a legacy documentation branch. - Runtime, API, security, scheduling, and audit guide covers this service.
- Contributor quality commands and operator dashboard development cover local engineering.
Agent Landing Zone 4.3.0 pins
v3.1.1
at 72efd8d7d51e10d38bf8b89f03b7eb42e1ed8ff2. Repository main also
contains later naming and App Configuration label changes. The runtime guide
marks the label difference explicitly. main or develop is not evidence
that a change is in the platform's shipped image.
Obtain compatible infrastructure and a development App Configuration store through Agent Landing Zone first. This repository's Bicep file does not provision a standalone environment. The selected sources, models, storage, Search index, identities, and network access must already be configured.
Starting the service can write and delete data. Startup jobs default to enabled, and cron scheduling remains active even when immediate startup jobs are disabled. Review the scheduling defaults before connecting to any environment.
From this repository's root, with Python 3.12 and Azure CLI installed, run:
python -m venv .venv
.\.venv\Scripts\python -m pip install -r requirements.txt
az login
$env:APP_CONFIG_ENDPOINT = "https://<app-configuration-name>.azconfig.io"
.\.venv\Scripts\python -m uvicorn main:app --host 127.0.0.1 --port 8080These are service startup commands, not infrastructure deployment commands.
See configuration and identity
for RBAC, runtime values, and environment opt-in. GET /healthz and
GET /readyz are process probes, not proof that a source was indexed.
The ingestion Container App is optional, independently of Container Apps or
Foundry hosted orchestration. Fresh supported native Foundry IQ deployments
default its platform deployment control to false. Existing and custom
selections are preserved. Native Blob ingestion does not replace conversation
attachments or all source types.
Enabling deployment does not change retrieval backends or sources, enable
POST /retrieve, or remove API-key requirements from ingestion APIs.
See deployment and retrieval boundaries.
Follow the engineering contract and
contribution guidelines.
Audit schemas and their integrity pins are in contracts/.
Microsoft trademarks and logos are subject to Microsoft's guidelines. Modified versions must not imply sponsorship. Third-party trademarks follow their owners' policies.