feat: v1.2.0 - 图片去重与管理、微信机器人优化、搜索设置可配置

主要功能:
- 图片上传时 OCR 内容去重(3个上传端点统一使用公共函数 _check_ocr_duplicate)
- 图片管理 Tab:展示所有图片、手动删除、一键去重
- 搜索结果详情弹窗增加删除按钮(带确认弹窗)
- 图片管理卡片点击查看详情(复用 showOcrDetailModal)
- 搜索限制和 LLM 批量判断数量可通过网站设置
- MiniMax API 调用添加 reasoning_split=True
- 企业微信机器人:WebSocket 长连接、图片搜索、配置化搜索数量
- 版本号升级至 1.2.0
This commit is contained in:
EduBrain Dev
2026-04-13 22:25:08 +08:00
commit b17786b57b
56 changed files with 9300 additions and 0 deletions

84
.env.example Normal file
View File

@@ -0,0 +1,84 @@
# ============================================================
# EduBrain - 中文直播教育知识库系统 环境变量配置
# ============================================================
# 复制此文件为 .env 并根据实际情况修改配置值
# cp .env.example .env
# ============================================================
# ── 数据库 ──
DATABASE_URL=postgresql+asyncpg://postgres:postgres@db:5432/edu_brain
POSTGRES_PASSWORD=postgres
# ── 嵌入模型配置 ──
# 可选值: openai / zhipu / local_bge / dashscope / minimax
EMBEDDING_PROVIDER=minimax
EMBEDDING_MODEL=MiniMax-Text-Embedding
EMBEDDING_DIMENSIONS=1024
# ── OpenAI 配置 ──
OPENAI_API_KEY=sk-your-openai-api-key
OPENAI_BASE_URL=https://api.openai.com/v1
# ── 智谱 AI 配置 ──
ZHIPU_API_KEY=your-zhipu-api-key
# ── 阿里云 DashScope 配置 ──
DASHSCOPE_API_KEY=your-dashscope-api-key
# ── 本地 BGE 模型路径(为空则自动从 HuggingFace 下载) ──
LOCAL_BGE_MODEL_PATH=
# ── OCR 配置 ──
# 可选值: paddleocr / aliyun / tencent / deepseek / auto
# auto 模式: 本地 PaddleOCR 优先,失败后 fallback 到 DeepSeek / 云端 OCR
OCR_PROVIDER=deepseek
# ── 阿里云 OCR 配置 ──
ALIYUN_OCR_ACCESS_KEY=your-aliyun-access-key
ALIYUN_OCR_SECRET=your-aliyun-secret
# ── 腾讯云 OCR 配置 ──
TENCENT_OCR_SECRET_ID=your-tencent-secret-id
TENCENT_OCR_SECRET_KEY=your-tencent-secret-key
# ── MiniMax 配置 ──
MINIMAX_API_KEY=your-minimax-api-key
MINIMAX_BASE_URL=https://api.minimaxi.com/v1
MINIMAX_EMBEDDING_MODEL=MiniMax-Text-Embedding
MINIMAX_CHAT_MODEL=MiniMax-M2
# ── DeepSeek 配置 ──
DEEPSEEK_API_KEY=your-deepseek-api-key
DEEPSEEK_BASE_URL=https://api.deepseek.com
DEEPSEEK_OCR_MODEL=deepseek-chat
# ── LLM 配置(用于查询扩展、实体检测) ──
# 可选值: minimax / deepseek / openai
LLM_PROVIDER=minimax
# ── 数据目录 ──
DATA_DIR=/app/data
# ── 文本分块参数 ──
CHUNK_SIZE=300
CHUNK_OVERLAP=50
# ── 服务配置 ──
HOST=0.0.0.0
PORT=8000
DEBUG=false
# ── CORS 配置(多个来源用逗号分隔) ──
CORS_ORIGINS=["*"]
# ── Docker 端口映射 ──
APP_PORT=8000
DB_PORT=5432
# ── 企业微信智能机器人WebSocket 长连接) ──
# 作为独立进程运行python -m app.wework_bot
WEWORK_BOT_ENABLED=false
WEWORK_BOT_ID=your-bot-id
WEWORK_BOT_SECRET=your-bot-secret
WEWORK_BOT_SEARCH_LIMIT=3
EDUBRAIN_BASE_URL=http://localhost:8765