Spaces:
Sleeping
Sleeping
| import os | |
| from dotenv import load_dotenv | |
| from pydantic_settings import BaseSettings | |
| from typing import List | |
| # Load environment variables from .env file | |
| load_dotenv() | |
| class Settings(BaseSettings): | |
| """ | |
| Loads and validates application settings from environment variables. | |
| """ | |
| # API Keys | |
| GROQ_API_KEY: str = os.getenv("GROQ_API_KEY", "") | |
| GOOGLE_API_KEY: str = os.getenv("GOOGLE_API_KEY", "") | |
| TAVILY_API_KEY: str = os.getenv("TAVILY_API_KEY", "") | |
| # JWT Settings | |
| JWT_SECRET_KEY: str = os.getenv("JWT_SECRET_KEY", "default_secret") | |
| JWT_ALGORITHM: str = os.getenv("JWT_ALGORITHM", "HS256") | |
| ACCESS_TOKEN_EXPIRE_MINUTES: int = int(os.getenv("ACCESS_TOKEN_EXPIRE_MINUTES", 30)) | |
| # Database | |
| DATABASE_URL: str = "insucompass.db" | |
| # Logging | |
| LOG_LEVEL: str = os.getenv("LOG_LEVEL", "INFO") | |
| # LLM Settings | |
| GROQ_MODEL_NAME: str = "llama-3.3-70b-versatile" | |
| GROQ_FAST_MODEL_NAME: str = "llama-3.1-8b-instant" | |
| GEMINI_PRO_MODEL_NAME: str = "gemini-2.5-pro" | |
| GEMINI_MODEL_NAME: str = "gemini-2.5-flash" #"gemini-2.5-flash" # "gemini-2.0-flash" | |
| GEMINI_FAST_MODEL_NAME: str = "gemini-2.5-flash-lite-preview-06-17" | |
| # CRAWLING JOBS CONFIGURATION | |
| CRAWLING_JOBS: List[dict] = [ | |
| { | |
| "name": "HealthCare.gov Crawl", | |
| "start_url": "https://www.healthcare.gov/", | |
| "method": "requests_crawl", | |
| "domain_lock": "www.healthcare.gov", | |
| "crawl_depth": 2, | |
| "content_types": ["pdf", "html"], | |
| "status": "active" | |
| }, | |
| { | |
| "name": "CMS.gov Regulations & Guidance Crawl", | |
| "start_url": "https://www.cms.gov/regulations-and-guidance", | |
| "method": "selenium_crawl", | |
| "domain_lock": "www.cms.gov", | |
| "crawl_depth": 2, | |
| "content_types": ["pdf", "html"], | |
| "status": "active" | |
| }, | |
| { | |
| "name": "Medicaid.gov Crawl", | |
| "start_url": "https://www.medicaid.gov/", | |
| "method": "requests_crawl", | |
| "domain_lock": "www.medicaid.gov", | |
| "crawl_depth": 2, | |
| "content_types": ["pdf", "html"], | |
| "status": "active" | |
| }, | |
| { | |
| "name": "Medicare.gov Crawl", | |
| "start_url": "https://www.medicare.gov/", | |
| "method": "selenium_crawl", | |
| "domain_lock": "www.medicare.gov", | |
| "crawl_depth": 1, | |
| "content_types": ["html"], | |
| "status": "active" | |
| }, | |
| { | |
| "name": "TRICARE Publications Crawl", | |
| "start_url": "https://www.tricare.mil/publications", | |
| "method": "selenium_crawl", | |
| "domain_lock": "www.tricare.mil", | |
| "crawl_depth": 1, | |
| "content_types": ["pdf", "html"], | |
| "status": "active" | |
| }, | |
| { | |
| "name": "VA.gov Health Benefits Crawl", | |
| "start_url": "https://www.va.gov/health-care/", | |
| "method": "requests_crawl", | |
| "domain_lock": "www.va.gov", | |
| "crawl_depth": 2, | |
| "content_types": ["html"], | |
| "status": "active" | |
| }, | |
| ] | |
| class Config: | |
| case_sensitive = True | |
| # Instantiate settings | |
| settings = Settings() |