2026-05-18 16:32:42 +08:00
|
|
|
"""Initialize the app.services.llm package."""
|
2026-05-14 15:07:34 +08:00
|
|
|
|
2026-05-18 16:32:42 +08:00
|
|
|
from .base_client import BaseLLMClient, LLMConfig, LLMProvider, LLMResponse
|
2026-05-14 15:07:34 +08:00
|
|
|
from .deepseek_client import DeepSeekClient
|
2026-05-18 16:32:42 +08:00
|
|
|
from .llm_factory import LLMFactory, get_llm_client
|
2026-05-14 15:07:34 +08:00
|
|
|
from .qwen_client import QwenClient, QwenVLClient
|
2026-05-18 16:32:42 +08:00
|
|
|
# Keep package boundaries explicit so backend imports stay predictable.
|
|
|
|
|
|
2026-05-14 15:07:34 +08:00
|
|
|
|
|
|
|
|
__all__ = [
|
2026-05-18 16:32:42 +08:00
|
|
|
"LLMFactory",
|
|
|
|
|
"get_llm_client",
|
|
|
|
|
"BaseLLMClient",
|
|
|
|
|
"LLMResponse",
|
|
|
|
|
"LLMConfig",
|
|
|
|
|
"LLMProvider",
|
|
|
|
|
"DeepSeekClient",
|
|
|
|
|
"QwenClient",
|
|
|
|
|
"QwenVLClient",
|
|
|
|
|
"DocumentSummarizer",
|
|
|
|
|
"summarize_document",
|
|
|
|
|
"DocumentSummary",
|
2026-05-14 18:09:15 +08:00
|
|
|
]
|
2026-05-18 16:32:42 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
def __getattr__(name: str):
|
|
|
|
|
"""Handle getattr for this module."""
|
|
|
|
|
if name in {"DocumentSummarizer", "summarize_document", "DocumentSummary"}:
|
|
|
|
|
from .document_summarizer import DocumentSummarizer, DocumentSummary, summarize_document
|
|
|
|
|
|
|
|
|
|
return {
|
|
|
|
|
"DocumentSummarizer": DocumentSummarizer,
|
|
|
|
|
"summarize_document": summarize_document,
|
|
|
|
|
"DocumentSummary": DocumentSummary,
|
|
|
|
|
}[name]
|
|
|
|
|
raise AttributeError(name)
|