23 lines
881 B
Python
23 lines
881 B
Python
"""LLM provider factory - returns provider by config."""
|
|
|
|
from app.config import get_settings
|
|
from app.services.llm.base import BaseLLMProvider
|
|
from app.services.llm.openai_vision import OpenAIVisionProvider
|
|
from app.services.llm.claude_vision import ClaudeVisionProvider
|
|
from app.services.llm.deepseek_vision import DeepSeekVisionProvider
|
|
from app.services.llm.custom_openai_vision import CustomOpenAICompatibleProvider
|
|
|
|
|
|
def get_llm_provider() -> BaseLLMProvider:
|
|
settings = get_settings()
|
|
provider = (settings.llm_provider or "openai").lower()
|
|
if provider == "openai":
|
|
return OpenAIVisionProvider()
|
|
if provider == "anthropic":
|
|
return ClaudeVisionProvider()
|
|
if provider == "deepseek":
|
|
return DeepSeekVisionProvider()
|
|
if provider == "custom_openai":
|
|
return CustomOpenAICompatibleProvider()
|
|
return OpenAIVisionProvider()
|