Files
rag-ingestor/app/config.py

34 lines
740 B
Python

from pydantic import Field
from pydantic_settings import BaseSettings, SettingsConfigDict
class Settings(BaseSettings):
model_config = SettingsConfigDict(env_file=".env", env_file_encoding="utf-8", extra="ignore")
nextcloud_webdav_url: str
nextcloud_user: str
nextcloud_app_password: str
ollama_url: str
ollama_embed_model: str
qdrant_url: str
qdrant_collection: str
webhook_secret: str
ingest_root: str = "Documents/THB/Studium"
chunk_size_words: int = 500
chunk_overlap_words: int = 50
log_level: str = "INFO"
_settings: Settings | None = None
def get_settings() -> Settings:
global _settings
if _settings is None:
_settings = Settings()
return _settings