# ============================================================================== # RAG 客服 Agent 环境变量配置模版 (.env.example) # ============================================================================== # 使用说明: # 1. 复制本文件并重命名为 `.env` (此文件已在 .gitignore 中忽略,请勿提交机密密钥) # 2. 修改各配置项的值以匹配您的本地开发或生产环境 # 3. 环境变量在应用中由 Pydantic BaseSettings 自动读取,前缀必须为 "RAG_" # 4. 测试/CI 可设 RAG_DISABLE_DOTENV=1,禁止读取本文件,避免误连生产 # 5. 破坏性 Milvus 操作只允许 RAG_TEST_MILVUS__*,绝不回退 RAG_MILVUS__* # ============================================================================== # ------------------------------------------------------------------------------ # 1. 核心大模型 (LiteLLM / OpenAI 兼容网关) 配置 # ------------------------------------------------------------------------------ RAG_LLM__MODEL=deepseek/deepseek-chat RAG_LLM__API_KEY=your-api-key-here RAG_LLM__API_BASE=https://api.deepseek.com/v1 RAG_LLM__TEMPERATURE=0.0 RAG_LLM__MAX_RETRIES=3 RAG_LLM__TIMEOUT_SEC=30.0 # ------------------------------------------------------------------------------ # 2. Embedding 向量化模型配置 # ------------------------------------------------------------------------------ # 默认 BGE-M3 输出 1024 维,需要与 RAG_MILVUS__DIMENSION 保持一致 RAG_EMBEDDING__MODEL=huggingface/BAAI/bge-m3 RAG_EMBEDDING__API_KEY= RAG_EMBEDDING__API_BASE= RAG_EMBEDDING__MAX_RETRIES=3 RAG_EMBEDDING__TIMEOUT_SEC=30.0 # ------------------------------------------------------------------------------ # 3. 向量数据库 (Milvus) 配置 # ------------------------------------------------------------------------------ # 本地开发推荐使用 milvus-lite,生产环境可使用 docker-compose standalone 或 Zilliz Cloud RAG_MILVUS__ALIAS=default RAG_MILVUS__URI=milvus_data/local_milvus.db RAG_MILVUS__TOKEN= RAG_MILVUS__COLLECTION=kb_cs_agent_documents # 向量维度,与您配置的 Embedding 模型一致(如 BGE-M3 输出 1024 维) RAG_MILVUS__DIMENSION=1024 # 相似度度量标准 (COSINE 或 L2) RAG_MILVUS__METRIC_TYPE=COSINE # HNSW 搜索 ef 参数 RAG_MILVUS__SEARCH_EF=64 # ------------------------------------------------------------------------------ # 3b. 测试专用 Milvus(仅测试/脚本破坏性操作;不回退上一节) # ------------------------------------------------------------------------------ RAG_TEST_MILVUS__ALIAS=kb_cs_agent_test RAG_TEST_MILVUS__URI=milvus_data/test_milvus.db RAG_TEST_MILVUS__TOKEN= RAG_TEST_MILVUS__DIMENSION=1024 RAG_TEST_MILVUS__METRIC_TYPE=COSINE RAG_TEST_MILVUS__SEARCH_EF=64 RAG_TEST_MILVUS__ALLOW_REMOTE=false # ------------------------------------------------------------------------------ # 4. 会话记忆持久化 (Checkpointer) 配置 # ------------------------------------------------------------------------------ # 支持选项: memory (内存), sqlite (本地文件), postgres (关系数据库), redis (缓存库) RAG_CHECKPOINTER__BACKEND=sqlite # 根据配置的 backend 填写对应连接字符串: RAG_CHECKPOINTER__SQLITE_DB_PATH=milvus_data/checkpoints.db RAG_CHECKPOINTER__POSTGRES_URI=postgresql://postgres:password@localhost:5432/rag_checkpoints RAG_CHECKPOINTER__REDIS_URI=redis://localhost:6379/0 # ------------------------------------------------------------------------------ # 5. 飞书 (Lark) WebSocket 机器人配置(需 pip install 'kb-cs-agent[channels]') # ------------------------------------------------------------------------------ RAG_FEISHU__ENABLED=false RAG_FEISHU__APP_ID=cli_xxxxxxxxxxxx RAG_FEISHU__APP_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # ------------------------------------------------------------------------------ # 6. 钉钉 (DingTalk) Stream 模式机器人配置(需 channels extra) # ------------------------------------------------------------------------------ RAG_DINGTALK__ENABLED=false RAG_DINGTALK__CLIENT_ID=dingxxxxxxxxxxxxxxxx RAG_DINGTALK__CLIENT_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # ------------------------------------------------------------------------------ # 7. 企业微信 (WeCom) 智能机器人配置(需 channels extra) # ------------------------------------------------------------------------------ RAG_WECOM__ENABLED=false RAG_WECOM__BOT_ID=bot_xxxxxxxxxxxxxxxx RAG_WECOM__BOT_SECRET=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx # ------------------------------------------------------------------------------ # 8. 服务运行与安全配置 # ------------------------------------------------------------------------------ RAG_SERVER__HOST=0.0.0.0 RAG_SERVER__PORT=8000 # 数据摄入接口的安全 Token,用于 POST /ingest 与 /admin/api/* 鉴权 RAG_SERVER__ADMIN_TOKEN=your-super-secret-admin-token # 匿名 Web 会话令牌 HMAC 密钥(可选;缺省回退 admin_token) RAG_SERVER__SESSION_SECRET=your-session-hmac-secret # 网页端匿名对话限流 (limits 语法,如: "20/minute") RAG_SERVER__RATE_LIMIT_RULE=20/minute # Admin 鉴权失败限流 RAG_SERVER__ADMIN_AUTH_RATE_LIMIT_RULE=10/minute # Admin 上传限流 RAG_SERVER__UPLOAD_RATE_LIMIT_RULE=10/minute # 匿名 session_token 最大有效期(秒) RAG_SERVER__SESSION_MAX_AGE_SEC=604800 # ------------------------------------------------------------------------------ # 9. 检索增强(可选) # ------------------------------------------------------------------------------ RAG_RERANKER__ENABLED=false RAG_RERANKER__MODEL=BAAI/bge-reranker-v2-m3 RAG_RERANKER__TOP_N=5 RAG_RERANKER__API_MODE=false RAG_HYBRID__ENABLED=false RAG_CRAG__ENABLED=false RAG_SELF_RAG__ENABLED=false RAG_QUERY_TRANSFORM__HYDE_ENABLED=false RAG_QUERY_TRANSFORM__MULTI_QUERY_ENABLED=false