3 types derived from ChatOptions
Microsoft.Extensions.AI.Abstractions.Tests (2)
ChatCompletion\ChatOptionsTests.cs (2)
284private class OptionsA : ChatOptions 325private class PassedNullToBaseOptions : ChatOptions
Microsoft.Extensions.AI.Evaluation.Safety (1)
ContentSafetyChatOptions.cs (1)
8internal sealed class ContentSafetyChatOptions : ChatOptions
312 instantiations of ChatOptions
Microsoft.AspNetCore.Components.AI (2)
Engine\UIAgent.cs (2)
165chatOptions = chatOptions?.Clone() ?? new ChatOptions(); 330var chatOptions = _options.ChatOptions?.Clone() ?? new ChatOptions();
Microsoft.Extensions.AI (3)
ChatCompletion\ChatClientStructuredOutputExtensions.cs (1)
174options = options is not null ? options.Clone() : new();
ChatCompletion\ConfigureOptionsChatClient.cs (1)
54options = options?.Clone() ?? new();
ChatCompletion\FunctionInvokingChatClient.cs (1)
1013options = new() { ConversationId = conversationId };
Microsoft.Extensions.AI.Abstractions (2)
ChatCompletion\ChatOptions.cs (1)
238public virtual ChatOptions Clone() => new(this);
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.ChatOptions.g.cs (1)
33ObjectCreator = () => new global::Microsoft.Extensions.AI.ChatOptions(),
Microsoft.Extensions.AI.Abstractions.Tests (14)
ChatCompletion\ChatClientExtensionsTests.cs (5)
104var expectedOptions = new ChatOptions(); 131var expectedOptions = new ChatOptions(); 166var expectedChatOptions = new ChatOptions 205var expectedOptions = new ChatOptions(); 207var expectedChatOptions = new ChatOptions
ChatCompletion\ChatOptionsTests.cs (4)
16ChatOptions options = new(); 62ChatOptions options = new(); 157ChatOptions options = new(); 233ChatOptions original = new()
ChatCompletion\DelegatingChatClientTests.cs (2)
25var expectedChatOptions = new ChatOptions(); 57var expectedChatOptions = new ChatOptions();
ChatRouting\RoutingChatClientTests.cs (1)
24var options = new ChatOptions { ModelId = "request" };
ChatRouting\RoutingContextTests.cs (1)
16var options = new ChatOptions { ModelId = "initial" };
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\TestJsonSerializerContext.ChatOptions.g.cs (1)
31ObjectCreator = () => new global::Microsoft.Extensions.AI.ChatOptions(),
Microsoft.Extensions.AI.Evaluation.Integration.Tests (4)
AgentQualityEvaluatorTests.cs (2)
31new ChatOptions 38new ChatOptions
QualityEvaluatorTests.cs (1)
29new ChatOptions
SafetyEvaluatorTests.cs (1)
34new ChatOptions
Microsoft.Extensions.AI.Evaluation.Quality (12)
CoherenceEvaluator.cs (1)
56new ChatOptions
CompletenessEvaluator.cs (1)
52new ChatOptions
EquivalenceEvaluator.cs (1)
55new ChatOptions
FluencyEvaluator.cs (1)
50new ChatOptions
GroundednessEvaluator.cs (1)
51new ChatOptions
IntentResolutionEvaluator.cs (1)
64new ChatOptions
RelevanceEvaluator.cs (1)
54new ChatOptions
RelevanceTruthAndCompletenessEvaluator.cs (1)
71new ChatOptions
RetrievalEvaluator.cs (1)
60new ChatOptions
TaskAdherenceEvaluator.cs (1)
63new ChatOptions
ToolCallAccuracyEvaluator.cs (1)
65new ChatOptions
Utilities\JsonOutputFixer.cs (1)
59new ChatOptions
Microsoft.Extensions.AI.Integration.Tests (24)
ChatClientIntegrationTests.cs (17)
133var response = ChatClient.GetStreamingResponseAsync("Explain in 10 words how AI works", new() 189new() { ModelId = GetModel_MultiModal_DescribeImage() }); 207new() { ModelId = GetModel_MultiModal_DescribeImage() }); 234var response = await chatClient.GetResponseAsync(messages, new() 250var response = await chatClient.GetResponseAsync("What is the result of SecretComputation on 42 and 84?", new() 265var response = chatClient.GetStreamingResponseAsync("What is the result of SecretComputation on 42 and 84?", new() 302var response = await chatClient.GetResponseAsync(messages, new() 334var response = await chatClient.GetResponseAsync(messages, new() 366var response = await chatClient.GetResponseAsync(messages, new() 443ChatOptions options = new() 573var response = await chatClient.GetResponseAsync("How much older is Elsa than Anna? Return the age difference as a single number.", new() 605var response = await chatClient.GetResponseAsync("Are birds real?", new() 626var response = await chatClient.GetResponseAsync("What's the current secret number?", new() 888new ChatOptions { Tools = [AIFunctionFactory.Create(() => secretNumber, "GetSecretNumber")] }); 914new ChatOptions { Tools = [AIFunctionFactory.Create(() => secretNumber, "GetSecretNumber")] })) 1066"Who is person with ID 123?", new ChatOptions 1247var response = await chatClient.GetResponseAsync(messages, new() { Tools = [getWeather] });
ImageGeneratingChatClientIntegrationTests.cs (7)
121var chatOptions = new ChatOptions 159var chatOptions = new ChatOptions 188var chatOptions = new ChatOptions 238var chatOptions = new ChatOptions 283var chatOptions = new ChatOptions 334var chatOptions = new ChatOptions 385new ChatOptions { Tools = [new HostedImageGenerationTool()] },
Microsoft.Extensions.AI.OllamaSharp.Integration.Tests (2)
OllamaSharpChatClientIntegrationTests.cs (2)
44var response = await chatClient.GetResponseAsync("What is the current secret number? Answer with digits only.", new ChatOptions 79var response = await chatClient.GetResponseAsync("What's the stock price for Microsoft in British pounds?", new ChatOptions
Microsoft.Extensions.AI.OpenAI.Tests (121)
OpenAIAssistantChatClientIntegrationTests.cs (1)
55var response = await ChatClient.GetResponseAsync("Use the code interpreter to calculate the square root of 42.", new()
OpenAIChatClientTests.cs (15)
155var response = await client.GetResponseAsync("hello", new() 235await foreach (var update in client.GetStreamingResponseAsync("hello", new() 332var response = await client.GetResponseAsync("hello", new() 386ChatOptions chatOptions = new() 463ChatOptions chatOptions = new() 546ChatOptions chatOptions = new() 620ChatOptions chatOptions = new() 728Assert.NotNull(await client.GetResponseAsync("hello", new() 827var response = await client.GetResponseAsync(messages, new() 1141var response = await client.GetResponseAsync("How old is Alice?", new() 1226var response = await client.GetResponseAsync("What day is it?", new() 1326await foreach (var update in client.GetStreamingResponseAsync("How old is Alice?", new() 1680var response = await client.GetResponseAsync("hello", new() 1727await foreach (var update in client.GetStreamingResponseAsync("hello", new() 1865Assert.NotNull(await client.GetResponseAsync("hello", new()
OpenAIConversionTests.cs (8)
52new() { AdditionalProperties = new AdditionalPropertiesDictionary { ["strict"] = true } }); 87new() { AdditionalProperties = new AdditionalPropertiesDictionary { ["strict"] = true } }); 741ChatOptions? options = withOptions ? new ChatOptions { Instructions = "You talk like a parrot." } : null; 2039var options = new ChatOptions 2201var options = new ChatOptions 2219var options = new ChatOptions 2239options = new() 2247options = new()
OpenAIHostedFileClientIntegrationTests.cs (4)
279new ChatOptions { Tools = [new HostedCodeInterpreterTool()] }); 349new ChatOptions { Tools = [new HostedCodeInterpreterTool()] }); 398new ChatOptions { Tools = [new HostedCodeInterpreterTool()] }); 427new ChatOptions
OpenAIResponseClientIntegrationTests.cs (26)
38var response = await ChatClient.GetResponseAsync("Use the code interpreter to calculate the square root of 42. Return only the nearest integer value and no other text.", new() 84new() 145var chatOptions = new ChatOptions 191ChatOptions chatOptions = new() 213ChatOptions chatOptions = new() 253ChatOptions chatOptions = new() 322ChatOptions chatOptions = new() 356var chatOptions = new ChatOptions 388var chatOptions = new ChatOptions 419ChatOptions chatOptions = new() 440ChatOptions chatOptions = new() 482var chatOptions = new ChatOptions 517ChatOptions chatOptions = new() 565var chatOptions = new ChatOptions 585var chatOptions = new ChatOptions 613var chatOptions = new ChatOptions 638var chatOptions = new ChatOptions 661var chatOptions = new ChatOptions 690ChatOptions chatOptions = new() 771ChatOptions chatOptions = new() 864new() 899new() 919new() 946new() 968new() 1011new()
OpenAIResponseClientTests.cs (67)
153var response = await client.GetResponseAsync("hello", new() 297await foreach (var update in client.GetStreamingResponseAsync("Calculate the sum of the first 5 positive integers.", new() 427await foreach (var update in client.GetStreamingResponseAsync("Solve this problem step by step.", new() 553await foreach (var update in client.GetStreamingResponseAsync("Solve this problem step by step.", new() 628await foreach (var update in client.GetStreamingResponseAsync("Solve this problem step by step.", new() 653await client.GetResponseAsync(chatHistory, new() 747await foreach (var update in client.GetStreamingResponseAsync("hello", new() 886ChatOptions chatOptions = new() 982ChatOptions chatOptions = new() 1088var response = await client.GetResponseAsync("hello", new() 1234ChatOptions chatOptions = new() 1361var response = await client.GetResponseAsync("hello", new() 1485var chatOptions = new ChatOptions 1990ChatOptions chatOptions = new() 2396ChatOptions chatOptions = new() 2610ChatOptions chatOptions = new() 2724var response = await client.GetResponseAsync("hello", new ChatOptions { Tools = [mcpTool] }); 2814var response = await client.GetResponseAsync("hello", new ChatOptions { Tools = [mcpTool] }); 2876var response = await client.GetResponseAsync("hello", new() 2967var response = await client.GetResponseAsync([], new() 3017var options = new ChatOptions 3113await foreach (var update in client.GetStreamingResponseAsync("hello", new() 3199var chatOptions = new ChatOptions 3261var chatOptions = new ChatOptions 3384var response = await client.GetResponseAsync("Calculate the sum of numbers from 1 to 5", new() 3604var response = await client.GetStreamingResponseAsync("Calculate the sum of numbers from 1 to 10 using Python", new() 3692await foreach (var update in client.GetStreamingResponseAsync("Calculate the sum of numbers from 1 to 10 using Python", new() 3812var response = await client.GetResponseAsync("hello", new() 3870var response = await client.GetResponseAsync("hello", new() 3929var response = await client.GetResponseAsync("hello", new() 3990var response = await client.GetResponseAsync("hello", new() 4052var response = await client.GetResponseAsync("hello", new() 4115var response = await client.GetResponseAsync("hello", new() 4189await foreach (var update in client.GetStreamingResponseAsync("hello", new() 4270await foreach (var update in client.GetStreamingResponseAsync("hello", new() 4340var response = await client.GetResponseAsync("hello", new() 4411await foreach (var update in client.GetStreamingResponseAsync("hello", new() 4488await foreach (var update in client.GetStreamingResponseAsync("hello", new() 4566await foreach (var update in client.GetStreamingResponseAsync("hello", new() 4631var response = await client.GetResponseAsync("hello", new() 4692var response = await client.GetResponseAsync("hello", new() 4763await foreach (var update in client.GetStreamingResponseAsync("hello", new() 5820new ChatOptions { ContinuationToken = token }); 6368var response = await client.GetResponseAsync("Generate an image of a cat", new ChatOptions 6469await foreach (var update in client.GetStreamingResponseAsync("Generate an image of a dog", new ChatOptions 6587await foreach (var update in client.GetStreamingResponseAsync("Generate an image of a sunset", new ChatOptions 6706Assert.NotNull(await client.GetResponseAsync("hello", new() 6845var response = await client.GetResponseAsync("Create a hello world file", new() 7127var response = await client.GetResponseAsync("What is the latest news about .NET?", new() 7255await foreach (var update in client.GetStreamingResponseAsync("What is the latest news about .NET?", new() 7364var response = await client.GetResponseAsync("hello", new() 7451var response = await client.GetResponseAsync("hello", new() 7543var response = await client.GetResponseAsync("hello", new() 7610var response = await client.GetResponseAsync("hello", new() 7720var response = await client.GetResponseAsync("hello", new() 7820var response = await client.GetResponseAsync("hello", new() 7925var response = await client.GetResponseAsync("hello", new() 8025var response = await client.GetResponseAsync("hello", new() 8112var response = await client.GetResponseAsync("hello", new() 8203var response = await client.GetResponseAsync("hello", new() 8289var response = await client.GetResponseAsync("hello", new() 8402var response = await client.GetResponseAsync("hello", new() 8501var response = await client.GetResponseAsync("hello", new() 8605var response = await client.GetResponseAsync("hello", new() 8718var response = await client.GetResponseAsync("hello", new() 8838new ChatOptions { Tools = [tool] }); 8932new ChatOptions { Tools = [tool] }))
Microsoft.Extensions.AI.Tests (124)
ChatCompletion\ConfigureOptionsChatClientTests.cs (1)
35ChatOptions? providedOptions = nullProvidedOptions ? null : new() { ModelId = "test" };
ChatCompletion\DistributedCachingChatClientTest.cs (8)
44ChatOptions options = new() { ConversationId = conversationIdSet ? "123" : null }; 244ChatOptions options = new() { ConversationId = conversationIdSet ? "123" : null }; 569var result1 = await outer.GetResponseAsync([], new ChatOptions 573var result2 = await outer.GetResponseAsync([], new ChatOptions 584var result3 = await outer.GetResponseAsync([], new ChatOptions 588var result4 = await outer.GetResponseAsync([], new ChatOptions 666var result1 = await outer.GetResponseAsync([], new ChatOptions 670var result2 = await outer.GetResponseAsync([], new ChatOptions
ChatCompletion\FunctionInvokingChatClientApprovalsTests.cs (33)
29var options = new ChatOptions 61var options = new ChatOptions 109var options = new ChatOptions 165var options = new ChatOptions { Tools = tools }; 204var options = new ChatOptions 245var options = new ChatOptions 296var options = new ChatOptions 349var options = new ChatOptions 408var options = new ChatOptions 467var options = new ChatOptions 531var options = new ChatOptions 596var options = new ChatOptions 690var options = new ChatOptions 747var options = new ChatOptions 801var options = new ChatOptions 881var options = new ChatOptions 953var options = new ChatOptions 1017var options = new ChatOptions 1072var options = new ChatOptions 1102var options = new ChatOptions 1148var options = new ChatOptions 1196var options = new ChatOptions 1246var options = new ChatOptions 1292var options = new ChatOptions 1347var options = new ChatOptions 1398var options = new ChatOptions 1458var options = new ChatOptions 1533var options = new ChatOptions 1632var options = new ChatOptions 1672var options = new ChatOptions 1729var options = new ChatOptions 1772var options = new ChatOptions 1856var options = new ChatOptions
ChatCompletion\FunctionInvokingChatClientTests.cs (60)
81var options = new ChatOptions 114new() { Tools = [AIFunctionFactory.Create(() => "Shouldn't be invoked", "ChatOptionsFunc")] } : 145ChatOptions options = new() 180var options = new ChatOptions 231var options = new ChatOptions 278var options = new ChatOptions 317var options = new ChatOptions 364var options = new ChatOptions 445var options = new ChatOptions 526var options = new ChatOptions 626var options = new ChatOptions 678var options = new ChatOptions 722var options = new ChatOptions 775var options = new ChatOptions 815var originalOptions = new ChatOptions 841var options = new ChatOptions 922var options = new ChatOptions 971var options = new ChatOptions 1010var options = new ChatOptions 1048var options = new ChatOptions 1105ChatOptions options = new() 1170var options = new ChatOptions 1228var options = new ChatOptions 1285var options = new ChatOptions 1378var chatOptions = new ChatOptions { Tools = [function] }; 1397var options = new ChatOptions 1458var options = new ChatOptions 1491var options = new ChatOptions 1519ChatOptions options = new() 1575ChatOptions options = new() { Tools = [declarationOnly] }; 1601var options = new ChatOptions 1654var originalChatOptions = new ChatOptions 1687ChatOptions options = new() 1752var options = new ChatOptions 1798ChatOptions options = new() 1840ChatOptions options = new() 1890ChatOptions options = new() 1962ChatOptions options = new() 1998var options = new ChatOptions 2027var options = new ChatOptions 2075var options = new ChatOptions 2145var options = new ChatOptions 2372var options = new ChatOptions 2466var options = new ChatOptions 2574var options = new ChatOptions 2672var options = new ChatOptions 2776var options = new ChatOptions 2873var options = new ChatOptions 2952var options = new ChatOptions 3053var options = new ChatOptions 3159var options = new ChatOptions 3250var options = new ChatOptions 3280var options = new ChatOptions 3311var options = new ChatOptions 3345var options = new ChatOptions 3391var options = new ChatOptions { Tools = [approvalFunc] }; 3428var options = new ChatOptions { Tools = [approvalFunc] }; 3462var options = new ChatOptions 3517var options = new ChatOptions 3593var options = new ChatOptions
ChatCompletion\ImageGeneratingChatClientTests.cs (9)
46var chatOptions = new ChatOptions 83var chatOptions = new ChatOptions 131var chatOptions = new ChatOptions 235var chatOptions = new ChatOptions 291var chatOptions = new ChatOptions 325var chatOptions = new ChatOptions 366var chatOptions = new ChatOptions 420var chatOptions = new ChatOptions 494var chatOptions = new ChatOptions
ChatCompletion\LoggingChatClientTests.cs (2)
70new ChatOptions { FrequencyPenalty = 3.0f }); 119new ChatOptions { FrequencyPenalty = 3.0f }))
ChatCompletion\OpenTelemetryChatClientTests.cs (2)
122var options = new ChatOptions 932await foreach (var update in chatClient.GetStreamingResponseAsync([new(ChatRole.User, "Hello")], new ChatOptions { ModelId = "mymodel" }))
ChatCompletion\UseDelegateChatClientTests.cs (4)
29ChatOptions expectedOptions = new(); 79ChatOptions expectedOptions = new(); 121ChatOptions expectedOptions = new(); 172ChatOptions expectedOptions = new();
ChatRouting\FailoverChatClientTests.cs (3)
218var requestOptions = new ChatOptions 238var requestOptions = new ChatOptions 296var requestOptions = new ChatOptions { ModelId = "request" };
ChatRouting\OrderedFailoverChatClientTests.cs (1)
263new ChatOptions
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\TestJsonSerializerContext.ChatOptions.g.cs (1)
31ObjectCreator = () => new global::Microsoft.Extensions.AI.ChatOptions(),
Microsoft.ML.GenAI.LLaMA (2)
Llama3CausalLMChatClient.cs (2)
32options ??= new ChatOptions(); 51options ??= new ChatOptions();
Microsoft.ML.GenAI.Phi (2)
Phi3\Phi3CausalLMChatClient.cs (2)
37options ??= new ChatOptions(); 56options ??= new ChatOptions();
762 references to ChatOptions
Aspire.Azure.AI.OpenAI.Tests (1)
AspireAzureOpenAIClientBuilderChatClientExtensionsTests.cs (1)
220static Task<ChatResponse> TestMiddleware(IEnumerable<ChatMessage> list, ChatOptions? options, IChatClient client, CancellationToken token)
Aspire.OpenAI.Tests (1)
AspireOpenAIClientBuilderChatClientExtensionsTests.cs (1)
268private static Task<ChatResponse> TestMiddleware(IEnumerable<ChatMessage> list, ChatOptions? options, IChatClient client, CancellationToken token)
Microsoft.AspNetCore.Components.AI (7)
Engine\UIAgent.cs (5)
53public UIAgent(IChatClient chatClient, ChatOptions chatOptions) 64public UIAgent(IChatClient chatClient, ChatOptions chatOptions, ILoggerFactory? loggerFactory) 161var chatOptions = BuildChatOptions(); 323private ChatOptions? BuildChatOptions() 330var chatOptions = _options.ChatOptions?.Clone() ?? new ChatOptions();
Engine\UIAgentOfT.cs (1)
31public UIAgent(IChatClient chatClient, ChatOptions chatOptions, TState? initialState = null)
Pipeline\UIAgentOptions.cs (1)
24public ChatOptions? ChatOptions { get; set; }
Microsoft.Extensions.AI (87)
ChatCompletion\AnonymousDelegatingChatClient.cs (11)
21private readonly Func<IEnumerable<ChatMessage>, ChatOptions?, IChatClient, CancellationToken, Task<ChatResponse>>? _getResponseFunc; 29private readonly Func<IEnumerable<ChatMessage>, ChatOptions?, IChatClient, CancellationToken, IAsyncEnumerable<ChatResponseUpdate>>? _getStreamingResponseFunc; 32private readonly Func<IEnumerable<ChatMessage>, ChatOptions?, Func<IEnumerable<ChatMessage>, ChatOptions?, CancellationToken, Task>, CancellationToken, Task>? _sharedFunc; 51Func<IEnumerable<ChatMessage>, ChatOptions?, Func<IEnumerable<ChatMessage>, ChatOptions?, CancellationToken, Task>, CancellationToken, Task> sharedFunc) 77Func<IEnumerable<ChatMessage>, ChatOptions?, IChatClient, CancellationToken, Task<ChatResponse>>? getResponseFunc, 78Func<IEnumerable<ChatMessage>, ChatOptions?, IChatClient, CancellationToken, IAsyncEnumerable<ChatResponseUpdate>>? getStreamingResponseFunc) 89IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 98IEnumerable<ChatMessage> messages, ChatOptions? options, CancellationToken cancellationToken) 128IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default)
ChatCompletion\CachingChatClient.cs (8)
47IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 57IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 75IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 85IEnumerable<ChatMessage> messages, ChatOptions? options = null, [EnumeratorCancellation] CancellationToken cancellationToken = default) 147/// <param name="options">The <see cref="ChatOptions"/> to inform the key.</param> 150protected abstract string GetCacheKey(IEnumerable<ChatMessage> messages, ChatOptions? options, params ReadOnlySpan<object?> additionalValues); 207/// does not have a <see cref="ChatOptions.ConversationId"/> set. 209protected virtual bool EnableCaching(IEnumerable<ChatMessage> messages, ChatOptions? options)
ChatCompletion\ChatClientBuilder.cs (4)
108public ChatClientBuilder Use(Func<IEnumerable<ChatMessage>, ChatOptions?, Func<IEnumerable<ChatMessage>, ChatOptions?, CancellationToken, Task>, CancellationToken, Task> sharedFunc) 143Func<IEnumerable<ChatMessage>, ChatOptions?, IChatClient, CancellationToken, Task<ChatResponse>>? getResponseFunc, 144Func<IEnumerable<ChatMessage>, ChatOptions?, IChatClient, CancellationToken, IAsyncEnumerable<ChatResponseUpdate>>? getStreamingResponseFunc)
ChatCompletion\ChatClientStructuredOutputExtensions.cs (6)
38ChatOptions? options = null, 58ChatOptions? options = null, 77ChatOptions? options = null, 98ChatOptions? options = null, 119ChatOptions? options = null, 141ChatOptions? options = null,
ChatCompletion\ConfigureOptionsChatClient.cs (13)
13/// <summary>Represents a delegating chat client that configures a <see cref="ChatOptions"/> instance used by the remainder of the pipeline.</summary> 17private readonly Action<ChatOptions> _configureOptions; 22/// The delegate to invoke to configure the <see cref="ChatOptions"/> instance. It is passed a clone of the caller-supplied <see cref="ChatOptions"/> instance 26/// The <paramref name="configure"/> delegate is passed either a new instance of <see cref="ChatOptions"/> if 27/// the caller didn't supply a <see cref="ChatOptions"/> instance, or a clone (via <see cref="ChatOptions.Clone"/> of the caller-supplied 30public ConfigureOptionsChatClient(IChatClient innerClient, Action<ChatOptions> configure) 38IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) => 43IEnumerable<ChatMessage> messages, ChatOptions? options = null, [EnumeratorCancellation] CancellationToken cancellationToken = default) 51/// <summary>Creates and configures the <see cref="ChatOptions"/> to pass along to the inner client.</summary> 52private ChatOptions Configure(ChatOptions? options)
ChatCompletion\ConfigureOptionsChatClientBuilderExtensions.cs (7)
15/// Adds a callback that configures a <see cref="ChatOptions"/> to be passed to the next client in the pipeline. 19/// The delegate to invoke to configure the <see cref="ChatOptions"/> instance. 20/// It is passed a clone of the caller-supplied <see cref="ChatOptions"/> instance (or a newly constructed instance if the caller-supplied instance is <see langword="null"/>). 24/// <see cref="ChatOptions"/> if the caller didn't supply a <see cref="ChatOptions"/> instance, or a clone (via <see cref="ChatOptions.Clone"/>) 32this ChatClientBuilder builder, Action<ChatOptions> configure)
ChatCompletion\DistributedCachingChatClient.cs (3)
24/// the object models used by <see cref="ChatMessage"/>, <see cref="ChatOptions"/>, <see cref="ChatResponse"/>, <see cref="ChatResponseUpdate"/>, 123/// <param name="options">The <see cref="ChatOptions"/> to inform the key.</param> 135protected override string GetCacheKey(IEnumerable<ChatMessage> messages, ChatOptions? options, params ReadOnlySpan<object?> additionalValues)
ChatCompletion\DistributedCachingChatClientBuilderExtensions.cs (1)
29/// the object models used by <see cref="ChatMessage"/>, <see cref="ChatOptions"/>, <see cref="ChatResponse"/>, <see cref="ChatResponseUpdate"/>,
ChatCompletion\FunctionInvocationContext.cs (1)
54public ChatOptions? Options { get; set; }
ChatCompletion\FunctionInvokingChatClient.cs (15)
25/// A delegating chat client that invokes functions defined on <see cref="ChatOptions"/>. 32/// in <see cref="ChatOptions.Tools"/> (or in <see cref="AdditionalTools"/>), producing a <see cref="FunctionResultContent"/> 53/// requests not be made in a single response, by setting <see cref="ChatOptions.AllowMultipleToolCalls"/> to <see langword="false"/>. 57/// <see cref="AIFunction"/> instances employed as part of the supplied <see cref="ChatOptions"/> are also safe. 62/// ASP.NET web request should only be used as part of a single <see cref="ChatOptions"/> at a time, and only with 234/// <see cref="ChatOptions.Tools" /> unmodified. However, if the inner client requests the invocation of a tool 235/// that was not in <see cref="ChatOptions.Tools" />, this <see cref="AdditionalTools"/> collection will also be consulted 260/// <see cref="ChatOptions.Tools"/> or <see cref="AdditionalTools"/>) but that aren't <see cref="AIFunction"/>s aren't considered 278IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 438IEnumerable<ChatMessage> messages, ChatOptions? options = null, [EnumeratorCancellation] CancellationToken cancellationToken = default) 1007private static void UpdateOptionsForNextIteration(ref ChatOptions? options, string? conversationId) 1055private static void PrepareOptionsForLastIteration(ref ChatOptions? options) 1091private bool ShouldTerminateLoopBasedOnHandleableFunctions(List<FunctionCallContent>? functionCalls, ChatOptions? options) 1163List<ChatMessage> messages, ChatOptions? options, 1813ChatOptions? options,
ChatCompletion\ImageGeneratingChatClient.cs (8)
24/// This client automatically detects <see cref="HostedImageGenerationTool"/> instances in the <see cref="ChatOptions.Tools"/> collection 72IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 79var processedOptions = requestState.ProcessChatOptions(options); 96IEnumerable<ChatMessage> messages, ChatOptions? options = null, [EnumeratorCancellation] CancellationToken cancellationToken = default) 103var processedOptions = requestState.ProcessChatOptions(options); 245public ChatOptions? ProcessChatOptions(ChatOptions? options) 275var newOptions = options.Clone();
ChatCompletion\LoggingChatClient.cs (2)
55IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 101IEnumerable<ChatMessage> messages, ChatOptions? options = null, [EnumeratorCancellation] CancellationToken cancellationToken = default)
ChatCompletion\OpenTelemetryChatClient.cs (4)
136IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 167IEnumerable<ChatMessage> messages, ChatOptions? options = null, [EnumeratorCancellation] CancellationToken cancellationToken = default) 274private Activity? CreateAndConfigureActivity(ChatOptions? options, bool streaming = false) 522private void AddInputMessagesTags(IEnumerable<ChatMessage> messages, ChatOptions? options, Activity? activity)
ChatCompletion\ReducingChatClient.cs (2)
33IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 42IEnumerable<ChatMessage> messages, ChatOptions? options = null, [EnumeratorCancellation] CancellationToken cancellationToken = default)
ChatRouting\FailoverChatClient.cs (2)
98IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 166IEnumerable<ChatMessage> messages, ChatOptions? options = null,
Microsoft.Extensions.AI.Abstractions (138)
ChatCompletion\ChatClientExtensions.cs (4)
94ChatOptions? options = null, 114ChatOptions? options = null, 134ChatOptions? options = null, 154ChatOptions? options = null,
ChatCompletion\ChatClientMetadata.cs (1)
38/// An individual request may override this value via <see cref="ChatOptions.ModelId"/>.
ChatCompletion\ChatOptions.cs (9)
14/// <summary>Initializes a new instance of the <see cref="ChatOptions"/> class.</summary> 19/// <summary>Initializes a new instance of the <see cref="ChatOptions"/> class, performing a shallow copy of all properties from <paramref name="other"/>.</summary> 20protected ChatOptions(ChatOptions? other) 209/// is invoked with a <see cref="ChatOptions" />, that implementation might convert the provided options into 214/// instance further based on other settings supplied on this <see cref="ChatOptions" /> instance or from other inputs, 218/// properties on <see cref="ChatOptions" />. 226/// <summary>Produces a clone of the current <see cref="ChatOptions"/> instance.</summary> 227/// <returns>A clone of the current <see cref="ChatOptions"/> instance.</returns> 238public virtual ChatOptions Clone() => new(this);
ChatCompletion\ChatResponse.cs (4)
71/// and it should be used in a subsequent <see cref="ChatOptions.ConversationId"/> instead of supplying the same messages 93/// a continuation token if background responses are allowed in <see cref="ChatOptions.AllowBackgroundResponses"/> 97/// This property should be used in conjunction with <see cref="ChatOptions.ContinuationToken"/> to 99/// <see cref="ChatOptions.ContinuationToken"/> on subsequent calls to <see cref="IChatClient.GetResponseAsync"/>
ChatCompletion\ChatResponseUpdate.cs (3)
144/// and it should be used in a subsequent <see cref="ChatOptions.ConversationId"/> instead of supplying the same messages 165/// a continuation token on each update if background responses are allowed in <see cref="ChatOptions.AllowBackgroundResponses"/>. 169/// passed to <see cref="ChatOptions.ContinuationToken"/> on subsequent calls to <see cref="IChatClient.GetStreamingResponseAsync"/>
ChatCompletion\ChatToolMode.cs (3)
33/// <see cref="ChatOptions.Tools"/> can contain zero or more <see cref="AITool"/> 42/// <see cref="ChatOptions.Tools"/> can contain zero or more <see cref="AITool"/> 55/// At least one tool must be provided in <see cref="ChatOptions.Tools"/>.
ChatCompletion\DelegatingChatClient.cs (2)
44IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) => 49IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) =>
ChatCompletion\IChatClient.cs (2)
44ChatOptions? options = null, 56ChatOptions? options = null,
ChatRouting\RoutingChatClient.cs (2)
65IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 81IEnumerable<ChatMessage> messages, ChatOptions? options = null,
ChatRouting\RoutingContext.cs (3)
18/// <see cref="ChatOptions"/> is cloned (via <see cref="ChatOptions.Clone"/>) from the caller-supplied instance when 31ChatOptions? chatOptions) 51public ChatOptions? ChatOptions { get; }
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.ChatOptions.g.cs (103)
15private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.ChatOptions>? _ChatOptions; 21public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.ChatOptions> ChatOptions 24get => _ChatOptions ??= (global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.ChatOptions>)Options.GetTypeInfo(typeof(global::Microsoft.Extensions.AI.ChatOptions)); 27private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.ChatOptions> Create_ChatOptions(global::System.Text.Json.JsonSerializerOptions options) 29if (!TryGetTypeInfoForRuntimeCustomConverter<global::Microsoft.Extensions.AI.ChatOptions>(options, out global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.ChatOptions> jsonTypeInfo)) 31var objectInfo = new global::System.Text.Json.Serialization.Metadata.JsonObjectInfoValues<global::Microsoft.Extensions.AI.ChatOptions> 37ConstructorAttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetConstructor(InstanceMemberBindingFlags, binder: null, global::System.Array.Empty<global::System.Type>(), modifiers: null), 41jsonTypeInfo = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreateObjectInfo<global::Microsoft.Extensions.AI.ChatOptions>(options, objectInfo); 58DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 60Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ConversationId, 61Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ConversationId = value!, 68AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("ConversationId", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 78DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 80Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Instructions, 81Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Instructions = value!, 88AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("Instructions", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 98DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 100Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Temperature, 101Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Temperature = value!, 108AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("Temperature", InstanceMemberBindingFlags, null, typeof(float?), global::System.Array.Empty<global::System.Type>(), null), 118DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 120Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).MaxOutputTokens, 121Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).MaxOutputTokens = value!, 128AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("MaxOutputTokens", InstanceMemberBindingFlags, null, typeof(int?), global::System.Array.Empty<global::System.Type>(), null), 138DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 140Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).TopP, 141Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).TopP = value!, 148AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("TopP", InstanceMemberBindingFlags, null, typeof(float?), global::System.Array.Empty<global::System.Type>(), null), 158DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 160Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).TopK, 161Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).TopK = value!, 168AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("TopK", InstanceMemberBindingFlags, null, typeof(int?), global::System.Array.Empty<global::System.Type>(), null), 178DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 180Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).FrequencyPenalty, 181Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).FrequencyPenalty = value!, 188AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("FrequencyPenalty", InstanceMemberBindingFlags, null, typeof(float?), global::System.Array.Empty<global::System.Type>(), null), 198DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 200Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).PresencePenalty, 201Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).PresencePenalty = value!, 208AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("PresencePenalty", InstanceMemberBindingFlags, null, typeof(float?), global::System.Array.Empty<global::System.Type>(), null), 218DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 220Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Seed, 221Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Seed = value!, 228AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("Seed", InstanceMemberBindingFlags, null, typeof(long?), global::System.Array.Empty<global::System.Type>(), null), 238DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 240Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Reasoning, 241Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Reasoning = value!, 248AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("Reasoning", InstanceMemberBindingFlags, null, typeof(global::Microsoft.Extensions.AI.ReasoningOptions), global::System.Array.Empty<global::System.Type>(), null), 258DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 260Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ResponseFormat, 261Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ResponseFormat = value!, 268AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("ResponseFormat", InstanceMemberBindingFlags, null, typeof(global::Microsoft.Extensions.AI.ChatResponseFormat), global::System.Array.Empty<global::System.Type>(), null), 278DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 280Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ModelId, 281Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ModelId = value!, 288AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("ModelId", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 298DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 300Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).StopSequences, 301Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).StopSequences = value!, 308AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("StopSequences", InstanceMemberBindingFlags, null, typeof(global::System.Collections.Generic.IList<string>), global::System.Array.Empty<global::System.Type>(), null), 318DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 320Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AllowMultipleToolCalls, 321Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AllowMultipleToolCalls = value!, 328AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("AllowMultipleToolCalls", InstanceMemberBindingFlags, null, typeof(bool?), global::System.Array.Empty<global::System.Type>(), null), 338DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 340Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ToolMode, 341Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ToolMode = value!, 348AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("ToolMode", InstanceMemberBindingFlags, null, typeof(global::Microsoft.Extensions.AI.ChatToolMode), global::System.Array.Empty<global::System.Type>(), null), 358DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 378DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 380Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AllowBackgroundResponses, 381Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AllowBackgroundResponses = value!, 388AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("AllowBackgroundResponses", InstanceMemberBindingFlags, null, typeof(bool?), global::System.Array.Empty<global::System.Type>(), null), 398DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 400Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ContinuationToken, 401Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ContinuationToken = value!, 408AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("ContinuationToken", InstanceMemberBindingFlags, null, typeof(global::Microsoft.Extensions.AI.ResponseContinuationToken), global::System.Array.Empty<global::System.Type>(), null), 418DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 438DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 440Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AdditionalProperties, 441Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AdditionalProperties = value!, 448AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("AdditionalProperties", InstanceMemberBindingFlags, null, typeof(global::Microsoft.Extensions.AI.AdditionalPropertiesDictionary), global::System.Array.Empty<global::System.Type>(), null), 458private void ChatOptionsSerializeHandler(global::System.Text.Json.Utf8JsonWriter writer, global::Microsoft.Extensions.AI.ChatOptions? value) 468string __value_ConversationId = ((global::Microsoft.Extensions.AI.ChatOptions)value).ConversationId; 473string __value_Instructions = ((global::Microsoft.Extensions.AI.ChatOptions)value).Instructions; 478float? __value_Temperature = ((global::Microsoft.Extensions.AI.ChatOptions)value).Temperature; 484int? __value_MaxOutputTokens = ((global::Microsoft.Extensions.AI.ChatOptions)value).MaxOutputTokens; 490float? __value_TopP = ((global::Microsoft.Extensions.AI.ChatOptions)value).TopP; 496int? __value_TopK = ((global::Microsoft.Extensions.AI.ChatOptions)value).TopK; 502float? __value_FrequencyPenalty = ((global::Microsoft.Extensions.AI.ChatOptions)value).FrequencyPenalty; 508float? __value_PresencePenalty = ((global::Microsoft.Extensions.AI.ChatOptions)value).PresencePenalty; 514long? __value_Seed = ((global::Microsoft.Extensions.AI.ChatOptions)value).Seed; 520global::Microsoft.Extensions.AI.ReasoningOptions __value_Reasoning = ((global::Microsoft.Extensions.AI.ChatOptions)value).Reasoning; 526global::Microsoft.Extensions.AI.ChatResponseFormat __value_ResponseFormat = ((global::Microsoft.Extensions.AI.ChatOptions)value).ResponseFormat; 532string __value_ModelId = ((global::Microsoft.Extensions.AI.ChatOptions)value).ModelId; 537global::System.Collections.Generic.IList<string> __value_StopSequences = ((global::Microsoft.Extensions.AI.ChatOptions)value).StopSequences; 543bool? __value_AllowMultipleToolCalls = ((global::Microsoft.Extensions.AI.ChatOptions)value).AllowMultipleToolCalls; 549global::Microsoft.Extensions.AI.ChatToolMode __value_ToolMode = ((global::Microsoft.Extensions.AI.ChatOptions)value).ToolMode; 555bool? __value_AllowBackgroundResponses = ((global::Microsoft.Extensions.AI.ChatOptions)value).AllowBackgroundResponses; 561global::Microsoft.Extensions.AI.ResponseContinuationToken __value_ContinuationToken = ((global::Microsoft.Extensions.AI.ChatOptions)value).ContinuationToken; 567global::Microsoft.Extensions.AI.AdditionalPropertiesDictionary __value_AdditionalProperties = ((global::Microsoft.Extensions.AI.ChatOptions)value).AdditionalProperties;
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.GetJsonTypeInfo.g.cs (1)
104if (type == typeof(global::Microsoft.Extensions.AI.ChatOptions))
Utilities\AIJsonUtilities.Defaults.cs (1)
101[JsonSerializable(typeof(ChatOptions))]
Microsoft.Extensions.AI.Abstractions.Tests (135)
ChatCompletion\ChatClientExtensionsTests.cs (5)
104var expectedOptions = new ChatOptions(); 131var expectedOptions = new ChatOptions(); 166var expectedChatOptions = new ChatOptions 205var expectedOptions = new ChatOptions(); 207var expectedChatOptions = new ChatOptions
ChatCompletion\ChatOptionsTests.cs (14)
16ChatOptions options = new(); 36ChatOptions clone = options.Clone(); 62ChatOptions options = new(); 129ChatOptions clone = options.Clone(); 157ChatOptions options = new(); 199ChatOptions? deserialized = JsonSerializer.Deserialize(json, TestJsonSerializerContext.Default.ChatOptions); 233ChatOptions original = new() 247ChatOptions? result = JsonSerializer.Deserialize<ChatOptions>(json, AIJsonUtilities.DefaultOptions); 277ChatOptions clone = b.Clone(); 298public override ChatOptions Clone() => new OptionsA(this); 315public override ChatOptions Clone() => new OptionsB(this); 368ChatOptions? result = JsonSerializer.Deserialize<ChatOptions>(Json, AIJsonUtilities.DefaultOptions);
ChatCompletion\DelegatingChatClientTests.cs (2)
25var expectedChatOptions = new ChatOptions(); 57var expectedChatOptions = new ChatOptions();
ChatRouting\RoutingChatClientTests.cs (4)
24var options = new ChatOptions { ModelId = "request" }; 27ChatOptions? forwardedOptions = null; 163IEnumerable<ChatMessage> messages, ChatOptions? options = null, 168IEnumerable<ChatMessage> messages, ChatOptions? options = null,
ChatRouting\RoutingContextTests.cs (1)
16var options = new ChatOptions { ModelId = "initial" };
Generated\361d1da7f942c932\TestJsonSerializerContext.GetJsonTypeInfo.g.cs (1)
90if (type == typeof(global::Microsoft.Extensions.AI.ChatOptions))
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\TestJsonSerializerContext.ChatOptions.g.cs (103)
13private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.ChatOptions>? _ChatOptions; 19public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.ChatOptions> ChatOptions 22get => _ChatOptions ??= (global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.ChatOptions>)Options.GetTypeInfo(typeof(global::Microsoft.Extensions.AI.ChatOptions)); 25private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.ChatOptions> Create_ChatOptions(global::System.Text.Json.JsonSerializerOptions options) 27if (!TryGetTypeInfoForRuntimeCustomConverter<global::Microsoft.Extensions.AI.ChatOptions>(options, out global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.ChatOptions> jsonTypeInfo)) 29var objectInfo = new global::System.Text.Json.Serialization.Metadata.JsonObjectInfoValues<global::Microsoft.Extensions.AI.ChatOptions> 35ConstructorAttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetConstructor(InstanceMemberBindingFlags, binder: null, global::System.Array.Empty<global::System.Type>(), modifiers: null), 39jsonTypeInfo = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreateObjectInfo<global::Microsoft.Extensions.AI.ChatOptions>(options, objectInfo); 56DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 58Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ConversationId, 59Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ConversationId = value!, 66AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("ConversationId", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 76DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 78Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Instructions, 79Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Instructions = value!, 86AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("Instructions", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 96DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 98Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Temperature, 99Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Temperature = value!, 106AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("Temperature", InstanceMemberBindingFlags, null, typeof(float?), global::System.Array.Empty<global::System.Type>(), null), 116DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 118Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).MaxOutputTokens, 119Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).MaxOutputTokens = value!, 126AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("MaxOutputTokens", InstanceMemberBindingFlags, null, typeof(int?), global::System.Array.Empty<global::System.Type>(), null), 136DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 138Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).TopP, 139Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).TopP = value!, 146AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("TopP", InstanceMemberBindingFlags, null, typeof(float?), global::System.Array.Empty<global::System.Type>(), null), 156DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 158Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).TopK, 159Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).TopK = value!, 166AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("TopK", InstanceMemberBindingFlags, null, typeof(int?), global::System.Array.Empty<global::System.Type>(), null), 176DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 178Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).FrequencyPenalty, 179Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).FrequencyPenalty = value!, 186AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("FrequencyPenalty", InstanceMemberBindingFlags, null, typeof(float?), global::System.Array.Empty<global::System.Type>(), null), 196DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 198Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).PresencePenalty, 199Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).PresencePenalty = value!, 206AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("PresencePenalty", InstanceMemberBindingFlags, null, typeof(float?), global::System.Array.Empty<global::System.Type>(), null), 216DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 218Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Seed, 219Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Seed = value!, 226AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("Seed", InstanceMemberBindingFlags, null, typeof(long?), global::System.Array.Empty<global::System.Type>(), null), 236DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 238Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Reasoning, 239Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Reasoning = value!, 246AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("Reasoning", InstanceMemberBindingFlags, null, typeof(global::Microsoft.Extensions.AI.ReasoningOptions), global::System.Array.Empty<global::System.Type>(), null), 256DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 258Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ResponseFormat, 259Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ResponseFormat = value!, 266AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("ResponseFormat", InstanceMemberBindingFlags, null, typeof(global::Microsoft.Extensions.AI.ChatResponseFormat), global::System.Array.Empty<global::System.Type>(), null), 276DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 278Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ModelId, 279Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ModelId = value!, 286AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("ModelId", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 296DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 298Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).StopSequences, 299Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).StopSequences = value!, 306AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("StopSequences", InstanceMemberBindingFlags, null, typeof(global::System.Collections.Generic.IList<string>), global::System.Array.Empty<global::System.Type>(), null), 316DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 318Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AllowMultipleToolCalls, 319Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AllowMultipleToolCalls = value!, 326AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("AllowMultipleToolCalls", InstanceMemberBindingFlags, null, typeof(bool?), global::System.Array.Empty<global::System.Type>(), null), 336DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 338Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ToolMode, 339Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ToolMode = value!, 346AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("ToolMode", InstanceMemberBindingFlags, null, typeof(global::Microsoft.Extensions.AI.ChatToolMode), global::System.Array.Empty<global::System.Type>(), null), 356DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 376DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 378Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AllowBackgroundResponses, 379Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AllowBackgroundResponses = value!, 386AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("AllowBackgroundResponses", InstanceMemberBindingFlags, null, typeof(bool?), global::System.Array.Empty<global::System.Type>(), null), 396DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 398Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ContinuationToken, 399Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ContinuationToken = value!, 406AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("ContinuationToken", InstanceMemberBindingFlags, null, typeof(global::Microsoft.Extensions.AI.ResponseContinuationToken), global::System.Array.Empty<global::System.Type>(), null), 416DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 436DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 438Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AdditionalProperties, 439Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AdditionalProperties = value!, 446AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("AdditionalProperties", InstanceMemberBindingFlags, null, typeof(global::Microsoft.Extensions.AI.AdditionalPropertiesDictionary), global::System.Array.Empty<global::System.Type>(), null), 456private void ChatOptionsSerializeHandler(global::System.Text.Json.Utf8JsonWriter writer, global::Microsoft.Extensions.AI.ChatOptions? value) 466string __value_ConversationId = ((global::Microsoft.Extensions.AI.ChatOptions)value).ConversationId; 471string __value_Instructions = ((global::Microsoft.Extensions.AI.ChatOptions)value).Instructions; 476float? __value_Temperature = ((global::Microsoft.Extensions.AI.ChatOptions)value).Temperature; 482int? __value_MaxOutputTokens = ((global::Microsoft.Extensions.AI.ChatOptions)value).MaxOutputTokens; 488float? __value_TopP = ((global::Microsoft.Extensions.AI.ChatOptions)value).TopP; 494int? __value_TopK = ((global::Microsoft.Extensions.AI.ChatOptions)value).TopK; 500float? __value_FrequencyPenalty = ((global::Microsoft.Extensions.AI.ChatOptions)value).FrequencyPenalty; 506float? __value_PresencePenalty = ((global::Microsoft.Extensions.AI.ChatOptions)value).PresencePenalty; 512long? __value_Seed = ((global::Microsoft.Extensions.AI.ChatOptions)value).Seed; 518global::Microsoft.Extensions.AI.ReasoningOptions __value_Reasoning = ((global::Microsoft.Extensions.AI.ChatOptions)value).Reasoning; 524global::Microsoft.Extensions.AI.ChatResponseFormat __value_ResponseFormat = ((global::Microsoft.Extensions.AI.ChatOptions)value).ResponseFormat; 530string __value_ModelId = ((global::Microsoft.Extensions.AI.ChatOptions)value).ModelId; 535global::System.Collections.Generic.IList<string> __value_StopSequences = ((global::Microsoft.Extensions.AI.ChatOptions)value).StopSequences; 541bool? __value_AllowMultipleToolCalls = ((global::Microsoft.Extensions.AI.ChatOptions)value).AllowMultipleToolCalls; 547global::Microsoft.Extensions.AI.ChatToolMode __value_ToolMode = ((global::Microsoft.Extensions.AI.ChatOptions)value).ToolMode; 553bool? __value_AllowBackgroundResponses = ((global::Microsoft.Extensions.AI.ChatOptions)value).AllowBackgroundResponses; 559global::Microsoft.Extensions.AI.ResponseContinuationToken __value_ContinuationToken = ((global::Microsoft.Extensions.AI.ChatOptions)value).ContinuationToken; 565global::Microsoft.Extensions.AI.AdditionalPropertiesDictionary __value_AdditionalProperties = ((global::Microsoft.Extensions.AI.ChatOptions)value).AdditionalProperties;
TestChatClient.cs (4)
20public Func<IEnumerable<ChatMessage>, ChatOptions?, CancellationToken, Task<ChatResponse>>? GetResponseAsyncCallback { get; set; } 22public Func<IEnumerable<ChatMessage>, ChatOptions?, CancellationToken, IAsyncEnumerable<ChatResponseUpdate>>? GetStreamingResponseAsyncCallback { get; set; } 29public Task<ChatResponse> GetResponseAsync(IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 32public IAsyncEnumerable<ChatResponseUpdate> GetStreamingResponseAsync(IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default)
TestJsonSerializerContext.cs (1)
29[JsonSerializable(typeof(ChatOptions))]
Microsoft.Extensions.AI.Evaluation.Integration.Tests (4)
AgentQualityEvaluatorTests.cs (2)
21private static readonly ChatOptions? _chatOptions; 22private static readonly ChatOptions? _chatOptionsWithTools;
QualityEvaluatorTests.cs (1)
20private static readonly ChatOptions? _chatOptions;
SafetyEvaluatorTests.cs (1)
22private static readonly ChatOptions? _chatOptions;
Microsoft.Extensions.AI.Evaluation.Quality (21)
CoherenceEvaluator.cs (1)
55private static readonly ChatOptions _chatOptions =
CompletenessEvaluator.cs (1)
51private static readonly ChatOptions _chatOptions =
EquivalenceEvaluator.cs (1)
54private static readonly ChatOptions _chatOptions =
FluencyEvaluator.cs (1)
49private static readonly ChatOptions _chatOptions =
GroundednessEvaluator.cs (1)
50private static readonly ChatOptions _chatOptions =
IntentResolutionEvaluator.cs (1)
63private static readonly ChatOptions _chatOptions =
IntentResolutionEvaluatorContext.cs (3)
34/// The set of tool definitions (see <see cref="ChatOptions.Tools"/>) that were used when generating the model 53/// The set of tool definitions (see <see cref="ChatOptions.Tools"/>) that were used when generating the model 73/// Gets set of tool definitions (see <see cref="ChatOptions.Tools"/>) that were used when generating the model
RelevanceEvaluator.cs (1)
53private static readonly ChatOptions _chatOptions =
RelevanceTruthAndCompletenessEvaluator.cs (1)
70private readonly ChatOptions _chatOptions =
RetrievalEvaluator.cs (1)
59private static readonly ChatOptions _chatOptions =
TaskAdherenceEvaluator.cs (1)
62private static readonly ChatOptions _chatOptions =
TaskAdherenceEvaluatorContext.cs (3)
35/// The set of tool definitions (see <see cref="ChatOptions.Tools"/>) that were used when generating the model 54/// The set of tool definitions (see <see cref="ChatOptions.Tools"/>) that were used when generating the model 74/// Gets set of tool definitions (see <see cref="ChatOptions.Tools"/>) that were used when generating the model
ToolCallAccuracyEvaluator.cs (1)
64private static readonly ChatOptions _chatOptions =
ToolCallAccuracyEvaluatorContext.cs (3)
36/// The set of tool definitions (see <see cref="ChatOptions.Tools"/>) that were used when generating the model 55/// The set of tool definitions (see <see cref="ChatOptions.Tools"/>) that were used when generating the model 75/// Gets set of tool definitions (see <see cref="ChatOptions.Tools"/>) that were used when generating the model
Utilities\JsonOutputFixer.cs (1)
58ChatOptions chatOptions =
Microsoft.Extensions.AI.Evaluation.Reporting (3)
ReportingConfiguration.cs (1)
54/// the configured <see cref="IChatClient"/> and the <see cref="ChatOptions"/> that are supplied as part of
SimpleChatClient.cs (2)
27ChatOptions? options = null, 60ChatOptions? options = null,
Microsoft.Extensions.AI.Evaluation.Safety (3)
ContentSafetyChatClient.cs (2)
52ChatOptions? options = null, 85ChatOptions? options = null,
ContentSafetyChatOptions.cs (1)
26public override ChatOptions Clone() => new ContentSafetyChatOptions(this);
Microsoft.Extensions.AI.Integration.Tests (19)
CallCountingChatClient.cs (2)
20IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 27IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default)
ChatClientIntegrationTests.cs (4)
443ChatOptions options = new() 1087var capturedOptions = new List<ChatOptions?>(); 1383public Task<ChatResponse> GetResponseAsync(IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 1386public IAsyncEnumerable<ChatResponseUpdate> GetStreamingResponseAsync(IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default)
ImageGeneratingChatClientIntegrationTests.cs (7)
69protected async Task<ChatResponse> GetResponseAsync(bool useStreaming, IEnumerable<ChatMessage> messages, ChatOptions? options = null, IChatClient? chatClient = null) 121var chatOptions = new ChatOptions 159var chatOptions = new ChatOptions 188var chatOptions = new ChatOptions 238var chatOptions = new ChatOptions 283var chatOptions = new ChatOptions 334var chatOptions = new ChatOptions
parent\Microsoft.Extensions.AI.Abstractions.Tests\TestChatClient.cs (4)
20public Func<IEnumerable<ChatMessage>, ChatOptions?, CancellationToken, Task<ChatResponse>>? GetResponseAsyncCallback { get; set; } 22public Func<IEnumerable<ChatMessage>, ChatOptions?, CancellationToken, IAsyncEnumerable<ChatResponseUpdate>>? GetStreamingResponseAsyncCallback { get; set; } 29public Task<ChatResponse> GetResponseAsync(IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 32public IAsyncEnumerable<ChatResponseUpdate> GetStreamingResponseAsync(IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default)
PromptBasedFunctionCallingChatClient.cs (2)
43IEnumerable<ChatMessage> chatMessages, ChatOptions? options = null, CancellationToken cancellationToken = default) 138IEnumerable<ChatMessage> messages, ChatOptions? options = null, [EnumeratorCancellation] CancellationToken cancellationToken = default)
Microsoft.Extensions.AI.OllamaSharp.Integration.Tests (1)
OllamaSharpChatClientIntegrationTests.cs (1)
111IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default)
Microsoft.Extensions.AI.OpenAI (28)
MicrosoftExtensionsAIChatExtensions.cs (2)
38public static ChatResponseFormat? AsOpenAIChatResponseFormat(this Microsoft.Extensions.AI.ChatResponseFormat? format, ChatOptions? options = null) => 45public static IEnumerable<ChatMessage> AsOpenAIChatMessages(this IEnumerable<Microsoft.Extensions.AI.ChatMessage> messages, ChatOptions? options = null) =>
MicrosoftExtensionsAIResponsesExtensions.cs (3)
44public static ResponseTextFormat? AsOpenAIResponseTextFormat(this ChatResponseFormat? format, ChatOptions? options = null) => 52public static IEnumerable<ResponseItem> AsOpenAIResponseItems(this IEnumerable<ChatMessage> messages, ChatOptions? options = null) => 87public static ResponseResult AsOpenAIResponseResult(this ChatResponse response, ChatOptions? options = null)
OpenAIAssistantsChatClient.cs (5)
38/// <summary>The thread ID to use if none is supplied in <see cref="ChatOptions.ConversationId"/>.</summary> 72IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) => 77IEnumerable<ChatMessage> messages, ChatOptions? options = null, [EnumeratorCancellation] CancellationToken cancellationToken = default) 323internal static FunctionToolDefinition ToOpenAIAssistantsFunctionToolDefinition(AIFunctionDeclaration aiFunction, ChatOptions? options = null) 342IEnumerable<ChatMessage> messages, ChatOptions? options, CancellationToken cancellationToken)
OpenAIChatClient.cs (6)
91IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 112IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 136internal static ChatTool ToOpenAIChatTool(AIFunctionDeclaration aiFunction, ChatOptions? options = null) 150internal static IEnumerable<OpenAI.Chat.ChatMessage> ToOpenAIChatMessages(IEnumerable<ChatMessage> inputs, ChatOptions? chatOptions) 598private ChatCompletionOptions ToOpenAIOptions(ChatOptions? options) 686internal static OpenAI.Chat.ChatResponseFormat? ToOpenAIChatResponseFormat(ChatResponseFormat? format, ChatOptions? options) =>
OpenAIClientExtensions.cs (2)
137/// <see cref="IChatClient.GetResponseAsync"/> or <see cref="IChatClient.GetStreamingResponseAsync"/> via the <see cref="ChatOptions.ConversationId"/> 153/// <see cref="IChatClient.GetResponseAsync"/> or <see cref="IChatClient.GetStreamingResponseAsync"/> via the <see cref="ChatOptions.ConversationId"/>
OpenAIRealtimeConversationClient.cs (1)
14public static RealtimeFunctionTool ToOpenAIRealtimeFunctionTool(AIFunctionDeclaration aiFunction, ChatOptions? options = null)
OpenAIResponsesChatClient.cs (9)
102IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 326IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 724internal static ResponseTool? ToResponseTool(AITool tool, ChatOptions? options = null, ToolSearchLookup? toolSearchLookup = null) 867internal static FunctionTool ToResponseTool(AIFunctionDeclaration aiFunction, ChatOptions? options = null) 949/// <summary>Converts a <see cref="ChatOptions"/> to a <see cref="CreateResponseOptions"/>.</summary> 950private CreateResponseOptions AsCreateResponseOptions(ChatOptions? options, out string? openAIConversationId) 1229internal static ResponseTextFormat? ToOpenAIResponseTextFormat(ChatResponseFormat? format, ChatOptions? options = null) => 1283internal static IEnumerable<ResponseItem> ToOpenAIResponseItems(IEnumerable<ChatMessage> inputs, ChatOptions? options) 2038private static ResponsesClientContinuationToken? GetContinuationToken(IEnumerable<ChatMessage> messages, ChatOptions? options = null)
Microsoft.Extensions.AI.OpenAI.Tests (37)
OpenAIChatClientTests.cs (4)
386ChatOptions chatOptions = new() 463ChatOptions chatOptions = new() 546ChatOptions chatOptions = new() 620ChatOptions chatOptions = new()
OpenAIConversionTests.cs (5)
741ChatOptions? options = withOptions ? new ChatOptions { Instructions = "You talk like a parrot." } : null; 2039var options = new ChatOptions 2201var options = new ChatOptions 2219var options = new ChatOptions 2237ChatOptions options;
OpenAIResponseClientIntegrationTests.cs (18)
145var chatOptions = new ChatOptions 191ChatOptions chatOptions = new() 213ChatOptions chatOptions = new() 253ChatOptions chatOptions = new() 322ChatOptions chatOptions = new() 356var chatOptions = new ChatOptions 388var chatOptions = new ChatOptions 419ChatOptions chatOptions = new() 440ChatOptions chatOptions = new() 482var chatOptions = new ChatOptions 517ChatOptions chatOptions = new() 565var chatOptions = new ChatOptions 585var chatOptions = new ChatOptions 613var chatOptions = new ChatOptions 638var chatOptions = new ChatOptions 661var chatOptions = new ChatOptions 690ChatOptions chatOptions = new() 771ChatOptions chatOptions = new()
OpenAIResponseClientTests.cs (10)
886ChatOptions chatOptions = new() 982ChatOptions chatOptions = new() 1234ChatOptions chatOptions = new() 1485var chatOptions = new ChatOptions 1990ChatOptions chatOptions = new() 2396ChatOptions chatOptions = new() 2610ChatOptions chatOptions = new() 3017var options = new ChatOptions 3199var chatOptions = new ChatOptions 3261var chatOptions = new ChatOptions
Microsoft.Extensions.AI.Tests (263)
ChatCompletion\ConfigureOptionsChatClientTests.cs (2)
35ChatOptions? providedOptions = nullProvidedOptions ? null : new() { ModelId = "test" }; 36ChatOptions? returnedOptions = null;
ChatCompletion\DistributedCachingChatClientTest.cs (5)
44ChatOptions options = new() { ConversationId = conversationIdSet ? "123" : null }; 123private sealed class CustomCachingChatClient(IChatClient innerClient, IDistributedCache storage, Func<IEnumerable<ChatMessage>, ChatOptions?, bool> enableCaching) : 126protected override bool EnableCaching(IEnumerable<ChatMessage> messages, ChatOptions? options) => enableCaching(messages, options); 244ChatOptions options = new() { ConversationId = conversationIdSet ? "123" : null }; 878protected override string GetCacheKey(IEnumerable<ChatMessage> messages, ChatOptions? options, params ReadOnlySpan<object?> additionalValues)
ChatCompletion\FunctionInvokingChatClientApprovalsTests.cs (41)
29var options = new ChatOptions 61var options = new ChatOptions 109var options = new ChatOptions 165var options = new ChatOptions { Tools = tools }; 204var options = new ChatOptions 245var options = new ChatOptions 296var options = new ChatOptions 349var options = new ChatOptions 408var options = new ChatOptions 467var options = new ChatOptions 531var options = new ChatOptions 596var options = new ChatOptions 690var options = new ChatOptions 747var options = new ChatOptions 801var options = new ChatOptions 881var options = new ChatOptions 953var options = new ChatOptions 1017var options = new ChatOptions 1072var options = new ChatOptions 1102var options = new ChatOptions 1148var options = new ChatOptions 1196var options = new ChatOptions 1246var options = new ChatOptions 1292var options = new ChatOptions 1347var options = new ChatOptions 1398var options = new ChatOptions 1458var options = new ChatOptions 1475IEnumerable<ChatMessage> contents, ChatOptions? actualOptions, [EnumeratorCancellation] CancellationToken actualCancellationToken) 1533var options = new ChatOptions 1551IEnumerable<ChatMessage> contents, ChatOptions? actualOptions, [EnumeratorCancellation] CancellationToken actualCancellationToken) 1632var options = new ChatOptions 1672var options = new ChatOptions 1729var options = new ChatOptions 1772var options = new ChatOptions 1856var options = new ChatOptions 1932ChatOptions? options, 1949ChatOptions? options, 2020ChatOptions? options, 2037ChatOptions? options, 2125IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 2132IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default)
ChatCompletion\FunctionInvokingChatClientTests.cs (70)
81var options = new ChatOptions 113ChatOptions? options = provideOptions ? 145ChatOptions options = new() 180var options = new ChatOptions 231var options = new ChatOptions 278var options = new ChatOptions 317var options = new ChatOptions 364var options = new ChatOptions 445var options = new ChatOptions 526var options = new ChatOptions 626var options = new ChatOptions 659List<ChatOptions?> capturedOptions = []; 678var options = new ChatOptions 694var lastOptions = capturedOptions[maxIterations]; 703List<ChatOptions?> capturedOptions = []; 722var options = new ChatOptions 738var lastOptions = capturedOptions[maxIterations]; 748List<ChatOptions?> capturedOptions = []; 775var options = new ChatOptions 796List<ChatOptions?> capturedOptions = []; 815var originalOptions = new ChatOptions 841var options = new ChatOptions 922var options = new ChatOptions 971var options = new ChatOptions 1010var options = new ChatOptions 1048var options = new ChatOptions 1105ChatOptions options = new() 1170var options = new ChatOptions 1228var options = new ChatOptions 1285var options = new ChatOptions 1378var chatOptions = new ChatOptions { Tools = [function] }; 1397var options = new ChatOptions 1404Func<IEnumerable<ChatMessage>, ChatOptions?, CancellationToken, ChatResponse> callback = 1458var options = new ChatOptions 1491var options = new ChatOptions 1519ChatOptions options = new() 1575ChatOptions options = new() { Tools = [declarationOnly] }; 1601var options = new ChatOptions 1632ChatOptions? actualChatOptions = null; 1654var originalChatOptions = new ChatOptions 1687ChatOptions options = new() 1752var options = new ChatOptions 1798ChatOptions options = new() 1840ChatOptions options = new() 1890ChatOptions options = new() 1962ChatOptions options = new() 1998var options = new ChatOptions 2027var options = new ChatOptions 2075var options = new ChatOptions 2145var options = new ChatOptions 2199ChatOptions? options, 2269ChatOptions? options, 2372var options = new ChatOptions 2466var options = new ChatOptions 2574var options = new ChatOptions 2672var options = new ChatOptions 2776var options = new ChatOptions 2873var options = new ChatOptions 2952var options = new ChatOptions 3053var options = new ChatOptions 3159var options = new ChatOptions 3250var options = new ChatOptions 3280var options = new ChatOptions 3311var options = new ChatOptions 3345var options = new ChatOptions 3391var options = new ChatOptions { Tools = [approvalFunc] }; 3428var options = new ChatOptions { Tools = [approvalFunc] }; 3462var options = new ChatOptions 3517var options = new ChatOptions 3593var options = new ChatOptions
ChatCompletion\ImageGeneratingChatClientTests.cs (13)
46var chatOptions = new ChatOptions 68ChatOptions? capturedOptions = null; 83var chatOptions = new ChatOptions 115ChatOptions? capturedOptions = null; 131var chatOptions = new ChatOptions 214ChatOptions? capturedOptions = null; 235var chatOptions = new ChatOptions 277ChatOptions? capturedOptions = null; 291var chatOptions = new ChatOptions 325var chatOptions = new ChatOptions 366var chatOptions = new ChatOptions 420var chatOptions = new ChatOptions 494var chatOptions = new ChatOptions
ChatCompletion\OpenTelemetryChatClientTests.cs (6)
67IEnumerable<ChatMessage> messages, ChatOptions? options, [EnumeratorCancellation] CancellationToken cancellationToken) 122var options = new ChatOptions 419IEnumerable<ChatMessage> messages, ChatOptions? options, [EnumeratorCancellation] CancellationToken cancellationToken) 673IEnumerable<ChatMessage> messages, ChatOptions? options, [EnumeratorCancellation] CancellationToken cancellationToken) 914IEnumerable<ChatMessage> messages, ChatOptions? options, [EnumeratorCancellation] CancellationToken cancellationToken) 1101IEnumerable<ChatMessage> messages, ChatOptions? options, [EnumeratorCancellation] CancellationToken cancellationToken)
ChatCompletion\UseDelegateChatClientTests.cs (6)
29ChatOptions expectedOptions = new(); 79ChatOptions expectedOptions = new(); 121ChatOptions expectedOptions = new(); 147IEnumerable<ChatMessage> messages, ChatOptions? options, IChatClient innerClient, [EnumeratorCancellation] CancellationToken cancellationToken) 172ChatOptions expectedOptions = new(); 218IEnumerable<ChatMessage> messages, ChatOptions? options, IChatClient innerClient, [EnumeratorCancellation] CancellationToken cancellationToken)
ChatRouting\FailoverChatClientTests.cs (7)
206ChatOptions? forwarded = null; 218var requestOptions = new ChatOptions 238var requestOptions = new ChatOptions 243var invokedOptions = new List<ChatOptions>(); 296var requestOptions = new ChatOptions { ModelId = "request" }; 297var invokedOptions = new List<ChatOptions?>(); 311ChatOptions? selectedOptions = null;
ChatRouting\OrderedFailoverChatClientTests.cs (2)
382IEnumerable<ChatMessage> messages, ChatOptions? options = null, 387IEnumerable<ChatMessage> messages, ChatOptions? options = null,
ChatRouting\SemanticRoutingChatClientTests.cs (2)
243IEnumerable<ChatMessage> messages, ChatOptions? options = null, 248IEnumerable<ChatMessage> messages, ChatOptions? options = null,
Generated\361d1da7f942c932\TestJsonSerializerContext.GetJsonTypeInfo.g.cs (1)
78if (type == typeof(global::Microsoft.Extensions.AI.ChatOptions))
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\TestJsonSerializerContext.ChatOptions.g.cs (103)
13private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.ChatOptions>? _ChatOptions; 19public global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.ChatOptions> ChatOptions 22get => _ChatOptions ??= (global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.ChatOptions>)Options.GetTypeInfo(typeof(global::Microsoft.Extensions.AI.ChatOptions)); 25private global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.ChatOptions> Create_ChatOptions(global::System.Text.Json.JsonSerializerOptions options) 27if (!TryGetTypeInfoForRuntimeCustomConverter<global::Microsoft.Extensions.AI.ChatOptions>(options, out global::System.Text.Json.Serialization.Metadata.JsonTypeInfo<global::Microsoft.Extensions.AI.ChatOptions> jsonTypeInfo)) 29var objectInfo = new global::System.Text.Json.Serialization.Metadata.JsonObjectInfoValues<global::Microsoft.Extensions.AI.ChatOptions> 35ConstructorAttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetConstructor(InstanceMemberBindingFlags, binder: null, global::System.Array.Empty<global::System.Type>(), modifiers: null), 39jsonTypeInfo = global::System.Text.Json.Serialization.Metadata.JsonMetadataServices.CreateObjectInfo<global::Microsoft.Extensions.AI.ChatOptions>(options, objectInfo); 56DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 58Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ConversationId, 59Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ConversationId = value!, 66AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("ConversationId", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 76DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 78Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Instructions, 79Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Instructions = value!, 86AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("Instructions", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 96DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 98Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Temperature, 99Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Temperature = value!, 106AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("Temperature", InstanceMemberBindingFlags, null, typeof(float?), global::System.Array.Empty<global::System.Type>(), null), 116DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 118Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).MaxOutputTokens, 119Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).MaxOutputTokens = value!, 126AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("MaxOutputTokens", InstanceMemberBindingFlags, null, typeof(int?), global::System.Array.Empty<global::System.Type>(), null), 136DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 138Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).TopP, 139Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).TopP = value!, 146AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("TopP", InstanceMemberBindingFlags, null, typeof(float?), global::System.Array.Empty<global::System.Type>(), null), 156DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 158Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).TopK, 159Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).TopK = value!, 166AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("TopK", InstanceMemberBindingFlags, null, typeof(int?), global::System.Array.Empty<global::System.Type>(), null), 176DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 178Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).FrequencyPenalty, 179Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).FrequencyPenalty = value!, 186AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("FrequencyPenalty", InstanceMemberBindingFlags, null, typeof(float?), global::System.Array.Empty<global::System.Type>(), null), 196DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 198Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).PresencePenalty, 199Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).PresencePenalty = value!, 206AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("PresencePenalty", InstanceMemberBindingFlags, null, typeof(float?), global::System.Array.Empty<global::System.Type>(), null), 216DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 218Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Seed, 219Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Seed = value!, 226AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("Seed", InstanceMemberBindingFlags, null, typeof(long?), global::System.Array.Empty<global::System.Type>(), null), 236DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 238Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Reasoning, 239Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).Reasoning = value!, 246AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("Reasoning", InstanceMemberBindingFlags, null, typeof(global::Microsoft.Extensions.AI.ReasoningOptions), global::System.Array.Empty<global::System.Type>(), null), 256DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 258Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ResponseFormat, 259Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ResponseFormat = value!, 266AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("ResponseFormat", InstanceMemberBindingFlags, null, typeof(global::Microsoft.Extensions.AI.ChatResponseFormat), global::System.Array.Empty<global::System.Type>(), null), 276DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 278Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ModelId, 279Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ModelId = value!, 286AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("ModelId", InstanceMemberBindingFlags, null, typeof(string), global::System.Array.Empty<global::System.Type>(), null), 296DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 298Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).StopSequences, 299Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).StopSequences = value!, 306AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("StopSequences", InstanceMemberBindingFlags, null, typeof(global::System.Collections.Generic.IList<string>), global::System.Array.Empty<global::System.Type>(), null), 316DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 318Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AllowMultipleToolCalls, 319Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AllowMultipleToolCalls = value!, 326AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("AllowMultipleToolCalls", InstanceMemberBindingFlags, null, typeof(bool?), global::System.Array.Empty<global::System.Type>(), null), 336DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 338Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ToolMode, 339Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ToolMode = value!, 346AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("ToolMode", InstanceMemberBindingFlags, null, typeof(global::Microsoft.Extensions.AI.ChatToolMode), global::System.Array.Empty<global::System.Type>(), null), 356DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 376DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 378Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AllowBackgroundResponses, 379Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AllowBackgroundResponses = value!, 386AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("AllowBackgroundResponses", InstanceMemberBindingFlags, null, typeof(bool?), global::System.Array.Empty<global::System.Type>(), null), 396DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 398Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ContinuationToken, 399Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).ContinuationToken = value!, 406AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("ContinuationToken", InstanceMemberBindingFlags, null, typeof(global::Microsoft.Extensions.AI.ResponseContinuationToken), global::System.Array.Empty<global::System.Type>(), null), 416DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 436DeclaringType = typeof(global::Microsoft.Extensions.AI.ChatOptions), 438Getter = static obj => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AdditionalProperties, 439Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatOptions)obj).AdditionalProperties = value!, 446AttributeProviderFactory = static () => typeof(global::Microsoft.Extensions.AI.ChatOptions).GetProperty("AdditionalProperties", InstanceMemberBindingFlags, null, typeof(global::Microsoft.Extensions.AI.AdditionalPropertiesDictionary), global::System.Array.Empty<global::System.Type>(), null), 456private void ChatOptionsSerializeHandler(global::System.Text.Json.Utf8JsonWriter writer, global::Microsoft.Extensions.AI.ChatOptions? value) 466writer.WriteString(PropName_ConversationId, ((global::Microsoft.Extensions.AI.ChatOptions)value).ConversationId); 467writer.WriteString(PropName_Instructions, ((global::Microsoft.Extensions.AI.ChatOptions)value).Instructions); 469global::System.Text.Json.JsonSerializer.Serialize(writer, ((global::Microsoft.Extensions.AI.ChatOptions)value).Temperature, NullableSingle); 471global::System.Text.Json.JsonSerializer.Serialize(writer, ((global::Microsoft.Extensions.AI.ChatOptions)value).MaxOutputTokens, NullableInt32); 473global::System.Text.Json.JsonSerializer.Serialize(writer, ((global::Microsoft.Extensions.AI.ChatOptions)value).TopP, NullableSingle); 475global::System.Text.Json.JsonSerializer.Serialize(writer, ((global::Microsoft.Extensions.AI.ChatOptions)value).TopK, NullableInt32); 477global::System.Text.Json.JsonSerializer.Serialize(writer, ((global::Microsoft.Extensions.AI.ChatOptions)value).FrequencyPenalty, NullableSingle); 479global::System.Text.Json.JsonSerializer.Serialize(writer, ((global::Microsoft.Extensions.AI.ChatOptions)value).PresencePenalty, NullableSingle); 481global::System.Text.Json.JsonSerializer.Serialize(writer, ((global::Microsoft.Extensions.AI.ChatOptions)value).Seed, NullableInt64); 483ReasoningOptionsSerializeHandler(writer, ((global::Microsoft.Extensions.AI.ChatOptions)value).Reasoning); 485global::System.Text.Json.JsonSerializer.Serialize(writer, ((global::Microsoft.Extensions.AI.ChatOptions)value).ResponseFormat, ChatResponseFormat); 486writer.WriteString(PropName_ModelId, ((global::Microsoft.Extensions.AI.ChatOptions)value).ModelId); 488IListStringSerializeHandler(writer, ((global::Microsoft.Extensions.AI.ChatOptions)value).StopSequences); 490global::System.Text.Json.JsonSerializer.Serialize(writer, ((global::Microsoft.Extensions.AI.ChatOptions)value).AllowMultipleToolCalls, NullableBoolean); 492global::System.Text.Json.JsonSerializer.Serialize(writer, ((global::Microsoft.Extensions.AI.ChatOptions)value).ToolMode, ChatToolMode); 494global::System.Text.Json.JsonSerializer.Serialize(writer, ((global::Microsoft.Extensions.AI.ChatOptions)value).AllowBackgroundResponses, NullableBoolean); 496global::System.Text.Json.JsonSerializer.Serialize(writer, ((global::Microsoft.Extensions.AI.ChatOptions)value).ContinuationToken, ResponseContinuationToken); 498global::System.Text.Json.JsonSerializer.Serialize(writer, ((global::Microsoft.Extensions.AI.ChatOptions)value).AdditionalProperties, AdditionalPropertiesDictionary);
parent\Microsoft.Extensions.AI.Abstractions.Tests\TestChatClient.cs (4)
20public Func<IEnumerable<ChatMessage>, ChatOptions?, CancellationToken, Task<ChatResponse>>? GetResponseAsyncCallback { get; set; } 22public Func<IEnumerable<ChatMessage>, ChatOptions?, CancellationToken, IAsyncEnumerable<ChatResponseUpdate>>? GetStreamingResponseAsyncCallback { get; set; } 29public Task<ChatResponse> GetResponseAsync(IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 32public IAsyncEnumerable<ChatResponseUpdate> GetStreamingResponseAsync(IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default)
TestJsonSerializerContext.cs (1)
28[JsonSerializable(typeof(ChatOptions))]
Microsoft.Extensions.DataIngestion (1)
Processors\EnricherOptions.cs (1)
32public ChatOptions? ChatOptions { get; set; }
Microsoft.Extensions.DataIngestion.Tests (4)
parent\Microsoft.Extensions.AI.Abstractions.Tests\TestChatClient.cs (4)
20public Func<IEnumerable<ChatMessage>, ChatOptions?, CancellationToken, Task<ChatResponse>>? GetResponseAsyncCallback { get; set; } 22public Func<IEnumerable<ChatMessage>, ChatOptions?, CancellationToken, IAsyncEnumerable<ChatResponseUpdate>>? GetStreamingResponseAsyncCallback { get; set; } 29public Task<ChatResponse> GetResponseAsync(IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 32public IAsyncEnumerable<ChatResponseUpdate> GetStreamingResponseAsync(IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default)
Microsoft.ML.GenAI.Core (3)
CausalLMPipelineChatClient.cs (2)
36public virtual Task<ChatResponse> GetResponseAsync(IEnumerable<ChatMessage> messages, ChatOptions? options = null, CancellationToken cancellationToken = default) 60ChatOptions? options = null,
Utility\IChatTemplateBuilder.cs (1)
35string BuildPrompt(IEnumerable<ChatMessage> messages, ChatOptions? options = null, bool appendAssistantTag = true);
Microsoft.ML.GenAI.LLaMA (3)
Llama3_1ChatTemplateBuilder.cs (1)
91public string BuildPrompt(IEnumerable<ChatMessage> messages, ChatOptions? options = null, bool appendAssistantTag = true)
Llama3CausalLMChatClient.cs (2)
29ChatOptions? options = null, 48ChatOptions? options = null,
Microsoft.ML.GenAI.Phi (3)
Phi3\Phi3CausalLMChatClient.cs (2)
34ChatOptions? options = null, 53ChatOptions? options = null,
Phi3\Phi3ChatTemplateBuilder.cs (1)
92public string BuildPrompt(IEnumerable<ChatMessage> messages, ChatOptions? options = null, bool appendAssistantTag = true)