80 instantiations of ChatMessage
Microsoft.Extensions.AI (5)
ChatCompletion\ChatClientStructuredOutputExtensions.cs (3)
70CompleteAsync<T>(chatClient, [new ChatMessage(ChatRole.User, chatMessage)], options, useNativeJsonSchema, cancellationToken);
93CompleteAsync<T>(chatClient, [new ChatMessage(ChatRole.User, chatMessage)], serializerOptions, options, useNativeJsonSchema, cancellationToken);
155promptAugmentation = new ChatMessage(ChatRole.System, $$"""
Microsoft.Extensions.AI.Abstractions (2)
Microsoft.Extensions.AI.Abstractions.Tests (24)
ChatCompletion\ChatCompletionTests.cs (13)
23ChatMessage message = new();
35new ChatMessage(),
36new ChatMessage(),
37new ChatMessage(),
57ChatMessage message = new();
67ChatMessage first = new();
70new ChatMessage(),
120List<ChatMessage> newChoices = [new ChatMessage(), new ChatMessage()];
130new ChatMessage(ChatRole.Assistant, "Choice1"),
131new ChatMessage(ChatRole.Assistant, "Choice2"),
132new ChatMessage(ChatRole.Assistant, "Choice3"),
133new ChatMessage(ChatRole.Assistant, "Choice4"),
Microsoft.Extensions.AI.AzureAIInference (1)
Microsoft.Extensions.AI.Integration.Tests (9)
ReducingChatClientTests.cs (5)
46new ChatMessage(ChatRole.User, "Hi there! Can you tell me about golden retrievers?"),
47new ChatMessage(ChatRole.Assistant, "Of course! Golden retrievers are known for their friendly and tolerant attitudes. They're great family pets and are very intelligent and easy to train."),
48new ChatMessage(ChatRole.User, "What kind of exercise do they need?"),
49new ChatMessage(ChatRole.Assistant, "Golden retrievers are quite active and need regular exercise. Daily walks, playtime, and activities like fetching or swimming are great for them."),
50new ChatMessage(ChatRole.User, "Are they good with kids?"),
Microsoft.Extensions.AI.Ollama (1)
Microsoft.Extensions.AI.OpenAI (1)
Microsoft.Extensions.AI.Tests (37)
ChatCompletion\ChatClientStructuredOutputExtensionsTests.cs (10)
55var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
79var expectedCompletion = new ChatCompletion([new ChatMessage(ChatRole.Assistant, "This is not valid JSON")]);
85var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
98var expectedCompletion = new ChatCompletion([new ChatMessage(ChatRole.Assistant, "null")]);
104var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
123var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
159var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
193var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
239var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
267var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
ChatCompletion\FunctionInvokingChatClientTests.cs (20)
41new ChatMessage(ChatRole.User, "hello"),
48new ChatMessage(ChatRole.Assistant, "world"),
65new ChatMessage(ChatRole.User, "hello"),
82new ChatMessage(ChatRole.Assistant, "world"),
103new ChatMessage(ChatRole.User, "hello"),
112new ChatMessage(ChatRole.Assistant, "done"),
136new ChatMessage(ChatRole.User, "hello"),
145new ChatMessage(ChatRole.Assistant, "done"),
168new ChatMessage(ChatRole.User, "hello"),
175new ChatMessage(ChatRole.Assistant, "world"),
180new ChatMessage(ChatRole.User, "hello"),
181new ChatMessage(ChatRole.Assistant, "world")
215new ChatMessage(ChatRole.User, "hello"),
222new ChatMessage(ChatRole.Assistant, "world"),
227new ChatMessage(ChatRole.User, "hello"),
229new ChatMessage(ChatRole.Assistant, "more"),
230new ChatMessage(ChatRole.Assistant, "world"),
260new ChatMessage(ChatRole.User, "hello"),
263new ChatMessage(ChatRole.Assistant, "world"),
289List<ChatMessage> chat = [new ChatMessage(ChatRole.User, "hello")];
137 references to ChatMessage
Microsoft.Extensions.AI (42)
ChatCompletion\CachingChatClient.cs (7)
42public override async Task<ChatCompletion> CompleteAsync(IList<ChatMessage> chatMessages, ChatOptions? options = null, CancellationToken cancellationToken = default)
63IList<ChatMessage> chatMessages, ChatOptions? options = null, [EnumeratorCancellation] CancellationToken cancellationToken = default)
199protected abstract string GetCacheKey(bool streaming, IList<ChatMessage> chatMessages, ChatOptions? options);
203/// This is used when there is a call to <see cref="IChatClient.CompleteAsync(IList{ChatMessage}, ChatOptions?, CancellationToken)"/>.
212/// This is used when there is a call to <see cref="IChatClient.CompleteStreamingAsync(IList{ChatMessage}, ChatOptions?, CancellationToken)"/>.
221/// This is used when there is a call to <see cref="IChatClient.CompleteAsync(IList{ChatMessage}, ChatOptions?, CancellationToken)"/>.
231/// This is used when there is a call to <see cref="IChatClient.CompleteStreamingAsync(IList{ChatMessage}, ChatOptions?, CancellationToken)"/>.
ChatCompletion\FunctionInvokingChatClient.cs (18)
172public override async Task<ChatCompletion> CompleteAsync(IList<ChatMessage> chatMessages, ChatOptions? options = null, CancellationToken cancellationToken = default)
177HashSet<ChatMessage>? messagesToRemove = null;
274IList<ChatMessage> chatMessages, ChatOptions? options = null, [EnumeratorCancellation] CancellationToken cancellationToken = default)
278HashSet<ChatMessage>? messagesToRemove = null;
313ChatMessage functionCallMessage = new(ChatRole.Assistant, [.. functionCallContents]);
356HashSet<ChatMessage>? messagesToRemove,
358IList<ChatMessage> messages)
368ChatMessage message = messages[m];
398private async Task<(ContinueMode Mode, IList<ChatMessage> MessagesAdded)> ProcessFunctionCallsAsync(
399IList<ChatMessage> chatMessages, ChatOptions options, IReadOnlyList<FunctionCallContent> functionCallContents, int iteration, CancellationToken cancellationToken)
411IList<ChatMessage> added = AddResponseMessages(chatMessages, [result]);
436IList<ChatMessage> added = AddResponseMessages(chatMessages, results);
459IList<ChatMessage> chatMessages, ChatOptions options, FunctionCallContent functionCallContent,
515protected virtual IList<ChatMessage> AddResponseMessages(IList<ChatMessage> chat, ReadOnlySpan<FunctionInvocationResult> results)
525ChatMessage message = new(ChatRole.Tool, contents);
580IList<ChatMessage> chatMessages,
596public IList<ChatMessage> ChatMessages { get; set; }
Microsoft.Extensions.AI.Abstractions (14)
Microsoft.Extensions.AI.Abstractions.Tests (27)
TestChatClient.cs (4)
17public Func<IList<ChatMessage>, ChatOptions?, CancellationToken, Task<ChatCompletion>>? CompleteAsyncCallback { get; set; }
19public Func<IList<ChatMessage>, ChatOptions?, CancellationToken, IAsyncEnumerable<StreamingChatCompletionUpdate>>? CompleteStreamingAsyncCallback { get; set; }
23public Task<ChatCompletion> CompleteAsync(IList<ChatMessage> chatMessages, ChatOptions? options = null, CancellationToken cancellationToken = default)
26public IAsyncEnumerable<StreamingChatCompletionUpdate> CompleteStreamingAsync(IList<ChatMessage> chatMessages, ChatOptions? options = null, CancellationToken cancellationToken = default)
Microsoft.Extensions.AI.AzureAIInference (7)
Microsoft.Extensions.AI.AzureAIInference.Tests (1)
Microsoft.Extensions.AI.Integration.Tests (14)
test\Libraries\Microsoft.Extensions.AI.Abstractions.Tests\TestChatClient.cs (4)
17public Func<IList<ChatMessage>, ChatOptions?, CancellationToken, Task<ChatCompletion>>? CompleteAsyncCallback { get; set; }
19public Func<IList<ChatMessage>, ChatOptions?, CancellationToken, IAsyncEnumerable<StreamingChatCompletionUpdate>>? CompleteStreamingAsyncCallback { get; set; }
23public Task<ChatCompletion> CompleteAsync(IList<ChatMessage> chatMessages, ChatOptions? options = null, CancellationToken cancellationToken = default)
26public IAsyncEnumerable<StreamingChatCompletionUpdate> CompleteStreamingAsync(IList<ChatMessage> chatMessages, ChatOptions? options = null, CancellationToken cancellationToken = default)
Microsoft.Extensions.AI.Ollama (5)
Microsoft.Extensions.AI.Ollama.Tests (2)
Microsoft.Extensions.AI.OpenAI (5)
Microsoft.Extensions.AI.OpenAI.Tests (1)
Microsoft.Extensions.AI.Tests (19)
test\Libraries\Microsoft.Extensions.AI.Abstractions.Tests\TestChatClient.cs (4)
17public Func<IList<ChatMessage>, ChatOptions?, CancellationToken, Task<ChatCompletion>>? CompleteAsyncCallback { get; set; }
19public Func<IList<ChatMessage>, ChatOptions?, CancellationToken, IAsyncEnumerable<StreamingChatCompletionUpdate>>? CompleteStreamingAsyncCallback { get; set; }
23public Task<ChatCompletion> CompleteAsync(IList<ChatMessage> chatMessages, ChatOptions? options = null, CancellationToken cancellationToken = default)
26public IAsyncEnumerable<StreamingChatCompletionUpdate> CompleteStreamingAsync(IList<ChatMessage> chatMessages, ChatOptions? options = null, CancellationToken cancellationToken = default)