15 types derived from EvaluationContext
Microsoft.Extensions.AI.Evaluation.NLP (3)
BLEUEvaluatorContext.cs (1)
17
public sealed class BLEUEvaluatorContext :
EvaluationContext
F1EvaluatorContext.cs (1)
14
public sealed class F1EvaluatorContext :
EvaluationContext
GLEUEvaluatorContext.cs (1)
17
public sealed class GLEUEvaluatorContext :
EvaluationContext
Microsoft.Extensions.AI.Evaluation.Quality (7)
CompletenessEvaluatorContext.cs (1)
19
:
EvaluationContext
(name: GroundTruthContextName, content: groundTruth)
EquivalenceEvaluatorContext.cs (1)
18
:
EvaluationContext
(name: GroundTruthContextName, content: groundTruth)
GroundednessEvaluatorContext.cs (1)
18
:
EvaluationContext
(name: GroundingContextName, content: groundingContext)
IntentResolutionEvaluatorContext.cs (1)
27
public sealed class IntentResolutionEvaluatorContext :
EvaluationContext
RetrievalEvaluatorContext.cs (1)
26
public sealed class RetrievalEvaluatorContext :
EvaluationContext
TaskAdherenceEvaluatorContext.cs (1)
28
public sealed class TaskAdherenceEvaluatorContext :
EvaluationContext
ToolCallAccuracyEvaluatorContext.cs (1)
29
public sealed class ToolCallAccuracyEvaluatorContext :
EvaluationContext
Microsoft.Extensions.AI.Evaluation.Reporting (1)
JsonSerialization\EvaluationContextConverter.cs (1)
15
:
EvaluationContext
(name, contents);
Microsoft.Extensions.AI.Evaluation.Reporting.Azure (1)
parent\Microsoft.Extensions.AI.Evaluation.Reporting\CSharp\JsonSerialization\EvaluationContextConverter.cs (1)
15
:
EvaluationContext
(name, contents);
Microsoft.Extensions.AI.Evaluation.Reporting.Tests (1)
ScenarioRunResultTests.cs (1)
19
:
EvaluationContext
(name, contents);
Microsoft.Extensions.AI.Evaluation.Safety (2)
GroundednessProEvaluatorContext.cs (1)
18
:
EvaluationContext
(name: GroundingContextName, content: groundingContext)
UngroundedAttributesEvaluatorContext.cs (1)
19
:
EvaluationContext
(name: GroundingContextName, content: groundingContext)
230 references to EvaluationContext
Microsoft.Extensions.AI.Evaluation (54)
CompositeEvaluator.cs (2)
104
IEnumerable<
EvaluationContext
>? additionalContext = null,
129
IEnumerable<
EvaluationContext
>? additionalContext = null,
EvaluationContext.cs (31)
16
/// <see cref="
EvaluationContext
"/> objects are intended to be simple data containers that contain the contextual
21
/// instance of a specific derived <see cref="
EvaluationContext
"/> (containing the required contextual information)
23
/// <see cref="IEvaluator.EvaluateAsync(IEnumerable{ChatMessage}, ChatResponse, ChatConfiguration?, IEnumerable{
EvaluationContext
}?, CancellationToken)"/>.
26
/// Derived implementations of <see cref="
EvaluationContext
"/> are free to include any additional properties as needed.
29
/// <see cref="
EvaluationContext
"/>.
32
/// This is because an <see cref="IEvaluator"/> can (optionally) choose to record any <see cref="
EvaluationContext
"/>s
36
/// <see cref="
EvaluationContext
"/>s recorded within the <see cref="EvaluationMetric.Context"/> will also be
37
/// serialized. However, for each such <see cref="
EvaluationContext
"/>, only the information captured within
40
/// of an <see cref="
EvaluationContext
"/> is stored and reported accurately, it is important to ensure that the
42
/// contextual information that is modeled by the <see cref="
EvaluationContext
"/>.
48
/// Gets or sets the name for this <see cref="
EvaluationContext
"/>.
54
/// <see cref="
EvaluationContext
"/>.
58
/// This property allows decomposition of the information present in an <see cref="
EvaluationContext
"/> into
64
/// For simple <see cref="
EvaluationContext
"/>s that only contain text, this property can return a
68
/// Derived implementations of <see cref="
EvaluationContext
"/> are free to include any additional properties as
71
/// <see cref="
EvaluationContext
"/>.
75
/// <see cref="
EvaluationContext
"/>s that it used, in the <see cref="EvaluationMetric.Context"/> property of each
78
/// Microsoft.Extensions.AI.Evaluation.Reporting NuGet package), the <see cref="
EvaluationContext
"/>s recorded
80
/// <see cref="
EvaluationContext
"/>, only the information captured within <see cref="Contents"/> will be
83
/// <see cref="
EvaluationContext
"/> is stored and reported accurately, it is important to ensure that the
85
/// contextual information that is modeled by the <see cref="
EvaluationContext
"/>.
90
/// <see cref="
EvaluationContext
"/>.
95
/// Initializes a new instance of the <see cref="
EvaluationContext
"/> class.
97
/// <param name="name">The name of the <see cref="
EvaluationContext
"/>.</param>
99
/// The contents of the <see cref="
EvaluationContext
"/>. (See <see cref="Contents"/>.)
108
/// Initializes a new instance of the <see cref="
EvaluationContext
"/> class.
110
/// <param name="name">The name of the <see cref="
EvaluationContext
"/>.</param>
112
/// The contents of the <see cref="
EvaluationContext
"/>. (See <see cref="Contents"/>.)
120
/// Initializes a new instance of the <see cref="
EvaluationContext
"/> class.
122
/// <param name="name">The name of the <see cref="
EvaluationContext
"/>.</param>
124
/// The content of the <see cref="
EvaluationContext
"/>. (See <see cref="Contents"/>.)
EvaluationMetric.cs (2)
42
/// Gets or sets any <see cref="
EvaluationContext
"/>s that were considered by the <see cref="IEvaluator"/> as part
45
public IDictionary<string,
EvaluationContext
>? Context { get; set; }
EvaluationMetricExtensions.cs (7)
23
/// <param name="context">The <see cref="
EvaluationContext
"/> objects to be added or updated.</param>
24
public static void AddOrUpdateContext(this EvaluationMetric metric, IEnumerable<
EvaluationContext
> context)
31
metric.Context ??= new Dictionary<string,
EvaluationContext
>();
33
foreach (
var
c in context)
45
/// <param name="context">The <see cref="
EvaluationContext
"/> objects to be added or updated.</param>
46
public static void AddOrUpdateContext(this EvaluationMetric metric, params
EvaluationContext
[] context)
47
=> metric.AddOrUpdateContext(context as IEnumerable<
EvaluationContext
>);
EvaluationResultExtensions.cs (5)
23
/// <param name="context">The <see cref="
EvaluationContext
"/> objects to be added or updated.</param>
26
IEnumerable<
EvaluationContext
> context)
43
/// <param name="context">The <see cref="
EvaluationContext
"/> objects to be added or updated.</param>
44
public static void AddOrUpdateContextInAllMetrics(this EvaluationResult result, params
EvaluationContext
[] context)
45
=> result.AddOrUpdateContextInAllMetrics(context as IEnumerable<
EvaluationContext
>);
EvaluatorExtensions.cs (6)
48
IEnumerable<
EvaluationContext
>? additionalContext = null,
92
IEnumerable<
EvaluationContext
>? additionalContext = null,
133
IEnumerable<
EvaluationContext
>? additionalContext = null,
173
IEnumerable<
EvaluationContext
>? additionalContext = null,
222
IEnumerable<
EvaluationContext
>? additionalContext = null,
267
IEnumerable<
EvaluationContext
>? additionalContext = null,
IEvaluator.cs (1)
61
IEnumerable<
EvaluationContext
>? additionalContext = null,
Microsoft.Extensions.AI.Evaluation.Integration.Tests (11)
QualityEvaluatorTests.cs (4)
260
groundedness.Context.TryGetValue(GroundednessEvaluatorContext.GroundingContextName, out
EvaluationContext
? context1) &&
265
equivalence.Context.TryGetValue(EquivalenceEvaluatorContext.GroundTruthContextName, out
EvaluationContext
? context2) &&
270
completeness.Context.TryGetValue(CompletenessEvaluatorContext.GroundTruthContextName, out
EvaluationContext
? context3) &&
275
retrieval.Context.TryGetValue(RetrievalEvaluatorContext.RetrievedContextChunksContextName, out
EvaluationContext
? context4) &&
SafetyEvaluatorTests.cs (6)
207
IEnumerable<
EvaluationContext
> additionalContext = [groundednessProContext, ungroundedAttributesContext];
225
groundednessPro.Context.TryGetValue(GroundednessProEvaluatorContext.GroundingContextName, out
EvaluationContext
? context1) &&
230
ungroundedAttributes.Context.TryGetValue(UngroundedAttributesEvaluatorContext.GroundingContextName, out
EvaluationContext
? context2) &&
298
IEnumerable<
EvaluationContext
> additionalContext = [groundednessProContext, ungroundedAttributesContext];
316
groundednessPro.Context.TryGetValue(GroundednessProEvaluatorContext.GroundingContextName, out
EvaluationContext
? context1) &&
321
ungroundedAttributes.Context.TryGetValue(UngroundedAttributesEvaluatorContext.GroundingContextName, out
EvaluationContext
? context2) &&
TestEvaluator.cs (1)
30
IEnumerable<
EvaluationContext
>? additionalContext,
Microsoft.Extensions.AI.Evaluation.NLP (6)
BLEUEvaluator.cs (1)
45
IEnumerable<
EvaluationContext
>? additionalContext = null,
BLEUEvaluatorContext.cs (1)
20
/// Gets the unique <see cref="
EvaluationContext
.Name"/> that is used for
F1Evaluator.cs (1)
45
IEnumerable<
EvaluationContext
>? additionalContext = null,
F1EvaluatorContext.cs (1)
17
/// Gets the unique <see cref="
EvaluationContext
.Name"/> that is used for
GLEUEvaluator.cs (1)
45
IEnumerable<
EvaluationContext
>? additionalContext = null,
GLEUEvaluatorContext.cs (1)
20
/// Gets the unique <see cref="
EvaluationContext
.Name"/> that is used for
Microsoft.Extensions.AI.Evaluation.Quality (18)
CoherenceEvaluator.cs (1)
71
IEnumerable<
EvaluationContext
>? additionalContext = null,
CompletenessEvaluator.cs (1)
68
IEnumerable<
EvaluationContext
>? additionalContext = null,
CompletenessEvaluatorContext.cs (1)
22
/// Gets the unique <see cref="
EvaluationContext
.Name"/> that is used for
EquivalenceEvaluator.cs (1)
69
IEnumerable<
EvaluationContext
>? additionalContext = null,
EquivalenceEvaluatorContext.cs (1)
21
/// Gets the unique <see cref="
EvaluationContext
.Name"/> that is used for
FluencyEvaluator.cs (1)
65
IEnumerable<
EvaluationContext
>? additionalContext = null,
GroundednessEvaluator.cs (1)
66
IEnumerable<
EvaluationContext
>? additionalContext = null,
GroundednessEvaluatorContext.cs (1)
21
/// Gets the unique <see cref="
EvaluationContext
.Name"/> that is used for
IntentResolutionEvaluator.cs (1)
79
IEnumerable<
EvaluationContext
>? additionalContext = null,
IntentResolutionEvaluatorContext.cs (1)
67
/// Gets the unique <see cref="
EvaluationContext
.Name"/> that is used for
RelevanceEvaluator.cs (1)
69
IEnumerable<
EvaluationContext
>? additionalContext = null,
RelevanceTruthAndCompletenessEvaluator.cs (1)
82
IEnumerable<
EvaluationContext
>? additionalContext = null,
RetrievalEvaluator.cs (1)
75
IEnumerable<
EvaluationContext
>? additionalContext = null,
RetrievalEvaluatorContext.cs (1)
29
/// Gets the unique <see cref="
EvaluationContext
.Name"/> that is used for <see cref="RetrievalEvaluatorContext"/>.
TaskAdherenceEvaluator.cs (1)
78
IEnumerable<
EvaluationContext
>? additionalContext = null,
TaskAdherenceEvaluatorContext.cs (1)
68
/// Gets the unique <see cref="
EvaluationContext
.Name"/> that is used for
ToolCallAccuracyEvaluator.cs (1)
80
IEnumerable<
EvaluationContext
>? additionalContext = null,
ToolCallAccuracyEvaluatorContext.cs (1)
69
/// Gets the unique <see cref="
EvaluationContext
.Name"/> that is used for
Microsoft.Extensions.AI.Evaluation.Reporting (62)
Generated\361d1da7f942c932\JsonContext.IDictionaryStringEvaluationContext.g.cs (13)
15
private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>? _IDictionaryStringEvaluationContext;
21
public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>> IDictionaryStringEvaluationContext
24
get => _IDictionaryStringEvaluationContext ??= (global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>)Options.GetTypeInfo(typeof(global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>));
27
private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>> Create_IDictionaryStringEvaluationContext(global::System.Text.Json.JsonSerializerOptions options)
29
if (!TryGetTypeInfoForRuntimeCustomConverter<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>(options, out global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>> jsonTypeInfo))
31
var info = new global::System.Text.Json.Serialization.Metadata.JsonCollectionInfoValues<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>
33
ObjectCreator = () => new global::System.Collections.Generic.Dictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>(),
37
jsonTypeInfo = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreateIDictionaryInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>, string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>(options, info);
47
private void IDictionaryStringEvaluationContextSerializeHandler(global::System.Text.Json.Utf8JsonWriter writer, global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>? value)
57
foreach (global::System.Collections.Generic.KeyValuePair<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
> entry in value)
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.BooleanMetric.g.cs (4)
135
var info4 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>
150
AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.Evaluation.EvaluationMetric).GetProperty("Context", InstanceMemberBindingFlags, null, typeof(global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>), global::System.Array.Empty<global::System.Type>(), null),
153
properties[4] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>(options, info4);
232
global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
> __value_Context = ((global::Microsoft.Extensions.AI.Evaluation.EvaluationMetric)value).Context;
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.EvaluationContext.g.cs (20)
15
private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>? _EvaluationContext;
21
public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
> EvaluationContext
24
get => _EvaluationContext ??= (global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>)Options.GetTypeInfo(typeof(global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
));
27
private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
> Create_EvaluationContext(global::System.Text.Json.JsonSerializerOptions options)
29
if (!TryGetTypeInfoForRuntimeCustomConverter<global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>(options, out global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
> jsonTypeInfo))
31
var objectInfo = new global::System.Text.Json.Serialization.Metadata.JsonObjectInfoValues<global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>
41
jsonTypeInfo = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreateObjectInfo<global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>(options, objectInfo);
58
DeclaringType = typeof(global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
),
60
Getter = static obj => ((global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
)obj).Name,
61
Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
)obj).Name = value!,
68
AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
).GetProperty("Name", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null),
80
DeclaringType = typeof(global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
),
82
Getter = static obj => ((global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
)obj).Contents,
83
Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
)obj).Contents = value!,
90
AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
).GetProperty("Contents", InstanceMemberBindingFlags, null, typeof(global::System.Collections.Generic.IList<global::Microsoft.Extensions.AI.AIContent>), global::System.Array.Empty<global::System.Type>(), null),
102
private void EvaluationContextSerializeHandler(global::System.Text.Json.Utf8JsonWriter writer, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
? value)
112
string __value_Name = ((global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
)value).Name;
117
global::System.Collections.Generic.IList<global::Microsoft.Extensions.AI.AIContent> __value_Contents = ((global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
)value).Contents;
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.EvaluationMetric.g.cs (3)
115
var info3 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>
130
AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.Evaluation.EvaluationMetric).GetProperty("Context", InstanceMemberBindingFlags, null, typeof(global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>), global::System.Array.Empty<global::System.Type>(), null),
133
properties[3] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>(options, info3);
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.GetJsonTypeInfo.g.cs (2)
104
if (type == typeof(global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
))
252
if (type == typeof(global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>))
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.NumericMetric.g.cs (4)
135
var info4 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>
150
AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.Evaluation.EvaluationMetric).GetProperty("Context", InstanceMemberBindingFlags, null, typeof(global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>), global::System.Array.Empty<global::System.Type>(), null),
153
properties[4] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>(options, info4);
232
global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
> __value_Context = ((global::Microsoft.Extensions.AI.Evaluation.EvaluationMetric)value).Context;
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.StringMetric.g.cs (4)
135
var info4 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>
150
AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.Evaluation.EvaluationMetric).GetProperty("Context", InstanceMemberBindingFlags, null, typeof(global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>), global::System.Array.Empty<global::System.Type>(), null),
153
properties[4] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>(options, info4);
231
global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
> __value_Context = ((global::Microsoft.Extensions.AI.Evaluation.EvaluationMetric)value).Context;
JsonSerialization\EvaluationContextConverter.cs (3)
12
internal sealed class EvaluationContextConverter : JsonConverter<
EvaluationContext
>
20
public override
EvaluationContext
Read(
83
public override void Write(Utf8JsonWriter writer,
EvaluationContext
value, JsonSerializerOptions options)
ScenarioRun.cs (1)
146
IEnumerable<
EvaluationContext
>? additionalContext = null,
ScenarioRunExtensions.cs (6)
33
IEnumerable<
EvaluationContext
>? additionalContext = null,
62
IEnumerable<
EvaluationContext
>? additionalContext = null,
87
IEnumerable<
EvaluationContext
>? additionalContext = null,
111
IEnumerable<
EvaluationContext
>? additionalContext = null,
145
IEnumerable<
EvaluationContext
>? additionalContext = null,
175
IEnumerable<
EvaluationContext
>? additionalContext = null,
ScenarioRunResult.cs (2)
15
/// <see cref="ScenarioRun.EvaluateAsync(IEnumerable{ChatMessage}, ChatResponse, IEnumerable{Microsoft.Extensions.AI.Evaluation.
EvaluationContext
}?, CancellationToken)"/>
141
/// <see cref="ScenarioRun.EvaluateAsync(IEnumerable{ChatMessage}, ChatResponse, IEnumerable{Microsoft.Extensions.AI.Evaluation.
EvaluationContext
}?, CancellationToken)"/>
Microsoft.Extensions.AI.Evaluation.Reporting.Azure (53)
Generated\361d1da7f942c932\JsonContext.IDictionaryStringEvaluationContext.g.cs (13)
15
private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>? _IDictionaryStringEvaluationContext;
21
public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>> IDictionaryStringEvaluationContext
24
get => _IDictionaryStringEvaluationContext ??= (global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>)Options.GetTypeInfo(typeof(global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>));
27
private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>> Create_IDictionaryStringEvaluationContext(global::System.Text.Json.JsonSerializerOptions options)
29
if (!TryGetTypeInfoForRuntimeCustomConverter<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>(options, out global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>> jsonTypeInfo))
31
var info = new global::System.Text.Json.Serialization.Metadata.JsonCollectionInfoValues<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>
33
ObjectCreator = () => new global::System.Collections.Generic.Dictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>(),
37
jsonTypeInfo = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreateIDictionaryInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>, string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>(options, info);
47
private void IDictionaryStringEvaluationContextSerializeHandler(global::System.Text.Json.Utf8JsonWriter writer, global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>? value)
57
foreach (global::System.Collections.Generic.KeyValuePair<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
> entry in value)
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.BooleanMetric.g.cs (4)
135
var info4 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>
150
AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.Evaluation.EvaluationMetric).GetProperty("Context", InstanceMemberBindingFlags, null, typeof(global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>), global::System.Array.Empty<global::System.Type>(), null),
153
properties[4] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>(options, info4);
232
global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
> __value_Context = ((global::Microsoft.Extensions.AI.Evaluation.EvaluationMetric)value).Context;
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.EvaluationContext.g.cs (20)
15
private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>? _EvaluationContext;
21
public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
> EvaluationContext
24
get => _EvaluationContext ??= (global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>)Options.GetTypeInfo(typeof(global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
));
27
private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
> Create_EvaluationContext(global::System.Text.Json.JsonSerializerOptions options)
29
if (!TryGetTypeInfoForRuntimeCustomConverter<global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>(options, out global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
> jsonTypeInfo))
31
var objectInfo = new global::System.Text.Json.Serialization.Metadata.JsonObjectInfoValues<global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>
41
jsonTypeInfo = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreateObjectInfo<global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>(options, objectInfo);
58
DeclaringType = typeof(global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
),
60
Getter = static obj => ((global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
)obj).Name,
61
Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
)obj).Name = value!,
68
AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
).GetProperty("Name", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null),
80
DeclaringType = typeof(global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
),
82
Getter = static obj => ((global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
)obj).Contents,
83
Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
)obj).Contents = value!,
90
AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
).GetProperty("Contents", InstanceMemberBindingFlags, null, typeof(global::System.Collections.Generic.IList<global::Microsoft.Extensions.AI.AIContent>), global::System.Array.Empty<global::System.Type>(), null),
102
private void EvaluationContextSerializeHandler(global::System.Text.Json.Utf8JsonWriter writer, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
? value)
112
string __value_Name = ((global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
)value).Name;
117
global::System.Collections.Generic.IList<global::Microsoft.Extensions.AI.AIContent> __value_Contents = ((global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
)value).Contents;
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.EvaluationMetric.g.cs (3)
115
var info3 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>
130
AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.Evaluation.EvaluationMetric).GetProperty("Context", InstanceMemberBindingFlags, null, typeof(global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>), global::System.Array.Empty<global::System.Type>(), null),
133
properties[3] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>(options, info3);
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.GetJsonTypeInfo.g.cs (2)
104
if (type == typeof(global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
))
248
if (type == typeof(global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>))
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.NumericMetric.g.cs (4)
135
var info4 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>
150
AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.Evaluation.EvaluationMetric).GetProperty("Context", InstanceMemberBindingFlags, null, typeof(global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>), global::System.Array.Empty<global::System.Type>(), null),
153
properties[4] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>(options, info4);
232
global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
> __value_Context = ((global::Microsoft.Extensions.AI.Evaluation.EvaluationMetric)value).Context;
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.StringMetric.g.cs (4)
135
var info4 = new global::System.Text.Json.Serialization.Metadata.JsonPropertyInfoValues<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>
150
AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.Evaluation.EvaluationMetric).GetProperty("Context", InstanceMemberBindingFlags, null, typeof(global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>), global::System.Array.Empty<global::System.Type>(), null),
153
properties[4] = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreatePropertyInfo<global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
>>(options, info4);
231
global::System.Collections.Generic.IDictionary<string, global::Microsoft.Extensions.AI.Evaluation.
EvaluationContext
> __value_Context = ((global::Microsoft.Extensions.AI.Evaluation.EvaluationMetric)value).Context;
parent\Microsoft.Extensions.AI.Evaluation.Reporting\CSharp\JsonSerialization\EvaluationContextConverter.cs (3)
12
internal sealed class EvaluationContextConverter : JsonConverter<
EvaluationContext
>
20
public override
EvaluationContext
Read(
83
public override void Write(Utf8JsonWriter writer,
EvaluationContext
value, JsonSerializerOptions options)
Microsoft.Extensions.AI.Evaluation.Reporting.Tests (4)
ScenarioRunResultTests.cs (4)
444
private class ContextComparer : IEqualityComparer<
EvaluationContext
>
448
public bool Equals(
EvaluationContext
? x,
EvaluationContext
? y)
468
public int GetHashCode(
EvaluationContext
obj)
Microsoft.Extensions.AI.Evaluation.Safety (22)
CodeVulnerabilityEvaluator.cs (1)
50
IEnumerable<
EvaluationContext
>? additionalContext = null,
ContentHarmEvaluator.cs (1)
52
IEnumerable<
EvaluationContext
>? additionalContext = null,
ContentSafetyEvaluator.cs (9)
40
IEnumerable<
EvaluationContext
>? additionalContext = null,
85
IEnumerable<
EvaluationContext
>? additionalContext = null,
109
IReadOnlyList<
EvaluationContext
>? relevantContext = FilterAdditionalContext(additionalContext);
190
/// Filters the <see cref="
EvaluationContext
"/>s supplied by the caller via <paramref name="additionalContext"/>
191
/// down to just the <see cref="
EvaluationContext
"/>s that are relevant to the evaluation being performed by this
194
/// <param name="additionalContext">The <see cref="
EvaluationContext
"/>s supplied by the caller.</param>
196
/// The <see cref="
EvaluationContext
"/>s that are relevant to the evaluation being performed by this
199
protected virtual IReadOnlyList<
EvaluationContext
>? FilterAdditionalContext(
200
IEnumerable<
EvaluationContext
>? additionalContext)
GroundednessProEvaluator.cs (4)
51
IEnumerable<
EvaluationContext
>? additionalContext = null,
73
protected override IReadOnlyList<
EvaluationContext
>? FilterAdditionalContext(
74
IEnumerable<
EvaluationContext
>? additionalContext)
81
IEnumerable<
EvaluationContext
>? additionalContext)
GroundednessProEvaluatorContext.cs (1)
21
/// Gets the unique <see cref="
EvaluationContext
.Name"/> that is used for
ProtectedMaterialEvaluator.cs (1)
70
IEnumerable<
EvaluationContext
>? additionalContext = null,
UngroundedAttributesEvaluator.cs (4)
55
IEnumerable<
EvaluationContext
>? additionalContext = null,
77
protected override IReadOnlyList<
EvaluationContext
>? FilterAdditionalContext(
78
IEnumerable<
EvaluationContext
>? additionalContext)
85
IEnumerable<
EvaluationContext
>? additionalContext)
UngroundedAttributesEvaluatorContext.cs (1)
22
/// Gets the unique <see cref="
EvaluationContext
.Name"/> that is used for