Spaces:
Sleeping
Sleeping
| import os | |
| from dotenv import load_dotenv | |
| load_dotenv() | |
| class Config: | |
| """Central Configuration class for the application.""" | |
| # API Keys | |
| PINECONE_API_KEY = os.getenv("PINECONE_API_KEY") | |
| GEMINI_API_KEY = os.getenv("GEMINI_API_KEY") | |
| # Pinecone Configuration | |
| PINECONE_INDEX_NAME = "medical-chatbot" | |
| PINECONE_CLOUD = "aws" | |
| PINECONE_REGION = "us-east-1" | |
| PINECONE_METRIC = "cosine" | |
| PINECONE_DIMENSION = 384 | |
| # Embeddings Configuration | |
| EMBEDDINGS_MODEL = "sentence-transformers/all-MiniLM-L6-v2" | |
| EMBEDDINGS_TYPE = "huggingface" | |
| # LLM Configuration | |
| GEMINI_MODEL = "gemini-2.5-flash" | |
| LLM_TEMPERATURE = 0.3 | |
| # Document Processing Configuration | |
| CHUNK_SIZE = 500 | |
| CHUNK_OVERLAP = 50 | |
| DATA_PATH = "data/" | |
| # Retrieval Configuration | |
| RETRIEVAL_K = 3 | |
| SEARCH_TYPE = "similarity" | |
| def validate(cls): | |
| """Validate that all required configuration is present.""" | |
| if not cls.PINECONE_API_KEY: | |
| raise ValueError("PINECONE_API_KEY not found in environment variables") | |
| if not cls.GEMINI_API_KEY: | |
| raise ValueError("GEMINI_API_KEY not found in environment variables") | |
| return True | |