Files
westey 3ef67eff10 .NET: [BREAKING] Refactor ChatMessageStore methods to be similar to AIContextProvider and add filtering support (#2604)
* Refactor ChatMessageStore methods to be similar to AIContextProvider

* Fix file encoding

* Ensure that AIContextProvider messages area also persisted.

* Update formatting and seal context classes

* Improve formatting

* Remove optional messages from constructor and add unit test

* Add ChatMessageStore filtering via a decorator

* Update sample and cosmos message store to store AIContextProvider messages in right order. Fix unit tests.

* Update Workflowmessage store to use aicontext provider messages.

* Apply suggestions from code review

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: SergeyMenshykh <68852919+SergeyMenshykh@users.noreply.github.com>

* Improve xml docs messaging

* Address code review comments.

* Also notify message store on failure

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: SergeyMenshykh <68852919+SergeyMenshykh@users.noreply.github.com>
3ef67eff10 · 2026-01-05 11:51:15 +00:00
History
..

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.Agents.Persistent This sample demonstrates how to create a Foundry Persistent agent and expose it as an AIAgent using the Azure.AI.Agents.Persistent SDK
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 AzureFoundry Model This sample demonstrates how to use any model deployed to Azure 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 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 Assistants This sample demonstrates how to create an AIAgent using OpenAI Assistants as the underlying inference service.
WARNING: The Assistants API is deprecated and will be shut down. For more information see the OpenAI documentation: https://platform.openai.com/docs/assistants/migration
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.