|
1 | 1 | # Copyright (c) Microsoft. All rights reserved.
|
2 | 2 |
|
3 |
| -from semantic_kernel.agents.agent import Agent, AgentResponseItem, AgentThread |
4 |
| -from semantic_kernel.agents.autogen.autogen_conversable_agent import ( |
5 |
| - AutoGenConversableAgent, |
6 |
| - AutoGenConversableAgentThread, |
7 |
| -) |
8 |
| -from semantic_kernel.agents.azure_ai.azure_ai_agent import AzureAIAgent, AzureAIAgentThread |
9 |
| -from semantic_kernel.agents.azure_ai.azure_ai_agent_settings import AzureAIAgentSettings |
10 |
| -from semantic_kernel.agents.bedrock.bedrock_agent import BedrockAgent, BedrockAgentThread |
11 |
| -from semantic_kernel.agents.chat_completion.chat_completion_agent import ChatCompletionAgent, ChatHistoryAgentThread |
12 |
| -from semantic_kernel.agents.group_chat.agent_chat import AgentChat |
13 |
| -from semantic_kernel.agents.group_chat.agent_group_chat import AgentGroupChat |
14 |
| -from semantic_kernel.agents.open_ai.azure_assistant_agent import AzureAssistantAgent |
15 |
| -from semantic_kernel.agents.open_ai.open_ai_assistant_agent import AssistantAgentThread, OpenAIAssistantAgent |
| 3 | +import importlib |
16 | 4 |
|
17 |
| -__all__ = [ |
18 |
| - "Agent", |
19 |
| - "AgentChat", |
20 |
| - "AgentGroupChat", |
21 |
| - "AgentResponseItem", |
22 |
| - "AgentThread", |
23 |
| - "AssistantAgentThread", |
24 |
| - "AutoGenConversableAgent", |
25 |
| - "AutoGenConversableAgentThread", |
26 |
| - "AzureAIAgent", |
27 |
| - "AzureAIAgentSettings", |
28 |
| - "AzureAIAgentThread", |
29 |
| - "AzureAssistantAgent", |
30 |
| - "BedrockAgent", |
31 |
| - "BedrockAgentThread", |
32 |
| - "ChatCompletionAgent", |
33 |
| - "ChatHistoryAgentThread", |
34 |
| - "OpenAIAssistantAgent", |
35 |
| -] |
| 5 | +_AGENTS = { |
| 6 | + "Agent": ".agent", |
| 7 | + "AgentResponseItem": ".agent", |
| 8 | + "AgentThread": ".agent", |
| 9 | + "AutoGenConversableAgent": ".autogen.autogen_conversable_agent", |
| 10 | + "AutoGenConversableAgentThread": ".autogen.autogen_conversable_agent", |
| 11 | + "AzureAIAgent": ".azure_ai.azure_ai_agent", |
| 12 | + "AzureAIAgentSettings": ".azure_ai.azure_ai_agent_settings", |
| 13 | + "AzureAIAgentThread": ".azure_ai.azure_ai_agent", |
| 14 | + "BedrockAgent": ".bedrock.bedrock_agent", |
| 15 | + "BedrockAgentThread": ".bedrock.bedrock_agent", |
| 16 | + "ChatCompletionAgent": ".chat_completion.chat_completion_agent", |
| 17 | + "ChatHistoryAgentThread": ".chat_completion.chat_completion_agent", |
| 18 | + "AgentChat": ".group_chat.agent_chat", |
| 19 | + "AgentGroupChat": ".group_chat.agent_group_chat", |
| 20 | + "AzureAssistantAgent": ".open_ai.azure_assistant_agent", |
| 21 | + "AssistantAgentThread": ".open_ai.open_ai_assistant_agent", |
| 22 | + "OpenAIAssistantAgent": ".open_ai.open_ai_assistant_agent", |
| 23 | +} |
| 24 | + |
| 25 | + |
| 26 | +def __getattr__(name: str): |
| 27 | + if name in _AGENTS: |
| 28 | + submod_name = _AGENTS[name] |
| 29 | + module = importlib.import_module(submod_name, package=__name__) |
| 30 | + return getattr(module, name) |
| 31 | + raise AttributeError(f"module {__name__} has no attribute {name}") |
| 32 | + |
| 33 | + |
| 34 | +def __dir__(): |
| 35 | + return list(_AGENTS.keys()) |
0 commit comments