Spaces:
Sleeping
Sleeping
| """Centralized project constants.""" | |
| import os | |
| # Embedding constants | |
| EMBEDDING_MODEL_ID = os.getenv("EMBEDDING_MODEL", "Qwen/Qwen3-Embedding-0.6B") | |
| EMBEDDING_DIMENSIONS = int(os.getenv("EMBEDDING_DIMENSIONS", 1_024)) | |
| EMBEDDING_BATCH_SIZE = int(os.getenv("EMBEDDING_BATCH_SIZE", 64)) | |
| EMBEDDING_BACKEND = os.getenv("EMBEDDING_BACKEND", "openvino") | |
| SOFT_TIMEOUT_SECONDS = int(os.getenv("SOFT_TIMEOUT", 0)) | |
| EXIT_CODE_TIMEOUT = 75 | |
| # Retriever constants | |
| RETRIEVAL_QUERY_PREFIX = os.getenv("RETRIEVAL_PREFIX", | |
| "Instruct: Given a web search query, retrieve relevant passages that answer the query\nQuery:") | |
| DEFAULT_RERANKER_MODEL = os.getenv("RERANKER_MODEL", "jinaai/jina-reranker-v3") | |
| DEFAULT_RERANK_TASK_INSTRUCTION = os.getenv("RERANK_INSTRUCTION", | |
| "Given a code search query, rank passages that directly implement the requested behavior above broader references, declarations, or surrounding context") | |
| DEFAULT_ATTN_IMPLEMENTATION = "sdpa" | |
| DEFAULT_TOP_K = int(os.getenv("topk", 10)) | |
| DEFAULT_INITIAL_RETRIEVAL_LIMIT = DEFAULT_TOP_K * 10 | |
| MAX_INITIAL_RETRIEVAL_LIMIT = int(os.getenv("max_initial_limit", 200)) | |
| RERANK_BATCH_SIZE = int(os.getenv("rerank_batch_size", 8)) | |
| # Persistence constants | |
| DEFAULT_TABLE_NAME = "chunks" | |
| DEFAULT_FTS_TABLE_SUFFIX = "_fts" | |
| HYBRID_SEARCH_VECTOR_WEIGHT = 0.7 | |
| HYBRID_SEARCH_KEYWORD_WEIGHT = 0.3 | |
| POSTGRES_FTS_LANGUAGE = "english" | |
| DEFAULT_DB_PROVIDER = "libsql" | |
| # Chunker constants | |
| SOFT_MAX_BYTES = 1024 | |
| HARD_CAP_BYTES = 2048 | |
| NEWLINE_WINDOW = 2_048 | |
| FALLBACK_OVERLAP_RATIO = 0.10 | |
| # Document Chunker constants | |
| DOC_SOFT_MAX_BYTES = SOFT_MAX_BYTES * 2 # 2048 — doc soft cap (4 bytes/token for prose) | |
| DOC_HARD_CAP_BYTES = SOFT_MAX_BYTES * 4 # 4096 — doc hard cap | |
| DOC_OVERLAP_BYTES = 256 | |
| DOC_MIN_CHUNK_BYTES = 512 | |
| DOC_GRAMMAR_VERSION = "doc-chunker-v1" | |
| DOC_MARKDOWN_EXTS = {"md", "markdown", "rst"} | |
| DOC_JSON_EXTS = {"json", "jsonl", "ndjson"} | |
| DOC_YAML_EXTS = {"yaml", "yml"} | |
| DOC_TOML_EXTS = {"toml"} | |
| DOC_CSV_EXTS = {"csv"} | |
| DOC_TSV_EXTS = {"tsv"} | |