From 1675c8a7c944a666e6e245d3bd5ac3d842c4b70f Mon Sep 17 00:00:00 2001 From: chengma Date: Fri, 21 Aug 2026 10:14:05 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20=E5=BD=92=E6=A1=A3=E4=BB=BB=E5=8A=A1=20?= =?UTF-8?q?#284?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...284-Admin-AI规格匹配候选上限放大至100条.md | 45 +++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 docs/task/284-Admin-AI规格匹配候选上限放大至100条.md diff --git a/docs/task/284-Admin-AI规格匹配候选上限放大至100条.md b/docs/task/284-Admin-AI规格匹配候选上限放大至100条.md new file mode 100644 index 0000000..cc7652d --- /dev/null +++ b/docs/task/284-Admin-AI规格匹配候选上限放大至100条.md @@ -0,0 +1,45 @@ +# 284 Admin:AI 规格匹配候选上限放大至 100 条 + +- 类型:需求 +- 父级大工单:#14 +- 所属 MVP / 版本:#199 / Admin AI规格批量匹配 +- 状态:已完成,待用户验收 +- 日期:2026-08-21 +- Gitea 工单:http://ilaer.eicp.net:8418/chengma/cmautobuy/issues/284 + +## 背景与目标 + +顺运宝批量 AI 规格匹配原先在模型调用前最多接受 24 个合格候选。候选多于 24 个时,系统会安全拒绝且不调用模型。用户确认将该硬上限放大到 100,让规格较多的 PDD 商品能够继续使用 AI 匹配。 + +## 最终方案 + +- 将 Admin 单次模型调用的候选上限从 24 调整到 100。 +- 只有已采集、可购买、未被规则判为冲突且规格键长度合法的候选才计入上限。 +- 恰好 100 条时沿用原有候选白名单、置信度、上下文和保存前硬校验调用模型;超过 100 条时不调用模型、不写映射,仅记录审计拒绝结果。 +- 拒绝提示改为明确说明“可购买候选超过 100 条,请先人工核对”。 + +## 改了哪些 + +- `admin/service/ai_specmatch.go`:调整候选上限常量和超限提示。 +- `admin/service/ai_specmatch_test.go`:增加 100 / 101 个合格候选的服务层边界测试。 + +## 验收结果 + +| 验收标准 | 结果 | +|---|---| +| 100 个合格候选会调用模型 | 通过 | +| 101 个合格候选不调用模型且不写映射 | 通过 | +| 原有白名单、人工优先和硬校验行为不变 | 通过现有服务层回归测试 | +| 固定 Go 1.23.0 编译、静态检查与全量测试通过 | 通过 | + +## 测试 + +- 执行的命令: + - `GOTOOLCHAIN=go1.23.0 go test ./service -run 'TestMatchSybSpecWithAI_候选白名单低置信度和人工优先' -count=1` + - `GOTOOLCHAIN=go1.23.0 go vet ./...; go build ./...; go test ./... -count=1` +- 结果:全部通过。 +- **没验证到的部分**:未部署到生产环境,未使用真实 GPT-5.5 对 100 个候选进行端到端调用。 + +## 相关提交 + +- `f83f15c` feat: 放大 AI 规格候选上限 (#284)