3 writes to Contents
Microsoft.Extensions.AI.Abstractions.Tests (3)
ChatCompletion\ChatMessageTests.cs (3)
202message.Contents = contents; 206message.Contents = contents; 209message.Contents = null;
77 references to Contents
Microsoft.Extensions.AI (10)
ChatCompletion\ChatCompletion{T}.cs (2)
109var content = choice?.Contents.Count == 1 ? choice.Contents[0] : null;
ChatCompletion\FunctionInvokingChatClient.cs (5)
207FunctionCallContent[] functionCallContents = response.Message.Contents.OfType<FunctionCallContent>().ToArray(); 223if (functionCallContents.Length == response.Message.Contents.Count) 372for (int c = message.Contents.Count - 1; c >= 0; c--) 374if (contentToRemove.Contains(message.Contents[c])) 376message.Contents.RemoveAt(c);
ChatCompletion\OpenTelemetryChatClient.cs (3)
459foreach (FunctionResultContent frc in message.Contents.OfType<FunctionResultContent>()) 520var toolCalls = message.Contents.OfType<FunctionCallContent>().Select(fc => new ToolCall 543string content = string.Concat(message.Contents.OfType<TextContent>().Select(c => c.Text));
Microsoft.Extensions.AI.Abstractions (5)
ChatCompletion\ChatMessage.cs (5)
54/// Gets or sets the text of the first <see cref="TextContent"/> instance in <see cref="Contents" />. 57/// If there is no <see cref="TextContent"/> instance in <see cref="Contents" />, then the getter returns <see langword="null" />, 63get => Contents.OfType<TextContent>().FirstOrDefault()?.Text; 66if (Contents.OfType<TextContent>().FirstOrDefault() is { } textContent) 72Contents.Add(new TextContent(value));
Microsoft.Extensions.AI.Abstractions.Tests (43)
ChatCompletion\ChatMessageTests.cs (43)
18Assert.Empty(message.Contents); 21Assert.NotNull(message.Contents); 22Assert.Same(message.Contents, message.Contents); 23Assert.Empty(message.Contents); 38Assert.Same(message.Contents, message.Contents); 41Assert.Empty(message.Contents); 45Assert.Single(message.Contents); 46TextContent tc = Assert.IsType<TextContent>(message.Contents[0]); 78Assert.Same(message.Contents, message.Contents); 81Assert.Empty(message.Contents); 86Assert.Equal(messageCount, message.Contents.Count); 89TextContent tc = Assert.IsType<TextContent>(message.Contents[i]); 134TextContent textContent = Assert.IsType<TextContent>(message.Contents[3]); 142Assert.Same(textContent, message.Contents[3]); 150Assert.Empty(message.Contents); 155Assert.Single(message.Contents); 156TextContent textContent = Assert.IsType<TextContent>(message.Contents[0]); 169Assert.Equal(3, message.Contents.Count); 173Assert.Equal(4, message.Contents.Count); 177Assert.Equal(4, message.Contents.Count); 179message.Contents.RemoveAt(3); 180Assert.Equal(3, message.Contents.Count); 184Assert.Equal(4, message.Contents.Count); 192Assert.IsType<List<AIContent>>(new ChatMessage().Contents); 199Assert.Empty(message.Contents); 204Assert.Same(contents, message.Contents); 207Assert.Same(contents, message.Contents); 210Assert.NotNull(message.Contents); 211Assert.NotSame(contents, message.Contents); 212Assert.Empty(message.Contents); 314Assert.NotNull(deserializedMessage.Contents); 315Assert.Equal(items.Count, deserializedMessage.Contents.Count); 317var textContent = deserializedMessage.Contents[0] as TextContent; 325var imageContent = deserializedMessage.Contents[1] as ImageContent; 334var dataContent = deserializedMessage.Contents[2] as DataContent; 343var audioContent = deserializedMessage.Contents[3] as AudioContent; 352imageContent = deserializedMessage.Contents[4] as ImageContent; 361textContent = deserializedMessage.Contents[5] as TextContent; 369var functionCallContent = deserializedMessage.Contents[6] as FunctionCallContent; 377var functionResultContent = deserializedMessage.Contents[7] as FunctionResultContent;
Microsoft.Extensions.AI.AzureAIInference (5)
AzureAIInferenceChatClient.cs (5)
103returnMessage.Contents.Add(callContent); 110returnMessage.Contents.Add(new TextContent(choice.Message.Content) 429foreach (AIContent item in input.Contents) 453yield return new ChatRequestUserMessage(input.Contents.Select(static (AIContent item) => item switch 466foreach (var content in input.Contents)
Microsoft.Extensions.AI.AzureAIInference.Tests (1)
AzureAIInferenceChatClientTests.cs (1)
134Assert.Single(response.Message.Contents);
Microsoft.Extensions.AI.Integration.Tests (5)
PromptBasedFunctionCallingChatClient.cs (5)
61for (var itemIndex = 0; itemIndex < message.Contents.Count; itemIndex++) 63if (message.Contents[itemIndex] is FunctionResultContent frc) 67message.Contents[itemIndex] = new TextContent( 70else if (message.Contents[itemIndex] is FunctionCallContent fcc) 74message.Contents[itemIndex] = new TextContent(
Microsoft.Extensions.AI.Ollama (1)
OllamaChatClient.cs (1)
322foreach (var item in content.Contents)
Microsoft.Extensions.AI.Ollama.Tests (1)
OllamaChatClientTests.cs (1)
106Assert.Single(response.Message.Contents);
Microsoft.Extensions.AI.OpenAI (5)
OpenAIChatClient.cs (5)
116returnMessage.Contents.Add(aiContent); 131returnMessage.Contents.Add(callContent); 589foreach (AIContent item in input.Contents) 613yield return new UserChatMessage(input.Contents.Select(static (AIContent item) => item switch 627foreach (var content in input.Contents)
Microsoft.Extensions.AI.OpenAI.Tests (1)
OpenAIChatClientTests.cs (1)
176Assert.Single(response.Message.Contents);