Added Application HolidayViewer
This commit is contained in:
39
src/components/admin/admin_db_manager.py
Normal file
39
src/components/admin/admin_db_manager.py
Normal file
@@ -0,0 +1,39 @@
|
||||
from dataclasses import dataclass, field
|
||||
|
||||
from ai.mcp_client import InProcessMCPClientCustomTools
|
||||
from ai.mcp_tools import MCPServerTools
|
||||
from auth.auth_manager import AuthManager
|
||||
from components.admin.constants import ADMIN_SETTINGS_ENTRY
|
||||
from config import OLLAMA_HOST
|
||||
from core.settings_management import SettingsManager, NestedSettingsManager
|
||||
from core.utils import split_host_port
|
||||
|
||||
|
||||
@dataclass
|
||||
class AiBuddySettingsEntry:
|
||||
ollama_ip: str = ""
|
||||
ollama_port: int = 11434
|
||||
ollama_model: str = "mistral"
|
||||
llm_mode: str = InProcessMCPClientCustomTools.ID
|
||||
available_tools: list = field(default_factory=MCPServerTools.list_tools)
|
||||
|
||||
def __post_init__(self):
|
||||
host, port = split_host_port(OLLAMA_HOST)
|
||||
self.ollama_ip = host
|
||||
self.ollama_port = port
|
||||
|
||||
|
||||
@dataclass
|
||||
class AdminSettings:
|
||||
ai_buddy: AiBuddySettingsEntry = field(default_factory=AiBuddySettingsEntry)
|
||||
|
||||
|
||||
class AdminDbManager:
|
||||
def __init__(self, session: dict, settings_manager: SettingsManager):
|
||||
self._session = session
|
||||
self._settings_manager = settings_manager
|
||||
self.ai_buddy = NestedSettingsManager(AuthManager.admin_session(),
|
||||
settings_manager,
|
||||
ADMIN_SETTINGS_ENTRY,
|
||||
AdminSettings,
|
||||
"ai_buddy")
|
||||
Reference in New Issue
Block a user