# ── LLM (OpenAI) ───────────────────────────────────────────────────────────── OPENAI_API_KEY= MAPPING_MODEL=gpt-4o-mini DISCOVERY_MODEL=gpt-4o-mini GROUNDING_MODEL=gpt-4o-mini MAX_TOKENS_MAPPING=2048 MAX_TOKENS_GROUNDING=1024 MAX_TOKENS_DISCOVERY=4000 OPENAI_PIPELINE_TIMEOUT_SECONDS=20 MAX_CONCURRENT_LLM_CALLS=10 OPENAI_RATE_LIMIT_MAX_RETRIES=5 OPENAI_RATE_LIMIT_BACKOFF_BASE_SECONDS=1.0 OPENAI_RATE_LIMIT_BACKOFF_MAX_SECONDS=60.0 # ── Embeddings ─────────────────────────────────────────────────────────────── EMBEDDING_PROVIDER=local LOCAL_EMBEDDING_MODEL=all-MiniLM-L6-v2 OPENAI_EMBEDDING_MODEL=text-embedding-3-small # ── PII ────────────────────────────────────────────────────────────────────── # Preferred: en_core_web_trf (highest NER accuracy). Install with: # python -m spacy download en_core_web_trf # Fallback chain (auto-used if the configured model is missing): # en_core_web_trf -> en_core_web_md -> en_core_web_sm -> regex-only. # python -m spacy download en_core_web_sm # always install at least this one SPACY_MODEL=en_core_web_trf PII_USE_SPACY=true # ── Operator bundle ────────────────────────────────────────────────────────── MASTER_TEMPLATE_DIR=Master Standard report and paragraphs REPORT_TEMPLATE_FILENAME=SAMPLE LEVEL 3 REPORT NCS.pdf STANDARD_PARAGRAPHS_FILENAME=HB-BS STANDARD PARAS v6 Sept 2015.doc MASTER_TEMPLATE_AUTO_INGEST=false MASTER_TEMPLATE_UPLOAD_ENABLED=false ADMIN_TOKEN= # ── RAG / retrieval ────────────────────────────────────────────────────────── DATA_DIR= DEFAULT_TENANT_ID=default RETRIEVAL_TOP_K=5 RETRIEVAL_SECTION_BOOST=0.25 RETRIEVAL_LEXICAL_BOOST=0.04 PARAGRAPH_MIN_CHARS=80 PARAGRAPH_MAX_CHARS=1200 CHUNK_OVERLAP=120 # ── Generation ─────────────────────────────────────────────────────────────── NOTES_EXPANSION_ENABLED=false GROUNDING_ENABLED=true USE_LLM_PARAGRAPH_MAPPING=false GROUNDING_ALERT_THRESHOLD=0.2 AI_TRANSPARENCY_FOOTER_ENABLED=false TEMPLATE_DOCX_PATH= # ── Auth ───────────────────────────────────────────────────────────────────── JWT_SECRET=change-me-in-production JWT_ALGORITHM=HS256 JWT_EXPIRY_MINUTES=1440