23 writes to Role
Microsoft.Extensions.AI (1)
ChatCompletion\FunctionInvokingChatClient.cs (1)
1650ChatMessage functionCallMessage = resultWithRequestMessage.RequestMessage?.Clone() ?? new() { Role = ChatRole.Assistant };
Microsoft.Extensions.AI.Abstractions (4)
ChatCompletion\ChatMessage.cs (2)
40Role = role; 58Role = Role,
ChatCompletion\ChatResponseExtensions.cs (1)
582message.Role = role;
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.ChatMessage.g.cs (1)
101Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatMessage)obj).Role = value!,
Microsoft.Extensions.AI.Abstractions.Tests (1)
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\TestJsonSerializerContext.ChatMessage.g.cs (1)
99Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatMessage)obj).Role = value!,
Microsoft.Extensions.AI.Evaluation.Integration.Tests (6)
SafetyEvaluatorTests.cs (6)
337Role = ChatRole.User, 375Role = ChatRole.Assistant, 409Role = ChatRole.User, 422Role = ChatRole.Assistant, 458Role = ChatRole.User, 471Role = ChatRole.Assistant,
Microsoft.Extensions.AI.Evaluation.Reporting (1)
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.ChatMessage.g.cs (1)
101Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatMessage)obj).Role = value!,
Microsoft.Extensions.AI.Evaluation.Reporting.Azure (1)
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.ChatMessage.g.cs (1)
101Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatMessage)obj).Role = value!,
Microsoft.Extensions.AI.Evaluation.Reporting.Tests (1)
SerializationChainingTests.cs (1)
30Role = ChatRole.User,
Microsoft.Extensions.AI.OpenAI (7)
MicrosoftExtensionsAIChatExtensions.cs (5)
193resultMessage.Role = ChatRole.Assistant; 206resultMessage.Role = ChatRole.User; 213resultMessage.Role = ChatRole.System; 220resultMessage.Role = ChatRole.System; 226resultMessage.Role = ChatRole.Tool;
OpenAIChatClient.cs (1)
507Role = FromOpenAIChatRole(openAICompletion.Role),
OpenAIResponsesChatClient.cs (1)
202message.Role = AsChatRole(messageItem.Role);
Microsoft.Extensions.AI.Tests (1)
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\TestJsonSerializerContext.ChatMessage.g.cs (1)
99Setter = static (obj, value) => ((global::Microsoft.Extensions.AI.ChatMessage)obj).Role = value!,
217 references to Role
DotNetInvocationHostedAgent (1)
EchoAIAgent.cs (1)
67if (message.Role == ChatRole.User)
Microsoft.AspNetCore.Components.AI (4)
Engine\AgentContext.cs (2)
244if (block.Role == message.Role) 315if (messages.Count > 0 && messages[^1].Role == role)
Engine\UIAgent.cs (2)
142Role = message.Role, 212Role = message.Role,
Microsoft.Extensions.AI (9)
ChatCompletion\FunctionInvokingChatClient.cs (1)
718Role = message.Role,
ChatReduction\MessageCountingChatReducer.cs (1)
53if (message.Role == ChatRole.System)
ChatReduction\SummarizingChatReducer.cs (2)
104if (message.Role == ChatRole.System) 173if (unsummarizedMessages[i].Role == ChatRole.User)
ChatRouting\SemanticRoutingChatClient.cs (1)
178static message => message.Role == ChatRole.User)?.Text;
Common\OtelMessageSerializer.cs (4)
56message.Role == ChatRole.Assistant ? "assistant" : 57message.Role == ChatRole.Tool ? "tool" : 58message.Role == ChatRole.System || message.Role == new ChatRole("developer") ? "system" :
Microsoft.Extensions.AI.Abstractions (4)
ChatCompletion\ChatMessage.cs (1)
58Role = Role,
ChatCompletion\ChatResponse.cs (1)
152Role = message.Role,
ChatCompletion\ChatResponseExtensions.cs (1)
549NotNullOrEqual(update.Role, lastMessage.Role);
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.ChatMessage.g.cs (1)
100Getter = static obj => ((global::Microsoft.Extensions.AI.ChatMessage)obj).Role,
Microsoft.Extensions.AI.Abstractions.Tests (52)
AssertExtensions.cs (2)
26Assert.Equal(expectedMessage.Role, chatMessage.Role);
ChatCompletion\ChatClientExtensionsTests.cs (2)
112Assert.Equal(ChatRole.User, m.Role); 139Assert.Equal(ChatRole.User, m.Role);
ChatCompletion\ChatMessageTests.cs (5)
21Assert.Equal(ChatRole.User, message.Role); 38Assert.Equal(ChatRole.Assistant, message.Role); 95Assert.Equal(ChatRole.System, message.Role); 288Assert.Equal("user", deserializedMessage.Role.Value); 377Assert.Equal(ChatRole.User, result.Role);
ChatCompletion\ChatResponseTests.cs (3)
104Assert.Equal(ChatRole.Assistant, result.Messages.Single().Role); 142Assert.Equal(ChatRole.Assistant, result.Messages.Single().Role); 204Assert.Equal(ChatRole.Assistant, result.Messages[0].Role);
ChatCompletion\ChatResponseUpdateExtensionsTests.cs (33)
56Assert.Equal(ChatRole.Assistant, message.Role); 97Assert.Equal(ChatRole.Assistant, response.Messages[0].Role); 100Assert.Equal(ChatRole.Assistant, response.Messages[1].Role); 103Assert.Equal(ChatRole.User, response.Messages[2].Role); 106Assert.Equal(ChatRole.Assistant, response.Messages[3].Role); 109Assert.Equal(ChatRole.Tool, response.Messages[4].Role); 112Assert.Equal(ChatRole.Tool, response.Messages[5].Role); 115Assert.Equal(new ChatRole("human"), response.Messages[6].Role); 118Assert.Equal(new ChatRole("human"), response.Messages[7].Role); 121Assert.Equal(ChatRole.Assistant, response.Messages[8].Role); 162Assert.Equal(ChatRole.Assistant, response.Messages[0].Role); 166Assert.Equal(ChatRole.Assistant, response.Messages[1].Role); 170Assert.Equal(ChatRole.Assistant, response.Messages[2].Role); 174Assert.Equal(ChatRole.Assistant, response.Messages[3].Role); 212Assert.Equal(ChatRole.Assistant, response.Messages[0].Role); 217Assert.Equal(ChatRole.Assistant, response.Messages[1].Role); 222Assert.Equal(ChatRole.Assistant, response.Messages[2].Role); 227Assert.Equal(ChatRole.User, response.Messages[3].Role); 232Assert.Equal(ChatRole.Tool, response.Messages[4].Role); 268Assert.Equal(ChatRole.Assistant, message.Role); 334Assert.Equal(ChatRole.Assistant, response.Messages[0].Role); 338Assert.Equal(ChatRole.Assistant, response.Messages[1].Role); 371Assert.Equal(ChatRole.Assistant, message.Role); 401Assert.Equal(ChatRole.Assistant, response.Messages[0].Role); 405Assert.Equal(ChatRole.User, response.Messages[1].Role); 438Assert.Equal(new ChatRole("agent1"), response.Messages[0].Role); 441Assert.Equal(new ChatRole("agent2"), response.Messages[1].Role); 444Assert.Equal(ChatRole.Assistant, response.Messages[2].Role); 572Assert.Equal(ChatRole.Assistant, message1.Role); 580Assert.Equal(ChatRole.Assistant, message2.Role); 588Assert.Equal(ChatRole.User, message3.Role); 596Assert.Equal(ChatRole.Assistant, message4.Role); 864Assert.Equal(ChatRole.Tool, response.Messages[0].Role);
Contents\AIContentTests.cs (2)
104Assert.Equal(message.Role, deserialized.Role);
Contents\ToolCallContentTests.cs (2)
76Assert.Equal(message.Role, deserialized2.Role);
Contents\ToolResultContentTests.cs (2)
75Assert.Equal(message.Role, deserialized2.Role);
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\TestJsonSerializerContext.ChatMessage.g.cs (1)
98Getter = static obj => ((global::Microsoft.Extensions.AI.ChatMessage)obj).Role,
Microsoft.Extensions.AI.Evaluation (10)
ChatMessageExtensions.cs (9)
26/// last <see cref="ChatMessage"/> has <see cref="ChatMessage.Role"/> set to <see cref="ChatRole.User"/>; 31/// <paramref name="messages"/> has <see cref="ChatMessage.Role"/> set to <see cref="ChatRole.User"/>; 39messages.LastOrDefault() is ChatMessage lastMessage && lastMessage.Role == ChatRole.User 56/// last <see cref="ChatMessage"/> has <see cref="ChatMessage.Role"/> set to <see cref="ChatRole.User"/>; 65/// <paramref name="messages"/> has <see cref="ChatMessage.Role"/> set to <see cref="ChatRole.User"/>; 78lastMessage.Role == ChatRole.User) 105/// The returned string is prefixed with the <see cref="ChatMessage.Role"/> and 123string role = message.Role.Value; 145/// The rendered <paramref name="messages"/> are each prefixed with the <see cref="ChatMessage.Role"/> and
ChatResponseExtensions.cs (1)
27/// The rendered <see cref="ChatResponse.Messages"/> are each prefixed with the <see cref="ChatMessage.Role"/> and
Microsoft.Extensions.AI.Evaluation.Reporting (1)
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.ChatMessage.g.cs (1)
100Getter = static obj => ((global::Microsoft.Extensions.AI.ChatMessage)obj).Role,
Microsoft.Extensions.AI.Evaluation.Reporting.Azure (1)
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\JsonContext.ChatMessage.g.cs (1)
100Getter = static obj => ((global::Microsoft.Extensions.AI.ChatMessage)obj).Role,
Microsoft.Extensions.AI.Evaluation.Reporting.Tests (3)
ScenarioRunResultTests.cs (2)
414=> x?.AuthorName == y?.AuthorName && x?.Role == y?.Role && x?.Text == y?.Text;
SerializationChainingTests.cs (1)
46Assert.Equal(ChatRole.User, resp.ModelResponse.Messages[0].Role);
Microsoft.Extensions.AI.Evaluation.Safety (2)
ContentSafetyServicePayloadUtilities.cs (2)
420if (message.Role == ChatRole.User) 429else if (message.Role == ChatRole.Assistant)
Microsoft.Extensions.AI.Integration.Tests (7)
ChatClientIntegrationTests.cs (6)
167Assert.Equal(ChatRole.Assistant, history[1].Role); 1155Assert.Equal(ChatRole.Assistant, m.Role); // Indicates this is the assistant's summary 1198Assert.Equal(ChatRole.System, m.Role); 1201m => Assert.Equal(ChatRole.Assistant, m.Role), // Summary message 1296Assert.Equal(ChatRole.Assistant, m.Role); // Summary 1338Assert.Equal(ChatRole.Assistant, summaryMessage.Role);
ImageGeneratingChatClientIntegrationTests.cs (1)
391var userMessage = processedMessages.First(m => m.Role == ChatRole.User);
Microsoft.Extensions.AI.OpenAI (18)
MicrosoftExtensionsAIChatExtensions.cs (1)
64ChatMessageRole role = ToChatMessageRole(lastMessage?.Role);
OpenAIAssistantsChatClient.cs (4)
519if (chatMessage.Role == ChatRole.System || 520chatMessage.Role == OpenAIClientExtensions.ChatRoleDeveloper) 546case FunctionResultContent result when chatMessage.Role == ChatRole.Tool: 555chatMessage.Role == ChatRole.Assistant ? MessageRole.Assistant : MessageRole.User,
OpenAIChatClient.cs (7)
168if (input.Role == ChatRole.System || 169input.Role == ChatRole.User || 170input.Role == OpenAIClientExtensions.ChatRoleDeveloper) 175input.Role == ChatRole.System ? new SystemChatMessage(parts) { ParticipantName = name } : 177input.Role == OpenAIClientExtensions.ChatRoleDeveloper ? new DeveloperChatMessage(parts) { ParticipantName = name } : 181else if (input.Role == ChatRole.Tool) 204else if (input.Role == ChatRole.Assistant)
OpenAIResponsesChatClient.cs (6)
1291if (input.Role == ChatRole.System || 1292input.Role == OpenAIClientExtensions.ChatRoleDeveloper) 1297yield return input.Role == ChatRole.System ? 1305if (input.Role == ChatRole.User) 1400if (input.Role == ChatRole.Tool) 1534if (input.Role == ChatRole.Assistant)
Microsoft.Extensions.AI.OpenAI.Tests (46)
OpenAIChatClientTests.cs (17)
166Assert.Equal(ChatRole.Assistant, response.Messages.Single().Role); 840Assert.Equal(ChatRole.Assistant, response.Messages.Single().Role); 938Assert.Equal(ChatRole.Assistant, response.Messages.Single().Role); 1036Assert.Equal(ChatRole.Assistant, response.Messages.Single().Role); 1149Assert.Equal(ChatRole.Assistant, response.Messages.Single().Role); 1234Assert.Equal(ChatRole.Assistant, response.Messages.Single().Role); 1490Assert.Equal(ChatRole.Assistant, response.Messages.Single().Role); 1604Assert.Equal(ChatRole.Assistant, response.Messages.Single().Role); 1753Assert.Equal(ChatRole.System, extMessages[0].Role); 1764Assert.Equal(ChatRole.User, extMessages[0].Role); 1775Assert.Equal(ChatRole.Assistant, extMessages[0].Role); 1786Assert.Equal(ChatRole.System, extMessages[0].Role); 1797Assert.Equal(ChatRole.Tool, extMessages[0].Role); 1817Assert.Equal(ChatRole.System, extMessages[0].Role); 1818Assert.Equal(ChatRole.User, extMessages[1].Role); 1819Assert.Equal(ChatRole.Assistant, extMessages[2].Role); 1820Assert.Equal(ChatRole.System, extMessages[3].Role);
OpenAIConversionTests.cs (7)
905Assert.Equal(ChatRole.User, message.Role); 936Assert.Equal(ChatRole.Assistant, message.Role); 1201Assert.Equal(ChatRole.Assistant, message.Role); 1230Assert.Equal(ChatRole.Assistant, message.Role); 1295Assert.Equal(ChatRole.Assistant, message.Role); 1455Assert.Equal(ChatRole.User, message.Role); 1475Assert.Equal(ChatRole.User, message.Role);
OpenAIResponseClientTests.cs (20)
164Assert.Equal(ChatRole.Assistant, response.Messages.Single().Role); 573var assistantMessage = chatHistory.Single(m => m.Role == ChatRole.Assistant); 907Assert.Equal(ChatRole.Assistant, responseMessage.Role); 1375Assert.Equal(ChatRole.Assistant, response.Messages[0].Role); 1377Assert.Equal(ChatRole.Assistant, response.Messages[1].Role); 1628Assert.Equal(ChatRole.Assistant, response.Messages[0].Role); 1772Assert.Equal(ChatRole.Assistant, message.Role); 2005Assert.Equal(ChatRole.Assistant, response.Messages[0].Role); 2416Assert.Equal(ChatRole.Assistant, response.Messages[0].Role); 2625Assert.Equal(ChatRole.Assistant, response.Messages[0].Role); 3001Assert.Equal(ChatRole.Assistant, response.Messages.Single().Role); 3393Assert.Equal(ChatRole.Assistant, message.Role); 3613Assert.Equal(ChatRole.Assistant, message.Role); 6088Assert.Equal(ChatRole.Assistant, message.Role); 6227var userMessage = response.Messages.FirstOrDefault(m => m.Role == ChatRole.User); 6236var assistantMessage = response.Messages.LastOrDefault(m => m.Role == ChatRole.Assistant); 6290var userMessage = response.Messages.FirstOrDefault(m => m.Role == ChatRole.User); 6299var assistantMessage = response.Messages.LastOrDefault(m => m.Role == ChatRole.Assistant); 6375Assert.Equal(ChatRole.Assistant, response.Messages[0].Role); 7136Assert.Equal(ChatRole.Assistant, message.Role);
parent\Microsoft.Extensions.AI.Abstractions.Tests\AssertExtensions.cs (2)
26Assert.Equal(expectedMessage.Role, chatMessage.Role);
Microsoft.Extensions.AI.Tests (37)
ChatCompletion\ChatClientStructuredOutputExtensionsTests.cs (1)
123Assert.Equal(ChatRole.User, message.Role);
ChatCompletion\DistributedCachingChatClientTest.cs (2)
806Assert.Equal(expectedMessage.Role, actualMessage.Role);
ChatCompletion\FunctionInvokingChatClientApprovalsTests.cs (1)
2090input.Select(m => new ChatMessage(m.Role, m.Contents.Select(CloneFcc).ToList()) { MessageId = m.MessageId }).ToList();
ChatCompletion\FunctionInvokingChatClientTests.cs (11)
376var toolMessage = msgs.FirstOrDefault(m => m.Role == ChatRole.Tool); 389var toolMessage = msgs.FirstOrDefault(m => m.Role == ChatRole.Tool); 430var toolMessage = response.Messages.First(m => m.Role == ChatRole.Tool); 457var toolMessage = msgs.FirstOrDefault(m => m.Role == ChatRole.Tool); 470var toolMessage = msgs.FirstOrDefault(m => m.Role == ChatRole.Tool); 510var toolMessage = response.Messages.First(m => m.Role == ChatRole.Tool); 538var toolMessage = msgs.FirstOrDefault(m => m.Role == ChatRole.Tool); 551var toolMessage = msgs.FirstOrDefault(m => m.Role == ChatRole.Tool); 594var toolMessage = response.Messages.First(m => m.Role == ChatRole.Tool); 1360var existingSearchResult = chatContents.SingleOrDefault(m => m.Role == ChatRole.Tool); 1384Assert.Equal(ChatRole.Tool, lastMessage.Role);
ChatReduction\MessageCountingChatReducerTests.cs (13)
66Assert.Equal(ChatRole.System, m.Role); 71Assert.Equal(ChatRole.User, m.Role); 76Assert.Equal(ChatRole.Assistant, m.Role); 102Assert.Equal(ChatRole.System, m.Role); 107Assert.Equal(ChatRole.User, m.Role); 112Assert.Equal(ChatRole.Assistant, m.Role); 117Assert.Equal(1, resultList.Count(m => m.Role == ChatRole.System)); 141Assert.Equal(ChatRole.User, m.Role); 148Assert.Equal(ChatRole.Assistant, m.Role); 186Assert.Equal(expectedRole, m.Role); 211Assert.Equal(ChatRole.System, m.Role); 254Assert.Equal(ChatRole.System, m.Role); 259Assert.Equal(ChatRole.Assistant, m.Role);
ChatReduction\SummarizingChatReducerTests.cs (6)
82Assert.Equal(ChatRole.System, resultList[0].Role); 207Assert.Contains(msgList, m => m.Role == ChatRole.System); 315Assert.Equal(ChatRole.System, resultList[0].Role); 319Assert.Equal(1, resultList.Count(m => m.Role == ChatRole.System)); 344m => Assert.Equal(ChatRole.System, m.Role)); 371m => Assert.Equal(ChatRole.System, m.Role));
Generated\Basic.CompilerLog.Util\Basic.CompilerLog.Util.Impl.BasicGeneratedFilesAnalyzerReference\TestJsonSerializerContext.ChatMessage.g.cs (1)
98Getter = static obj => ((global::Microsoft.Extensions.AI.ChatMessage)obj).Role,
parent\Microsoft.Extensions.AI.Abstractions.Tests\AssertExtensions.cs (2)
26Assert.Equal(expectedMessage.Role, chatMessage.Role);
Microsoft.Extensions.DataIngestion.Tests (12)
Processors\AlternativeTextEnricherTests.cs (4)
48Assert.Equal(ChatRole.System, materializedMessages[0].Role); 49Assert.Equal(ChatRole.User, materializedMessages[1].Role); 135Assert.Equal(ChatRole.System, materializedMessages[0].Role); 136Assert.Equal(ChatRole.User, materializedMessages[1].Role);
Processors\ClassificationEnricherTests.cs (2)
78Assert.Equal(ChatRole.System, materializedMessages[0].Role); 79Assert.Equal(ChatRole.User, materializedMessages[1].Role);
Processors\KeywordEnricherTests.cs (2)
78Assert.Equal(ChatRole.System, materializedMessages[0].Role); 79Assert.Equal(ChatRole.User, materializedMessages[1].Role);
Processors\SentimentEnricherTests.cs (2)
62Assert.Equal(ChatRole.System, materializedMessages[0].Role); 63Assert.Equal(ChatRole.User, materializedMessages[1].Role);
Processors\SummaryEnricherTests.cs (2)
62Assert.Equal(ChatRole.System, materializedMessages[0].Role); 63Assert.Equal(ChatRole.User, materializedMessages[1].Role);
Microsoft.ML.GenAI.LLaMA (5)
Llama3_1ChatTemplateBuilder.cs (5)
99if (messages.Any(m => availableRoles.Any(availableRole => availableRole == m.Role) == false)) 108var role = message.Role.Value; 112_ when message.Role == ChatRole.System => $"<|start_header_id|>system<|end_header_id|>{Newline}{content.Trim()}<|eot_id|>{Newline}", 113_ when message.Role == ChatRole.User => $"<|start_header_id|>user<|end_header_id|>{Newline}{content.Trim()}<|eot_id|>{Newline}", 114_ when message.Role == ChatRole.Assistant => $"<|start_header_id|>assistant<|end_header_id|>{Newline}{content.Trim()}<|eot_id|>{Newline}",
Microsoft.ML.GenAI.Phi (5)
Phi3\Phi3ChatTemplateBuilder.cs (5)
100if (messages.Any(m => availableRoles.Any(availableRole => availableRole == m.Role) == false)) 111var role = message.Role.Value; 115_ when message.Role == ChatRole.System => $"<|system|>{Newline}{content}<|end|>{Newline}", 116_ when message.Role == ChatRole.User => $"<|user|>{Newline}{content}<|end|>{Newline}", 117_ when message.Role == ChatRole.Assistant => $"<|assistant|>{Newline}{content}<|end|>{Newline}",