1 line
152 KiB
JSON
1 line
152 KiB
JSON
{"repo": "bulolo/catwiki", "files": {"backend/.env.example": {"de85fdea812901cefcba535b60c9959989a3a6d0": {"t": 1785747430.4760349, "n": 7693, "h": "7d7110b484fb0cb0", "c": "# ==============================================================================\n# CatWiki Backend Environment Configuration Template (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: cp .env.example .env\n# 2. 按部署环境修改各项,🔒 标记的项必须修改\n# 3. 生产环境建议通过容器/CI 注入而非直接保存敏感值\n# ==============================================================================\n\n\n# ------------------------------------------------------------------------------\n# 1. 基础环境 (Basic Environment)\n# ------------------------------------------------------------------------------\nENVIRONMENT=prod # 运行环境: local | dev | prod\nDEBUG=false # 调试模式: true | false\nLOG_LEVEL=INFO # 日志级别: DEBUG | INFO | WARNING | ERROR | CRITICAL\nTZ=Asia/Shanghai # 系统时区\n\n# 版本与授权\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\"\nADMIN_API_V1_STR=\"/admin/v1\"\n\n\n# ------------------------------------------------------------------------------\n# 2. 数据库 (PostgreSQL + PGVector)\n# ------------------------------------------------------------------------------\nPOSTGRES_SERVER=postgres # Local 填 localhost, Docker 填 postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境务必修改\nDB_ECHO=false # 是否输出 SQL 执行记录\n\n# 连接池\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n\n# ------------------------------------------------------------------------------\n# 3. 向量存储引擎 (Vector Store Engine)\n# ------------------------------------------------------------------------------\n# 引擎选择: postgres | elasticsearch\n# - postgres: 默认,使用 PGVector,无需额外服务\n# - elasticsearch: 启用 ES 混合检索 (需先启动 ES 服务)\n# docker compose -f docker-compose.dev.yml --profile es up\nVECTOR_STORE_TYPE=postgres\n\n# Elasticsearch 连接 (VECTOR_STORE_TYPE=elasticsearch 时取消注释)\n# ES_URL=http://elasticsearch:9200 # 容器内用服务名, 本地调试用 http://localhost:9200\n\n# ES 认证 (三选一, 开发环境 xpack.security.enabled=false 时可全部留空)\n# ES_API_KEY= # 优先级最高\n# ES_USERNAME= # Basic Auth 用户名\n# ES_PASSWORD= # Basic Auth 密码\n\n# ES TLS (生产 HTTPS 时配置)\n# ES_CA_CERTS=/path/to/ca.crt\n# ES_VERIFY_CERTS=true\n\n\n# ------------------------------------------------------------------------------\n# 4. Redis 缓存 (Redis Cache)\n# ------------------------------------------------------------------------------\nREDIS_ENABLED=true # 关闭则回退到内存缓存\nREDIS_URL=redis://redis:6379/0 # 容器内 redis:6379, 本地 localhost:6379\nREDIS_PREFIX=catwiki:\nCACHE_DEFAULT_TTL=300 # 默认缓存秒数\n\n\n# ------------------------------------------------------------------------------\n# 5. 安全 & CORS (Security & CORS)\n# ------------------------------------------------------------------------------\n# 🔒 生产环境必须改成强密钥 (生成: openssl rand -hex 32)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # JWT 有效期 (分钟,10080=7天)\n\n# CORS 允许的域名 (逗号分隔)\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n\n# ------------------------------------------------------------------------------\n# 6. 对象存储 (RustFS / S3 Compatible)\n# ------------------------------------------------------------------------------\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# 初始化专用 (仅 scripts/init_rustfs.py 首次启动建 bucket 时读取,与上面运行时凭据不同)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin # 🔒 生产环境务必修改\n\n# 外部可读访问链接\nRUSTFS_PUBLIC_URL=http://localhost:9000\nRUSTFS_PUBLIC_BUCKET=true\n\n\n# ------------------------------------------------------------------------------\n# 7. AI 模型服务 (OpenAI Compatible)\n# ------------------------------------------------------------------------------\n# 首次启动会自动同步进数据库的 AI 配置中,后续可在 UI 修改。\n\n# 7.1 Chat 对话\n# AI_CHAT_API_KEY=sk-xxxx\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n# AI_CHAT_EXTRA_BODY= # 选填。关闭思考模式参考:\n# vLLM/SGLang (Qwen3/DeepSeek-R1/GLM-4.5): {\"chat_template_kwargs\": {\"enable_thinking\": false}}\n# 托管 API (DeepSeek/Kimi K2/豆包/GLM-4.6): {\"thinking\": {\"type\": \"disabled\"}}\n# 腾讯云 (混元Pro/T1): {\"enable_thinking\": false}\n# 全家桶 (不确定时全填,未识别参数会被忽略): {\"chat_template_kwargs\": {\"enable_thinking\": false}, \"thinking\": {\"type\": \"disabled\"}, \"enable_thinking\": false}\n\n# 7.2 Embedding 向量化\n# AI_EMBEDDING_API_KEY=sk-xxxx\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=1536\n# AI_EMBEDDING_BATCH_SIZE=10 # 单次请求最大文本块数量\n\n# 7.3 Reranker 重排序 (是否启用见 §8 的 RAG_ENABLE_RERANK)\n# AI_RERANK_API_KEY=sk-xxxx\n# AI_RERANK_API_BASE=https://api.openai.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n# 7.4 视觉语言模型 (选填,处理图文混排时使用)\n# AI_VL_API_KEY=sk-xxxx\n# AI_VL_API_BASE=https://api.openai.com/v1\n# AI_VL_MODEL=gpt-4o-mini\n\n\n# ------------------------------------------------------------------------------\n# 8. RAG 检索调优 (Retrieval)\n# ------------------------------------------------------------------------------\nRAG_RECALL_K=50 # 向量召回数量\nRAG_RECALL_THRESHOLD=0.3 # 相似度阈值 (仅 postgres 引擎生效; ES 用 RRF 排名分,不适用绝对阈值)\nRAG_ENABLE_RERANK=true # 是否启用重排\nRAG_RERANK_TOP_K=5 # 最终给 AI 的结果数\nRAG_RECALL_MAX=100 # 召回硬上限 (10-200),性能保险丝,常规不调\n\n\n# ------------------------------------------------------------------------------\n# 9. Agent 行为调优 (Agent Behavior)\n# ------------------------------------------------------------------------------\nAGENT_MAX_ITERATIONS=5 # ReAct 最大迭代次数 (1-20)\nAGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空回复终止阈值 (1-10)\n\n# 长对话累积超过此消息数时,自动让 LLM 把早期对话压缩成一段摘要作为\"长期记忆\",\n# 后续轮次只带\"摘要 + 近期消息\"喂给模型,避免 token 随轮数线性膨胀。\n# 调小 = 更频繁压缩、上下文更精简但多出 LLM 调用;调大 = 保留更多原文细节但更费 token。\nAGENT_SUMMARY_TRIGGER_MSG_COUNT=10 # 范围 4-50\n\n\n# ------------------------------------------------------------------------------\n# 10. 文件上传限制 (Upload Limits)\n# ------------------------------------------------------------------------------\nUPLOAD_MAX_SIZE=314572800 # 单文件最大字节数 (默认 300MB)\nUPLOAD_ALLOWED_EXTENSIONS=jpg,jpeg,png,gif,webp,svg,pdf,doc,docx,xls,xlsx,ppt,pptx,txt,md,zip\n\n\n# ------------------------------------------------------------------------------\n# 11. 文档解析引擎 (DocProcessor)\n# ------------------------------------------------------------------------------\n# 首次启动会自动同步进数据库的解析器配置,后续可在 UI 修改。\n\n# 11.1 MinerU\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://localhost:8888\n# MINERU_API_KEY=NONE\n# MINERU_ENABLED=true\n\n# 11.2 Docling\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://localhost:8000\n# DOCLING_API_KEY=NONE\n# DOCLING_ENABLED=true\n\n# 11.3 PaddleOCR\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://localhost:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n\n# ------------------------------------------------------------------------------\n# 12. 任务队列 & Worker (Arq + Redis)\n# ------------------------------------------------------------------------------\n# 队列连接复用 §4 的 REDIS_URL;以下三项控制 worker 行为\nWORKER_MAX_TRIES=3 # 任务失败重试次数\nWORKER_JOB_TIMEOUT=600 # 单任务超时(秒),PDF 解析可能较慢\nWORKER_MAX_JOBS=10 # 单 worker 进程并发任务数\n\n\n# ------------------------------------------------------------------------------\n# 13. 配置覆盖控制 (Force Sync)\n# ------------------------------------------------------------------------------\n# 默认 false:仅\"首次启动且 DB 中无配置\"时把 §7/§11 的 env 写入 DB。\n# 改为 true:每次重启都用当前 env 覆盖 DB 中的对应配置(UI 改动会被还原)。\nFORCE_UPDATE_AI_CONFIG=false\nFORCE_UPDATE_DOC_PROCESSOR=false\n"}, "b70436cd8e64a3817ca4f5ca6f6cc38063cbb4d7": {"t": 1785773257.729047, "n": 7693, "h": "7d7110b484fb0cb0", "c": "# ==============================================================================\n# CatWiki Backend Environment Configuration Template (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: cp .env.example .env\n# 2. 按部署环境修改各项,🔒 标记的项必须修改\n# 3. 生产环境建议通过容器/CI 注入而非直接保存敏感值\n# ==============================================================================\n\n\n# ------------------------------------------------------------------------------\n# 1. 基础环境 (Basic Environment)\n# ------------------------------------------------------------------------------\nENVIRONMENT=prod # 运行环境: local | dev | prod\nDEBUG=false # 调试模式: true | false\nLOG_LEVEL=INFO # 日志级别: DEBUG | INFO | WARNING | ERROR | CRITICAL\nTZ=Asia/Shanghai # 系统时区\n\n# 版本与授权\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\"\nADMIN_API_V1_STR=\"/admin/v1\"\n\n\n# ------------------------------------------------------------------------------\n# 2. 数据库 (PostgreSQL + PGVector)\n# ------------------------------------------------------------------------------\nPOSTGRES_SERVER=postgres # Local 填 localhost, Docker 填 postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境务必修改\nDB_ECHO=false # 是否输出 SQL 执行记录\n\n# 连接池\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n\n# ------------------------------------------------------------------------------\n# 3. 向量存储引擎 (Vector Store Engine)\n# ------------------------------------------------------------------------------\n# 引擎选择: postgres | elasticsearch\n# - postgres: 默认,使用 PGVector,无需额外服务\n# - elasticsearch: 启用 ES 混合检索 (需先启动 ES 服务)\n# docker compose -f docker-compose.dev.yml --profile es up\nVECTOR_STORE_TYPE=postgres\n\n# Elasticsearch 连接 (VECTOR_STORE_TYPE=elasticsearch 时取消注释)\n# ES_URL=http://elasticsearch:9200 # 容器内用服务名, 本地调试用 http://localhost:9200\n\n# ES 认证 (三选一, 开发环境 xpack.security.enabled=false 时可全部留空)\n# ES_API_KEY= # 优先级最高\n# ES_USERNAME= # Basic Auth 用户名\n# ES_PASSWORD= # Basic Auth 密码\n\n# ES TLS (生产 HTTPS 时配置)\n# ES_CA_CERTS=/path/to/ca.crt\n# ES_VERIFY_CERTS=true\n\n\n# ------------------------------------------------------------------------------\n# 4. Redis 缓存 (Redis Cache)\n# ------------------------------------------------------------------------------\nREDIS_ENABLED=true # 关闭则回退到内存缓存\nREDIS_URL=redis://redis:6379/0 # 容器内 redis:6379, 本地 localhost:6379\nREDIS_PREFIX=catwiki:\nCACHE_DEFAULT_TTL=300 # 默认缓存秒数\n\n\n# ------------------------------------------------------------------------------\n# 5. 安全 & CORS (Security & CORS)\n# ------------------------------------------------------------------------------\n# 🔒 生产环境必须改成强密钥 (生成: openssl rand -hex 32)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # JWT 有效期 (分钟,10080=7天)\n\n# CORS 允许的域名 (逗号分隔)\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n\n# ------------------------------------------------------------------------------\n# 6. 对象存储 (RustFS / S3 Compatible)\n# ------------------------------------------------------------------------------\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# 初始化专用 (仅 scripts/init_rustfs.py 首次启动建 bucket 时读取,与上面运行时凭据不同)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin # 🔒 生产环境务必修改\n\n# 外部可读访问链接\nRUSTFS_PUBLIC_URL=http://localhost:9000\nRUSTFS_PUBLIC_BUCKET=true\n\n\n# ------------------------------------------------------------------------------\n# 7. AI 模型服务 (OpenAI Compatible)\n# ------------------------------------------------------------------------------\n# 首次启动会自动同步进数据库的 AI 配置中,后续可在 UI 修改。\n\n# 7.1 Chat 对话\n# AI_CHAT_API_KEY=sk-xxxx\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n# AI_CHAT_EXTRA_BODY= # 选填。关闭思考模式参考:\n# vLLM/SGLang (Qwen3/DeepSeek-R1/GLM-4.5): {\"chat_template_kwargs\": {\"enable_thinking\": false}}\n# 托管 API (DeepSeek/Kimi K2/豆包/GLM-4.6): {\"thinking\": {\"type\": \"disabled\"}}\n# 腾讯云 (混元Pro/T1): {\"enable_thinking\": false}\n# 全家桶 (不确定时全填,未识别参数会被忽略): {\"chat_template_kwargs\": {\"enable_thinking\": false}, \"thinking\": {\"type\": \"disabled\"}, \"enable_thinking\": false}\n\n# 7.2 Embedding 向量化\n# AI_EMBEDDING_API_KEY=sk-xxxx\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=1536\n# AI_EMBEDDING_BATCH_SIZE=10 # 单次请求最大文本块数量\n\n# 7.3 Reranker 重排序 (是否启用见 §8 的 RAG_ENABLE_RERANK)\n# AI_RERANK_API_KEY=sk-xxxx\n# AI_RERANK_API_BASE=https://api.openai.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n# 7.4 视觉语言模型 (选填,处理图文混排时使用)\n# AI_VL_API_KEY=sk-xxxx\n# AI_VL_API_BASE=https://api.openai.com/v1\n# AI_VL_MODEL=gpt-4o-mini\n\n\n# ------------------------------------------------------------------------------\n# 8. RAG 检索调优 (Retrieval)\n# ------------------------------------------------------------------------------\nRAG_RECALL_K=50 # 向量召回数量\nRAG_RECALL_THRESHOLD=0.3 # 相似度阈值 (仅 postgres 引擎生效; ES 用 RRF 排名分,不适用绝对阈值)\nRAG_ENABLE_RERANK=true # 是否启用重排\nRAG_RERANK_TOP_K=5 # 最终给 AI 的结果数\nRAG_RECALL_MAX=100 # 召回硬上限 (10-200),性能保险丝,常规不调\n\n\n# ------------------------------------------------------------------------------\n# 9. Agent 行为调优 (Agent Behavior)\n# ------------------------------------------------------------------------------\nAGENT_MAX_ITERATIONS=5 # ReAct 最大迭代次数 (1-20)\nAGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空回复终止阈值 (1-10)\n\n# 长对话累积超过此消息数时,自动让 LLM 把早期对话压缩成一段摘要作为\"长期记忆\",\n# 后续轮次只带\"摘要 + 近期消息\"喂给模型,避免 token 随轮数线性膨胀。\n# 调小 = 更频繁压缩、上下文更精简但多出 LLM 调用;调大 = 保留更多原文细节但更费 token。\nAGENT_SUMMARY_TRIGGER_MSG_COUNT=10 # 范围 4-50\n\n\n# ------------------------------------------------------------------------------\n# 10. 文件上传限制 (Upload Limits)\n# ------------------------------------------------------------------------------\nUPLOAD_MAX_SIZE=314572800 # 单文件最大字节数 (默认 300MB)\nUPLOAD_ALLOWED_EXTENSIONS=jpg,jpeg,png,gif,webp,svg,pdf,doc,docx,xls,xlsx,ppt,pptx,txt,md,zip\n\n\n# ------------------------------------------------------------------------------\n# 11. 文档解析引擎 (DocProcessor)\n# ------------------------------------------------------------------------------\n# 首次启动会自动同步进数据库的解析器配置,后续可在 UI 修改。\n\n# 11.1 MinerU\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://localhost:8888\n# MINERU_API_KEY=NONE\n# MINERU_ENABLED=true\n\n# 11.2 Docling\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://localhost:8000\n# DOCLING_API_KEY=NONE\n# DOCLING_ENABLED=true\n\n# 11.3 PaddleOCR\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://localhost:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n\n# ------------------------------------------------------------------------------\n# 12. 任务队列 & Worker (Arq + Redis)\n# ------------------------------------------------------------------------------\n# 队列连接复用 §4 的 REDIS_URL;以下三项控制 worker 行为\nWORKER_MAX_TRIES=3 # 任务失败重试次数\nWORKER_JOB_TIMEOUT=600 # 单任务超时(秒),PDF 解析可能较慢\nWORKER_MAX_JOBS=10 # 单 worker 进程并发任务数\n\n\n# ------------------------------------------------------------------------------\n# 13. 配置覆盖控制 (Force Sync)\n# ------------------------------------------------------------------------------\n# 默认 false:仅\"首次启动且 DB 中无配置\"时把 §7/§11 的 env 写入 DB。\n# 改为 true:每次重启都用当前 env 覆盖 DB 中的对应配置(UI 改动会被还原)。\nFORCE_UPDATE_AI_CONFIG=false\nFORCE_UPDATE_DOC_PROCESSOR=false\n"}, "162c099b9ba3c9d350ed1301caa315785f3b512a": {"t": 1785773259.2379177, "n": 4557, "h": "4186c0a19bfbcd30", "c": "# ==============================================================================\n# CatWiki Backend Environment Configuration Template (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n### 1. 基础环境配置 (Basic Environment)\nENVIRONMENT=prod # 运行环境: local, dev, prod\nDEBUG=false # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nTZ=Asia/Shanghai # 系统时区\n\n# 系统身份标识\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\"\nADMIN_API_V1_STR=\"/admin/v1\"\n\n### 2. 数据库配置 (PostgreSQL / PGVector)\nPOSTGRES_SERVER=postgres # Local 填 localhost, Docker 填 postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录\n\n# 连接池调优\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n### 3. 向量存储引擎配置 (Vector Store Engine)\n# 引擎选择: postgres | elasticsearch\n# - postgres: 默认,使用 PGVector,无需额外服务\n# - elasticsearch: 启用 ES 混合检索 (需先启动 ES 服务)\n# docker compose -f docker-compose.dev.yml --profile es up\nVECTOR_STORE_TYPE=postgres\n\n# Elasticsearch 连接配置 (VECTOR_STORE_TYPE=elasticsearch 时取消注释并填写)\n# ES_URL=http://elasticsearch:9200 # Docker 内使用服务名, 本地调试改为 http://localhost:9200\n\n# 认证配置 (三选一, 开发环境 xpack.security.enabled=false 时可全部留空)\n# ES_API_KEY= # 优先级最高\n# ES_USERNAME= # Basic Auth 用户名\n# ES_PASSWORD= # Basic Auth 密码\n\n# TLS 配置 (生产环境启用 HTTPS 时配置)\n# ES_CA_CERTS=/path/to/ca.crt\n# ES_VERIFY_CERTS=true\n\n### 4. Redis 缓存配置 (Redis Cache)\nREDIS_ENABLED=true # 是否启用 Redis (若为 false 则回退到内存缓存)\nREDIS_URL=redis://redis:6379/0 # 容器内使用 redis:6379, 本地使用 localhost:6379\nREDIS_PREFIX=catwiki:\nCACHE_DEFAULT_TTL=300 # 默认缓存时间 (秒)\n\n### 5. 安全与访问控制 (Security & CORS)\n# 警告: 生产环境必须修改为强密钥 (建议使用: openssl rand -hex 32)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 令牌有效期 (分钟)\n\n# CORS 允许的域名 (用逗号分隔)\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n### 6. 对象存储配置 (RustFS / S3 Compatible)\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# 对象存储初始化专有 (仅用于服务端首次启动创建 Bucket)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外部可读访问链接\nRUSTFS_PUBLIC_URL=http://localhost:9000\nRUSTFS_PUBLIC_BUCKET=true\n\n### 7. AI 模型服务配置 (OpenAI Compatible)\n# 首次启动会自动同步进数据库配置中。\n\n# 7.1 Chat 对话配置\n# AI_CHAT_API_KEY=sk-xxxx\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n# AI_CHAT_EXTRA_BODY= # 额外 JSON 配置, 如 {\"enable_thinking\": true}\n\n# 7.2 Embedding 向量化配置\n# AI_EMBEDDING_API_KEY=sk-xxxx\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=1536\n# AI_EMBEDDING_BATCH_SIZE=10 # 单次请求最大文本块数量\n\n# 7.3 Reranker 重排序配置\n# AI_RERANK_API_KEY=sk-xxxx\n# AI_RERANK_API_BASE=https://api.openai.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n### 8. RAG 检索与智能 Agent 调优\nRAG_RECALL_K=50 # 向量召回数量\nRAG_RECALL_THRESHOLD=0.3 # 相似度阈值 (仅 postgres 引擎生效; ES 使用 RRF 分数,不适用绝对阈值)\nRAG_ENABLE_RERANK=true # 是否启用重排\nRAG_RERANK_TOP_K=5 # 最终给 AI 的结果数\n\n# Agent 行为控制\nAGENT_MAX_ITERATIONS=5 # ReAct 最大迭代次数 (1-20)\nAGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空回复终止阈值 (1-10)\n\n### 9. 文档解析引擎配置 (DocProcessor)\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://localhost:8888\n# MINERU_API_KEY=NONE\n# MINERU_ENABLED=true\n\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://localhost:8000\n# DOCLING_API_KEY=NONE\n# DOCLING_ENABLED=true\n\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://localhost:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n### 10. 任务队列与 Worker 配置 (Async Tasks)\n# 向量化任务队列 (基于 Redis Streams)\nVECTORIZE_QUEUE_ENABLED=true\nVECTORIZE_QUEUE_STREAM=catwiki:vectorize\nVECTORIZE_QUEUE_GROUP=vectorize\nVECTORIZE_QUEUE_CONSUMER=\nVECTORIZE_MAX_RETRY=3\nVECTORIZE_VISIBILITY_TIMEOUT=60\n\n# Worker 运行模式 (多模式逗号分隔, 如: vectorize,cleanup,notify)\nWORKER_MODE=vectorize,cleanup,notify\n\n### 11. 配置覆盖控制\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n"}, "2d59f67e3481aa8b251fae7f834024eb5fdb69a2": {"t": 1785773260.5404115, "n": 3851, "h": "e0db06d7e2a1178e", "c": "# ==============================================================================\n# CatWiki Backend Environment Configuration Template (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n### 1. 基础环境配置 (Basic Environment)\nENVIRONMENT=prod # 运行环境: local, dev, prod\nDEBUG=false # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nTZ=Asia/Shanghai # 系统时区\n\n# 系统身份标识\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\"\nADMIN_API_V1_STR=\"/admin/v1\"\n\n### 2. 数据库配置 (PostgreSQL / PGVector)\nPOSTGRES_SERVER=postgres # Local 填 localhost, Docker 填 postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录\n\n# 连接池调优\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n### 3. Redis 缓存配置 (Redis Cache)\nREDIS_ENABLED=true # 是否启用 Redis (若为 false 则回退到内存缓存)\nREDIS_URL=redis://redis:6379/0 # 容器内使用 redis:6379, 本地使用 localhost:6379\nREDIS_PREFIX=catwiki:\nCACHE_DEFAULT_TTL=300 # 默认缓存时间 (秒)\n\n### 4. 安全与访问控制 (Security & CORS)\n# 警告: 生产环境必须修改为强密钥 (建议使用: openssl rand -hex 32)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 令牌有效期 (分钟)\n\n# CORS 允许的域名 (用逗号分隔)\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n### 5. 对象存储配置 (RustFS / S3 Compatible)\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# 对象存储初始化专有 (仅用于服务端首次启动创建 Bucket)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外部可读访问链接\nRUSTFS_PUBLIC_URL=http://localhost:9000\nRUSTFS_PUBLIC_BUCKET=true\n\n### 6. AI 模型服务配置 (OpenAI Compatible)\n# 首次启动会自动同步进数据库配置中。\n\n# 6.1 Chat 对话配置\n# AI_CHAT_API_KEY=sk-xxxx\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n# AI_CHAT_EXTRA_BODY= # 额外 JSON 配置, 如 {\"enable_thinking\": true}\n\n# 6.2 Embedding 向量化配置\n# AI_EMBEDDING_API_KEY=sk-xxxx\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=1536\n# AI_EMBEDDING_BATCH_SIZE=10 # 单次请求最大文本块数量\n\n# 6.3 Reranker 重排序配置\n# AI_RERANK_ENABLE=true\n# AI_RERANK_API_KEY=sk-xxxx\n# AI_RERANK_API_BASE=https://api.openai.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n### 7. RAG 检索与智能 Agent 调优\nRAG_RECALL_K=50 # 向量召回数量\nRAG_RECALL_THRESHOLD=0.3 # 相似度阈值\nRAG_ENABLE_RERANK=true # 是否启用重排\nRAG_RERANK_TOP_K=5 # 最终给 AI 的结果数\n\n# Agent 行为控制\nAGENT_MAX_ITERATIONS=5 # ReAct 最大迭代次数 (1-20)\nAGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空回复终止阈值 (1-10)\n\n### 8. 文档解析引擎配置 (DocProcessor)\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://localhost:8888\n# MINERU_API_KEY=NONE\n# MINERU_ENABLED=true\n\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://localhost:8000\n# DOCLING_API_KEY=NONE\n# DOCLING_ENABLED=true\n\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://localhost:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n### 9. 任务队列与 Worker 配置 (Async Tasks)\n# 向量化任务队列 (基于 Redis Streams)\nVECTORIZE_QUEUE_ENABLED=true\nVECTORIZE_QUEUE_STREAM=catwiki:vectorize\nVECTORIZE_QUEUE_GROUP=vectorize\nVECTORIZE_QUEUE_CONSUMER=\nVECTORIZE_MAX_RETRY=3\nVECTORIZE_VISIBILITY_TIMEOUT=60\n\n# Worker 运行模式 (多模式逗号分隔, 如: vectorize,cleanup,notify)\nWORKER_MODE=vectorize,cleanup,notify\n\n### 10. 配置覆盖控制\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n"}, "1b322887482f12b9c2890a767009a352ab3efcaa": {"t": 1785773261.8466525, "n": 3966, "h": "2abafe735ce3a940", "c": "# ==============================================================================\n# CatWiki Backend Environment Configuration Template (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n### 1. 基础环境配置 (Basic Environment)\nENVIRONMENT=prod # 运行环境: local, dev, prod\nDEBUG=false # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nTZ=Asia/Shanghai # 系统时区\n\n# 系统身份标识\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\"\nADMIN_API_V1_STR=\"/admin/v1\"\n\n### 2. 数据库配置 (PostgreSQL / PGVector)\nPOSTGRES_SERVER=postgres # Local 填 localhost, Docker 填 postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录\n\n# 连接池调优\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n### 3. Redis 缓存配置 (Redis Cache)\nREDIS_ENABLED=true # 是否启用 Redis (若为 false 则回退到内存缓存)\nREDIS_URL=redis://redis:6379/0 # 容器内使用 redis:6379, 本地使用 localhost:6379\nREDIS_PREFIX=catwiki:\nCACHE_DEFAULT_TTL=300 # 默认缓存时间 (秒)\n\n### 4. 安全与访问控制 (Security & CORS)\n# 警告: 生产环境必须修改为强密钥 (建议使用: openssl rand -hex 32)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 令牌有效期 (分钟)\n\n# CORS 允许的域名 (用逗号分隔)\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n### 5. 对象存储配置 (RustFS / S3 Compatible)\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# 对象存储初始化专有 (仅用于服务端首次启动创建 Bucket)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外部可读访问链接\nRUSTFS_PUBLIC_URL=http://localhost:9000\nRUSTFS_PUBLIC_BUCKET=true\n\n### 6. AI 模型服务配置 (OpenAI Compatible)\n# 首次启动会自动同步进数据库配置中。\n\n# 6.1 Chat 对话配置\n# AI_CHAT_API_KEY=sk-xxxx\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n# AI_CHAT_EXTRA_BODY= # 额外 JSON 配置, 如 {\"enable_thinking\": true}\n\n# 6.2 Embedding 向量化配置\n# AI_EMBEDDING_API_KEY=sk-xxxx\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=1536\n# AI_EMBEDDING_BATCH_SIZE=10 # 单次请求最大文本块数量\n\n# 6.3 Reranker 重排序配置\n# AI_RERANK_ENABLE=true\n# AI_RERANK_API_KEY=sk-xxxx\n# AI_RERANK_API_BASE=https://api.openai.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n# 6.4 VL 视觉对话配置 (选填)\n# AI_VL_API_KEY=sk-xxxx\n# AI_VL_API_BASE=https://api.openai.com/v1\n# AI_VL_MODEL=gpt-4o-mini\n\n### 7. RAG 检索与智能 Agent 调优\nRAG_RECALL_K=50 # 向量召回数量\nRAG_RECALL_THRESHOLD=0.3 # 相似度阈值\nRAG_ENABLE_RERANK=true # 是否启用重排\nRAG_RERANK_TOP_K=5 # 最终给 AI 的结果数\n\n# Agent 行为控制\nAGENT_MAX_ITERATIONS=5 # ReAct 最大迭代次数 (1-20)\nAGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空回复终止阈值 (1-10)\n\n### 8. 文档解析引擎配置 (DocProcessor)\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://localhost:8888\n# MINERU_API_KEY=NONE\n# MINERU_ENABLED=true\n\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://localhost:8000\n# DOCLING_API_KEY=NONE\n# DOCLING_ENABLED=true\n\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://localhost:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n### 9. 任务队列与 Worker 配置 (Async Tasks)\n# 向量化任务队列 (基于 Redis Streams)\nVECTORIZE_QUEUE_ENABLED=true\nVECTORIZE_QUEUE_STREAM=catwiki:vectorize\nVECTORIZE_QUEUE_GROUP=vectorize\nVECTORIZE_QUEUE_CONSUMER=\nVECTORIZE_MAX_RETRY=3\nVECTORIZE_VISIBILITY_TIMEOUT=60\n\n# Worker 运行模式 (多模式逗号分隔, 如: vectorize,cleanup,notify)\nWORKER_MODE=vectorize,cleanup,notify\n\n### 10. 配置覆盖控制\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n"}, "b6695f5a6c7992ca16023bcf521e2ad4c8a34c43": {"t": 1785773264.1032534, "n": 3990, "h": "3b0d6479162fd319", "c": "# ==============================================================================\n# CatWiki Backend Environment Configuration Template (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n### 1. 基础环境配置 (Basic Environment)\nENVIRONMENT=prod # 运行环境: local, dev, prod\nDEBUG=false # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nTZ=Asia/Shanghai # 系统时区\n\n# 系统身份标识\nDOCKER_IMAGE_TAG=v1.0.2\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\"\nADMIN_API_V1_STR=\"/admin/v1\"\n\n### 2. 数据库配置 (PostgreSQL / PGVector)\nPOSTGRES_SERVER=postgres # Local 填 localhost, Docker 填 postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录\n\n# 连接池调优\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n### 3. Redis 缓存配置 (Redis Cache)\nREDIS_ENABLED=true # 是否启用 Redis (若为 false 则回退到内存缓存)\nREDIS_URL=redis://redis:6379/0 # 容器内使用 redis:6379, 本地使用 localhost:6379\nREDIS_PREFIX=catwiki:\nCACHE_DEFAULT_TTL=300 # 默认缓存时间 (秒)\n\n### 4. 安全与访问控制 (Security & CORS)\n# 警告: 生产环境必须修改为强密钥 (建议使用: openssl rand -hex 32)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 令牌有效期 (分钟)\n\n# CORS 允许的域名 (用逗号分隔)\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n### 5. 对象存储配置 (RustFS / S3 Compatible)\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# 对象存储初始化专有 (仅用于服务端首次启动创建 Bucket)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外部可读访问链接\nRUSTFS_PUBLIC_URL=http://localhost:9000\nRUSTFS_PUBLIC_BUCKET=true\n\n### 6. AI 模型服务配置 (OpenAI Compatible)\n# 首次启动会自动同步进数据库配置中。\n\n# 6.1 Chat 对话配置\n# AI_CHAT_API_KEY=sk-xxxx\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n# AI_CHAT_EXTRA_BODY= # 额外 JSON 配置, 如 {\"enable_thinking\": true}\n\n# 6.2 Embedding 向量化配置\n# AI_EMBEDDING_API_KEY=sk-xxxx\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=1536\n# AI_EMBEDDING_BATCH_SIZE=10 # 单次请求最大文本块数量\n\n# 6.3 Reranker 重排序配置\n# AI_RERANK_ENABLE=true\n# AI_RERANK_API_KEY=sk-xxxx\n# AI_RERANK_API_BASE=https://api.openai.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n# 6.4 VL 视觉对话配置 (选填)\n# AI_VL_API_KEY=sk-xxxx\n# AI_VL_API_BASE=https://api.openai.com/v1\n# AI_VL_MODEL=gpt-4o-mini\n\n### 7. RAG 检索与智能 Agent 调优\nRAG_RECALL_K=50 # 向量召回数量\nRAG_RECALL_THRESHOLD=0.3 # 相似度阈值\nRAG_ENABLE_RERANK=true # 是否启用重排\nRAG_RERANK_TOP_K=5 # 最终给 AI 的结果数\n\n# Agent 行为控制\nAGENT_MAX_ITERATIONS=5 # ReAct 最大迭代次数 (1-20)\nAGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空回复终止阈值 (1-10)\n\n### 8. 文档解析引擎配置 (DocProcessor)\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://localhost:8888\n# MINERU_API_KEY=NONE\n# MINERU_ENABLED=true\n\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://localhost:8000\n# DOCLING_API_KEY=NONE\n# DOCLING_ENABLED=true\n\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://localhost:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n### 9. 任务队列与 Worker 配置 (Async Tasks)\n# 向量化任务队列 (基于 Redis Streams)\nVECTORIZE_QUEUE_ENABLED=true\nVECTORIZE_QUEUE_STREAM=catwiki:vectorize\nVECTORIZE_QUEUE_GROUP=vectorize\nVECTORIZE_QUEUE_CONSUMER=\nVECTORIZE_MAX_RETRY=3\nVECTORIZE_VISIBILITY_TIMEOUT=60\n\n# Worker 运行模式 (多模式逗号分隔, 如: vectorize,cleanup,notify)\nWORKER_MODE=vectorize,cleanup,notify\n\n### 10. 配置覆盖控制\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n"}, "bcdaa4d03ef766a22a73d8c3ea4b7dd7f03ea1d2": {"t": 1785773265.3530657, "n": 3990, "h": "caab54ab93afeba3", "c": "# ==============================================================================\n# CatWiki Backend Environment Configuration Template (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n### 1. 基础环境配置 (Basic Environment)\nENVIRONMENT=local # 运行环境: local, dev, prod\nDEBUG=true # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nTZ=Asia/Shanghai # 系统时区\n\n# 系统身份标识\nDOCKER_IMAGE_TAG=v1.0.2\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\"\nADMIN_API_V1_STR=\"/admin/v1\"\n\n### 2. 数据库配置 (PostgreSQL / PGVector)\nPOSTGRES_SERVER=postgres # Local 填 localhost, Docker 填 postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录\n\n# 连接池调优\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n### 3. Redis 缓存配置 (Redis Cache)\nREDIS_ENABLED=true # 是否启用 Redis (若为 false 则回退到内存缓存)\nREDIS_URL=redis://redis:6379/0 # 容器内使用 redis:6379, 本地使用 localhost:6379\nREDIS_PREFIX=catwiki:\nCACHE_DEFAULT_TTL=300 # 默认缓存时间 (秒)\n\n### 4. 安全与访问控制 (Security & CORS)\n# 警告: 生产环境必须修改为强密钥 (建议使用: openssl rand -hex 32)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 令牌有效期 (分钟)\n\n# CORS 允许的域名 (用逗号分隔)\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n### 5. 对象存储配置 (RustFS / S3 Compatible)\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# 对象存储初始化专有 (仅用于服务端首次启动创建 Bucket)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外部可读访问链接\nRUSTFS_PUBLIC_URL=http://localhost:9000\nRUSTFS_PUBLIC_BUCKET=true\n\n### 6. AI 模型服务配置 (OpenAI Compatible)\n# 首次启动会自动同步进数据库配置中。\n\n# 6.1 Chat 对话配置\n# AI_CHAT_API_KEY=sk-xxxx\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n# AI_CHAT_EXTRA_BODY= # 额外 JSON 配置, 如 {\"enable_thinking\": true}\n\n# 6.2 Embedding 向量化配置\n# AI_EMBEDDING_API_KEY=sk-xxxx\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=1536\n# AI_EMBEDDING_BATCH_SIZE=10 # 单次请求最大文本块数量\n\n# 6.3 Reranker 重排序配置\n# AI_RERANK_ENABLE=true\n# AI_RERANK_API_KEY=sk-xxxx\n# AI_RERANK_API_BASE=https://api.openai.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n# 6.4 VL 视觉对话配置 (选填)\n# AI_VL_API_KEY=sk-xxxx\n# AI_VL_API_BASE=https://api.openai.com/v1\n# AI_VL_MODEL=gpt-4o-mini\n\n### 7. RAG 检索与智能 Agent 调优\nRAG_RECALL_K=50 # 向量召回数量\nRAG_RECALL_THRESHOLD=0.3 # 相似度阈值\nRAG_ENABLE_RERANK=true # 是否启用重排\nRAG_RERANK_TOP_K=5 # 最终给 AI 的结果数\n\n# Agent 行为控制\nAGENT_MAX_ITERATIONS=5 # ReAct 最大迭代次数 (1-20)\nAGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空回复终止阈值 (1-10)\n\n### 8. 文档解析引擎配置 (DocProcessor)\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://localhost:8888\n# MINERU_API_KEY=NONE\n# MINERU_ENABLED=true\n\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://localhost:8000\n# DOCLING_API_KEY=NONE\n# DOCLING_ENABLED=true\n\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://localhost:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n### 9. 任务队列与 Worker 配置 (Async Tasks)\n# 向量化任务队列 (基于 Redis Streams)\nVECTORIZE_QUEUE_ENABLED=true\nVECTORIZE_QUEUE_STREAM=catwiki:vectorize\nVECTORIZE_QUEUE_GROUP=vectorize\nVECTORIZE_QUEUE_CONSUMER=\nVECTORIZE_MAX_RETRY=3\nVECTORIZE_VISIBILITY_TIMEOUT=60\n\n# Worker 运行模式 (多模式逗号分隔, 如: vectorize,cleanup,notify)\nWORKER_MODE=vectorize,cleanup,notify\n\n### 10. 配置覆盖控制\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n"}, "76a4d4c2e23bc14e131c92f2dd31290f0f60ed40": {"t": 1785773266.5294933, "n": 3123, "h": "f2092a526c8e3d9b", "c": "# ==============================================================================\n# CatWiki Backend Environment Configuration Template (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n### 1. 基础环境配置 (Basic Environment)\nENVIRONMENT=local # 运行环境: local, dev, prod\nDEBUG=true # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nTZ=Asia/Shanghai # 系统时区\n\n# 系统身份标识\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\"\nADMIN_API_V1_STR=\"/admin/v1\"\n\n### 2. 数据库配置 (PostgreSQL / PGVector)\nPOSTGRES_SERVER=postgres # Local 填 localhost, Docker 填 postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录\n\n# 连接池调优\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n### 3. Redis 缓存配置 (Redis Cache)\nREDIS_ENABLED=false # 是否启用 Redis (若为 false 则回退到内存缓存)\nREDIS_URL=redis://redis:6379/0 # 容器内使用 redis:6379, 本地使用 localhost:6379\nREDIS_PREFIX=catwiki:\nCACHE_DEFAULT_TTL=300 # 默认缓存时间 (秒)\n\n### 4. 安全与访问控制 (Security & CORS)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 令牌有效期 (分钟)\n\n# CORS 允许的域名 (用逗号分隔)\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n### 4. 对象存储配置 (RustFS / S3 Compatible)\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# 对象存储初始化专有\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外部可读访问链接\nRUSTFS_PUBLIC_URL=http://localhost:9000\nRUSTFS_PUBLIC_BUCKET=true\n\n### 5. AI 模型服务配置 (OpenAI Compatible)\n# 首次启动会自动同步进数据库配置中。\n\n# 5.1 Chat 对话\n# AI_CHAT_API_KEY=sk-xxxx\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n\n# 5.2 Embedding 向量化\n# AI_EMBEDDING_API_KEY=sk-xxxx\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=1536\n\n# 5.3 Reranker 重排序\n# AI_RERANK_API_KEY=sk-xxxx\n# AI_RERANK_API_BASE=https://api.rerank.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n### 6. RAG 检索与智能 Agent 调优\nRAG_RECALL_K=50 # 向量召回数量\nRAG_RECALL_THRESHOLD=0.3 # 相似度阈值\nRAG_ENABLE_RERANK=true # 是否启用重排\nRAG_RERANK_TOP_K=5 # 最终给 AI 的结果数\n\n# Agent 行为控制\nAGENT_MAX_ITERATIONS=5 # ReAct 最大迭代次数\nAGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空回复终止阈值\n\n### 7. 文档解析引擎配置 (DocProcessor)\n# MINERU_ENABLED=true\n# MINERU_BASE_URL=http://localhost:8888\n# DOCLING_ENABLED=true\n# DOCLING_BASE_URL=http://localhost:8000\n# PADDLEOCR_ENABLED=false\n# PADDLEOCR_BASE_URL=http://localhost:8080\n\n### 8. 配置覆盖控制\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n"}, "a18137e1b59b24d7a0a37fba5d96bc65d392d8a3": {"t": 1785773268.1485708, "n": 3177, "h": "b9306c50b4c6283f", "c": "# ==============================================================================\n# CatWiki Backend Environment Configuration Template (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n### 1. 基础环境配置 (Basic Environment)\nENVIRONMENT=local # 运行环境: local, dev, prod\nDEBUG=true # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nTZ=Asia/Shanghai # 系统时区\n\n# 系统身份标识\nPROJECT_NAME=\"CatWiki API\"\nDESCRIPTION=\"CatWiki 后端服务\"\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\"\nADMIN_API_V1_STR=\"/admin/v1\"\n\n### 2. 数据库配置 (PostgreSQL / PGVector)\nPOSTGRES_SERVER=postgres # Local 填 localhost, Docker 填 postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录\n\n# 连接池调优\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n### 3. Redis 缓存配置 (Redis Cache)\nREDIS_ENABLED=false # 是否启用 Redis (若为 false 则回退到内存缓存)\nREDIS_URL=redis://redis:6379/0 # 容器内使用 redis:6379, 本地使用 localhost:6379\nREDIS_PREFIX=catwiki:\nCACHE_DEFAULT_TTL=300 # 默认缓存时间 (秒)\n\n### 4. 安全与访问控制 (Security & CORS)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 令牌有效期 (分钟)\n\n# CORS 允许的域名 (用逗号分隔)\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n### 4. 对象存储配置 (RustFS / S3 Compatible)\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# 对象存储初始化专有\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外部可读访问链接\nRUSTFS_PUBLIC_URL=http://localhost:9000\nRUSTFS_PUBLIC_BUCKET=true\n\n### 5. AI 模型服务配置 (OpenAI Compatible)\n# 首次启动会自动同步进数据库配置中。\n\n# 5.1 Chat 对话\n# AI_CHAT_API_KEY=sk-xxxx\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n\n# 5.2 Embedding 向量化\n# AI_EMBEDDING_API_KEY=sk-xxxx\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=1536\n\n# 5.3 Reranker 重排序\n# AI_RERANK_API_KEY=sk-xxxx\n# AI_RERANK_API_BASE=https://api.rerank.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n### 6. RAG 检索与智能 Agent 调优\nRAG_RECALL_K=50 # 向量召回数量\nRAG_RECALL_THRESHOLD=0.3 # 相似度阈值\nRAG_ENABLE_RERANK=true # 是否启用重排\nRAG_RERANK_TOP_K=5 # 最终给 AI 的结果数\n\n# Agent 行为控制\nAGENT_MAX_ITERATIONS=5 # ReAct 最大迭代次数\nAGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空回复终止阈值\n\n### 7. 文档解析引擎配置 (DocProcessor)\n# MINERU_ENABLED=true\n# MINERU_BASE_URL=http://localhost:8888\n# DOCLING_ENABLED=true\n# DOCLING_BASE_URL=http://localhost:8000\n# PADDLEOCR_ENABLED=false\n# PADDLEOCR_BASE_URL=http://localhost:8080\n\n### 8. 配置覆盖控制\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n"}, "29fd00cfdb17ca56ecb177d279823f71f94a121f": {"t": 1785773269.448315, "n": 2943, "h": "40e568a3f6648b93", "c": "# ==============================================================================\n# CatWiki Backend Environment Configuration Template (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n### 1. 基础环境配置 (Basic Environment)\nENVIRONMENT=local # 运行环境: local, dev, prod\nDEBUG=true # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nTZ=Asia/Shanghai # 系统时区\n\n# 系统身份标识\nPROJECT_NAME=\"CatWiki API\"\nDESCRIPTION=\"CatWiki 后端服务\"\nVERSION=1.0.1\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\"\nADMIN_API_V1_STR=\"/admin/v1\"\n\n### 2. 数据库配置 (PostgreSQL / PGVector)\nPOSTGRES_SERVER=postgres # Local 填 localhost, Docker 填 postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录\n\n# 连接池调优\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n### 3. 安全与访问控制 (Security & CORS)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 令牌有效期 (分钟)\n\n# CORS 允许的域名 (用逗号分隔)\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n### 4. 对象存储配置 (RustFS / S3 Compatible)\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# 对象存储初始化专有\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外部可读访问链接\nRUSTFS_PUBLIC_URL=http://localhost:9000\nRUSTFS_PUBLIC_BUCKET=true\n\n### 5. AI 模型服务配置 (OpenAI Compatible)\n# 首次启动会自动同步进数据库配置中。\n\n# 5.1 Chat 对话\n# AI_CHAT_API_KEY=sk-xxxx\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n\n# 5.2 Embedding 向量化\n# AI_EMBEDDING_API_KEY=sk-xxxx\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=1536\n\n# 5.3 Reranker 重排序\n# AI_RERANK_API_KEY=sk-xxxx\n# AI_RERANK_API_BASE=https://api.rerank.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n### 6. RAG 检索与智能 Agent 调优\nRAG_RECALL_K=50 # 向量召回数量\nRAG_RECALL_THRESHOLD=0.3 # 相似度阈值\nRAG_ENABLE_RERANK=true # 是否启用重排\nRAG_RERANK_TOP_K=5 # 最终给 AI 的结果数\n\n# Agent 行为控制\nAGENT_MAX_ITERATIONS=5 # ReAct 最大迭代次数\nAGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空回复终止阈值\n\n### 7. 文档解析引擎配置 (DocProcessor)\n# MINERU_ENABLED=true\n# MINERU_BASE_URL=http://localhost:8888\n# DOCLING_ENABLED=true\n# DOCLING_BASE_URL=http://localhost:8000\n# PADDLEOCR_ENABLED=false\n# PADDLEOCR_BASE_URL=http://localhost:8080\n\n### 8. 配置覆盖控制\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n"}, "3ff12c070d9d7df0ffaedb2ccb31432a6d319d25": {"t": 1785773270.775701, "n": 2943, "h": "35937993345b5373", "c": "# ==============================================================================\n# CatWiki Backend Environment Configuration Template (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n### 1. 基础环境配置 (Basic Environment)\nENVIRONMENT=local # 运行环境: local, dev, prod\nDEBUG=true # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nTZ=Asia/Shanghai # 系统时区\n\n# 系统身份标识\nPROJECT_NAME=\"CatWiki API\"\nDESCRIPTION=\"CatWiki 后端服务\"\nVERSION=1.0.0\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\"\nADMIN_API_V1_STR=\"/admin/v1\"\n\n### 2. 数据库配置 (PostgreSQL / PGVector)\nPOSTGRES_SERVER=postgres # Local 填 localhost, Docker 填 postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录\n\n# 连接池调优\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n### 3. 安全与访问控制 (Security & CORS)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 令牌有效期 (分钟)\n\n# CORS 允许的域名 (用逗号分隔)\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n### 4. 对象存储配置 (RustFS / S3 Compatible)\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# 对象存储初始化专有\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外部可读访问链接\nRUSTFS_PUBLIC_URL=http://localhost:9000\nRUSTFS_PUBLIC_BUCKET=true\n\n### 5. AI 模型服务配置 (OpenAI Compatible)\n# 首次启动会自动同步进数据库配置中。\n\n# 5.1 Chat 对话\n# AI_CHAT_API_KEY=sk-xxxx\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n\n# 5.2 Embedding 向量化\n# AI_EMBEDDING_API_KEY=sk-xxxx\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=1536\n\n# 5.3 Reranker 重排序\n# AI_RERANK_API_KEY=sk-xxxx\n# AI_RERANK_API_BASE=https://api.rerank.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n### 6. RAG 检索与智能 Agent 调优\nRAG_RECALL_K=50 # 向量召回数量\nRAG_RECALL_THRESHOLD=0.3 # 相似度阈值\nRAG_ENABLE_RERANK=true # 是否启用重排\nRAG_RERANK_TOP_K=5 # 最终给 AI 的结果数\n\n# Agent 行为控制\nAGENT_MAX_ITERATIONS=5 # ReAct 最大迭代次数\nAGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空回复终止阈值\n\n### 7. 文档解析引擎配置 (DocProcessor)\n# MINERU_ENABLED=true\n# MINERU_BASE_URL=http://localhost:8888\n# DOCLING_ENABLED=true\n# DOCLING_BASE_URL=http://localhost:8000\n# PADDLEOCR_ENABLED=false\n# PADDLEOCR_BASE_URL=http://localhost:8080\n\n### 8. 配置覆盖控制\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n"}, "380ece7ee7662c94f660c9d8680e7df9c5d6835e": {"t": 1785773272.9303136, "n": 3052, "h": "03bc26f05cb031bb", "c": "# ==============================================================================\n# CatWiki Backend Environment Configuration Template (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n### 1. 基础环境配置 (Basic Environment)\nENVIRONMENT=local # 运行环境: local, dev, prod\nDEBUG=true # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nTZ=Asia/Shanghai # 系统时区\n\n# 系统身份标识\nPROJECT_NAME=\"CatWiki API\"\nDESCRIPTION=\"CatWiki 后端服务\"\nVERSION=1.0.0\nCATWIKI_EDITION=community # community | enterprise\nCATWIKI_LICENSE_KEY= # 企业版许可证 (选填)\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\"\nADMIN_API_V1_STR=\"/admin/v1\"\n\n### 2. 数据库配置 (PostgreSQL / PGVector)\nPOSTGRES_SERVER=postgres # Local 填 localhost, Docker 填 postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录\n\n# 连接池调优\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n### 3. 安全与访问控制 (Security & CORS)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 令牌有效期 (分钟)\n\n# CORS 允许的域名 (用逗号分隔)\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n### 4. 对象存储配置 (RustFS / S3 Compatible)\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# 对象存储初始化专有\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外部可读访问链接\nRUSTFS_PUBLIC_URL=http://localhost:9000\nRUSTFS_PUBLIC_BUCKET=true\n\n### 5. AI 模型服务配置 (OpenAI Compatible)\n# 首次启动会自动同步进数据库配置中。\n\n# 5.1 Chat 对话\n# AI_CHAT_API_KEY=sk-xxxx\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n\n# 5.2 Embedding 向量化\n# AI_EMBEDDING_API_KEY=sk-xxxx\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=1536\n\n# 5.3 Reranker 重排序\n# AI_RERANK_API_KEY=sk-xxxx\n# AI_RERANK_API_BASE=https://api.rerank.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n### 6. RAG 检索与智能 Agent 调优\nRAG_RECALL_K=50 # 向量召回数量\nRAG_RECALL_THRESHOLD=0.3 # 相似度阈值\nRAG_ENABLE_RERANK=true # 是否启用重排\nRAG_RERANK_TOP_K=5 # 最终给 AI 的结果数\n\n# Agent 行为控制\nAGENT_MAX_ITERATIONS=5 # ReAct 最大迭代次数\nAGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空回复终止阈值\n\n### 7. 文档解析引擎配置 (DocProcessor)\n# MINERU_ENABLED=true\n# MINERU_BASE_URL=http://localhost:8888\n# DOCLING_ENABLED=true\n# DOCLING_BASE_URL=http://localhost:8000\n# PADDLEOCR_ENABLED=false\n# PADDLEOCR_BASE_URL=http://localhost:8080\n\n### 8. 配置覆盖控制\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n"}, "a35247912ba05011e9b7a95f8356a68feadfff4c": {"t": 1785773274.406931, "n": 3054, "h": "f267b27ec9ecc417", "c": "# ==============================================================================\n# CatWiki Backend Environment Configuration Template (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n### 1. 基础环境配置 (Basic Environment)\nENVIRONMENT=local # 运行环境: local, dev, prod\nDEBUG=true # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nTZ=Asia/Shanghai # 系统时区\n\n# 系统身份标识\nPROJECT_NAME=\"CatWiki API\"\nDESCRIPTION=\"CatWiki 后端服务\"\nVERSION=\"0.0.4\"\nCATWIKI_EDITION=community # community | enterprise\nCATWIKI_LICENSE_KEY= # 企业版许可证 (选填)\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\"\nADMIN_API_V1_STR=\"/admin/v1\"\n\n### 2. 数据库配置 (PostgreSQL / PGVector)\nPOSTGRES_SERVER=postgres # Local 填 localhost, Docker 填 postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录\n\n# 连接池调优\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n### 3. 安全与访问控制 (Security & CORS)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 令牌有效期 (分钟)\n\n# CORS 允许的域名 (用逗号分隔)\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n### 4. 对象存储配置 (RustFS / S3 Compatible)\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# 对象存储初始化专有\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外部可读访问链接\nRUSTFS_PUBLIC_URL=http://localhost:9000\nRUSTFS_PUBLIC_BUCKET=true\n\n### 5. AI 模型服务配置 (OpenAI Compatible)\n# 首次启动会自动同步进数据库配置中。\n\n# 5.1 Chat 对话\n# AI_CHAT_API_KEY=sk-xxxx\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n\n# 5.2 Embedding 向量化\n# AI_EMBEDDING_API_KEY=sk-xxxx\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=1536\n\n# 5.3 Reranker 重排序\n# AI_RERANK_API_KEY=sk-xxxx\n# AI_RERANK_API_BASE=https://api.rerank.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n### 6. RAG 检索与智能 Agent 调优\nRAG_RECALL_K=50 # 向量召回数量\nRAG_RECALL_THRESHOLD=0.3 # 相似度阈值\nRAG_ENABLE_RERANK=true # 是否启用重排\nRAG_RERANK_TOP_K=5 # 最终给 AI 的结果数\n\n# Agent 行为控制\nAGENT_MAX_ITERATIONS=5 # ReAct 最大迭代次数\nAGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空回复终止阈值\n\n### 7. 文档解析引擎配置 (DocProcessor)\n# MINERU_ENABLED=true\n# MINERU_BASE_URL=http://localhost:8888\n# DOCLING_ENABLED=true\n# DOCLING_BASE_URL=http://localhost:8000\n# PADDLEOCR_ENABLED=false\n# PADDLEOCR_BASE_URL=http://localhost:8080\n\n### 8. 配置覆盖控制\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n"}, "f39cb02ce98666342f7ae52a760dedd73c015032": {"t": 1785773275.9351268, "n": 2945, "h": "503207825b7a4b82", "c": "# ==============================================================================\n# CatWiki Backend Environment Configuration Template (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n### 1. 基础环境配置 (Basic Environment)\nENVIRONMENT=local # 运行环境: local, dev, prod\nDEBUG=true # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nTZ=Asia/Shanghai # 系统时区\n\n# 系统身份标识\nPROJECT_NAME=\"CatWiki API\"\nDESCRIPTION=\"CatWiki 后端服务\"\nVERSION=\"0.0.4\"\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\"\nADMIN_API_V1_STR=\"/admin/v1\"\n\n### 2. 数据库配置 (PostgreSQL / PGVector)\nPOSTGRES_SERVER=postgres # Local 填 localhost, Docker 填 postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录\n\n# 连接池调优\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n### 3. 安全与访问控制 (Security & CORS)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 令牌有效期 (分钟)\n\n# CORS 允许的域名 (用逗号分隔)\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n### 4. 对象存储配置 (RustFS / S3 Compatible)\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# 对象存储初始化专有\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外部可读访问链接\nRUSTFS_PUBLIC_URL=http://localhost:9000\nRUSTFS_PUBLIC_BUCKET=true\n\n### 5. AI 模型服务配置 (OpenAI Compatible)\n# 首次启动会自动同步进数据库配置中。\n\n# 5.1 Chat 对话\n# AI_CHAT_API_KEY=sk-xxxx\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n\n# 5.2 Embedding 向量化\n# AI_EMBEDDING_API_KEY=sk-xxxx\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=1536\n\n# 5.3 Reranker 重排序\n# AI_RERANK_API_KEY=sk-xxxx\n# AI_RERANK_API_BASE=https://api.rerank.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n### 6. RAG 检索与智能 Agent 调优\nRAG_RECALL_K=50 # 向量召回数量\nRAG_RECALL_THRESHOLD=0.3 # 相似度阈值\nRAG_ENABLE_RERANK=true # 是否启用重排\nRAG_RERANK_TOP_K=5 # 最终给 AI 的结果数\n\n# Agent 行为控制\nAGENT_MAX_ITERATIONS=5 # ReAct 最大迭代次数\nAGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空回复终止阈值\n\n### 7. 文档解析引擎配置 (DocProcessor)\n# MINERU_ENABLED=true\n# MINERU_BASE_URL=http://localhost:8888\n# DOCLING_ENABLED=true\n# DOCLING_BASE_URL=http://localhost:8000\n# PADDLEOCR_ENABLED=false\n# PADDLEOCR_BASE_URL=http://localhost:8080\n\n### 8. 配置覆盖控制\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n"}, "cfee0ca349388234cef712f7bebbf7231637e1f7": {"t": 1785773277.335362, "n": 2913, "h": "82da00ee3e51c0ef", "c": "# ==============================================================================\n# CatWiki Backend Environment Configuration Template (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n### 1. 基础环境配置 (Basic Environment)\nENVIRONMENT=local # 运行环境: local, dev, prod\nDEBUG=true # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nTZ=Asia/Shanghai # 系统时区\n\n# 系统身份标识\nPROJECT_NAME=\"CatWiki API\"\nDESCRIPTION=\"CatWiki 后端服务\"\nVERSION=\"0.0.4\"\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\"\nADMIN_API_V1_STR=\"/admin/v1\"\n\n### 2. 数据库配置 (PostgreSQL / PGVector)\nPOSTGRES_SERVER=postgres # Local 填 localhost, Docker 填 postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录\n\n# 连接池调优\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n### 3. 安全与访问控制 (Security & CORS)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 令牌有效期 (分钟)\n\n# CORS 允许的域名 (用逗号分隔)\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n### 4. 对象存储配置 (RustFS / S3 Compatible)\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# 对象存储初始化专有\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外部可读访问链接\nRUSTFS_PUBLIC_URL=http://localhost:9000\nRUSTFS_PUBLIC_BUCKET=true\n\n### 5. AI 模型服务配置 (OpenAI Compatible)\n# 首次启动会自动同步进数据库配置中。\n\n# 5.1 Chat 对话\nAI_CHAT_API_KEY=sk-xxxx\nAI_CHAT_API_BASE=https://api.openai.com/v1\nAI_CHAT_MODEL=gpt-4o\n\n# 5.2 Embedding 向量化\nAI_EMBEDDING_API_KEY=sk-xxxx\nAI_EMBEDDING_API_BASE=https://api.openai.com/v1\nAI_EMBEDDING_MODEL=text-embedding-3-small\nAI_EMBEDDING_DIMENSION=1536\n\n# 5.3 Reranker 重排序\nAI_RERANK_API_KEY=sk-xxxx\nAI_RERANK_API_BASE=https://api.rerank.com/v1\nAI_RERANK_MODEL=bge-reranker-v2-m3\n\n### 6. RAG 检索与智能 Agent 调优\nRAG_RECALL_K=50 # 向量召回数量\nRAG_RECALL_THRESHOLD=0.3 # 相似度阈值\nRAG_ENABLE_RERANK=true # 是否启用重排\nRAG_RERANK_TOP_K=5 # 最终给 AI 的结果数\n\n# Agent 行为控制\nAGENT_MAX_ITERATIONS=5 # ReAct 最大迭代次数\nAGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空回复终止阈值\n\n### 7. 文档解析引擎配置 (DocProcessor)\nMINERU_ENABLED=true\nMINERU_BASE_URL=http://localhost:8888\nDOCLING_ENABLED=true\nDOCLING_BASE_URL=http://localhost:8000\nPADDLEOCR_ENABLED=false\nPADDLEOCR_BASE_URL=http://localhost:8080\n\n### 8. 配置覆盖控制\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n"}, "5f1ca15b9676f4f386cd73ff6422561a7c9012e2": {"t": 1785773279.213181, "n": 2916, "h": "f3b79d18aa461150", "c": "# ==============================================================================\n# CatWiki Backend Environment Configuration Template (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n### 1. 基础环境配置 (Basic Environment)\nENVIRONMENT=local # 运行环境: local, dev, prod\nDEBUG=true # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nTZ=Asia/Shanghai # 系统时区\n\n# 系统身份标识\nPROJECT_NAME=\"CatWiki API\"\nDESCRIPTION=\"CatWiki 后端服务\"\nVERSION=\"0.0.4\"\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\"\nADMIN_API_V1_STR=\"/admin/v1\"\n\n### 2. 数据库配置 (PostgreSQL / PGVector)\nPOSTGRES_SERVER=localhost # Local 填 localhost, Docker 填 postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录\n\n# 连接池调优\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n### 3. 安全与访问控制 (Security & CORS)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 令牌有效期 (分钟)\n\n# CORS 允许的域名 (用逗号分隔)\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n### 4. 对象存储配置 (RustFS / S3 Compatible)\nRUSTFS_ENDPOINT=localhost:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# 对象存储初始化专有\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外部可读访问链接\nRUSTFS_PUBLIC_URL=http://localhost:9000\nRUSTFS_PUBLIC_BUCKET=true\n\n### 5. AI 模型服务配置 (OpenAI Compatible)\n# 首次启动会自动同步进数据库配置中。\n\n# 5.1 Chat 对话\nAI_CHAT_API_KEY=sk-xxxx\nAI_CHAT_API_BASE=https://api.openai.com/v1\nAI_CHAT_MODEL=gpt-4o\n\n# 5.2 Embedding 向量化\nAI_EMBEDDING_API_KEY=sk-xxxx\nAI_EMBEDDING_API_BASE=https://api.openai.com/v1\nAI_EMBEDDING_MODEL=text-embedding-3-small\nAI_EMBEDDING_DIMENSION=1536\n\n# 5.3 Reranker 重排序\nAI_RERANK_API_KEY=sk-xxxx\nAI_RERANK_API_BASE=https://api.rerank.com/v1\nAI_RERANK_MODEL=bge-reranker-v2-m3\n\n### 6. RAG 检索与智能 Agent 调优\nRAG_RECALL_K=50 # 向量召回数量\nRAG_RECALL_THRESHOLD=0.3 # 相似度阈值\nRAG_ENABLE_RERANK=true # 是否启用重排\nRAG_RERANK_TOP_K=5 # 最终给 AI 的结果数\n\n# Agent 行为控制\nAGENT_MAX_ITERATIONS=5 # ReAct 最大迭代次数\nAGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空回复终止阈值\n\n### 7. 文档解析引擎配置 (DocProcessor)\nMINERU_ENABLED=true\nMINERU_BASE_URL=http://localhost:8888\nDOCLING_ENABLED=true\nDOCLING_BASE_URL=http://localhost:8000\nPADDLEOCR_ENABLED=false\nPADDLEOCR_BASE_URL=http://localhost:8080\n\n### 8. 配置覆盖控制\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n"}, "7565045b0cb47956a6608d914a080d841a4667da": {"t": 1785773280.4625602, "n": 6083, "h": "177e17c0e1a7593f", "c": "# ==============================================================================\n# CatWiki 后端环境配置模板 (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n# ------------------------------------------------------------------------------\n# 1. 基础环境配置 (Global Settings)\n# ------------------------------------------------------------------------------\nENVIRONMENT=prod # 运行环境: local (开发), dev (测试), prod (生产)\nDEBUG=false # 调试模式: true (启用), false (禁用)\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\n\n# 系统身份标识\nPROJECT_NAME=\"CatWiki API\" # 系统显示名称\nDESCRIPTION=\"CatWiki 后端服务\" # 系统基础描述\nVERSION=\"0.0.4\" # 当前 API 版本\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\" # 客户端 API 路由基地址\nADMIN_API_V1_STR=\"/admin/v1\" # 管理后台 API 路由基地址\n\n\n# ------------------------------------------------------------------------------\n# 2. 数据库配置 (PostgreSQL / PGVector)\n# ------------------------------------------------------------------------------\n# 数据库主机: 本地开发填 localhost, Docker 部署请填容器名 postgres\nPOSTGRES_SERVER=postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境请务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录 (用于调试)\n\n# 连接池调优 (针对高并发场景)\nDB_POOL_SIZE=20 # 基础连接池大小\nDB_MAX_OVERFLOW=50 # 允许的最大溢出连接数\nDB_POOL_TIMEOUT=30 # 获取连接的超时时间 (秒)\nDB_POOL_RECYCLE=3600 # 连接自动回收周期 (秒)\n\n\n# ------------------------------------------------------------------------------\n# 3. 安全与访问控制 (Security & CORS)\n# ------------------------------------------------------------------------------\n# 🔒 重要: 生产环境必须修改为长随机字符串 (推荐: openssl rand -hex 32)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 登录令牌有效期 (默认 7 天)\n\n# CORS 允许的域名 (用逗号分隔,严禁在生产环境使用 *)\n# 示例: https://admin.catwiki.ai,https://demo.catwiki.ai\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n\n# ------------------------------------------------------------------------------\n# 4. 对象存储配置 (RustFS / S3 兼容服务)\n# ------------------------------------------------------------------------------\n# 基础连接\nRUSTFS_ENDPOINT=rustfs:9000 # 服务访问地址\nRUSTFS_ACCESS_KEY=rustfsadmin # 访问密钥\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki # 默认存储桶名称\nRUSTFS_USE_SSL=false # 内部通信是否加密 (生产建议开启)\nRUSTFS_REGION=us-east-1\n\n# 容器初始化专有 (若无特殊需求请保持与 ACCESS_KEY 一致)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外网预览与策略\nRUSTFS_PUBLIC_URL=http://localhost:9000 # 前端访问预览图片的公网地址\nRUSTFS_PUBLIC_BUCKET=true # 是否将存储桶设为公共可读\n\n\n# ------------------------------------------------------------------------------\n# 5. AI 模型服务配置 (OpenAI 兼容协议)\n# ------------------------------------------------------------------------------\n# 注意: AI 配置首次启动会同步到数据库系统配置中。若之后在 UI 修改,此变量将失效。\n# 如果需要强制用此变量覆盖数据库,请将 FORCE_UPDATE_AI_CONFIG 设为 true。\n\n# 5.1 Chat 对话\n# AI_CHAT_API_KEY=sk-your-key\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n# AI_CHAT_EXTRA_BODY={\"chat_template_kwargs\": {\"enable_thinking\": false}}\n\n# 5.2 Embedding 向量化\n# AI_EMBEDDING_API_KEY=sk-your-key\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=4096\n# AI_EMBEDDING_BATCH_SIZE=10 # 批量处理上限 (OpenAI 推荐 2048, 阿里云限制 10)\n\n# 5.3 Reranker 重排序\n# AI_RERANK_API_KEY=sk-your-key\n# AI_RERANK_API_BASE=https://api.openai.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n# 5.4 VL 视觉/多模态\n# AI_VL_API_KEY=sk-your-key\n# AI_VL_API_BASE=https://api.openai.com/v1\n# AI_VL_MODEL=gpt-4o\n\n\n# ------------------------------------------------------------------------------\n# 6. RAG 检索与智能 Agent 调优\n# ------------------------------------------------------------------------------\n# 检索控制\n# RAG_RECALL_K=50 # Vector 检索召回的 Top-K 数量\n# RAG_RECALL_MAX=100 # 全局召回文档块上限\n# RAG_RECALL_THRESHOLD=0.3 # 相似度召回阈值 (0.0-1.0)\n# RAG_ENABLE_RERANK=true # 是否启用重排序精排\n# RAG_RERANK_TOP_K=5 # 最终给到 AI 的背景段落数\n\n# Agent 行为控制 (ReAct 模式)\n# AGENT_MAX_ITERATIONS=5 # 对话 Agent 最大思考迭代次数\n# AGENT_MAX_CONSECUTIVE_EMPTY=2 # 遇到连续空回复的自动终止点\n# AGENT_SUMMARY_TRIGGER_MSG_COUNT=10 # 触发对话长列表自动摘要的消息数\n\n\n# ------------------------------------------------------------------------------\n# 7. 文档解析引擎配置 (DocProcessor)\n# ------------------------------------------------------------------------------\n# 各引擎的 BASE_URL 填写对应的解析服务地址\n\n# 7.1 MinerU (深度学术/PDF 解析)\n# MINERU_ENABLED=true\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://mineru-service:8888\n# MINERU_API_KEY=sk-mineru-key\n\n# 7.2 Docling (通用文档解析)\n# DOCLING_ENABLED=true\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://docling-service:8000\n# DOCLING_API_KEY=sk-docling-key\n\n# 7.3 PaddleOCR (图片/扫描件 OCR)\n# PADDLEOCR_ENABLED=true\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://paddleocr-service:8080\n# PADDLEOCR_API_KEY=NONE\n\n\n# ------------------------------------------------------------------------------\n# 8. 全局限制与开关 (Limits & Flags)\n# ------------------------------------------------------------------------------\n# 文件上传控制\n# UPLOAD_MAX_SIZE=104857600 # 单个文件上传上限 (字节,默认 100MB)\n# UPLOAD_ALLOWED_EXTENSIONS=pdf,docx,txt,md,jpg,png,zip # 允许的文件后缀\n\n# 配置同步控制 (仅用于调试环境同步)\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 模型配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n \n# ------------------------------------------------------------------------------\n# 9. Redis 缓存配置 (Redis Cache Configuration)\n# ------------------------------------------------------------------------------\n# 启用 Redis 缓存\nREDIS_ENABLED=false\n# Redis 连接地址\n# 示例: redis://:password@redis:6379/0\nREDIS_URL=redis://redis:6379/0\n# 缓存 Key 前缀\nREDIS_PREFIX=catwiki:\n# 默认缓存 TTL(秒)\nCACHE_DEFAULT_TTL=300\n"}, "3208f8507d8107181ed65e29ff78ca0d0ea98cf2": {"t": 1785773281.7770295, "n": 5987, "h": "d0125bc0bc13f082", "c": "# ==============================================================================\n# CatWiki 后端环境配置模板 (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n# ------------------------------------------------------------------------------\n# 1. 基础环境配置 (Global Settings)\n# ------------------------------------------------------------------------------\nENVIRONMENT=prod # 运行环境: local (开发), dev (测试), prod (生产)\nDEBUG=false # 调试模式: true (启用), false (禁用)\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\n\n# 系统身份标识\nPROJECT_NAME=\"CatWiki API\" # 系统显示名称\nDESCRIPTION=\"CatWiki 后端服务\" # 系统基础描述\nVERSION=\"0.0.4\" # 当前 API 版本\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\" # 客户端 API 路由基地址\nADMIN_API_V1_STR=\"/admin/v1\" # 管理后台 API 路由基地址\n\n\n# ------------------------------------------------------------------------------\n# 2. 数据库配置 (PostgreSQL / PGVector)\n# ------------------------------------------------------------------------------\n# 数据库主机: 本地开发填 localhost, Docker 部署请填容器名 postgres\nPOSTGRES_SERVER=postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境请务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录 (用于调试)\n\n# 连接池调优 (针对高并发场景)\nDB_POOL_SIZE=20 # 基础连接池大小\nDB_MAX_OVERFLOW=50 # 允许的最大溢出连接数\nDB_POOL_TIMEOUT=30 # 获取连接的超时时间 (秒)\nDB_POOL_RECYCLE=3600 # 连接自动回收周期 (秒)\n\n\n# ------------------------------------------------------------------------------\n# 3. 安全与访问控制 (Security & CORS)\n# ------------------------------------------------------------------------------\n# 🔒 重要: 生产环境必须修改为长随机字符串 (推荐: openssl rand -hex 32)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 登录令牌有效期 (默认 7 天)\n\n# CORS 允许的域名 (用逗号分隔,严禁在生产环境使用 *)\n# 示例: https://admin.catwiki.ai,https://demo.catwiki.ai\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n\n# ------------------------------------------------------------------------------\n# 4. 对象存储配置 (RustFS / S3 兼容服务)\n# ------------------------------------------------------------------------------\n# 基础连接\nRUSTFS_ENDPOINT=rustfs:9000 # 服务访问地址\nRUSTFS_ACCESS_KEY=rustfsadmin # 访问密钥\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki # 默认存储桶名称\nRUSTFS_USE_SSL=false # 内部通信是否加密 (生产建议开启)\nRUSTFS_REGION=us-east-1\n\n# 容器初始化专有 (若无特殊需求请保持与 ACCESS_KEY 一致)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外网预览与策略\nRUSTFS_PUBLIC_URL=http://localhost:9000 # 前端访问预览图片的公网地址\nRUSTFS_PUBLIC_BUCKET=true # 是否将存储桶设为公共可读\n\n\n# ------------------------------------------------------------------------------\n# 5. AI 模型服务配置 (OpenAI 兼容协议)\n# ------------------------------------------------------------------------------\n# 注意: AI 配置首次启动会同步到数据库系统配置中。若之后在 UI 修改,此变量将失效。\n# 如果需要强制用此变量覆盖数据库,请将 FORCE_UPDATE_AI_CONFIG 设为 true。\n\n# 5.1 Chat 对话\n# AI_CHAT_API_KEY=sk-your-key\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n# AI_CHAT_EXTRA_BODY={\"chat_template_kwargs\": {\"enable_thinking\": false}}\n\n# 5.2 Embedding 向量化\n# AI_EMBEDDING_API_KEY=sk-your-key\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=4096\n# AI_EMBEDDING_BATCH_SIZE=10 # 批量处理上限 (OpenAI 推荐 2048, 阿里云限制 10)\n\n# 5.3 Reranker 重排序\n# AI_RERANK_API_KEY=sk-your-key\n# AI_RERANK_API_BASE=https://api.openai.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n# 5.4 VL 视觉/多模态\n# AI_VL_API_KEY=sk-your-key\n# AI_VL_API_BASE=https://api.openai.com/v1\n# AI_VL_MODEL=gpt-4o\n\n\n# ------------------------------------------------------------------------------\n# 6. RAG 检索与智能 Agent 调优\n# ------------------------------------------------------------------------------\n# 检索控制\n# RAG_RECALL_K=50 # Vector 检索召回的 Top-K 数量\n# RAG_RECALL_MAX=100 # 全局召回文档块上限\n# RAG_RECALL_THRESHOLD=0.3 # 相似度召回阈值 (0.0-1.0)\n# RAG_ENABLE_RERANK=true # 是否启用重排序精排\n# RAG_RERANK_TOP_K=5 # 最终给到 AI 的背景段落数\n\n# Agent 行为控制 (ReAct 模式)\n# AGENT_MAX_ITERATIONS=5 # 对话 Agent 最大思考迭代次数\n# AGENT_MAX_CONSECUTIVE_EMPTY=2 # 遇到连续空回复的自动终止点\n# AGENT_SUMMARY_TRIGGER_MSG_COUNT=10 # 触发对话长列表自动摘要的消息数\n\n\n# ------------------------------------------------------------------------------\n# 7. 文档解析引擎配置 (DocProcessor)\n# ------------------------------------------------------------------------------\n# 各引擎的 BASE_URL 填写对应的解析服务地址\n\n# 7.1 MinerU (深度学术/PDF 解析)\n# MINERU_ENABLED=true\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://mineru-service:8888\n# MINERU_API_KEY=sk-mineru-key\n\n# 7.2 Docling (通用文档解析)\n# DOCLING_ENABLED=true\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://docling-service:8000\n# DOCLING_API_KEY=sk-docling-key\n\n# 7.3 PaddleOCR (图片/扫描件 OCR)\n# PADDLEOCR_ENABLED=true\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://paddleocr-service:8080\n# PADDLEOCR_API_KEY=NONE\n\n\n# ------------------------------------------------------------------------------\n# 8. 全局限制与开关 (Limits & Flags)\n# ------------------------------------------------------------------------------\n# 文件上传控制\n# UPLOAD_MAX_SIZE=104857600 # 单个文件上传上限 (字节,默认 100MB)\n# UPLOAD_ALLOWED_EXTENSIONS=pdf,docx,txt,md,jpg,png,zip # 允许的文件后缀\n\n# 配置同步控制 (仅用于调试环境同步)\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 模型配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n \n# ------------------------------------------------------------------------------\n# 9. Redis 缓存配置 (Redis Cache Configuration)\n# ------------------------------------------------------------------------------\nREDIS_HOST=redis\nREDIS_PORT=6379\nREDIS_PASSWORD=catwiki-redis-password-dev # 🔒 生产环境务必修改!\n"}, "0e4e993bfebb674c8bdd2edbb37b9887cd4585c0": {"t": 1785773283.117428, "n": 5690, "h": "e8d7c4c2f28f8b8f", "c": "# ==============================================================================\n# CatWiki 后端环境配置模板 (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n# ------------------------------------------------------------------------------\n# 1. 基础环境配置 (Global Settings)\n# ------------------------------------------------------------------------------\nENVIRONMENT=prod # 运行环境: local (开发), dev (测试), prod (生产)\nDEBUG=false # 调试模式: true (启用), false (禁用)\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\n\n# 系统身份标识\nPROJECT_NAME=\"CatWiki API\" # 系统显示名称\nDESCRIPTION=\"CatWiki 后端服务\" # 系统基础描述\nVERSION=\"0.0.4\" # 当前 API 版本\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\" # 客户端 API 路由基地址\nADMIN_API_V1_STR=\"/admin/v1\" # 管理后台 API 路由基地址\n\n\n# ------------------------------------------------------------------------------\n# 2. 数据库配置 (PostgreSQL / PGVector)\n# ------------------------------------------------------------------------------\n# 数据库主机: 本地开发填 localhost, Docker 部署请填容器名 postgres\nPOSTGRES_SERVER=postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境请务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录 (用于调试)\n\n# 连接池调优 (针对高并发场景)\nDB_POOL_SIZE=20 # 基础连接池大小\nDB_MAX_OVERFLOW=50 # 允许的最大溢出连接数\nDB_POOL_TIMEOUT=30 # 获取连接的超时时间 (秒)\nDB_POOL_RECYCLE=3600 # 连接自动回收周期 (秒)\n\n\n# ------------------------------------------------------------------------------\n# 3. 安全与访问控制 (Security & CORS)\n# ------------------------------------------------------------------------------\n# 🔒 重要: 生产环境必须修改为长随机字符串 (推荐: openssl rand -hex 32)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 登录令牌有效期 (默认 7 天)\n\n# CORS 允许的域名 (用逗号分隔,严禁在生产环境使用 *)\n# 示例: https://admin.catwiki.ai,https://demo.catwiki.ai\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n\n# ------------------------------------------------------------------------------\n# 4. 对象存储配置 (RustFS / S3 兼容服务)\n# ------------------------------------------------------------------------------\n# 基础连接\nRUSTFS_ENDPOINT=rustfs:9000 # 服务访问地址\nRUSTFS_ACCESS_KEY=rustfsadmin # 访问密钥\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki # 默认存储桶名称\nRUSTFS_USE_SSL=false # 内部通信是否加密 (生产建议开启)\nRUSTFS_REGION=us-east-1\n\n# 容器初始化专有 (若无特殊需求请保持与 ACCESS_KEY 一致)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外网预览与策略\nRUSTFS_PUBLIC_URL=http://localhost:9000 # 前端访问预览图片的公网地址\nRUSTFS_PUBLIC_BUCKET=true # 是否将存储桶设为公共可读\n\n\n# ------------------------------------------------------------------------------\n# 5. AI 模型服务配置 (OpenAI 兼容协议)\n# ------------------------------------------------------------------------------\n# 注意: AI 配置首次启动会同步到数据库系统配置中。若之后在 UI 修改,此变量将失效。\n# 如果需要强制用此变量覆盖数据库,请将 FORCE_UPDATE_AI_CONFIG 设为 true。\n\n# 5.1 Chat 对话\n# AI_CHAT_API_KEY=sk-your-key\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n# AI_CHAT_EXTRA_BODY={\"chat_template_kwargs\": {\"enable_thinking\": false}}\n\n# 5.2 Embedding 向量化\n# AI_EMBEDDING_API_KEY=sk-your-key\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=4096\n# AI_EMBEDDING_BATCH_SIZE=10 # 批量处理上限 (OpenAI 推荐 2048, 阿里云限制 10)\n\n# 5.3 Reranker 重排序\n# AI_RERANK_API_KEY=sk-your-key\n# AI_RERANK_API_BASE=https://api.openai.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n# 5.4 VL 视觉/多模态\n# AI_VL_API_KEY=sk-your-key\n# AI_VL_API_BASE=https://api.openai.com/v1\n# AI_VL_MODEL=gpt-4o\n\n\n# ------------------------------------------------------------------------------\n# 6. RAG 检索与智能 Agent 调优\n# ------------------------------------------------------------------------------\n# 检索控制\n# RAG_RECALL_K=50 # Vector 检索召回的 Top-K 数量\n# RAG_RECALL_MAX=100 # 全局召回文档块上限\n# RAG_RECALL_THRESHOLD=0.3 # 相似度召回阈值 (0.0-1.0)\n# RAG_ENABLE_RERANK=true # 是否启用重排序精排\n# RAG_RERANK_TOP_K=5 # 最终给到 AI 的背景段落数\n\n# Agent 行为控制 (ReAct 模式)\n# AGENT_MAX_ITERATIONS=5 # 对话 Agent 最大思考迭代次数\n# AGENT_MAX_CONSECUTIVE_EMPTY=2 # 遇到连续空回复的自动终止点\n# AGENT_SUMMARY_TRIGGER_MSG_COUNT=10 # 触发对话长列表自动摘要的消息数\n\n\n# ------------------------------------------------------------------------------\n# 7. 文档解析引擎配置 (DocProcessor)\n# ------------------------------------------------------------------------------\n# 各引擎的 BASE_URL 填写对应的解析服务地址\n\n# 7.1 MinerU (深度学术/PDF 解析)\n# MINERU_ENABLED=true\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://mineru-service:8888\n# MINERU_API_KEY=sk-mineru-key\n\n# 7.2 Docling (通用文档解析)\n# DOCLING_ENABLED=true\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://docling-service:8000\n# DOCLING_API_KEY=sk-docling-key\n\n# 7.3 PaddleOCR (图片/扫描件 OCR)\n# PADDLEOCR_ENABLED=true\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://paddleocr-service:8080\n# PADDLEOCR_API_KEY=NONE\n\n\n# ------------------------------------------------------------------------------\n# 8. 全局限制与开关 (Limits & Flags)\n# ------------------------------------------------------------------------------\n# 文件上传控制\n# UPLOAD_MAX_SIZE=104857600 # 单个文件上传上限 (字节,默认 100MB)\n# UPLOAD_ALLOWED_EXTENSIONS=pdf,docx,txt,md,jpg,png,zip # 允许的文件后缀\n\n# 配置同步控制 (仅用于调试环境同步)\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 模型配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n"}, "aeb87e1c33eab30d4fb2f165641b409aca386165": {"t": 1785773284.4994311, "n": 5615, "h": "aa6d2e298bfb7e5b", "c": "# ==============================================================================\n# CatWiki 后端环境配置模板 (.env.example)\n# ==============================================================================\n# 使用说明:\n# 1. 复制此文件为 .env: `cp .env.example .env`\n# 2. 根据实际部署环境修改各配置项\n# 3. 生产环境建议通过环境变量注入,而非直接修改此文件\n# ==============================================================================\n\n# ------------------------------------------------------------------------------\n# 1. 基础环境配置 (Global Settings)\n# ------------------------------------------------------------------------------\nENVIRONMENT=prod # 运行环境: local (开发), dev (测试), prod (生产)\nDEBUG=false # 调试模式: true (启用), false (禁用)\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\n\n# 系统身份标识\nPROJECT_NAME=\"CatWiki API\" # 系统显示名称\nDESCRIPTION=\"CatWiki 后端服务\" # 系统基础描述\nVERSION=\"0.0.4\" # 当前 API 版本\n\n# API 路由前缀\nAPI_V1_STR=\"/v1\" # 客户端 API 路由基地址\nADMIN_API_V1_STR=\"/admin/v1\" # 管理后台 API 路由基地址\n\n\n# ------------------------------------------------------------------------------\n# 2. 数据库配置 (PostgreSQL / PGVector)\n# ------------------------------------------------------------------------------\n# 数据库主机: 本地开发填 localhost, Docker 部署请填容器名 postgres\nPOSTGRES_SERVER=postgres\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres # 🔒 生产环境请务必修改!\nDB_ECHO=false # 是否输出 SQL 执行记录 (用于调试)\n\n# 连接池调优 (针对高并发场景)\nDB_POOL_SIZE=20 # 基础连接池大小\nDB_MAX_OVERFLOW=50 # 允许的最大溢出连接数\nDB_POOL_TIMEOUT=30 # 获取连接的超时时间 (秒)\nDB_POOL_RECYCLE=3600 # 连接自动回收周期 (秒)\n\n\n# ------------------------------------------------------------------------------\n# 3. 安全与访问控制 (Security & CORS)\n# ------------------------------------------------------------------------------\n# 🔒 重要: 生产环境必须修改为长随机字符串 (推荐: openssl rand -hex 32)\nSECRET_KEY=your-secret-key-at-least-32-characters-long\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # 登录令牌有效期 (默认 7 天)\n\n# CORS 允许的域名 (用逗号分隔,严禁在生产环境使用 *)\n# 示例: https://admin.catwiki.ai,https://demo.catwiki.ai\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002\n\n\n# ------------------------------------------------------------------------------\n# 4. 对象存储配置 (RustFS / S3 兼容服务)\n# ------------------------------------------------------------------------------\n# 基础连接\nRUSTFS_ENDPOINT=rustfs:9000 # 服务访问地址\nRUSTFS_ACCESS_KEY=rustfsadmin # 访问密钥\nRUSTFS_SECRET_KEY=rustfsadmin # 🔒 生产环境务必修改!\nRUSTFS_BUCKET_NAME=catwiki # 默认存储桶名称\nRUSTFS_USE_SSL=false # 内部通信是否加密 (生产建议开启)\nRUSTFS_REGION=us-east-1\n\n# 容器初始化专有 (若无特殊需求请保持与 ACCESS_KEY 一致)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# 外网预览与策略\nRUSTFS_PUBLIC_URL=http://localhost:9000 # 前端访问预览图片的公网地址\nRUSTFS_PUBLIC_BUCKET=true # 是否将存储桶设为公共可读\n\n\n# ------------------------------------------------------------------------------\n# 5. AI 模型服务配置 (OpenAI 兼容协议)\n# ------------------------------------------------------------------------------\n# 注意: AI 配置首次启动会同步到数据库系统配置中。若之后在 UI 修改,此变量将失效。\n# 如果需要强制用此变量覆盖数据库,请将 FORCE_UPDATE_AI_CONFIG 设为 true。\n\n# 5.1 Chat 对话\n# AI_CHAT_API_KEY=sk-your-key\n# AI_CHAT_API_BASE=https://api.openai.com/v1\n# AI_CHAT_MODEL=gpt-4o\n\n# 5.2 Embedding 向量化\n# AI_EMBEDDING_API_KEY=sk-your-key\n# AI_EMBEDDING_API_BASE=https://api.openai.com/v1\n# AI_EMBEDDING_MODEL=text-embedding-3-small\n# AI_EMBEDDING_DIMENSION=1536\n# AI_EMBEDDING_BATCH_SIZE=10 # 批量处理上限 (OpenAI 推荐 2048, 阿里云限制 10)\n\n# 5.3 Reranker 重排序\n# AI_RERANK_API_KEY=sk-your-key\n# AI_RERANK_API_BASE=https://api.openai.com/v1\n# AI_RERANK_MODEL=bge-reranker-v2-m3\n\n# 5.4 VL 视觉/多模态\n# AI_VL_API_KEY=sk-your-key\n# AI_VL_API_BASE=https://api.openai.com/v1\n# AI_VL_MODEL=gpt-4o\n\n\n# ------------------------------------------------------------------------------\n# 6. RAG 检索与智能 Agent 调优\n# ------------------------------------------------------------------------------\n# 检索控制\n# RAG_RECALL_K=50 # Vector 检索召回的 Top-K 数量\n# RAG_RECALL_MAX=100 # 全局召回文档块上限\n# RAG_RECALL_THRESHOLD=0.3 # 相似度召回阈值 (0.0-1.0)\n# RAG_ENABLE_RERANK=true # 是否启用重排序精排\n# RAG_RERANK_TOP_K=5 # 最终给到 AI 的背景段落数\n\n# Agent 行为控制 (ReAct 模式)\n# AGENT_MAX_ITERATIONS=5 # 对话 Agent 最大思考迭代次数\n# AGENT_MAX_CONSECUTIVE_EMPTY=2 # 遇到连续空回复的自动终止点\n# AGENT_SUMMARY_TRIGGER_MSG_COUNT=10 # 触发对话长列表自动摘要的消息数\n\n\n# ------------------------------------------------------------------------------\n# 7. 文档解析引擎配置 (DocProcessor)\n# ------------------------------------------------------------------------------\n# 各引擎的 BASE_URL 填写对应的解析服务地址\n\n# 7.1 MinerU (深度学术/PDF 解析)\n# MINERU_ENABLED=true\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://mineru-service:8888\n# MINERU_API_KEY=sk-mineru-key\n\n# 7.2 Docling (通用文档解析)\n# DOCLING_ENABLED=true\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://docling-service:8000\n# DOCLING_API_KEY=sk-docling-key\n\n# 7.3 PaddleOCR (图片/扫描件 OCR)\n# PADDLEOCR_ENABLED=false\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://paddleocr-service:8080\n# PADDLEOCR_API_KEY=NONE\n\n\n# ------------------------------------------------------------------------------\n# 8. 全局限制与开关 (Limits & Flags)\n# ------------------------------------------------------------------------------\n# 文件上传控制\n# UPLOAD_MAX_SIZE=104857600 # 单个文件上传上限 (字节,默认 100MB)\n# UPLOAD_ALLOWED_EXTENSIONS=pdf,docx,txt,md,jpg,png,zip # 允许的文件后缀\n\n# 配置同步控制 (仅用于调试环境同步)\nFORCE_UPDATE_AI_CONFIG=false # 重启时是否用环境变量强制覆盖数据库 AI 配置\nFORCE_UPDATE_DOC_PROCESSOR=false # 重启时是否用环境变量强制覆盖数据库解析器配置\n"}, "fe3b2ab4f72cad19d782468345620898b9638ab4": {"t": 1785773285.939194, "n": 3456, "h": "6f42fe24ca9b67af", "c": "# ============================================\n# 后端环境变量配置\n# 用于本地开发 (Local) 和 Docker 环境\n# 复制此文件为 .env 并根据需要修改配置\n# ============================================\n\n# ===== 1. 环境基础配置 =====\nENVIRONMENT=local # 环境: local, dev, prod\nDEBUG=false # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\n\n# ===== 2. 数据库配置 (PostgreSQL) =====\n# Local: localhost | Docker: postgres (Service Name)\nPOSTGRES_SERVER=localhost\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres\nDB_ECHO=false # 是否输出 SQL 日志\n\n# ===== 3. 数据库连接池配置 =====\nDB_POOL_SIZE=50\nDB_MAX_OVERFLOW=100\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n# ===== 4. 安全配置 =====\n# 警告: 生产环境必须修改为强密钥\nSECRET_KEY=dev-secret-key-minimum-32-characters-long-for-development-only\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # Token 过期时间(分钟), 默认 7 天\n\n# ===== 5. CORS 配置 =====\n# 允许跨域的源, 多个源用逗号分隔\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002,http://admin-frontend:8001,http://client-frontend:8002\n\n# ===== 6. 对象存储配置 (RustFS/S3) =====\n# Local: localhost:9000 | Docker: rustfs:9000\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# RustFS Root 用户 (用于服务端初始化)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# RustFS 公开访问链接\nRUSTFS_PUBLIC_BUCKET=true\nRUSTFS_PUBLIC_URL=http://localhost:9000\n\n# ===== 7. AI 服务配置 (OpenAI Compatible) =====\n# 注意:当数据库中的 AI 配置为空时,此处设置的环境变量会在启动时自动加载进数据库。\n# 如果数据库中已有配置(已在管理后台修改过),则不会从环境变量同步。\n# 警告:生产环境请保护好 API Key\n\n## 7.1 Chat 对话配置\n# AI_CHAT_API_KEY=sk-your-chat-api-key\n# AI_CHAT_API_BASE=https://api.your-chat-service.com/v1\n# AI_CHAT_MODEL=your-chat-model\n\n## 7.2 Embedding 向量配置\n# AI_EMBEDDING_API_KEY=sk-your-embedding-api-key\n# AI_EMBEDDING_API_BASE=https://api.your-embedding-service.com/v1\n# AI_EMBEDDING_MODEL=your-embedding-model\n# AI_EMBEDDING_DIMENSION=4096\n# AI_EMBEDDING_BATCH_SIZE=10 # Embedding API 单次请求批量大小(阿里云限制 10,OpenAI 限制 2048)\n\n## 7.3 Reranker 重排序及 RAG 参数配置\n# AI_RERANK_API_KEY=sk-your-reranker-api-key\n# AI_RERANK_API_BASE=https://api.your-reranker-service.com/v1\n# AI_RERANK_MODEL=your-reranker-model\n\n## 7.4 VL 视觉对话配置 (选填)\n# AI_VL_API_KEY=sk-your-vl-api-key\n# AI_VL_API_BASE=https://api.your-vl-service.com/v1\n\n## 7.5 聊天 Agent 配置\n# AGENT_MAX_ITERATIONS=5 # ReAct Agent 最大迭代次数 (1-20,默认 5)\n# AGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空结果自动终止阈值 (1-10,默认 2)\n# AGENT_SUMMARY_TRIGGER_MSG_COUNT=10 # 触发对话摘要的消息数量阈值 (4-50,默认 10)\n\n## 7.6 RAG 检索参数调优\n# RAG_RECALL_K=50 # [检索] 初始向量召回数量 (默认 50)\n# RAG_RECALL_MAX=100 # [检索] 全局召回硬上限 (默认 100)\n# RAG_RECALL_THRESHOLD=0.3 # [检索] 相似度阈值 (0.0-1.0, 默认 0.3)\n# RAG_ENABLE_RERANK=true # [重排] 是否开启 Reranker (默认 true)\n# RAG_RERANK_TOP_K=5 # [重排/最终] 提供给 AI 的结果数 (默认 5)\n\n# ===== 8. 文档解析服务配置 (DocProcessor) =====\n\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://mineru-service:8888\n# MINERU_API_KEY=sk-mineru-key\n# MINERU_ENABLED=true\n\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://docling-service:8000\n# DOCLING_API_KEY=sk-docling-key\n# DOCLING_ENABLED=true\n\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://paddleocr-service:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n# ===== 9. 配置覆盖控制 =====\n# 设置为 true 时,每次启动都会用环境变量覆盖数据库中的配置\n# FORCE_UPDATE_AI_CONFIG=false\n# FORCE_UPDATE_DOC_PROCESSOR=false\n"}, "2b5ed56a7b0a811f5a5909b0892453654c254bbb": {"t": 1785773287.1178277, "n": 3537, "h": "85789c1bd208eb38", "c": "# ============================================\n# 后端环境变量配置\n# 用于本地开发 (Local) 和 Docker 环境\n# 复制此文件为 .env 并根据需要修改配置\n# ============================================\n\n# ===== 1. 环境基础配置 =====\nENVIRONMENT=local # 环境: local, dev, prod\nDEBUG=false # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nCATWIKI_EDITION=community\n# ===== 2. 企业版 (EE) 配置 (选填) =====\nCATWIKI_LICENSE_KEY=\n\n# ===== 3. 数据库配置 (PostgreSQL) =====\n# Local: localhost | Docker: postgres (Service Name)\nPOSTGRES_SERVER=localhost\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres\nDB_ECHO=false # 是否输出 SQL 日志\n\n# ===== 3. 数据库连接池配置 =====\nDB_POOL_SIZE=50\nDB_MAX_OVERFLOW=100\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n# ===== 4. 安全配置 =====\n# 警告: 生产环境必须修改为强密钥\nSECRET_KEY=dev-secret-key-minimum-32-characters-long-for-development-only\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # Token 过期时间(分钟), 默认 7 天\n\n# ===== 5. CORS 配置 =====\n# 允许跨域的源, 多个源用逗号分隔\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002,http://admin-frontend:8001,http://client-frontend:8002\n\n# ===== 6. 对象存储配置 (RustFS/S3) =====\n# Local: localhost:9000 | Docker: rustfs:9000\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# RustFS Root 用户 (用于服务端初始化)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# RustFS 公开访问链接\nRUSTFS_PUBLIC_BUCKET=true\nRUSTFS_PUBLIC_URL=http://localhost:9000\n\n# ===== 7. AI 服务配置 (OpenAI Compatible) =====\n# 注意:当数据库中的 AI 配置为空时,此处设置的环境变量会在启动时自动加载进数据库。\n# 如果数据库中已有配置(已在管理后台修改过),则不会从环境变量同步。\n# 警告:生产环境请保护好 API Key\n\n## 7.1 Chat 对话配置\n# AI_CHAT_API_KEY=sk-your-chat-api-key\n# AI_CHAT_API_BASE=https://api.your-chat-service.com/v1\n# AI_CHAT_MODEL=your-chat-model\n\n## 7.2 Embedding 向量配置\n# AI_EMBEDDING_API_KEY=sk-your-embedding-api-key\n# AI_EMBEDDING_API_BASE=https://api.your-embedding-service.com/v1\n# AI_EMBEDDING_MODEL=your-embedding-model\n# AI_EMBEDDING_DIMENSION=4096\n# AI_EMBEDDING_BATCH_SIZE=10 # Embedding API 单次请求批量大小(阿里云限制 10,OpenAI 限制 2048)\n\n## 7.3 Reranker 重排序及 RAG 参数配置\n# AI_RERANK_API_KEY=sk-your-reranker-api-key\n# AI_RERANK_API_BASE=https://api.your-reranker-service.com/v1\n# AI_RERANK_MODEL=your-reranker-model\n\n## 7.4 VL 视觉对话配置 (选填)\n# AI_VL_API_KEY=sk-your-vl-api-key\n# AI_VL_API_BASE=https://api.your-vl-service.com/v1\n\n## 7.5 聊天 Agent 配置\n# AGENT_MAX_ITERATIONS=5 # ReAct Agent 最大迭代次数 (1-20,默认 5)\n# AGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空结果自动终止阈值 (1-10,默认 2)\n# AGENT_SUMMARY_TRIGGER_MSG_COUNT=10 # 触发对话摘要的消息数量阈值 (4-50,默认 10)\n\n## 7.6 RAG 检索参数调优\n# RAG_RECALL_K=50 # [检索] 初始向量召回数量 (默认 50)\n# RAG_RECALL_MAX=100 # [检索] 全局召回硬上限 (默认 100)\n# RAG_RECALL_THRESHOLD=0.3 # [检索] 相似度阈值 (0.0-1.0, 默认 0.3)\n# RAG_ENABLE_RERANK=true # [重排] 是否开启 Reranker (默认 true)\n# RAG_RERANK_TOP_K=5 # [重排/最终] 提供给 AI 的结果数 (默认 5)\n\n# ===== 8. 文档解析服务配置 (DocProcessor) =====\n\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://mineru-service:8888\n# MINERU_API_KEY=sk-mineru-key\n# MINERU_ENABLED=true\n\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://docling-service:8000\n# DOCLING_API_KEY=sk-docling-key\n# DOCLING_ENABLED=true\n\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://paddleocr-service:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n# ===== 9. 配置覆盖控制 =====\n# 设置为 true 时,每次启动都会用环境变量覆盖数据库中的配置\n# FORCE_UPDATE_AI_CONFIG=false\n# FORCE_UPDATE_DOC_PROCESSOR=false\n"}, "aaf99187c732a613b208aaf2ef2b58e0f85c5cea": {"t": 1785773288.9324775, "n": 3571, "h": "c29986ebac5352fa", "c": "# ============================================\n# 后端环境变量配置\n# 用于本地开发 (Local) 和 Docker 环境\n# 复制此文件为 .env 并根据需要修改配置\n# ============================================\n\n# ===== 1. 环境基础配置 =====\nENVIRONMENT=local # 环境: local, dev, prod\nDEBUG=false # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nCATWIKI_EDITION=community\n# ===== 2. 企业版 (EE) 配置 (选填) =====\nCATWIKI_LICENSE_KEY=your-rsa-license-key-here # 企业版授权码\n\n# ===== 3. 数据库配置 (PostgreSQL) =====\n# Local: localhost | Docker: postgres (Service Name)\nPOSTGRES_SERVER=localhost\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres\nDB_ECHO=false # 是否输出 SQL 日志\n\n# ===== 3. 数据库连接池配置 =====\nDB_POOL_SIZE=50\nDB_MAX_OVERFLOW=100\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n# ===== 4. 安全配置 =====\n# 警告: 生产环境必须修改为强密钥\nSECRET_KEY=dev-secret-key-minimum-32-characters-long-for-development-only\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # Token 过期时间(分钟), 默认 7 天\n\n# ===== 5. CORS 配置 =====\n# 允许跨域的源, 多个源用逗号分隔\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002,http://admin-frontend:8001,http://client-frontend:8002\n\n# ===== 6. 对象存储配置 (RustFS/S3) =====\n# Local: localhost:9000 | Docker: rustfs:9000\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# RustFS Root 用户 (用于服务端初始化)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# RustFS 公开访问链接\nRUSTFS_PUBLIC_BUCKET=true\nRUSTFS_PUBLIC_URL=http://localhost:9000\n\n# ===== 7. AI 服务配置 (OpenAI Compatible) =====\n# 注意:当数据库中的 AI 配置为空时,此处设置的环境变量会在启动时自动加载进数据库。\n# 如果数据库中已有配置(已在管理后台修改过),则不会从环境变量同步。\n# 警告:生产环境请保护好 API Key\n\n## 7.1 Chat 对话配置\n# AI_CHAT_API_KEY=sk-your-chat-api-key\n# AI_CHAT_API_BASE=https://api.your-chat-service.com/v1\n# AI_CHAT_MODEL=your-chat-model\n\n## 7.2 Embedding 向量配置\n# AI_EMBEDDING_API_KEY=sk-your-embedding-api-key\n# AI_EMBEDDING_API_BASE=https://api.your-embedding-service.com/v1\n# AI_EMBEDDING_MODEL=your-embedding-model\n# AI_EMBEDDING_DIMENSION=4096\n# AI_EMBEDDING_BATCH_SIZE=10 # Embedding API 单次请求批量大小(阿里云限制 10,OpenAI 限制 2048)\n\n## 7.3 Reranker 重排序及 RAG 参数配置\n# AI_RERANK_API_KEY=sk-your-reranker-api-key\n# AI_RERANK_API_BASE=https://api.your-reranker-service.com/v1\n# AI_RERANK_MODEL=your-reranker-model\n\n## 7.4 VL 视觉对话配置 (选填)\n# AI_VL_API_KEY=sk-your-vl-api-key\n# AI_VL_API_BASE=https://api.your-vl-service.com/v1\n\n## 7.5 聊天 Agent 配置\n# AGENT_MAX_ITERATIONS=5 # ReAct Agent 最大迭代次数 (1-20,默认 5)\n# AGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空结果自动终止阈值 (1-10,默认 2)\n# AGENT_SUMMARY_TRIGGER_MSG_COUNT=10 # 触发对话摘要的消息数量阈值 (4-50,默认 10)\n\n## 7.6 RAG 检索参数调优\n# RAG_RECALL_K=50 # [检索] 初始向量召回数量 (默认 50)\n# RAG_RECALL_MAX=100 # [检索] 全局召回硬上限 (默认 100)\n# RAG_RECALL_THRESHOLD=0.3 # [检索] 相似度阈值 (0.0-1.0, 默认 0.3)\n# RAG_ENABLE_RERANK=true # [重排] 是否开启 Reranker (默认 true)\n# RAG_RERANK_TOP_K=5 # [重排/最终] 提供给 AI 的结果数 (默认 5)\n\n# ===== 8. 文档解析服务配置 (DocProcessor) =====\n\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://mineru-service:8888\n# MINERU_API_KEY=sk-mineru-key\n# MINERU_ENABLED=true\n\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://docling-service:8000\n# DOCLING_API_KEY=sk-docling-key\n# DOCLING_ENABLED=true\n\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://paddleocr-service:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n# ===== 9. 配置覆盖控制 =====\n# 设置为 true 时,每次启动都会用环境变量覆盖数据库中的配置\n# FORCE_UPDATE_AI_CONFIG=false\n# FORCE_UPDATE_DOC_PROCESSOR=false\n"}, "38101dac31ff4ed37711381609c507d5e1df6454": {"t": 1785773290.2001767, "n": 3545, "h": "f1819cfefad08899", "c": "# ============================================\n# 后端环境变量配置\n# 用于本地开发 (Local) 和 Docker 环境\n# 复制此文件为 .env 并根据需要修改配置\n# ============================================\n\n# ===== 1. 环境基础配置 =====\nENVIRONMENT=local # 环境: local, dev, prod\nDEBUG=false # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\n# ===== 2. 企业版 (EE) 配置 (选填) =====\nCATWIKI_LICENSE_KEY=your-rsa-license-key-here # 企业版授权码\n\n# ===== 3. 数据库配置 (PostgreSQL) =====\n# Local: localhost | Docker: postgres (Service Name)\nPOSTGRES_SERVER=localhost\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres\nDB_ECHO=false # 是否输出 SQL 日志\n\n# ===== 3. 数据库连接池配置 =====\nDB_POOL_SIZE=50\nDB_MAX_OVERFLOW=100\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n# ===== 4. 安全配置 =====\n# 警告: 生产环境必须修改为强密钥\nSECRET_KEY=dev-secret-key-minimum-32-characters-long-for-development-only\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # Token 过期时间(分钟), 默认 7 天\n\n# ===== 5. CORS 配置 =====\n# 允许跨域的源, 多个源用逗号分隔\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002,http://admin-frontend:8001,http://client-frontend:8002\n\n# ===== 6. 对象存储配置 (RustFS/S3) =====\n# Local: localhost:9000 | Docker: rustfs:9000\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# RustFS Root 用户 (用于服务端初始化)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# RustFS 公开访问链接\nRUSTFS_PUBLIC_BUCKET=true\nRUSTFS_PUBLIC_URL=http://localhost:9000\n\n# ===== 7. AI 服务配置 (OpenAI Compatible) =====\n# 注意:当数据库中的 AI 配置为空时,此处设置的环境变量会在启动时自动加载进数据库。\n# 如果数据库中已有配置(已在管理后台修改过),则不会从环境变量同步。\n# 警告:生产环境请保护好 API Key\n\n## 7.1 Chat 对话配置\n# AI_CHAT_API_KEY=sk-your-chat-api-key\n# AI_CHAT_API_BASE=https://api.your-chat-service.com/v1\n# AI_CHAT_MODEL=your-chat-model\n\n## 7.2 Embedding 向量配置\n# AI_EMBEDDING_API_KEY=sk-your-embedding-api-key\n# AI_EMBEDDING_API_BASE=https://api.your-embedding-service.com/v1\n# AI_EMBEDDING_MODEL=your-embedding-model\n# AI_EMBEDDING_DIMENSION=4096\n# AI_EMBEDDING_BATCH_SIZE=10 # Embedding API 单次请求批量大小(阿里云限制 10,OpenAI 限制 2048)\n\n## 7.3 Reranker 重排序及 RAG 参数配置\n# AI_RERANK_API_KEY=sk-your-reranker-api-key\n# AI_RERANK_API_BASE=https://api.your-reranker-service.com/v1\n# AI_RERANK_MODEL=your-reranker-model\n\n## 7.4 VL 视觉对话配置 (选填)\n# AI_VL_API_KEY=sk-your-vl-api-key\n# AI_VL_API_BASE=https://api.your-vl-service.com/v1\n\n## 7.5 聊天 Agent 配置\n# AGENT_MAX_ITERATIONS=5 # ReAct Agent 最大迭代次数 (1-20,默认 5)\n# AGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空结果自动终止阈值 (1-10,默认 2)\n# AGENT_SUMMARY_TRIGGER_MSG_COUNT=10 # 触发对话摘要的消息数量阈值 (4-50,默认 10)\n\n## 7.6 RAG 检索参数调优\n# RAG_RECALL_K=50 # [检索] 初始向量召回数量 (默认 50)\n# RAG_RECALL_MAX=100 # [检索] 全局召回硬上限 (默认 100)\n# RAG_RECALL_THRESHOLD=0.3 # [检索] 相似度阈值 (0.0-1.0, 默认 0.3)\n# RAG_ENABLE_RERANK=true # [重排] 是否开启 Reranker (默认 true)\n# RAG_RERANK_TOP_K=5 # [重排/最终] 提供给 AI 的结果数 (默认 5)\n\n# ===== 8. 文档解析服务配置 (DocProcessor) =====\n\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://mineru-service:8888\n# MINERU_API_KEY=sk-mineru-key\n# MINERU_ENABLED=true\n\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://docling-service:8000\n# DOCLING_API_KEY=sk-docling-key\n# DOCLING_ENABLED=true\n\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://paddleocr-service:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n# ===== 9. 配置覆盖控制 =====\n# 设置为 true 时,每次启动都会用环境变量覆盖数据库中的配置\n# FORCE_UPDATE_AI_CONFIG=false\n# FORCE_UPDATE_DOC_PROCESSOR=false\n"}, "31f60fa0ecd15263785bfccafd6b6f41e5e07d7b": {"t": 1785773292.018869, "n": 3544, "h": "b01deb575055537c", "c": "# ============================================\n# 后端环境变量配置\n# 用于本地开发 (Local) 和 Docker 环境\n# 复制此文件为 .env 并根据需要修改配置\n# ============================================\n\n# ===== 1. 环境基础配置 =====\nENVIRONMENT=local # 环境: local, dev, prod\nDEBUG=true # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\n# ===== 2. 企业版 (EE) 配置 (选填) =====\nCATWIKI_LICENSE_KEY=your-rsa-license-key-here # 企业版授权码\n\n# ===== 3. 数据库配置 (PostgreSQL) =====\n# Local: localhost | Docker: postgres (Service Name)\nPOSTGRES_SERVER=localhost\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres\nDB_ECHO=false # 是否输出 SQL 日志\n\n# ===== 3. 数据库连接池配置 =====\nDB_POOL_SIZE=50\nDB_MAX_OVERFLOW=100\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n# ===== 4. 安全配置 =====\n# 警告: 生产环境必须修改为强密钥\nSECRET_KEY=dev-secret-key-minimum-32-characters-long-for-development-only\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # Token 过期时间(分钟), 默认 7 天\n\n# ===== 5. CORS 配置 =====\n# 允许跨域的源, 多个源用逗号分隔\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002,http://admin-frontend:8001,http://client-frontend:8002\n\n# ===== 6. 对象存储配置 (RustFS/S3) =====\n# Local: localhost:9000 | Docker: rustfs:9000\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# RustFS Root 用户 (用于服务端初始化)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# RustFS 公开访问链接\nRUSTFS_PUBLIC_BUCKET=true\nRUSTFS_PUBLIC_URL=http://localhost:9000\n\n# ===== 7. AI 服务配置 (OpenAI Compatible) =====\n# 注意:当数据库中的 AI 配置为空时,此处设置的环境变量会在启动时自动加载进数据库。\n# 如果数据库中已有配置(已在管理后台修改过),则不会从环境变量同步。\n# 警告:生产环境请保护好 API Key\n\n## 7.1 Chat 对话配置\n# AI_CHAT_API_KEY=sk-your-chat-api-key\n# AI_CHAT_API_BASE=https://api.your-chat-service.com/v1\n# AI_CHAT_MODEL=your-chat-model\n\n## 7.2 Embedding 向量配置\n# AI_EMBEDDING_API_KEY=sk-your-embedding-api-key\n# AI_EMBEDDING_API_BASE=https://api.your-embedding-service.com/v1\n# AI_EMBEDDING_MODEL=your-embedding-model\n# AI_EMBEDDING_DIMENSION=4096\n# AI_EMBEDDING_BATCH_SIZE=10 # Embedding API 单次请求批量大小(阿里云限制 10,OpenAI 限制 2048)\n\n## 7.3 Reranker 重排序及 RAG 参数配置\n# AI_RERANK_API_KEY=sk-your-reranker-api-key\n# AI_RERANK_API_BASE=https://api.your-reranker-service.com/v1\n# AI_RERANK_MODEL=your-reranker-model\n\n## 7.4 VL 视觉对话配置 (选填)\n# AI_VL_API_KEY=sk-your-vl-api-key\n# AI_VL_API_BASE=https://api.your-vl-service.com/v1\n\n## 7.5 聊天 Agent 配置\n# AGENT_MAX_ITERATIONS=5 # ReAct Agent 最大迭代次数 (1-20,默认 5)\n# AGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空结果自动终止阈值 (1-10,默认 2)\n# AGENT_SUMMARY_TRIGGER_MSG_COUNT=10 # 触发对话摘要的消息数量阈值 (4-50,默认 10)\n\n## 7.6 RAG 检索参数调优\n# RAG_RECALL_K=50 # [检索] 初始向量召回数量 (默认 50)\n# RAG_RECALL_MAX=100 # [检索] 全局召回硬上限 (默认 100)\n# RAG_RECALL_THRESHOLD=0.3 # [检索] 相似度阈值 (0.0-1.0, 默认 0.3)\n# RAG_ENABLE_RERANK=true # [重排] 是否开启 Reranker (默认 true)\n# RAG_RERANK_TOP_K=5 # [重排/最终] 提供给 AI 的结果数 (默认 5)\n\n# ===== 8. 文档解析服务配置 (DocProcessor) =====\n\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://mineru-service:8888\n# MINERU_API_KEY=sk-mineru-key\n# MINERU_ENABLED=true\n\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://docling-service:8000\n# DOCLING_API_KEY=sk-docling-key\n# DOCLING_ENABLED=true\n\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://paddleocr-service:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n# ===== 9. 配置覆盖控制 =====\n# 设置为 true 时,每次启动都会用环境变量覆盖数据库中的配置\n# FORCE_UPDATE_AI_CONFIG=false\n# FORCE_UPDATE_DOC_PROCESSOR=false\n"}, "19633d7d3eaa748b38dbdf801b031bd91ac9a529": {"t": 1785773293.308619, "n": 3531, "h": "4caa393758b523e4", "c": "# ============================================\n# 后端环境变量配置\n# 用于本地开发 (Local) 和 Docker 环境\n# 复制此文件为 .env 并根据需要修改配置\n# ============================================\n\n# ===== 1. 环境基础配置 =====\nENVIRONMENT=local # 环境: local, dev, prod\nDEBUG=true # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nCATWIKI_EDITION=enterprise # 版本: community (开源), enterprise (企业/多租户)\n\n# ===== 2. 数据库配置 (PostgreSQL) =====\n# Local: localhost | Docker: postgres (Service Name)\nPOSTGRES_SERVER=localhost\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres\nDB_ECHO=false # 是否输出 SQL 日志\n\n# ===== 3. 数据库连接池配置 =====\nDB_POOL_SIZE=50\nDB_MAX_OVERFLOW=100\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n# ===== 4. 安全配置 =====\n# 警告: 生产环境必须修改为强密钥\nSECRET_KEY=dev-secret-key-minimum-32-characters-long-for-development-only\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # Token 过期时间(分钟), 默认 7 天\n\n# ===== 5. CORS 配置 =====\n# 允许跨域的源, 多个源用逗号分隔\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002,http://admin-frontend:8001,http://client-frontend:8002\n\n# ===== 6. 对象存储配置 (RustFS/S3) =====\n# Local: localhost:9000 | Docker: rustfs:9000\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# RustFS Root 用户 (用于服务端初始化)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# RustFS 公开访问链接\nRUSTFS_PUBLIC_BUCKET=true\nRUSTFS_PUBLIC_URL=http://localhost:9000\n\n# ===== 7. AI 服务配置 (OpenAI Compatible) =====\n# 注意:当数据库中的 AI 配置为空时,此处设置的环境变量会在启动时自动加载进数据库。\n# 如果数据库中已有配置(已在管理后台修改过),则不会从环境变量同步。\n# 警告:生产环境请保护好 API Key\n\n## 7.1 Chat 对话配置\n# AI_CHAT_API_KEY=sk-your-chat-api-key\n# AI_CHAT_API_BASE=https://api.your-chat-service.com/v1\n# AI_CHAT_MODEL=your-chat-model\n\n## 7.2 Embedding 向量配置\n# AI_EMBEDDING_API_KEY=sk-your-embedding-api-key\n# AI_EMBEDDING_API_BASE=https://api.your-embedding-service.com/v1\n# AI_EMBEDDING_MODEL=your-embedding-model\n# AI_EMBEDDING_DIMENSION=4096\n# AI_EMBEDDING_BATCH_SIZE=10 # Embedding API 单次请求批量大小(阿里云限制 10,OpenAI 限制 2048)\n\n## 7.3 Reranker 重排序及 RAG 参数配置\n# AI_RERANK_API_KEY=sk-your-reranker-api-key\n# AI_RERANK_API_BASE=https://api.your-reranker-service.com/v1\n# AI_RERANK_MODEL=your-reranker-model\n\n## 7.4 VL 视觉对话配置 (选填)\n# AI_VL_API_KEY=sk-your-vl-api-key\n# AI_VL_API_BASE=https://api.your-vl-service.com/v1\n\n## 7.5 聊天 Agent 配置\n# AGENT_MAX_ITERATIONS=5 # ReAct Agent 最大迭代次数 (1-20,默认 5)\n# AGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空结果自动终止阈值 (1-10,默认 2)\n# AGENT_SUMMARY_TRIGGER_MSG_COUNT=10 # 触发对话摘要的消息数量阈值 (4-50,默认 10)\n\n## 7.6 RAG 检索参数调优\n# RAG_RECALL_K=50 # [检索] 初始向量召回数量 (默认 50)\n# RAG_RECALL_MAX=100 # [检索] 全局召回硬上限 (默认 100)\n# RAG_RECALL_THRESHOLD=0.3 # [检索] 相似度阈值 (0.0-1.0, 默认 0.3)\n# RAG_ENABLE_RERANK=true # [重排] 是否开启 Reranker (默认 true)\n# RAG_RERANK_TOP_K=5 # [重排/最终] 提供给 AI 的结果数 (默认 5)\n\n# ===== 8. 文档解析服务配置 (DocProcessor) =====\n\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://mineru-service:8888\n# MINERU_API_KEY=sk-mineru-key\n# MINERU_ENABLED=true\n\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://docling-service:8000\n# DOCLING_API_KEY=sk-docling-key\n# DOCLING_ENABLED=true\n\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://paddleocr-service:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n# ===== 9. 配置覆盖控制 =====\n# 设置为 true 时,每次启动都会用环境变量覆盖数据库中的配置\n# FORCE_UPDATE_AI_CONFIG=false\n# FORCE_UPDATE_DOC_PROCESSOR=false\n"}, "932387f33abdf2ec312e166e5342f26f54a2c442": {"t": 1785773294.533962, "n": 3455, "h": "503caba1f92d72c8", "c": "# ============================================\n# 后端环境变量配置\n# 用于本地开发 (Local) 和 Docker 环境\n# 复制此文件为 .env 并根据需要修改配置\n# ============================================\n\n# ===== 1. 环境基础配置 =====\nENVIRONMENT=local # 环境: local, dev, prod\nDEBUG=true # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\n\n# ===== 2. 数据库配置 (PostgreSQL) =====\n# Local: localhost | Docker: postgres (Service Name)\nPOSTGRES_SERVER=localhost\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres\nDB_ECHO=false # 是否输出 SQL 日志\n\n# ===== 3. 数据库连接池配置 =====\nDB_POOL_SIZE=50\nDB_MAX_OVERFLOW=100\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n# ===== 4. 安全配置 =====\n# 警告: 生产环境必须修改为强密钥\nSECRET_KEY=dev-secret-key-minimum-32-characters-long-for-development-only\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # Token 过期时间(分钟), 默认 7 天\n\n# ===== 5. CORS 配置 =====\n# 允许跨域的源, 多个源用逗号分隔\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002,http://admin-frontend:8001,http://client-frontend:8002\n\n# ===== 6. 对象存储配置 (RustFS/S3) =====\n# Local: localhost:9000 | Docker: rustfs:9000\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# RustFS Root 用户 (用于服务端初始化)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# RustFS 公开访问链接\nRUSTFS_PUBLIC_BUCKET=true\nRUSTFS_PUBLIC_URL=http://localhost:9000\n\n# ===== 7. AI 服务配置 (OpenAI Compatible) =====\n# 注意:当数据库中的 AI 配置为空时,此处设置的环境变量会在启动时自动加载进数据库。\n# 如果数据库中已有配置(已在管理后台修改过),则不会从环境变量同步。\n# 警告:生产环境请保护好 API Key\n\n## 7.1 Chat 对话配置\n# AI_CHAT_API_KEY=sk-your-chat-api-key\n# AI_CHAT_API_BASE=https://api.your-chat-service.com/v1\n# AI_CHAT_MODEL=your-chat-model\n\n## 7.2 Embedding 向量配置\n# AI_EMBEDDING_API_KEY=sk-your-embedding-api-key\n# AI_EMBEDDING_API_BASE=https://api.your-embedding-service.com/v1\n# AI_EMBEDDING_MODEL=your-embedding-model\n# AI_EMBEDDING_DIMENSION=4096\n# AI_EMBEDDING_BATCH_SIZE=10 # Embedding API 单次请求批量大小(阿里云限制 10,OpenAI 限制 2048)\n\n## 7.3 Reranker 重排序及 RAG 参数配置\n# AI_RERANK_API_KEY=sk-your-reranker-api-key\n# AI_RERANK_API_BASE=https://api.your-reranker-service.com/v1\n# AI_RERANK_MODEL=your-reranker-model\n\n## 7.4 VL 视觉对话配置 (选填)\n# AI_VL_API_KEY=sk-your-vl-api-key\n# AI_VL_API_BASE=https://api.your-vl-service.com/v1\n\n## 7.5 聊天 Agent 配置\n# AGENT_MAX_ITERATIONS=5 # ReAct Agent 最大迭代次数 (1-20,默认 5)\n# AGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空结果自动终止阈值 (1-10,默认 2)\n# AGENT_SUMMARY_TRIGGER_MSG_COUNT=10 # 触发对话摘要的消息数量阈值 (4-50,默认 10)\n\n## 7.6 RAG 检索参数调优\n# RAG_RECALL_K=50 # [检索] 初始向量召回数量 (默认 50)\n# RAG_RECALL_MAX=100 # [检索] 全局召回硬上限 (默认 100)\n# RAG_RECALL_THRESHOLD=0.3 # [检索] 相似度阈值 (0.0-1.0, 默认 0.3)\n# RAG_ENABLE_RERANK=true # [重排] 是否开启 Reranker (默认 true)\n# RAG_RERANK_TOP_K=5 # [重排/最终] 提供给 AI 的结果数 (默认 5)\n\n# ===== 8. 文档解析服务配置 (DocProcessor) =====\n\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://mineru-service:8888\n# MINERU_API_KEY=sk-mineru-key\n# MINERU_ENABLED=true\n\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://docling-service:8000\n# DOCLING_API_KEY=sk-docling-key\n# DOCLING_ENABLED=true\n\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://paddleocr-service:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n# ===== 9. 配置覆盖控制 =====\n# 设置为 true 时,每次启动都会用环境变量覆盖数据库中的配置\n# FORCE_UPDATE_AI_CONFIG=false\n# FORCE_UPDATE_DOC_PROCESSOR=false\n"}, "83400d119f6c3e23334d3f3f90ffaf5604d2e026": {"t": 1785773295.7879837, "n": 3523, "h": "77ddf14d04c9b990", "c": "# ============================================\n# 后端环境变量配置\n# 用于本地开发 (Local) 和 Docker 环境\n# 复制此文件为 .env 并根据需要修改配置\n# ============================================\n\n# ===== 1. 环境基础配置 =====\nENVIRONMENT=local # 环境: local, dev, prod\nDEBUG=true # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nDEMO_MODE=false # 演示模式: true, false (开启后禁用管理端高危操作)\n\n# ===== 2. 数据库配置 (PostgreSQL) =====\n# Local: localhost | Docker: postgres (Service Name)\nPOSTGRES_SERVER=localhost\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres\nDB_ECHO=false # 是否输出 SQL 日志\n\n# ===== 3. 数据库连接池配置 =====\nDB_POOL_SIZE=50\nDB_MAX_OVERFLOW=100\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n# ===== 4. 安全配置 =====\n# 警告: 生产环境必须修改为强密钥\nSECRET_KEY=dev-secret-key-minimum-32-characters-long-for-development-only\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # Token 过期时间(分钟), 默认 7 天\n\n# ===== 5. CORS 配置 =====\n# 允许跨域的源, 多个源用逗号分隔\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002,http://admin-frontend:8001,http://client-frontend:8002\n\n# ===== 6. 对象存储配置 (RustFS/S3) =====\n# Local: localhost:9000 | Docker: rustfs:9000\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# RustFS Root 用户 (用于服务端初始化)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# RustFS 公开访问链接\nRUSTFS_PUBLIC_BUCKET=true\nRUSTFS_PUBLIC_URL=http://localhost:9000\n\n# ===== 7. AI 服务配置 (OpenAI Compatible) =====\n# 注意:当数据库中的 AI 配置为空时,此处设置的环境变量会在启动时自动加载进数据库。\n# 如果数据库中已有配置(已在管理后台修改过),则不会从环境变量同步。\n# 警告:生产环境请保护好 API Key\n\n## 7.1 Chat 对话配置\n# AI_CHAT_API_KEY=sk-your-chat-api-key\n# AI_CHAT_API_BASE=https://api.your-chat-service.com/v1\n# AI_CHAT_MODEL=your-chat-model\n\n## 7.2 Embedding 向量配置\n# AI_EMBEDDING_API_KEY=sk-your-embedding-api-key\n# AI_EMBEDDING_API_BASE=https://api.your-embedding-service.com/v1\n# AI_EMBEDDING_MODEL=your-embedding-model\n# AI_EMBEDDING_DIMENSION=4096\n# AI_EMBEDDING_BATCH_SIZE=10 # Embedding API 单次请求批量大小(阿里云限制 10,OpenAI 限制 2048)\n\n## 7.3 Reranker 重排序及 RAG 参数配置\n# AI_RERANK_API_KEY=sk-your-reranker-api-key\n# AI_RERANK_API_BASE=https://api.your-reranker-service.com/v1\n# AI_RERANK_MODEL=your-reranker-model\n\n## 7.4 VL 视觉对话配置 (选填)\n# AI_VL_API_KEY=sk-your-vl-api-key\n# AI_VL_API_BASE=https://api.your-vl-service.com/v1\n\n## 7.5 聊天 Agent 配置\n# AGENT_MAX_ITERATIONS=5 # ReAct Agent 最大迭代次数 (1-20,默认 5)\n# AGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空结果自动终止阈值 (1-10,默认 2)\n# AGENT_SUMMARY_TRIGGER_MSG_COUNT=10 # 触发对话摘要的消息数量阈值 (4-50,默认 10)\n\n## 7.6 RAG 检索参数调优\n# RAG_RECALL_K=50 # [检索] 初始向量召回数量 (默认 50)\n# RAG_RECALL_MAX=100 # [检索] 全局召回硬上限 (默认 100)\n# RAG_RECALL_THRESHOLD=0.3 # [检索] 相似度阈值 (0.0-1.0, 默认 0.3)\n# RAG_ENABLE_RERANK=true # [重排] 是否开启 Reranker (默认 true)\n# RAG_RERANK_TOP_K=5 # [重排/最终] 提供给 AI 的结果数 (默认 5)\n\n# ===== 8. 文档解析服务配置 (DocProcessor) =====\n\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://mineru-service:8888\n# MINERU_API_KEY=sk-mineru-key\n# MINERU_ENABLED=true\n\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://docling-service:8000\n# DOCLING_API_KEY=sk-docling-key\n# DOCLING_ENABLED=true\n\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://paddleocr-service:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n# ===== 9. 配置覆盖控制 =====\n# 设置为 true 时,每次启动都会用环境变量覆盖数据库中的配置\n# FORCE_UPDATE_AI_CONFIG=false\n# FORCE_UPDATE_DOC_PROCESSOR=false\n"}, "df4d63f17a37fb8fdafa223d814fbdaba08c5394": {"t": 1785773297.0270236, "n": 3522, "h": "ff2eec562e7ebb14", "c": "# ============================================\n# 后端环境变量配置\n# 用于本地开发 (Local) 和 Docker 环境\n# 复制此文件为 .env 并根据需要修改配置\n# ============================================\n\n# ===== 1. 环境基础配置 =====\nENVIRONMENT=local # 环境: local, dev, prod\nDEBUG=true # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nDEMO_MODE=false # 演示模式: true, false (开启后禁用管理端高危操作)\n\n# ===== 2. 数据库配置 (PostgreSQL) =====\n# Local: localhost | Docker: postgres (Service Name)\nPOSTGRES_SERVER=localhost\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres\nDB_ECHO=false # 是否输出 SQL 日志\n\n# ===== 3. 数据库连接池配置 =====\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n# ===== 4. 安全配置 =====\n# 警告: 生产环境必须修改为强密钥\nSECRET_KEY=dev-secret-key-minimum-32-characters-long-for-development-only\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # Token 过期时间(分钟), 默认 7 天\n\n# ===== 5. CORS 配置 =====\n# 允许跨域的源, 多个源用逗号分隔\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002,http://admin-frontend:8001,http://client-frontend:8002\n\n# ===== 6. 对象存储配置 (RustFS/S3) =====\n# Local: localhost:9000 | Docker: rustfs:9000\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# RustFS Root 用户 (用于服务端初始化)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# RustFS 公开访问链接\nRUSTFS_PUBLIC_BUCKET=true\nRUSTFS_PUBLIC_URL=http://localhost:9000\n\n# ===== 7. AI 服务配置 (OpenAI Compatible) =====\n# 注意:当数据库中的 AI 配置为空时,此处设置的环境变量会在启动时自动加载进数据库。\n# 如果数据库中已有配置(已在管理后台修改过),则不会从环境变量同步。\n# 警告:生产环境请保护好 API Key\n\n## 7.1 Chat 对话配置\n# AI_CHAT_API_KEY=sk-your-chat-api-key\n# AI_CHAT_API_BASE=https://api.your-chat-service.com/v1\n# AI_CHAT_MODEL=your-chat-model\n\n## 7.2 Embedding 向量配置\n# AI_EMBEDDING_API_KEY=sk-your-embedding-api-key\n# AI_EMBEDDING_API_BASE=https://api.your-embedding-service.com/v1\n# AI_EMBEDDING_MODEL=your-embedding-model\n# AI_EMBEDDING_DIMENSION=4096\n# AI_EMBEDDING_BATCH_SIZE=10 # Embedding API 单次请求批量大小(阿里云限制 10,OpenAI 限制 2048)\n\n## 7.3 Reranker 重排序及 RAG 参数配置\n# AI_RERANK_API_KEY=sk-your-reranker-api-key\n# AI_RERANK_API_BASE=https://api.your-reranker-service.com/v1\n# AI_RERANK_MODEL=your-reranker-model\n\n## 7.4 VL 视觉对话配置 (选填)\n# AI_VL_API_KEY=sk-your-vl-api-key\n# AI_VL_API_BASE=https://api.your-vl-service.com/v1\n\n## 7.5 聊天 Agent 配置\n# AGENT_MAX_ITERATIONS=5 # ReAct Agent 最大迭代次数 (1-20,默认 5)\n# AGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空结果自动终止阈值 (1-10,默认 2)\n# AGENT_SUMMARY_TRIGGER_MSG_COUNT=10 # 触发对话摘要的消息数量阈值 (4-50,默认 10)\n\n## 7.6 RAG 检索参数调优\n# RAG_RECALL_K=50 # [检索] 初始向量召回数量 (默认 50)\n# RAG_RECALL_MAX=100 # [检索] 全局召回硬上限 (默认 100)\n# RAG_RECALL_THRESHOLD=0.3 # [检索] 相似度阈值 (0.0-1.0, 默认 0.3)\n# RAG_ENABLE_RERANK=true # [重排] 是否开启 Reranker (默认 true)\n# RAG_RERANK_TOP_K=5 # [重排/最终] 提供给 AI 的结果数 (默认 5)\n\n# ===== 8. 文档解析服务配置 (DocProcessor) =====\n\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://mineru-service:8888\n# MINERU_API_KEY=sk-mineru-key\n# MINERU_ENABLED=true\n\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://docling-service:8000\n# DOCLING_API_KEY=sk-docling-key\n# DOCLING_ENABLED=true\n\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://paddleocr-service:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n# ===== 9. 配置覆盖控制 =====\n# 设置为 true 时,每次启动都会用环境变量覆盖数据库中的配置\n# FORCE_UPDATE_AI_CONFIG=false\n# FORCE_UPDATE_DOC_PROCESSOR=false\n"}, "74b5f2d54533a9a5774b979b95e1b4748c5954cd": {"t": 1785773299.59559, "n": 3165, "h": "8e0ca7137fed686a", "c": "# ============================================\n# 后端环境变量配置\n# 用于本地开发 (Local) 和 Docker 环境\n# 复制此文件为 .env 并根据需要修改配置\n# ============================================\n\n# ===== 1. 环境基础配置 =====\nENVIRONMENT=local # 环境: local, dev, prod\nDEBUG=true # 调试模式: true, false\nLOG_LEVEL=INFO # 日志级别: DEBUG, INFO, WARNING, ERROR, CRITICAL\nDEMO_MODE=false # 演示模式: true, false (开启后禁用管理端高危操作)\n\n# ===== 2. 数据库配置 (PostgreSQL) =====\n# Local: localhost | Docker: postgres (Service Name)\nPOSTGRES_SERVER=localhost\nPOSTGRES_PORT=5432\nPOSTGRES_DB=catwiki\nPOSTGRES_USER=postgres\nPOSTGRES_PASSWORD=postgres\nDB_ECHO=false # 是否输出 SQL 日志\n\n# ===== 3. 数据库连接池配置 =====\nDB_POOL_SIZE=10\nDB_MAX_OVERFLOW=20\nDB_POOL_TIMEOUT=30\nDB_POOL_RECYCLE=3600\n\n# ===== 4. 安全配置 =====\n# 警告: 生产环境必须修改为强密钥\nSECRET_KEY=dev-secret-key-minimum-32-characters-long-for-development-only\nALGORITHM=HS256\nACCESS_TOKEN_EXPIRE_MINUTES=10080 # Token 过期时间(分钟), 默认 7 天\n\n# ===== 5. CORS 配置 =====\n# 允许跨域的源, 多个源用逗号分隔\nBACKEND_CORS_ORIGINS=http://localhost:8001,http://localhost:8002,http://admin-frontend:8001,http://client-frontend:8002\n\n# ===== 6. 对象存储配置 (RustFS/S3) =====\n# Local: localhost:9000 | Docker: rustfs:9000\nRUSTFS_ENDPOINT=rustfs:9000\nRUSTFS_ACCESS_KEY=rustfsadmin\nRUSTFS_SECRET_KEY=rustfsadmin\nRUSTFS_BUCKET_NAME=catwiki\nRUSTFS_USE_SSL=false\nRUSTFS_REGION=us-east-1\n\n# RustFS Root 用户 (用于服务端初始化)\nRUSTFS_ROOT_USER=rustfsadmin\nRUSTFS_ROOT_PASSWORD=rustfsadmin\n\n# RustFS 公开访问链接\nRUSTFS_PUBLIC_BUCKET=true\nRUSTFS_PUBLIC_URL=http://localhost:9000\n\n# ===== 7. AI 服务配置 (OpenAI Compatible) =====\n# 注意:当数据库中的 AI 配置为空时,此处设置的环境变量会在启动时自动加载进数据库。\n# 如果数据库中已有配置(已在管理后台修改过),则不会从环境变量同步。\n# 警告:生产环境请保护好 API Key\n\n## 7.1 Chat 对话配置\n# AI_CHAT_API_KEY=sk-your-chat-api-key\n# AI_CHAT_API_BASE=https://api.your-chat-service.com/v1\n# AI_CHAT_MODEL=your-chat-model\n\n## 7.2 Embedding 向量配置\n# AI_EMBEDDING_API_KEY=sk-your-embedding-api-key\n# AI_EMBEDDING_API_BASE=https://api.your-embedding-service.com/v1\n# AI_EMBEDDING_MODEL=your-embedding-model\n# AI_EMBEDDING_DIMENSION=4096\n# AI_EMBEDDING_BATCH_SIZE=10 # Embedding API 单次请求批量大小(阿里云限制 10,OpenAI 限制 2048)\n\n## 7.3 Reranker 重排序配置\n# AI_RERANK_ENABLE=false\n# AI_RERANK_API_KEY=sk-your-reranker-api-key\n# AI_RERANK_API_BASE=https://api.your-reranker-service.com/v1\n# AI_RERANK_MODEL=your-reranker-model\n\n## 7.4 VL 视觉对话配置 (选填)\n# AI_VL_API_KEY=sk-your-vl-api-key\n# AI_VL_API_BASE=https://api.your-vl-service.com/v1\n\n## 7.5 聊天 Agent 配置\n# AGENT_MAX_ITERATIONS=5 # ReAct Agent 最大迭代次数 (1-20,默认 5)\n# AGENT_MAX_CONSECUTIVE_EMPTY=2 # 连续空结果自动终止阈值 (1-10,默认 2)\n\n# ===== 8. 文档解析服务配置 (DocProcessor) =====\n\n# MINERU_NAME=MinerU\n# MINERU_BASE_URL=http://mineru-service:8888\n# MINERU_API_KEY=sk-mineru-key\n# MINERU_ENABLED=true\n\n# DOCLING_NAME=Docling\n# DOCLING_BASE_URL=http://docling-service:8000\n# DOCLING_API_KEY=sk-docling-key\n# DOCLING_ENABLED=true\n\n# PADDLEOCR_NAME=PaddleOCR\n# PADDLEOCR_BASE_URL=http://paddleocr-service:8080\n# PADDLEOCR_API_KEY=NONE\n# PADDLEOCR_ENABLED=false\n\n# ===== 9. 配置覆盖控制 =====\n# 设置为 true 时,每次启动都会用环境变量覆盖数据库中的配置\n# FORCE_UPDATE_AI_CONFIG=false\n# FORCE_UPDATE_DOC_PROCESSOR=false\n"}}}} |