1 write to MessagePart
Aspire.Dashboard (1)
Model\GenAI\GenAIItemPartViewModel.cs (1)
50MessagePart = part,
41 references to MessagePart
Aspire.Dashboard (11)
Components\Dialogs\GenAIVisualizerDialog.razor.cs (2)
139if (part.MessagePart is ToolCallRequestPart { } p && p.Id == id) 256switch (itemPart.MessagePart?.Type)
Components_Dialogs_GenAIVisualizerDialog_razor.g.cs (2)
1460if (itemPart.MessagePart is ToolCallRequestPart toolCallPart && !string.IsNullOrEmpty(toolCallPart.Name)) 1509else if (itemPart.MessagePart is ToolCallResponsePart toolCallResponsePart && !string.IsNullOrEmpty(toolCallResponsePart.Id))
Model\GenAI\GenAIItemViewModel.cs (3)
40if (ItemParts.Any(p => p.MessagePart?.Type == MessagePart.ToolCallType)) 49if (ItemParts.Any(p => p.MessagePart?.Type == MessagePart.ToolCallType)) 53if (ItemParts.Any(p => p.MessagePart?.Type == MessagePart.ToolCallResponseType))
Model\GenAI\GenAIVisualizerDialogViewModel.cs (4)
207if (partViewModel.MessagePart is TextPart textPart) 214else if (partViewModel.MessagePart is ToolCallRequestPart toolCallRequestPart) 221else if (partViewModel.MessagePart is ToolCallResponsePart toolCallResponsePart) 228else if (partViewModel.MessagePart is GenericPart)
Aspire.Dashboard.Tests (30)
Model\GenAIVisualizerDialogViewModelTests.cs (30)
197p => Assert.Equal("System!", Assert.IsType<TextPart>(p.MessagePart).Content)); 204p => Assert.Equal("User!", Assert.IsType<TextPart>(p.MessagePart).Content)); 211p => Assert.Equal("Assistant!", Assert.IsType<TextPart>(p.MessagePart).Content)); 357p => Assert.Equal("System!", Assert.IsType<TextPart>(p.MessagePart).Content)); 364p => Assert.Equal("User!", Assert.IsType<TextPart>(p.MessagePart).Content)); 371p => Assert.Equal("Assistant!", Assert.IsType<TextPart>(p.MessagePart).Content)); 564p => Assert.Equal("System!", Assert.IsType<TextPart>(p.MessagePart).Content)); 571p => Assert.Equal("User!", Assert.IsType<TextPart>(p.MessagePart).Content)); 580var toolCallRequestPart = Assert.IsType<ToolCallRequestPart>(p.MessagePart); 590p => Assert.Equal(@"[""Jack"",""Jane""]", Assert.IsType<ToolCallResponsePart>(p.MessagePart).Response!.ToJsonString())); 597p => Assert.Equal("Output!", Assert.IsType<TextPart>(p.MessagePart).Content)); 760p => Assert.Equal("", Assert.IsType<TextPart>(p.MessagePart).Content)); 767p => Assert.Equal("", Assert.IsType<TextPart>(p.MessagePart).Content)); 776var toolCallRequestPart = Assert.IsType<ToolCallRequestPart>(p.MessagePart); 786p => Assert.Null(Assert.IsType<ToolCallResponsePart>(p.MessagePart).Response)); 793p => Assert.Equal("", Assert.IsType<TextPart>(p.MessagePart).Content)); 897p => Assert.Equal("You are a helpful assistant.", Assert.IsType<TextPart>(p.MessagePart).Content)); 904p => Assert.Equal("Hello, how are you?", Assert.IsType<TextPart>(p.MessagePart).Content)); 911p => Assert.Equal("I'm doing well, thank you!", Assert.IsType<TextPart>(p.MessagePart).Content)); 973p => Assert.Equal("You are a coding assistant.", Assert.IsType<TextPart>(p.MessagePart).Content)); 980p => Assert.Equal("Write a hello world program.", Assert.IsType<TextPart>(p.MessagePart).Content)); 987p => Assert.Equal("Here's a simple hello world program...", Assert.IsType<TextPart>(p.MessagePart).Content)); 1057p => Assert.Equal("You are a helpful assistant.", Assert.IsType<TextPart>(p.MessagePart).Content)); 1064p => Assert.Equal("What is 2+2?", Assert.IsType<TextPart>(p.MessagePart).Content)); 1071p => Assert.Equal("Follow up question.", Assert.IsType<TextPart>(p.MessagePart).Content)); 1078p => Assert.Equal("The answer is 4.", Assert.IsType<TextPart>(p.MessagePart).Content)); 1085p => Assert.Equal("Follow up answer.", Assert.IsType<TextPart>(p.MessagePart).Content)); 1362p => Assert.Equal("You are a helpful assistant.", Assert.IsType<TextPart>(p.MessagePart).Content)); 1368p => Assert.Equal("Hello!", Assert.IsType<TextPart>(p.MessagePart).Content)); 1374p => Assert.Equal("Hi there!", Assert.IsType<TextPart>(p.MessagePart).Content));