Import source: axon/config
Import the existing local project snapshot. This commit organizes existing files; it does not represent newly developed functionality.
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
from pydantic_settings import BaseSettings
|
||||
|
||||
|
||||
class Settings(BaseSettings):
|
||||
brave_api_key: str | None = None
|
||||
serper_api_key: str | None = None
|
||||
redis_url: str | None = "redis://localhost:6379"
|
||||
api_keys: str | None = None
|
||||
litellm_base_url: str = "http://localhost:4000"
|
||||
litellm_api_key: str | None = None
|
||||
synthesis_model: str = "claude-sonnet-4-6"
|
||||
reranker_model: str = "BAAI/bge-reranker-v2-m3"
|
||||
port: int = 8000
|
||||
max_concurrent_scrapes: int = 10
|
||||
scrape_timeout: int = 5
|
||||
rate_limit_per_minute: int = 60
|
||||
extract_timeout: int = 10
|
||||
crawl_max_pages: int = 50
|
||||
crawl_max_depth: int = 3
|
||||
index_db_path: str = "axon_index.sqlite3"
|
||||
enable_browser_fallback: bool = False
|
||||
|
||||
@property
|
||||
def api_key_list(self) -> list[str]:
|
||||
if not self.api_keys:
|
||||
return []
|
||||
return [k.strip() for k in self.api_keys.split(",") if k.strip()]
|
||||
|
||||
model_config = {"env_file": ".env", "extra": "ignore"}
|
||||
|
||||
|
||||
settings = Settings()
|
||||
Reference in New Issue
Block a user