* dotnet: refresh Foundry sample guidance Carry forward the still-relevant sample guidance and Foundry-specific documentation fixes from the old stacked sample migration work, adapted to the current repo layout and policy. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * dotnet: rename Foundry sample env vars Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * dotnet: remove persistent provider sample Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * dotnet: drop SAMPLE_GUIDELINES.md from this PR Defer the guidelines doc and its cross-link to a follow-on PR to avoid broken-link failures in CI. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * dotnet: add DefaultAzureCredential warning to remaining samples Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * dotnet: address PR review feedback Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Creating an AIAgent instance for various providers
These samples show how to create an AIAgent instance using various providers. This is not an exhaustive list, but shows a variety of the more popular options.
For other samples that demonstrate how to use AIAgent instances, see the Getting Started With Agents samples.
Prerequisites
See the README.md for each sample for the prerequisites for that sample.
Samples
| Sample | Description |
|---|---|
| Creating an AIAgent with A2A | This sample demonstrates how to create AIAgent for an existing A2A agent. |
| Creating an AIAgent with Anthropic | This sample demonstrates how to create an AIAgent using Anthropic Claude models as the underlying inference service |
| Creating an AIAgent with Foundry Agents using Azure.AI.Project | This sample demonstrates how to create an Foundry Project agent and expose it as an AIAgent using the Azure.AI.Project SDK |
| Creating an AIAgent with Foundry Model | This sample demonstrates how to use any model deployed to Microsoft Foundry to create an AIAgent |
| Creating an AIAgent with Azure OpenAI ChatCompletion | This sample demonstrates how to create an AIAgent using Azure OpenAI ChatCompletion as the underlying inference service |
| Creating an AIAgent with Azure OpenAI Responses | This sample demonstrates how to create an AIAgent using Azure OpenAI Responses as the underlying inference service |
| Creating an AIAgent with a custom implementation | This sample demonstrates how to create an AIAgent with a custom implementation |
| Creating an AIAgent with GitHub Copilot | This sample demonstrates how to create an AIAgent using GitHub Copilot SDK as the underlying inference service |
| Creating an AIAgent with Ollama | This sample demonstrates how to create an AIAgent using Ollama as the underlying inference service |
| Creating an AIAgent with ONNX | This sample demonstrates how to create an AIAgent using ONNX as the underlying inference service |
| Creating an AIAgent with OpenAI ChatCompletion | This sample demonstrates how to create an AIAgent using OpenAI ChatCompletion as the underlying inference service |
| Creating an AIAgent with OpenAI Responses | This sample demonstrates how to create an AIAgent using OpenAI Responses as the underlying inference service |
Running the samples from the console
To run the samples, navigate to the desired sample directory, e.g.
cd AIAgent_With_AzureOpenAIChatCompletion
Set the required environment variables as documented in the sample readme. If the variables are not set, you will be prompted for the values when running the samples. Execute the following command to build the sample:
dotnet build
Execute the following command to run the sample:
dotnet run --no-build
Or just build and run in one step:
dotnet run
Running the samples from Visual Studio
Open the solution in Visual Studio and set the desired sample project as the startup project. Then, run the project using the built-in debugger or by pressing F5.
You will be prompted for any required environment variables if they are not already set.