Files
AIChatRoom/backend/adapters/__init__.py

59 lines
1.5 KiB
Python
Raw Normal View History

"""
AI接口适配器模块
提供统一的AI调用接口
"""
from .base_adapter import BaseAdapter, AdapterResponse, ChatMessage
from .minimax_adapter import MiniMaxAdapter
from .zhipu_adapter import ZhipuAdapter
from .openrouter_adapter import OpenRouterAdapter
from .kimi_adapter import KimiAdapter
from .deepseek_adapter import DeepSeekAdapter
from .gemini_adapter import GeminiAdapter
from .ollama_adapter import OllamaAdapter
from .llmstudio_adapter import LLMStudioAdapter
__all__ = [
"BaseAdapter",
"AdapterResponse",
"ChatMessage",
"MiniMaxAdapter",
"ZhipuAdapter",
"OpenRouterAdapter",
"KimiAdapter",
"DeepSeekAdapter",
"GeminiAdapter",
"OllamaAdapter",
"LLMStudioAdapter",
]
# 适配器注册表
ADAPTER_REGISTRY = {
"minimax": MiniMaxAdapter,
"zhipu": ZhipuAdapter,
"openrouter": OpenRouterAdapter,
"kimi": KimiAdapter,
"deepseek": DeepSeekAdapter,
"gemini": GeminiAdapter,
"ollama": OllamaAdapter,
"llmstudio": LLMStudioAdapter,
}
def get_adapter(provider_type: str) -> type:
"""
根据提供商类型获取对应的适配器类
Args:
provider_type: 提供商类型标识
Returns:
适配器类
Raises:
ValueError: 未知的提供商类型
"""
adapter_class = ADAPTER_REGISTRY.get(provider_type.lower())
if not adapter_class:
raise ValueError(f"未知的AI提供商类型: {provider_type}")
return adapter_class