Spaces:
Running
Running
| import os | |
| import logging | |
| def setup_logging(): | |
| logging.basicConfig( | |
| format='%(asctime)s %(message)s', | |
| datefmt='%Y-%m-%d %I:%M:%S %p', | |
| level=logging.INFO | |
| ) | |
| return logging.getLogger('backend') | |
| class Config: | |
| # External services | |
| GAI_API_KEY = os.environ['GAI_API_KEY'] | |
| PINECONE_API_KEY = os.environ['PINECONE_API_KEY'] | |
| WANDB_API_KEY = os.environ['WANDB_API_KEY'] | |
| WANDB_PROJECT = os.environ['WANDB_PROJECT'] | |
| # Model settings | |
| TEXT_MODEL_NAME = os.getenv('TEXT_MODEL_NAME', 'gemini-2.5-flash') | |
| EMB_MODEL_NAME = os.getenv('EMB_MODEL_NAME', 'models/gemini-embedding-001') | |
| PC_INDEX_NAME = os.getenv('PC_INDEX_NAME', 'main-index') | |
| PC_INDEX_NAMESPACE = os.getenv('PC_INDEX_NAMESPACE', 'main') | |
| CONTEXT_WINDOW = int(os.getenv('CONTEXT_WINDOW', 32768)) | |
| NUM_OUTPUT = int(os.getenv('NUM_OUTPUT', 4098)) | |
| TEXT_CHUNK_SIZE = int(os.getenv('TEXT_CHUNK_SIZE', 2048)) | |
| TEXT_CHUNK_OVERLAP = int(os.getenv('TEXT_CHUNK_OVERLAP', 200)) | |
| TEXT_CHUNK_OVERLAP_RATIO = float(os.getenv('TEXT_CHUNK_OVERLAP_RATIO', 0.1)) | |
| TEXT_CHUNK_SIZE_LIMIT = os.getenv('TEXT_CHUNK_SIZE_LIMIT', None) | |
| SIMILARITY_THRESHOLD = float(os.getenv('SIMILARITY_THRESHOLD', 0.7)) |