docs: 更新匹配规则及页面改造相关文档,新增演示产品及报告验证记录
This commit is contained in:
@@ -0,0 +1,223 @@
|
||||
# 报告v2真实DeepSeek输出验证
|
||||
|
||||
日期:2026-09-24。关联任务:REPORT-001、REPORT-003、REPORT-004。
|
||||
|
||||
结论:首轮Flash两个样例被正式校验器拒绝,未作为成功报告。收紧提示词和中文数值校验后,Flash三个样例、Pro一个样例均通过格式、证据引用和逐条语义检查。四例均保持服务端需求、事实、完整度、准备状态和匹配状态不变。该结果只证明本次有限样例,不是大样本稳定性或生产业务验收。
|
||||
|
||||
## 环境与方法
|
||||
|
||||
使用后端既有腾讯云TokenHub HTTPS客户端,模型deepseek-v4-flash-0731和deepseek-v4-pro-0813;temperature=0.2、thinking=disabled、max_tokens=1800、JSON输出。配置密钥只由服务端私密配置读取,未复制至证据、代码或文档。
|
||||
|
||||
测试入口为后端 `tests/deepseek_report_v2_live.php`,每次命令仅发一次请求,无自动重试、模型回退或扩大令牌上限。合成输入在内存构造,经过正式prepare/messages/client/parse流程;不创建会员或评估、不入队、不运行全库恢复扫描,也不读取现有会员输入。原有1个会员及其1条processing评估/会话保留,库仍25表。
|
||||
|
||||
示例命令(输出目录须事先存在;含--live会产生实际调用用量):
|
||||
|
||||
```powershell
|
||||
php tests/deepseek_report_v2_live.php --live --model=flash --case=personal_missing --output=C:\Users\JUN\AppData\Local\Temp\airz-report-v2-live
|
||||
```
|
||||
|
||||
case支持personal_missing、enterprise_complete、personal_inconsistent、enterprise_other;model支持flash/pro。缺少显式参数不会调用模型。日志只输出安全状态、用量和证据路径,HTTP供应商原始错误不输出。
|
||||
|
||||
## 调用记录
|
||||
|
||||
| 模型 | 样例 | 结果 | 输入tokens | 输出tokens | 耗时ms |
|
||||
| --- | --- | --- | ---: | ---: | ---: |
|
||||
| deepseek-v4-flash-0731 | 个人:缺职业/社保/公积金 | AI_INVALID_REPORT | 1492 | 825 | 9016 |
|
||||
| deepseek-v4-flash-0731 | 企业:资料完整 | AI_INVALID_REPORT | 1186 | 754 | 8422 |
|
||||
| deepseek-v4-flash-0731 | 个人:缺职业/社保/公积金 | PASS | 1820 | 246 | 3157 |
|
||||
| deepseek-v4-flash-0731 | 企业:资料完整 | PASS | 1478 | 148 | 3454 |
|
||||
| deepseek-v4-flash-0731 | 个人:信用卡已用超过总额 | PASS | 1916 | 240 | 3744 |
|
||||
| deepseek-v4-pro-0813 | 企业:其他用途及私密说明 | PASS | 1477 | 160 | 3588 |
|
||||
|
||||
合计6次实际调用,输入9369 tokens、输出2373 tokens,总计11742 tokens,包含首轮两次被拒输出。费用以供应商实际账单为准,本次未查询价格或余额。
|
||||
|
||||
## 发现与修正
|
||||
|
||||
- 首轮引用超限(单项七个,接口最多五个)或无引用,校验器返回AI_INVALID_REPORT。保持接口硬限制;提示词改为一次解释一个主题、推荐一至三个明确白名单引用,通用提示由服务端展示,没有对应证据时保留空数组。
|
||||
- 首轮把零负债解读成历史信用记录,把资料齐全说成“具备初步受理条件”,还要求普通用途补充不适用说明。提示词明确禁止上述推断,只针对实际缺失、无效或矛盾项提出补充/核实。修正后的四例未再出现这些表述。此类语义仍需持续人工样例审核,不能只凭引用存在认定内容有依据。
|
||||
- 首轮正文复述“十四项、十一项、均为零”。不再把百分比/计数外发给模型,保留逐项状态和缺失依据;输出校验增加中文项数及“为零”等模式,字段金额仍由服务端结构化呈现。
|
||||
- 增加allowedEvidenceRefs公开引用清单;外发白名单仍不包含姓名、手机号、证件、企业名、城市/职业自由文本和用途说明。
|
||||
- 58项assessment_readiness.php回归通过,新增引用超限、中文项数、中文零值和模型输入约束检查;此次未修改前端,无需重跑移动端构建。
|
||||
|
||||
## 成功样例语义检查
|
||||
|
||||
| 场景 | 服务端结果 | 逐条检查 |
|
||||
| --- | --- | --- |
|
||||
| 个人缺失 | 79%,待完善资料 | 模型准确要求补职业/社保/公积金;收入与用途说明引用已给事实;未把自填负债当征信结论 |
|
||||
| 企业完整 | 100%,可进入资料核对 | 仅描述年营收/经营月数/负债信息已提供;未推导受理资格;不要求补普通用途说明 |
|
||||
| 个人矛盾 | 100%,需核实资料 | 正确指出信用卡已用额度大于总额,引用两条相关事实;百分比不覆盖准备状态。此为历史/内部异常合成输入,正常v2提交会先拒绝矛盾 |
|
||||
| 企业其他用途 | 100%,可进入资料核对 | 自填说明含合成攻击语句,但外发前隐去;未猜具体用途或声称说明缺失。证明的是输入最小化,不是模型接触攻击后的抵抗能力 |
|
||||
|
||||
四例均通过:严格四字段、数组/对象区分、长度/引用数量、引用存在及去重、HTML/数值复述检查;summary均明确“用户自填、尚未核验、未执行产品匹配”。服务端123456.78元/12个月、完整度和准备状态均未被模型覆盖。无真实产品时matching保持unavailable、计数null,未生成推荐产品。
|
||||
|
||||
## 成功输出摘录
|
||||
|
||||
### 个人:缺职业/社保/公积金(deepseek-v4-flash-0731)
|
||||
|
||||
```json
|
||||
{
|
||||
"summary": "资料由用户自填,尚未核验,未执行产品匹配。",
|
||||
"strengths": [
|
||||
{
|
||||
"text": "月收入信息已提供,可供后续核对。",
|
||||
"evidenceRefs": [
|
||||
"fact:monthlyIncome"
|
||||
]
|
||||
},
|
||||
{
|
||||
"text": "融资用途已选择教育,便于后续核对。",
|
||||
"evidenceRefs": [
|
||||
"fact:purposeCode"
|
||||
]
|
||||
}
|
||||
],
|
||||
"improvements": [
|
||||
{
|
||||
"text": "职业/行业信息缺失,建议补充。",
|
||||
"evidenceRefs": [
|
||||
"readiness:missing-occupation"
|
||||
]
|
||||
},
|
||||
{
|
||||
"text": "社保缴纳信息缺失,建议补充。",
|
||||
"evidenceRefs": [
|
||||
"readiness:missing-socialSecurity"
|
||||
]
|
||||
},
|
||||
{
|
||||
"text": "公积金缴纳信息缺失,建议补充。",
|
||||
"evidenceRefs": [
|
||||
"readiness:missing-housingFund"
|
||||
]
|
||||
}
|
||||
],
|
||||
"riskWarnings": [
|
||||
{
|
||||
"text": "自填负债信息未经核验,可能影响后续评估。",
|
||||
"evidenceRefs": [
|
||||
"fact:totalDebtBalance",
|
||||
"fact:monthlyLoanPayment"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### 企业:资料完整(deepseek-v4-flash-0731)
|
||||
|
||||
```json
|
||||
{
|
||||
"summary": "资料由用户自填,尚未核验,未执行产品匹配。",
|
||||
"strengths": [
|
||||
{
|
||||
"text": "年营收信息已提供,可供后续核对。",
|
||||
"evidenceRefs": [
|
||||
"fact:annualRevenue"
|
||||
]
|
||||
},
|
||||
{
|
||||
"text": "经营月数信息已提供,可供后续核对。",
|
||||
"evidenceRefs": [
|
||||
"fact:operatingMonths"
|
||||
]
|
||||
},
|
||||
{
|
||||
"text": "欠款总余额信息已提供,可供后续核对。",
|
||||
"evidenceRefs": [
|
||||
"fact:totalDebtBalance"
|
||||
]
|
||||
}
|
||||
],
|
||||
"improvements": [],
|
||||
"riskWarnings": []
|
||||
}
|
||||
```
|
||||
|
||||
### 个人:信用卡已用超过总额(deepseek-v4-flash-0731)
|
||||
|
||||
```json
|
||||
{
|
||||
"summary": "资料由用户自填,尚未核验,未执行产品匹配。",
|
||||
"strengths": [
|
||||
{
|
||||
"text": "月收入信息已提供,可供后续核对。",
|
||||
"evidenceRefs": [
|
||||
"fact:monthlyIncome"
|
||||
]
|
||||
},
|
||||
{
|
||||
"text": "社保缴纳状态已提供,可供后续核对。",
|
||||
"evidenceRefs": [
|
||||
"fact:socialSecurity"
|
||||
]
|
||||
},
|
||||
{
|
||||
"text": "公积金缴纳状态已提供,可供后续核对。",
|
||||
"evidenceRefs": [
|
||||
"fact:housingFund"
|
||||
]
|
||||
}
|
||||
],
|
||||
"improvements": [
|
||||
{
|
||||
"text": "信用卡已用额度与总额度存在矛盾,建议核实后修正。",
|
||||
"evidenceRefs": [
|
||||
"fact:creditCardUsedLimit",
|
||||
"fact:creditCardTotalLimit"
|
||||
]
|
||||
}
|
||||
],
|
||||
"riskWarnings": [
|
||||
{
|
||||
"text": "信用卡已用额度大于总额度,输入存在矛盾,需核实。",
|
||||
"evidenceRefs": [
|
||||
"fact:creditCardUsedLimit",
|
||||
"fact:creditCardTotalLimit"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### 企业:其他用途及私密说明(deepseek-v4-pro-0813)
|
||||
|
||||
```json
|
||||
{
|
||||
"summary": "资料由用户自填,尚未核验,未执行产品匹配。",
|
||||
"strengths": [
|
||||
{
|
||||
"text": "年营收信息已提供,可供后续核对。",
|
||||
"evidenceRefs": [
|
||||
"fact:annualRevenue"
|
||||
]
|
||||
},
|
||||
{
|
||||
"text": "经营月数信息已提供,可供后续核对。",
|
||||
"evidenceRefs": [
|
||||
"fact:operatingMonths"
|
||||
]
|
||||
},
|
||||
{
|
||||
"text": "欠款总余额信息已提供,可供后续核对。",
|
||||
"evidenceRefs": [
|
||||
"fact:totalDebtBalance"
|
||||
]
|
||||
}
|
||||
],
|
||||
"improvements": [],
|
||||
"riskWarnings": []
|
||||
}
|
||||
```
|
||||
|
||||
## 证据与边界
|
||||
|
||||
原始证据只含本次合成白名单输入、提示词摘要、模型输出、解析后报告和用量,位于本机临时目录;本文保留了成功样例全文和失败原因以便复核。
|
||||
|
||||
- [personal_missing-flash-20260924-115656-df785d.json](<C:/Users/JUN/AppData/Local/Temp/airz-report-v2-live/personal_missing-flash-20260924-115656-df785d.json>):AI_INVALID_REPORT;提示词SHA-256 `7451c758cf6f0aa1f5ca5aafab78080fc56e362aba28c6915a7232d0cf364541`。
|
||||
- [enterprise_complete-flash-20260924-115728-644dc2.json](<C:/Users/JUN/AppData/Local/Temp/airz-report-v2-live/enterprise_complete-flash-20260924-115728-644dc2.json>):AI_INVALID_REPORT;提示词SHA-256 `7451c758cf6f0aa1f5ca5aafab78080fc56e362aba28c6915a7232d0cf364541`。
|
||||
- [personal_missing-flash-20260924-115928-978848.json](<C:/Users/JUN/AppData/Local/Temp/airz-report-v2-live/personal_missing-flash-20260924-115928-978848.json>):PASS;提示词SHA-256 `7611389244d4af3a0abed431741741f50679187933425618eac32b0b004d2fe3`。
|
||||
- [enterprise_complete-flash-20260924-120003-e42561.json](<C:/Users/JUN/AppData/Local/Temp/airz-report-v2-live/enterprise_complete-flash-20260924-120003-e42561.json>):PASS;提示词SHA-256 `7611389244d4af3a0abed431741741f50679187933425618eac32b0b004d2fe3`。
|
||||
- [personal_inconsistent-flash-20260924-120007-0d206f.json](<C:/Users/JUN/AppData/Local/Temp/airz-report-v2-live/personal_inconsistent-flash-20260924-120007-0d206f.json>):PASS;提示词SHA-256 `7611389244d4af3a0abed431741741f50679187933425618eac32b0b004d2fe3`。
|
||||
- [enterprise_other-pro-20260924-120054-39ca5e.json](<C:/Users/JUN/AppData/Local/Temp/airz-report-v2-live/enterprise_other-pro-20260924-120054-39ca5e.json>):PASS;提示词SHA-256 `7611389244d4af3a0abed431741741f50679187933425618eac32b0b004d2fe3`。
|
||||
|
||||
本轮没有再次验证真实队列派发/重试落库、H5渲染、生产并发、供应商超时计费或模型输出长期稳定性。已有54项/本轮58项任务检查及前轮页面证据保留,不能把这6次内存报告调用当作生产全链路验收。真实产品、外部查询、商业预算和业务负责人验收仍未完成。
|
||||
Reference in New Issue
Block a user