feat: use Responses protocol for RAG preparation

This commit is contained in:
2026-10-17 10:21:58 +08:00
parent 1080cfb5e8
commit c336fc91d4
13 changed files with 500 additions and 36 deletions
+5
View File
@@ -95,3 +95,8 @@ assert len(rows) == sum(manifest["counts"].values())
新增专项覆盖混合模式原始快照、可选准备记录、无命中、软删除后历史、摘要稳定性、权限/CSRF、未知字段/关联损坏拒绝、字节/条数上限、并发新增上下文以及真实 HTTP 后端重启后的同一记录区。坐标 fixture 仅用于导出协议,不构成真实领域模型实验。专项命令 `pytest -q backend/tests/test_exports.py`:**30 passed**;完整 `pytest -q backend/tests`:**254 passed, 1 skipped**,skip 为显式启用的真实 Embedding 用例,本阶段没有重跑模型。`ruff check backend`、`ruff format --check backend` 通过;前端在 `frontend/` 执行 `npm run test:session`:**3 passed**,`npm run build` 通过。
数据库不新增迁移,继续为 `0007_rag_contexts`。撤回导出路由、服务、调用层即可停止新下载;原检索/上下文历史与已保存文件不变,不为回滚删除数据库记录。
### Responses 与旧准备快照
新准备记录的 `completion.protocol=responses`,导出按 Responses 重建请求体并核对哈希;旧记录没有 protocol,继续按原 Chat Completions 配置重建。读取与导出不补写旧字段,不改变旧 payload 或记录字节;同一文件可包含两种协议。该变化仍不代表生成模型已调用,manifest 的生成用量和费用继续为未采集。