22 lines
991 B
Python
22 lines
991 B
Python
from functools import lru_cache
|
|
from pydantic import Field
|
|
from pydantic_settings import BaseSettings, SettingsConfigDict
|
|
|
|
|
|
class Settings(BaseSettings):
|
|
model_config = SettingsConfigDict(env_file=".env", env_file_encoding="utf-8", case_sensitive=False, extra="ignore")
|
|
app_name: str = Field("AIMNOTE RAG Gateway", env="RAG_GATEWAY_APP_NAME")
|
|
api_prefix: str = "/rag"
|
|
environment: str = Field("development", env="RAG_GATEWAY_ENV")
|
|
lightrag_url: str = Field("http://127.0.0.1:7777", env="LIGHTRAG_URL")
|
|
lightrag_api_key: str = Field("", env="LIGHTRAG_API_KEY")
|
|
supabase_rest_url: str = Field("http://127.0.0.1:54321/rest/v1", env="SUPABASE_REST_URL")
|
|
supabase_key: str = Field("", env="SUPABASE_SERVICE_ROLE_KEY")
|
|
embedding_base_url: str = Field("http://127.0.0.1:11434/v1", env="EMBEDDING_BASE_URL")
|
|
embedding_model: str = Field("qwen3-embedding:8b", env="EMBEDDING_MODEL")
|
|
|
|
|
|
@lru_cache()
|
|
def get_gateway_settings() -> Settings:
|
|
return Settings()
|