39 instantiations of ChatRole
Microsoft.Extensions.AI.Abstractions (5)
Microsoft.Extensions.AI.Abstractions.Tests (29)
Microsoft.Extensions.AI.AzureAIInference (1)
Microsoft.Extensions.AI.Ollama (1)
Microsoft.Extensions.AI.OpenAI (2)
Microsoft.Extensions.AI.Tests (1)
359 references to ChatRole
Aspire.Azure.AI.OpenAI.Tests (1)
Aspire.OpenAI.Tests (1)
Microsoft.Extensions.AI (10)
ChatCompletion\ChatClientStructuredOutputExtensions.cs (3)
70CompleteAsync<T>(chatClient, new ChatMessage(ChatRole.User, chatMessage), options, useNativeJsonSchema, cancellationToken);
112CompleteAsync<T>(chatClient, new ChatMessage(ChatRole.User, chatMessage), serializerOptions, options, useNativeJsonSchema, cancellationToken);
216promptAugmentation = new ChatMessage(ChatRole.User, $$"""
Microsoft.Extensions.AI.Abstractions (35)
Microsoft.Extensions.AI.Abstractions.Tests (43)
ChatCompletion\ChatCompletionTests.cs (11)
130new ChatMessage(ChatRole.Assistant, "Choice1"),
131new ChatMessage(ChatRole.Assistant, "Choice2"),
132new ChatMessage(ChatRole.Assistant, "Choice3"),
133new ChatMessage(ChatRole.Assistant, "Choice4"),
154Assert.Equal(ChatRole.Assistant, result.Choices[i].Role);
176new ChatMessage(ChatRole.Assistant, "This is a test." + Environment.NewLine + "It's multiple lines.")
187new ChatMessage(ChatRole.Assistant, "This is a test." + Environment.NewLine + "It's multiple lines."),
188new ChatMessage(ChatRole.Assistant, "So is" + Environment.NewLine + " this."),
189new ChatMessage(ChatRole.Assistant, "And this."),
239new ChatMessage(ChatRole.Assistant,
249new ChatMessage(ChatRole.System,
ChatCompletion\ChatMessageTests.cs (10)
20Assert.Equal(ChatRole.User, message.Role);
35ChatMessage message = new(ChatRole.Assistant, text);
37Assert.Equal(ChatRole.Assistant, message.Role);
60Assert.Throws<ArgumentNullException>("contents", () => new ChatMessage(ChatRole.User, (IList<AIContent>)null!));
75ChatMessage message = new(ChatRole.System, content);
77Assert.Equal(ChatRole.System, message.Role);
125ChatMessage message = new(ChatRole.User,
150ChatMessage message = new(ChatRole.User, []);
164ChatMessage message = new(ChatRole.User,
285var chatMessageJson = JsonSerializer.Serialize(new ChatMessage(ChatRole.User, contents: items)
ChatCompletion\StreamingChatCompletionUpdateExtensionsTests.cs (6)
44new() { ChoiceIndex = 0, Text = ", ", AuthorName = "Someone", Role = ChatRole.User, AdditionalProperties = new() { ["a"] = "b" } },
45new() { ChoiceIndex = 1, Text = ", ", AuthorName = "Else", Role = ChatRole.System, AdditionalProperties = new() { ["g"] = "h" } },
48new() { ChoiceIndex = 1, Text = "you!", Role = ChatRole.Tool, CreatedAt = new DateTimeOffset(3, 2, 3, 4, 5, 6, TimeSpan.Zero), AdditionalProperties = new() { ["e"] = "f", ["i"] = 42 } },
75Assert.Equal(ChatRole.User, message.Role);
83Assert.Equal(ChatRole.System, message.Role);
92Assert.Equal(ChatRole.Assistant, message.Role);
Microsoft.Extensions.AI.AzureAIInference (10)
Microsoft.Extensions.AI.AzureAIInference.Tests (19)
AzureAIInferenceChatClientTests.cs (19)
151[new ChatMessage(ChatRole.User, "hello".Select(c => (AIContent)new TextContent(c.ToString())).ToList())] :
152[new ChatMessage(ChatRole.User, "hello")];
164Assert.Equal(ChatRole.Assistant, response.Message.Role);
218[new ChatMessage(ChatRole.User, "hello".Select(c => (AIContent)new TextContent(c.ToString())).ToList())] :
219[new ChatMessage(ChatRole.User, "hello")];
240Assert.Equal(ChatRole.Assistant, updates[i].Role);
507new(ChatRole.System, "You are a really nice friend."),
508new(ChatRole.User, "hello!"),
509new(ChatRole.Assistant, "hi, how are you?"),
510new(ChatRole.User, "i'm good. how are you?"),
511new(ChatRole.Assistant, [new FunctionCallContent("abcd123", "GetMood")]),
512new(ChatRole.Tool, [new FunctionResultContent("abcd123", "happy")]),
528Assert.Equal(ChatRole.Assistant, response.Message.Role);
587Assert.NotNull(await client.CompleteAsync([new(ChatRole.User,
652new(ChatRole.Assistant, (string?)null),
653new(ChatRole.User, "hello!"),
662Assert.Equal(ChatRole.Assistant, response.Message.Role);
778Assert.Equal(ChatRole.Assistant, response.Message.Role);
874Assert.Equal(ChatRole.Assistant, updates[i].Role);
Microsoft.Extensions.AI.Integration.Tests (19)
ChatClientIntegrationTests.cs (11)
61new(ChatRole.User, "Pick a city, any city"),
62new(ChatRole.Assistant, "Seattle"),
63new(ChatRole.User, "And another one"),
64new(ChatRole.Assistant, "Jakarta"),
65new(ChatRole.User, "What continent are they each in?"),
80new(ChatRole.User, "Quote, word for word, Neil Armstrong's famous words.")
146new(ChatRole.User,
177new(ChatRole.User, "What is the current secret number?")
318var message = new ChatMessage(ChatRole.User, "Pick a random number, uniformly distributed between 1 and 1000000");
335var message = new ChatMessage(ChatRole.User, "Pick a random number, uniformly distributed between 1 and 1000000");
361var message = new ChatMessage(ChatRole.User, "Pick a random number, uniformly distributed between 1 and 1000000");
ReducingChatClientTests.cs (5)
47new ChatMessage(ChatRole.User, "Hi there! Can you tell me about golden retrievers?"),
48new 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."),
49new ChatMessage(ChatRole.User, "What kind of exercise do they need?"),
50new 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."),
51new ChatMessage(ChatRole.User, "Are they good with kids?"),
Microsoft.Extensions.AI.Ollama.Tests (11)
OllamaChatClientTests.cs (11)
123Assert.Equal(ChatRole.Assistant, response.Message.Role);
191Assert.Equal(ChatRole.Assistant, updates[i].Role);
262new(ChatRole.User, "hello!"),
263new(ChatRole.Assistant, "hi, how are you?"),
264new(ChatRole.User, "i'm good. how are you?"),
286Assert.Equal(ChatRole.Assistant, response.Message.Role);
375Assert.Equal(ChatRole.Assistant, response.Message.Role);
461new(ChatRole.User, "How old is Alice?"),
462new(ChatRole.Assistant, [new FunctionCallContent("abcd1234", "GetPersonAge", new Dictionary<string, object?> { ["personName"] = "Alice" })]),
463new(ChatRole.Tool, [new FunctionResultContent("abcd1234", 42)]),
473Assert.Equal(ChatRole.Assistant, response.Message.Role);
Microsoft.Extensions.AI.OpenAI (26)
Microsoft.Extensions.AI.OpenAI.Tests (40)
OpenAIChatClientTests.cs (24)
200Assert.Equal(ChatRole.Assistant, response.Message.Role);
289Assert.Equal(ChatRole.Assistant, updates[i].Role);
441new(ChatRole.System, "You are a really nice friend."),
442new(ChatRole.User, "hello!"),
443new(ChatRole.Assistant, "hi, how are you?"),
444new(ChatRole.User, "i'm good. how are you?"),
460Assert.Equal(ChatRole.Assistant, response.Message.Role);
550new(ChatRole.System, [new TextContent("You are a really nice friend."), new TextContent("Really nice.")]),
551new(ChatRole.User, "hello!"),
560Assert.Equal(ChatRole.Assistant, response.Message.Role);
649new(ChatRole.System, "You are a really nice friend."),
650new(ChatRole.User, "hello!"),
651new(ChatRole.Assistant, (string?)null),
652new(ChatRole.User, "i'm good. how are you?"),
661Assert.Equal(ChatRole.Assistant, response.Message.Role);
776Assert.Equal(ChatRole.Assistant, response.Message.Role);
890Assert.Equal(ChatRole.Assistant, updates[i].Role);
1015new(ChatRole.System, "You are a really nice friend."),
1016new(ChatRole.User, "hello!"),
1017new(ChatRole.Assistant,
1023new (ChatRole.Tool,
1028new(ChatRole.Assistant, "You are great."),
1029new(ChatRole.User, "Thanks!"),
1038Assert.Equal(ChatRole.Assistant, response.Message.Role);
OpenAISerializationTests.cs (16)
48Assert.Equal(ChatRole.User, message.Role);
81Assert.Equal(ChatRole.User, message.Role);
113Assert.Equal(ChatRole.User, message.Role);
186Assert.Equal(ChatRole.System, msg.Role);
198Assert.Equal(ChatRole.User, msg.Role);
210Assert.Equal(ChatRole.Assistant, msg.Role);
222Assert.Equal(ChatRole.User, msg.Role);
280Assert.Equal(ChatRole.System, msg.Role);
304Assert.Equal(ChatRole.User, msg.Role);
441Assert.Equal(ChatRole.Assistant, msg.Role);
453Assert.Equal(ChatRole.Tool, msg.Role);
471Role = ChatRole.Assistant,
570Role = ChatRole.Assistant,
576Role = ChatRole.Assistant,
634Role = ChatRole.Assistant,
716Role = ChatRole.Assistant,
Microsoft.Extensions.AI.Tests (119)
ChatCompletion\ChatClientStructuredOutputExtensionsTests.cs (21)
20var expectedCompletion = new ChatCompletion(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(expectedResult)))
43Assert.Equal(ChatRole.User, message.Role);
56var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
81var expectedCompletion = new ChatCompletion(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(expectedResult)));
113var expectedCompletion = new ChatCompletion(new ChatMessage(ChatRole.Assistant, "This is not valid JSON"));
119var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
132var expectedCompletion = new ChatCompletion(new ChatMessage(ChatRole.Assistant, "null"));
138var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
151var expectedCompletion = new ChatCompletion(new ChatMessage(ChatRole.Assistant, [new DataContent("https://example.com")]));
157var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
171var expectedCompletion = new ChatCompletion(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(expectedResult)));
195var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
215var expectedCompletion = new ChatCompletion(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(expectedResult)));
229var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
250var expectedCompletion = new ChatCompletion(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(payload)));
257var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
281var expectedCompletion = new ChatCompletion(new ChatMessage(ChatRole.Assistant, JsonSerializer.Serialize(expectedResult, jso)));
291Assert.Equal(ChatRole.User, message.Role);
303var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
327return Task.FromResult(new ChatCompletion(new ChatMessage(ChatRole.Assistant, resultDuplicatedJson)));
331var chatHistory = new List<ChatMessage> { new(ChatRole.User, "Hello") };
ChatCompletion\FunctionInvokingChatClientTests.cs (84)
60new ChatMessage(ChatRole.User, "hello"),
61new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId1", "Func1")]),
62new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId1", result: "Result 1")]),
63new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId2", "Func2", arguments: new Dictionary<string, object?> { { "i", 42 } })]),
64new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId2", result: "Result 2: 42")]),
65new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId3", "VoidReturn", arguments: new Dictionary<string, object?> { { "i", 43 } })]),
66new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId3", result: "Success: Function completed.")]),
67new ChatMessage(ChatRole.Assistant, "world"),
91new ChatMessage(ChatRole.User, "hello"),
92new ChatMessage(ChatRole.Assistant,
98new ChatMessage(ChatRole.Tool,
104new ChatMessage(ChatRole.Assistant,
109new ChatMessage(ChatRole.Tool,
114new ChatMessage(ChatRole.Assistant, "world"),
144new ChatMessage(ChatRole.User, "hello"),
145new ChatMessage(ChatRole.Assistant,
150new ChatMessage(ChatRole.Tool,
155new ChatMessage(ChatRole.Assistant, "done"),
188new ChatMessage(ChatRole.User, "hello"),
189new ChatMessage(ChatRole.Assistant,
194new ChatMessage(ChatRole.Tool,
199new ChatMessage(ChatRole.Assistant, "done"),
224new ChatMessage(ChatRole.User, "hello"),
225new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId1", "Func1")]),
226new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId1", result: "Result 1")]),
227new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId2", "Func2", arguments: new Dictionary<string, object?> { { "i", 42 } })]),
228new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId2", result: "Result 2: 42")]),
229new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId3", "VoidReturn", arguments: new Dictionary<string, object?> { { "i", 43 } })]),
230new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId3", result: "Success: Function completed.")]),
231new ChatMessage(ChatRole.Assistant, "world"),
236new ChatMessage(ChatRole.User, "hello"),
237new ChatMessage(ChatRole.Assistant, "world")
277new ChatMessage(ChatRole.User, "hello"),
278new ChatMessage(ChatRole.Assistant, [new TextContent("extra"), new FunctionCallContent("callId1", "Func1"), new TextContent("stuff")]),
279new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId2", result: "Result 1")]),
280new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId2", "Func2", arguments: new Dictionary<string, object?> { { "i", 42 } })]),
281new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId2", result: "Result 2: 42")]),
282new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId3", "VoidReturn", arguments: new Dictionary<string, object?> { { "i", 43 } }), new TextContent("more")]),
283new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId3", result: "Success: Function completed.")]),
284new ChatMessage(ChatRole.Assistant, "world"),
293new ChatMessage(ChatRole.User, "hello"),
294new ChatMessage(ChatRole.Assistant, [new TextContent("extra"), new TextContent("stuff")]),
295new ChatMessage(ChatRole.Assistant, "more"),
296new ChatMessage(ChatRole.Assistant, "world"),
301new ChatMessage(ChatRole.User, "hello"),
302new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId1", "Func1")]),
303new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId2", result: "Result 1")]),
304new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId2", "Func2", arguments: new Dictionary<string, object?> { { "i", 42 } })]),
305new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId2", result: "Result 2: 42")]),
306new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId3", "VoidReturn", arguments: new Dictionary<string, object?> { { "i", 43 } })]),
307new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId3", result: "Success: Function completed.")]),
308new ChatMessage(ChatRole.Assistant, "extrastuffmoreworld"),
311new ChatMessage(ChatRole.User, "hello"),
312new ChatMessage(ChatRole.Assistant, "extrastuffmoreworld"),
344new ChatMessage(ChatRole.User, "hello"),
345new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId1", "Func1")]),
346new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId1", result: detailedErrors ? "Error: Function failed. Exception: Oh no!" : "Error: Function failed.")]),
347new ChatMessage(ChatRole.Assistant, "world"),
366new(ChatRole.Assistant, [new FunctionCallContent("callId1", func1.Metadata.Name)]),
367new(ChatRole.Assistant, [new FunctionCallContent("callId2", func2.Metadata.Name)]),
383List<ChatMessage> chat = [new ChatMessage(ChatRole.User, "hello")];
404new ChatMessage(ChatRole.User, "hello"),
405new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId1", "Func1", new Dictionary<string, object?> { ["arg1"] = "value1" })]),
406new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId1", result: "Result 1")]),
407new ChatMessage(ChatRole.Assistant, "world"),
463new ChatMessage(ChatRole.User, "hello"),
464new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId1", "Func1", new Dictionary<string, object?> { ["arg1"] = "value1" })]),
465new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId1", result: "Result 1")]),
466new ChatMessage(ChatRole.Assistant, "world"),
527new(ChatRole.User, "Hello"),
597new ChatMessage(ChatRole.User, "hello"),
598new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId1", "Func1", new Dictionary<string, object?> { ["i"] = 41 })]),
599new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId1", result: "Result 41")]),
600new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId2", "Func1", new Dictionary<string, object?> { ["i"] = 42 })]),
601new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId2", result: "Result 42")]),
608new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId3", "Func1", new Dictionary<string, object?> { ["i"] = 43 })]),
609new ChatMessage(ChatRole.Tool, [new FunctionResultContent("callId3", result: "Result 43")]),
610new ChatMessage(ChatRole.Assistant, "world"),
618new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId2", "Func1", new Dictionary<string, object?> { ["i"] = 42 })]),
626new ChatMessage(ChatRole.Assistant, []),
674return new ChatCompletion(new ChatMessage(ChatRole.Assistant, [new FunctionCallContent("callId-abc", "Func1")]))
682return new ChatCompletion(new ChatMessage(ChatRole.Assistant, "done!"));
731return new ChatCompletion(new ChatMessage(ChatRole.Assistant, [.. plan[contents.Count].Contents])) { Usage = usage };
820return YieldAsync(new ChatCompletion(new ChatMessage(ChatRole.Assistant, [.. plan[contents.Count].Contents])).ToStreamingChatCompletionUpdates());
ChatCompletion\OpenTelemetryChatClientTests.cs (8)
41return new ChatCompletion(new ChatMessage(ChatRole.Assistant, "The blue whale, I think."))
74Role = ChatRole.Assistant,
112new(ChatRole.System, "You are a close friend."),
113new(ChatRole.User, "Hey!"),
114new(ChatRole.Assistant, [new FunctionCallContent("12345", "GetPersonName")]),
115new(ChatRole.Tool, [new FunctionResultContent("12345", "John")]),
116new(ChatRole.Assistant, "Hey John, what's up?"),
117new(ChatRole.User, "What's the biggest animal?")
Microsoft.ML.GenAI.Core (2)
Microsoft.ML.GenAI.Core.Tests (3)
Microsoft.ML.GenAI.LLaMA (6)
Microsoft.ML.GenAI.LLaMA.Tests (3)
Microsoft.ML.GenAI.Phi (6)
Microsoft.ML.GenAI.Samples (5)