mirror of
https://github.com/csunny/DB-GPT.git
synced 2025-08-16 15:31:19 +00:00
64 lines
2.3 KiB
Python
64 lines
2.3 KiB
Python
"""Proxy models."""
|
|
|
|
from typing import TYPE_CHECKING
|
|
|
|
if TYPE_CHECKING:
|
|
from dbgpt.model.proxy.llms.chatgpt import OpenAILLMClient
|
|
from dbgpt.model.proxy.llms.claude import ClaudeLLMClient
|
|
from dbgpt.model.proxy.llms.deepseek import DeepseekLLMClient
|
|
from dbgpt.model.proxy.llms.gemini import GeminiLLMClient
|
|
from dbgpt.model.proxy.llms.gitee import GiteeLLMClient
|
|
from dbgpt.model.proxy.llms.moonshot import MoonshotLLMClient
|
|
from dbgpt.model.proxy.llms.ollama import OllamaLLMClient
|
|
from dbgpt.model.proxy.llms.siliconflow import SiliconFlowLLMClient
|
|
from dbgpt.model.proxy.llms.spark import SparkLLMClient
|
|
from dbgpt.model.proxy.llms.tongyi import TongyiLLMClient
|
|
from dbgpt.model.proxy.llms.wenxin import WenxinLLMClient
|
|
from dbgpt.model.proxy.llms.yi import YiLLMClient
|
|
from dbgpt.model.proxy.llms.zhipu import ZhipuLLMClient
|
|
|
|
|
|
def __lazy_import(name):
|
|
module_path = {
|
|
"OpenAILLMClient": "dbgpt.model.proxy.llms.chatgpt",
|
|
"ClaudeLLMClient": "dbgpt.model.proxy.llms.claude",
|
|
"GeminiLLMClient": "dbgpt.model.proxy.llms.gemini",
|
|
"SiliconFlowLLMClient": "dbgpt.model.proxy.llms.siliconflow",
|
|
"SparkLLMClient": "dbgpt.model.proxy.llms.spark",
|
|
"TongyiLLMClient": "dbgpt.model.proxy.llms.tongyi",
|
|
"WenxinLLMClient": "dbgpt.model.proxy.llms.wenxin",
|
|
"ZhipuLLMClient": "dbgpt.model.proxy.llms.zhipu",
|
|
"YiLLMClient": "dbgpt.model.proxy.llms.yi",
|
|
"MoonshotLLMClient": "dbgpt.model.proxy.llms.moonshot",
|
|
"OllamaLLMClient": "dbgpt.model.proxy.llms.ollama",
|
|
"DeepseekLLMClient": "dbgpt.model.proxy.llms.deepseek",
|
|
"GiteeLLMClient": "dbgpt.model.proxy.llms.gitee",
|
|
}
|
|
|
|
if name in module_path:
|
|
module = __import__(module_path[name], fromlist=[name])
|
|
return getattr(module, name)
|
|
else:
|
|
raise AttributeError(f"module {__name__} has no attribute {name}")
|
|
|
|
|
|
def __getattr__(name):
|
|
return __lazy_import(name)
|
|
|
|
|
|
__all__ = [
|
|
"OpenAILLMClient",
|
|
"ClaudeLLMClient",
|
|
"GeminiLLMClient",
|
|
"TongyiLLMClient",
|
|
"ZhipuLLMClient",
|
|
"WenxinLLMClient",
|
|
"SiliconFlowLLMClient",
|
|
"SparkLLMClient",
|
|
"YiLLMClient",
|
|
"MoonshotLLMClient",
|
|
"OllamaLLMClient",
|
|
"DeepseekLLMClient",
|
|
"GiteeLLMClient",
|
|
]
|