v0.2.3
添加
- 新增检索增强链路:支持 Query Rewrite、Cross-encoder Reranker、LLM Semantic Reranker,可在 RRF 召回后继续做相关性粗排与语义精排。
- 新增 Cross-encoder Reranker 客户端,支持 Jina/Cohere/SiliconFlow/bge-reranker 风格协议,以及 DashScope
text-rerank原生协议。 - 新增自适应聊天记录切分:支持固定窗口、启发式 adaptive、模型 adaptive 三种导入切分策略。
- 新增 LanceDB 向量索引管理能力:导入后可自动建索引,并新增
cli index、cli optimize命令用于手动建索引和合并优化表。 - 配置向导从 7 步扩展为 8 步,新增“检索增强”和“切分策略”配置页。
- 前端聊天展示支持将 AI 回复中的双换行拆成多条独立气泡,并按 2-5 秒错峰显示。
- README 新增使用前警示、伦理/法律边界、能力边界、API 隐私提醒和
AI_GENERATED_LONG_TERM_ENABLED风险说明。 - 新增首次安装向导
- 新增docker部署镜像
修改
- Chat Completions 与 Responses 主链路改为并发执行检索、关系记忆、联网搜索、URL 解析和 life 决策,降低首包前等待。
- URL 抓取改为后台任务提前启动,在 life/refine 阶段并行执行,减少网页读取带来的阻塞。
- Life Marker 应用改为异步 fire-and-forget,并使用强引用任务集合与 shutdown 等待,避免任务丢失或阻塞主回复。
- LLM 客户端新增
max_retries控制;life、互动决策、query rewrite、rerank 等 fail-open 路径默认单次失败即降级。 - 检索层改为多 query variant 并发召回,并按
best_rank + distance合并去重,避免改写 query 的命中被截断。 - LanceDB 查询性能优化:缓存 table handle、避免回拉 vector 列、启用 prefilter、按索引规模设置 nprobes。
- Persona prompt 模板调整结构,将历史风格示例移动到 system 末尾并强化“不可复读/不可当作当前事实”的约束。
- Life 模型默认
LIFE_MAX_TOKENS从 320 提高到 1500,降低 reasoning 模型 JSON 被截断导致状态无法写入的概率。
修复
- 修复前端清空或切换会话后,延迟显示的拆分气泡可能写入新会话的问题。
- 修复 Query Rewrite 开启后,多路召回合并顺序导致 variant-only 命中容易被 top_k 截断的问题。
- 修复 shutdown 等待后台任务时的
TimeoutErrorlint 问题。 - 修复用户要求沉默时仍可能触发 Web Search / URL Fetch 的隐私与费用问题。
- 修复 life_state.json 在后台 marker 写入和 life 决策写入之间的竞态。
- 清理部分未使用 import,并补齐相关 fail-open 与任务清理逻辑。
文档 & 配置
.env.example新增检索改写、LLM rerank、Cross Rerank、自适应切分、LanceDB 索引等配置项。- Web UI 新增 reranker/cross-reranker 预设,包含 DashScope、SiliconFlow、Jina、Cohere 和自定义服务。
- README 更新安装向导步骤、能力说明、推荐模型和 Cross-encoder Reranker 说明。
What's Changed
- 0.2.3 docker-dev by @kldhsh123 in #7
- v0.2.3 by @kldhsh123 in #8
Full Changelog: v0.2.2...v0.2.3