44using Examples . Chat ;
55using Examples . Mcp ;
66using MaIN . Core ;
7- using MaIN . Domain . Exceptions ;
87using Microsoft . Extensions . Configuration ;
98using Microsoft . Extensions . DependencyInjection ;
109
11-
1210var Banner = @"
1311███╗ ███╗ █████╗ ██╗███╗ ██╗ ███████╗██╗ ██╗ █████╗ ███╗ ███╗██████╗ ██╗ ███████╗███████╗
1412████╗ ████║██╔══██╗██║████╗ ██║ ██╔════╝╚██╗██╔╝██╔══██╗████╗ ████║██╔══██╗██║ ██╔════╝██╔════╝
@@ -148,50 +146,53 @@ async Task RunSelectedExample(IServiceProvider serviceProvider)
148146}
149147
150148
151- public class ExampleRegistry ( IServiceProvider serviceProvider )
149+ namespace Examples
152150{
153- public List < ( string Name , IExample Instance ) > GetAvailableExamples ( )
151+ public class ExampleRegistry ( IServiceProvider serviceProvider )
154152 {
155- return new List < ( string , IExample ) >
153+ public List < ( string Name , IExample Instance ) > GetAvailableExamples ( )
156154 {
157- ( "\u25a0 Basic Chat" , serviceProvider . GetRequiredService < ChatExample > ( ) ) ,
158- ( "\u25a0 Chat with Files" , serviceProvider . GetRequiredService < ChatWithFilesExample > ( ) ) ,
159- ( "\u25a0 Chat with custom grammar" , serviceProvider . GetRequiredService < ChatCustomGrammarExample > ( ) ) ,
160- ( "\u25a0 Chat with Files from stream" , serviceProvider . GetRequiredService < ChatWithFilesFromStreamExample > ( ) ) ,
161- ( "\u25a0 Chat with Vision" , serviceProvider . GetRequiredService < ChatWithVisionExample > ( ) ) ,
162- ( "\u25a0 Chat with Tools (simple)" , serviceProvider . GetRequiredService < ChatExampleToolsSimple > ( ) ) ,
163- ( "\u25a0 Chat with Image Generation" , serviceProvider . GetRequiredService < ChatWithImageGenExample > ( ) ) ,
164- ( "\u25a0 Chat from Existing" , serviceProvider . GetRequiredService < ChatFromExistingExample > ( ) ) ,
165- ( "\u25a0 Chat with reasoning" , serviceProvider . GetRequiredService < ChatWithReasoningExample > ( ) ) ,
166- ( "\u25a0 Basic Agent" , serviceProvider . GetRequiredService < AgentExample > ( ) ) ,
167- ( "\u25a0 Conversation Agent" , serviceProvider . GetRequiredService < AgentConversationExample > ( ) ) ,
168- ( "\u25a0 Agent with Redirect" , serviceProvider . GetRequiredService < AgentWithRedirectExample > ( ) ) ,
169- ( "\u25a0 Agent with Redirect (Multi backends)" , serviceProvider . GetRequiredService < MultiBackendAgentWithRedirectExample > ( ) ) ,
170- ( "\u25a0 Agent with Redirect Image" , serviceProvider . GetRequiredService < AgentWithRedirectImageExample > ( ) ) ,
171- ( "\u25a0 Agent with Become" , serviceProvider . GetRequiredService < AgentWithBecomeExample > ( ) ) ,
172- ( "\u25a0 Agent with Tools (advanced)" , serviceProvider . GetRequiredService < AgentExampleTools > ( ) ) ,
173- ( "\u25a0 Agent with Knowledge" , serviceProvider . GetRequiredService < AgentWithKnowledgeFileExample > ( ) ) ,
174- ( "\u25a0 Agent with Web Knowledge" , serviceProvider . GetRequiredService < AgentWithKnowledgeWebExample > ( ) ) ,
175- ( "\u25a0 Agent with Mcp Knowledge" , serviceProvider . GetRequiredService < AgentWithKnowledgeMcpExample > ( ) ) ,
176- ( "\u25a0 Agent with API Data Source" , serviceProvider . GetRequiredService < AgentWithApiDataSourceExample > ( ) ) ,
177- ( "\u25a0 Agents Talking to Each Other" , serviceProvider . GetRequiredService < AgentTalkingToEachOtherExample > ( ) ) ,
178- ( "\u25a0 Agents Composed as Flow" , serviceProvider . GetRequiredService < AgentsComposedAsFlowExample > ( ) ) ,
179- ( "\u25a0 Agents Flow Loaded" , serviceProvider . GetRequiredService < AgentsFlowLoadedExample > ( ) ) ,
180- ( "\u25a0 OpenAi Chat" , serviceProvider . GetRequiredService < ChatExampleOpenAi > ( ) ) ,
181- ( "\u25a0 OpenAi Chat with image" , serviceProvider . GetRequiredService < ChatWithImageGenOpenAiExample > ( ) ) ,
182- ( "\u25a0 OpenAi Agent with Web Data Source" , serviceProvider . GetRequiredService < AgentWithWebDataSourceOpenAiExample > ( ) ) ,
183- ( "\u25a0 Gemini Chat" , serviceProvider . GetRequiredService < ChatExampleGemini > ( ) ) ,
184- ( "\u25a0 Gemini Chat with grammar" , serviceProvider . GetRequiredService < ChatGrammarExampleGemini > ( ) ) ,
185- ( "\u25a0 Gemini Chat with image" , serviceProvider . GetRequiredService < ChatWithImageGenGeminiExample > ( ) ) ,
186- ( "\u25a0 Gemini Chat with files" , serviceProvider . GetRequiredService < ChatWithFilesExampleGemini > ( ) ) ,
187- ( "\u25a0 DeepSeek Chat with reasoning" , serviceProvider . GetRequiredService < ChatWithReasoningDeepSeekExample > ( ) ) ,
188- ( "\u25a0 GroqCloud Chat" , serviceProvider . GetRequiredService < ChatExampleGroqCloud > ( ) ) ,
189- ( "\u25a0 Anthropic Chat" , serviceProvider . GetRequiredService < ChatExampleAnthropic > ( ) ) ,
190- ( "\u25a0 xAI Chat" , serviceProvider . GetRequiredService < ChatExampleXai > ( ) ) ,
191- ( "\u25a0 McpClient example" , serviceProvider . GetRequiredService < McpExample > ( ) ) ,
192- ( "\u25a0 McpAgent example" , serviceProvider . GetRequiredService < McpAgentsExample > ( ) ) ,
193- ( "\u25a0 Chat with TTS example" , serviceProvider . GetRequiredService < ChatWithTextToSpeechExample > ( ) ) ,
194- ( "\u25a0 McpAgent example" , serviceProvider . GetRequiredService < McpAgentsExample > ( ) )
195- } ;
155+ return
156+ [
157+ ( "\u25a0 Basic Chat" , serviceProvider . GetRequiredService < ChatExample > ( ) ) ,
158+ ( "\u25a0 Chat with Files" , serviceProvider . GetRequiredService < ChatWithFilesExample > ( ) ) ,
159+ ( "\u25a0 Chat with custom grammar" , serviceProvider . GetRequiredService < ChatCustomGrammarExample > ( ) ) ,
160+ ( "\u25a0 Chat with Files from stream" , serviceProvider . GetRequiredService < ChatWithFilesFromStreamExample > ( ) ) ,
161+ ( "\u25a0 Chat with Vision" , serviceProvider . GetRequiredService < ChatWithVisionExample > ( ) ) ,
162+ ( "\u25a0 Chat with Tools (simple)" , serviceProvider . GetRequiredService < ChatExampleToolsSimple > ( ) ) ,
163+ ( "\u25a0 Chat with Image Generation" , serviceProvider . GetRequiredService < ChatWithImageGenExample > ( ) ) ,
164+ ( "\u25a0 Chat from Existing" , serviceProvider . GetRequiredService < ChatFromExistingExample > ( ) ) ,
165+ ( "\u25a0 Chat with reasoning" , serviceProvider . GetRequiredService < ChatWithReasoningExample > ( ) ) ,
166+ ( "\u25a0 Basic Agent" , serviceProvider . GetRequiredService < AgentExample > ( ) ) ,
167+ ( "\u25a0 Conversation Agent" , serviceProvider . GetRequiredService < AgentConversationExample > ( ) ) ,
168+ ( "\u25a0 Agent with Redirect" , serviceProvider . GetRequiredService < AgentWithRedirectExample > ( ) ) ,
169+ ( "\u25a0 Agent with Redirect (Multi backends)" , serviceProvider . GetRequiredService < MultiBackendAgentWithRedirectExample > ( ) ) ,
170+ ( "\u25a0 Agent with Redirect Image" , serviceProvider . GetRequiredService < AgentWithRedirectImageExample > ( ) ) ,
171+ ( "\u25a0 Agent with Become" , serviceProvider . GetRequiredService < AgentWithBecomeExample > ( ) ) ,
172+ ( "\u25a0 Agent with Tools (advanced)" , serviceProvider . GetRequiredService < AgentExampleTools > ( ) ) ,
173+ ( "\u25a0 Agent with Knowledge" , serviceProvider . GetRequiredService < AgentWithKnowledgeFileExample > ( ) ) ,
174+ ( "\u25a0 Agent with Web Knowledge" , serviceProvider . GetRequiredService < AgentWithKnowledgeWebExample > ( ) ) ,
175+ ( "\u25a0 Agent with Mcp Knowledge" , serviceProvider . GetRequiredService < AgentWithKnowledgeMcpExample > ( ) ) ,
176+ ( "\u25a0 Agent with API Data Source" , serviceProvider . GetRequiredService < AgentWithApiDataSourceExample > ( ) ) ,
177+ ( "\u25a0 Agents Talking to Each Other" , serviceProvider . GetRequiredService < AgentTalkingToEachOtherExample > ( ) ) ,
178+ ( "\u25a0 Agents Composed as Flow" , serviceProvider . GetRequiredService < AgentsComposedAsFlowExample > ( ) ) ,
179+ ( "\u25a0 Agents Flow Loaded" , serviceProvider . GetRequiredService < AgentsFlowLoadedExample > ( ) ) ,
180+ ( "\u25a0 OpenAi Chat" , serviceProvider . GetRequiredService < ChatExampleOpenAi > ( ) ) ,
181+ ( "\u25a0 OpenAi Chat with image" , serviceProvider . GetRequiredService < ChatWithImageGenOpenAiExample > ( ) ) ,
182+ ( "\u25a0 OpenAi Agent with Web Data Source" , serviceProvider . GetRequiredService < AgentWithWebDataSourceOpenAiExample > ( ) ) ,
183+ ( "\u25a0 Gemini Chat" , serviceProvider . GetRequiredService < ChatExampleGemini > ( ) ) ,
184+ ( "\u25a0 Gemini Chat with grammar" , serviceProvider . GetRequiredService < ChatGrammarExampleGemini > ( ) ) ,
185+ ( "\u25a0 Gemini Chat with image" , serviceProvider . GetRequiredService < ChatWithImageGenGeminiExample > ( ) ) ,
186+ ( "\u25a0 Gemini Chat with files" , serviceProvider . GetRequiredService < ChatWithFilesExampleGemini > ( ) ) ,
187+ ( "\u25a0 DeepSeek Chat with reasoning" , serviceProvider . GetRequiredService < ChatWithReasoningDeepSeekExample > ( ) ) ,
188+ ( "\u25a0 GroqCloud Chat" , serviceProvider . GetRequiredService < ChatExampleGroqCloud > ( ) ) ,
189+ ( "\u25a0 Anthropic Chat" , serviceProvider . GetRequiredService < ChatExampleAnthropic > ( ) ) ,
190+ ( "\u25a0 xAI Chat" , serviceProvider . GetRequiredService < ChatExampleXai > ( ) ) ,
191+ ( "\u25a0 McpClient example" , serviceProvider . GetRequiredService < McpExample > ( ) ) ,
192+ ( "\u25a0 McpAgent example" , serviceProvider . GetRequiredService < McpAgentsExample > ( ) ) ,
193+ ( "\u25a0 Chat with TTS example" , serviceProvider . GetRequiredService < ChatWithTextToSpeechExample > ( ) ) ,
194+ ( "\u25a0 McpAgent example" , serviceProvider . GetRequiredService < McpAgentsExample > ( ) )
195+ ] ;
196+ }
196197 }
197198}
0 commit comments