Files
microsoft--agent-framework/dotnet/samples/05-end-to-end/Evaluation/Evaluation_ConversationSplits
wehub-resource-sync db620d33df
dotnet-build-and-test / dotnet-test-functions (push) Has been cancelled
dotnet-build-and-test / paths-filter (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Debug, windows-latest, net9.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Release, ubuntu-latest, net10.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Release, ubuntu-latest, net8.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-build (Release, windows-latest, net472) (push) Has been cancelled
dotnet-build-and-test / dotnet-test (Release, integration, true, ubuntu-latest, net10.0) (push) Has been cancelled
dotnet-build-and-test / dotnet-test (Release, integration, true, windows-latest, net472) (push) Has been cancelled
dotnet-build-and-test / dotnet-foundry-hosted-it (push) Has been cancelled
dotnet-build-and-test / dotnet-build-and-test-check (push) Has been cancelled
dotnet-build-and-test / Integration Test Report (push) Has been cancelled
CodeQL / Analyze (csharp) (push) Has been cancelled
CodeQL / Analyze (python) (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:39:25 +08:00
..

Evaluation - Conversation Splits

This sample demonstrates multi-turn conversation evaluation with different split strategies.

What this sample demonstrates

  • LastTurn (default): Evaluates whether the last response was good given all prior context
  • Full: Evaluates whether the entire conversation trajectory served the original request
  • PerTurnItems: Splits a conversation into one EvalItem per user turn for independent evaluation
  • Building multi-turn conversations with FunctionCallContent and FunctionResultContent
  • Using ConversationSplitters.LastTurn and ConversationSplitters.Full
  • Using EvalItem.PerTurnItems() to decompose a conversation

Prerequisites

  • .NET 10 SDK or later
  • Azure authentication available to DefaultAzureCredential (for local development, run az login)

Set the following environment variables:

$env:FOUNDRY_PROJECT_ENDPOINT="https://your-foundry-service.services.ai.azure.com/api/projects/your-foundry-project"
$env:FOUNDRY_MODEL="gpt-4o-mini"

Run the sample

cd dotnet/samples/05-end-to-end/Evaluation
dotnet run --project .\Evaluation_ConversationSplits