Skip to content

Commit 1716496

Browse files
committed
providing-examples
1 parent 28a886f commit 1716496

1 file changed

Lines changed: 13 additions & 11 deletions

File tree

README.md

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ Last updated: 2026-02-02
4343
- **Cart Manager**: Cart operations and checkout-oriented help
4444
- **Product Management Specialist**: Handles product-centric workflows and coordinates lookups across services
4545
- **Intent routing + handoff planning**: Classifies user intent and plans a multi-step sequence of agent calls (instead of a single “one agent answers everything” flow)
46-
- **Factual data integration**: Uses **Azure AI Search** (vector/keyword retrieval) and **Azure Cosmos DB** (catalog/state) during workflows
46+
- **Factual data integration (pipeline-first)**: Terraform runs pipelines that ingest the catalog into **Azure Cosmos DB** and build an **Azure AI Search** index; runtime lookups can be enabled/extended as needed
4747
- **Real persistent agents**: Uses Azure AI Foundry Agents with saved runtime IDs (OpenAI-style `asst_*`) provisioned during deployment
4848
- **Zero-touch deployment**: `terraform apply` provisions infra, ingests data, creates/updates agents, wires secrets/config, and deploys the Container Apps revision
4949
- **UI-visible diagnostics**: Correlated `error_id` responses and optional tracebacks via `A2A_DEBUG=true` for faster troubleshooting
@@ -72,7 +72,7 @@ This repo contains **two multi-agent implementations**:
7272
- **Intent routing**: classifies the user request and selects the primary domain (`src/services/handoff_service.py`)
7373
- **Handoff planning**: builds a multi-step sequence of which agents to call (`src/chat_app_multi_agent.py`)
7474
- **Remote agent execution**: calls Azure AI Foundry Agents using the saved `asst_*` IDs (`src/app/agents/agent_processor.py`)
75-
- **Factual lookups**: uses Azure AI Search and Cosmos DB during workflows (called from the app runtime)
75+
- **Factual lookups (optional)**: Terraform creates/loads Cosmos DB and Azure AI Search data; the default chat runtime can be extended to query these sources during workflows
7676

7777
> A2A components included in this repo (optional server)
7878
@@ -137,27 +137,25 @@ graph TD
137137
1. **Infrastructure Provisioning**:
138138
- Creates Resource Group, Cosmos DB, MSFT Foundry, AI Search, Storage Account, Key Vault, and Container Registry (ACR).
139139
- Deploys AI Models (`gpt-4o-mini`, `text-embedding-3-small`).
140-
- Sets up A2A protocol infrastructure including event queues and monitoring.
140+
- Sets up monitoring (Log Analytics + Application Insights). Optional A2A components (like an in-memory event queue) are part of the app codebase, not separate Azure resources.
141141

142142
> E.g Web App approach:
143143
144144
<img width="1859" height="900" alt="image" src="https://github.com/user-attachments/assets/cd24ab7f-5ddd-46de-b266-0d0a24c45803" />
145145

146146
2. **A2A Framework Deployment**:
147-
- Initializes the Agent-to-Agent protocol server components.
148-
- Sets up event queue system for inter-agent communication.
149-
- Configures agent discovery and registration services.
150-
- Deploys A2A monitoring and automation frameworks.
147+
- Includes an optional A2A-style server implementation under `src/a2a/` (routers, coordinator, in-memory event queue, monitoring helpers).
148+
- Note: the default deployed runtime uses `src/chat_app_multi_agent.py` (`/ws`). The A2A server endpoints are only available if you deploy/run the `src/a2a/main.py` entrypoint.
151149

152150
3. **Data Pipeline Execution**:
153151
- Sets up a Python virtual environment.
154-
- Ingests `product_catalog.csv` into Cosmos DB with A2A event notifications.
152+
- Ingests `src/data/updated_product_catalog(in).csv` into Cosmos DB.
155153

156154
> E.g Web App approach:
157155
158156
<https://github.com/user-attachments/assets/41bf0976-0ca8-47fe-a2fa-8750bcc6f848>
159157

160-
- Creates and populates an Azure AI Search index with vector embeddings through A2A coordination.
158+
- Creates and populates an Azure AI Search index with vector embeddings.
161159

162160
> E.g Web App approach:
163161
@@ -201,9 +199,13 @@ graph TD
201199
<https://github.com/user-attachments/assets/a1139528-6b37-4ac2-a1cb-771788ff45a4>
202200

203201
2. **Verify A2A Protocol Endpoints**:
204-
- Check A2A Chat API: `https://<your-app-name>.azurecontainerapps.io/a2a/chat`
205-
- Check A2A Server API: `https://<your-app-name>.azurecontainerapps.io/a2a/api/docs`
202+
- These endpoints are **only available if you deploy/run the A2A server entrypoint** (`src/a2a/main.py`).
203+
- A2A Chat API (HTTP): `https://<your-app-name>.azurecontainerapps.io/a2a/chat/message`
204+
- A2A Chat API (WebSocket): `wss://<your-app-name>.azurecontainerapps.io/a2a/chat/ws`
205+
- A2A Chat streaming: `https://<your-app-name>.azurecontainerapps.io/a2a/chat/stream`
206+
- A2A Chat stats: `https://<your-app-name>.azurecontainerapps.io/a2a/chat/stats`
206207
- Verify agent discovery: `https://<your-app-name>.azurecontainerapps.io/a2a/server/agents`
208+
- OpenAPI docs (FastAPI default): `https://<your-app-name>.azurecontainerapps.io/docs`
207209

208210
3. **Verify Enhanced Agent Architecture**:
209211
- Go to the [MSFT Foundry Portal](https://ai.azure.com).

0 commit comments

Comments
 (0)