Skip to content

Repository files navigation

🟨⬛🟨⬛🟨⬛🟨⬛🟨⬛🟨⬛🟨⬛🟨⬛🟨⬛🟨⬛🟨⬛🟨⬛

🚧 Work in Progress 🚧

This workshop is under active development and testing..
Please wait till this banner is removed before using it for self-guided or instructor-led delivery.

🟨⬛🟨⬛🟨⬛🟨⬛🟨⬛🟨⬛🟨⬛🟨⬛🟨⬛🟨⬛🟨⬛🟨⬛

Build, Evaluate & Optimize AI Agents with Microsoft Foundry & GitHub Copilot

Overview · Quickstart · Core Labs · More Labs · Feedback

Scenario. Contoso is a fictitious enterprise retail company serving customers worldwide. Contoso Travel Concierge is their internal travel planning tool, used by employees to book flights, cars and hotels - and manage expenses - while ensuring they are in compliance with company travel policies.

Workshop. This workshop was built with the help of coding agents grounded in our docs, with human oversight and review for correctness and consistency. If you find any discrepancies or have questions, please file an appropriate issue for our attention.


Overview

Building an AI agent on Microsoft Foundry can be fairly straightforward. Create a new project, deploy a relevant model, configure agent instructions and tools - then deploy it to get an endpoint you can send requests to (from a UI-based playground or a code-based client).

But agent behaviors can be non-deterministic. Building reliable agents - that meet required cost, latency and quality targets - requires end-to-end observability. Start with evaluations that assess the quality, performance and safety of your agent with built-in and custom metrics. Use tracing (logs) to debug issues and build your intuition for where your agent incurs cost and latency. And use application insights to understand your agent performance in production, at scale.

Real-world deployments can also help identify agent drift from the desired performance targets. For instance, models may evolve or new edge cases may be revealed from actual usage. Keeping your agent operating correctly while consistemtly meeting desired criteria - requires continuous optimization, reflected by the Agent DevOps loop shown below.

flowchart LR
    Plan([Plan]) --> Build([Build]) --> Evaluate([Evaluate])
    Evaluate --> Deploy([Deploy]) --> Monitor([Monitor]) --> Optimize([Optimize])
    Optimize --> Evaluate
    Monitor --> Protect([Protect]) --> Evaluate
Loading

This repository provides a series of hands-on labs that walks you through this loop on Microsoft Foundry — from provisioning to deployment to continuous optimization — usingthe Contoso Travel Concierge multi-agent scenario.

The course is organized in three phases:

Phase What you do Time
Fundamentals Provision Foundry (azd or portal), deploy models, create the Prompt Agent, deploy the Hosted Agent ~75 min
Core Labs Observe → Evaluate → Optimize → Monitor on the Prompt Agent; capstone on the Hosted Agent ~90 min
More Labs Single-question deep dives against the deployed agents 20–30 min each

EXPERIMENTAL:
The repository is configured with a workshop-coach agent (using GitHub Copilot) that self-guided learners can use to ask for explanations or debug issues, without losing track of their progress. The coach guides you through the next step but never does the task for you, so you learn by doing.


Quickstart

The repository is configured with a .devcontainer/ that defines the default Python environment and dependencies required to run the exercises. The fastest way to get started and running your first lab is:

  1. Fork the repo to your profile to get a sandbox you can modify
  2. Launch the Dev Container using GitHub Codespaces (browser) or Docker Desktop (device)

This should automatically invoke the scripts to install Python dependencies, update required tooling, and initialize environment for lab execution. Wait till you see an active VS Code terminal - and use these commands to verify installation status.

# Python 3.13+
python --version

# Azure CLI ("azure-cli": "2.89.0" or higher)
az version

# Azure Developer CLI (azd version 1.30.0  or higher)
azd version

# GitHub Copilot CLI (GitHub Copilot CLI 1.0.78. or higher)
copilot version

# GitHub CLI (gh version 2.97.0 or higher)
gh --version

Prefer local setup? Create a virtual environment and install the tools manually. You will need Python 3.13+, az, azd, copilot and gh on your PATH.


Fundamentals

The Fundamentals track gets your Foundry substrate, models, and both agents (Prompt + Hosted) provisioned and verified — so you have a green baseline before starting the Core Labs. Complete them in order; Labs 01 and 02 are alternative paths (pick one).

# Lab Loop node
0 Course overview & the Agent DevOps loop Plan
1 Provision Foundry with azd (CLI path) Build
2 Provision Foundry with the Portal (UI path) Build
3 Deploy the required models Build
4 Create the Prompt Agent Build
5 Deploy the Hosted Agent Deploy
6 End-to-end verification Evaluate

Start here → labs/fundamentals/00-overview.md.


Core Labs

The core labs track takes you through the steps of the Agent DevOps loop using our Contoso Travel Concierge scenario. Every lab teaches one node of the Agent DevOps loop. Complete them in order.

# Lab Loop node
0 Overview Plan
1 Observe traces in the portal Monitor
2 Evaluate the Prompt Agent Evaluate
3 Optimize with Foundry skills + Copilot Optimize
4 Monitor and trace outcomes Monitor
5 Capstone — apply the loop to the Hosted Agent Optimize

Fundamentals prerequisites: labs/fundamentals/.


More Labs

This section provides an evolving library of labs that offer "one-question deep dives". You should be able to explore them in any order once you complete the Core Labs. Watch for frequent updates to this section to learn new features or best practies.

# Lab Loop node
1 Troubleshoot a failing trace Monitor
2 Red-team your agent Protect
3 Continuous evaluation Evaluate
4 Datasets from real traces Evaluate
… see labs/more/README.md for the full index

Feedback

Have questions, contributions or feedback? Watch for updates to the CONTRIBUTING guide.

About

In this workshop learn how to use the Microsoft Foundry Observability platform capabilities with GitHub Copilot coding agent support, to observe and optimize a hosted agents solution for a Travel Concierge scenario.

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages