feat: 接入 BGE-M3 本地嵌入默认配置 + 新增 Qwen3-Reranker 重排

- .env.example 嵌入默认改为本地 BGE-M3(EMBEDDING_PROVIDER=local, dim=1024),NAS 全新部署即用
- 新增 app/services/reranker.py:基于 Ollama /api/rerank 的 cross-encoder 重排服务
- retriever 在 chunk 候选阶段接入语义精排,调用失败优雅降级为 RRF 顺序
- docker-compose 拉取 qwen3-reranker:0.6b,OLLAMA_MAX_LOADED_MODELS 提至 3
- .gitignore 排除 .workbuddy/ 与 .trae/(防止误提交项目记忆与 IDE spec)
- 新增 reranker 单元与集成测试,全量测试 529 passed
This commit is contained in:
2026-08-01 00:08:38 +08:00
parent 6c6f690788
commit 6ae91679e2
8 changed files with 320 additions and 9 deletions
+3 -2
View File
@@ -93,10 +93,10 @@ services:
# 针对 Ryzen 9 7940HS16 线程)的 CPU 推理调优:
# 并行推理任务数、常驻模型数、单请求线程上限、KV 缓存量化以省内存
- OLLAMA_NUM_PARALLEL=4
- OLLAMA_MAX_LOADED_MODELS=2
- OLLAMA_MAX_LOADED_MODELS=3
- OLLAMA_NUM_THREADS=16
- OLLAMA_KV_CACHE_TYPE=q8_0
# 首次启动自动拉取所需模型(qwen2.5:1.5b 总结 + bge-m3 嵌入),
# 首次启动自动拉取所需模型(qwen2.5:1.5b 总结 + bge-m3 嵌入 + qwen3-reranker 重排),
# 下载完成后转交常驻 ollama serve。已存在时仅做健康检查。
entrypoint: /bin/bash
command:
@@ -107,6 +107,7 @@ services:
sleep 6
ollama pull qwen2.5:1.5b
ollama pull bge-m3
ollama pull qwen3-reranker:0.6b
wait $$SERVE_PID
networks:
- qmdsearch