From aea04e2e8d7d88cbbbc8c6baab8992067d7923cb Mon Sep 17 00:00:00 2001 From: Blizzard Date: Thu, 25 Jun 2026 10:13:56 +0800 Subject: [PATCH] =?UTF-8?q?docs:=20project=5Fanalysis=20=E5=A2=9E=E8=A1=A5?= =?UTF-8?q?=20Harness=20=E6=B2=BB=E7=90=86=E5=B1=82=E4=B8=93=E9=A1=B9=20+?= =?UTF-8?q?=20=E9=80=90=E9=A1=B9=E4=BC=98=E5=8C=96=E6=B8=85=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 记录 Harness 四组件真实成熟度(熔断器生产级 / 评测·脱敏·输入护栏偏启发式), 定性「测温计而非恒温器」,并列出可逐项推进的优化清单(评测闭环 / RAG 忠实度评测 / 脱敏跨片+PII / 输入护栏升级 / 坏输出自动纠偏 / 成本预算护栏),便于一个个优化。 Co-Authored-By: Claude Opus 4.8 (1M context) --- project_analysis.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/project_analysis.md b/project_analysis.md index 49068a9..5a455cc 100644 --- a/project_analysis.md +++ b/project_analysis.md @@ -96,6 +96,31 @@ --- +## 三·五、Harness 治理层专项(逐项优化清单) + +Harness = 围绕 LLM 的可靠性 / 安全 / 质量治理层。4 个组件均为真实现 + 单测,成熟度参差。 + +| 组件 | 文件/规模 | 成熟度 | 实情 | +|------|----------|:------:|------| +| 熔断器 CircuitBreaker | 126 行 + 112 测试 | ⭐⭐⭐⭐½ | 三态 + 阈值 + 冷却 + 半开探测 + 可注入时钟 + `-race` 安全,**真·生产级** | +| 评测 Evaluator | 135 行 + 91 测试 | ⭐⭐⭐ | 规则分(空/过短/拒答/复读) + LLM-judge(1–5);异步离热路径 | +| 输出脱敏 RedactSecrets | 26 行 + 39 测试 | ⭐⭐⭐ | 4 正则(sk-/AKIA/JWT/Bearer),流式逐片 | +| 输入护栏 Guardrail | guardrail.go + 测试 | ⭐⭐½ | 注入正则(中英) + 体积限制 + 敏感词黑名单(默认空) | + +**定性**:一个真·生产级熔断器 + 三个"能跑但偏启发式"的护栏/评测。当前更像**「测温计」(检测+记录)** +而非**「恒温器」(检测→决策→纠偏闭环)**——多数信号只打日志、不门控、不纠偏。 + +**已知短板 / 优化清单**(按性价比,逐项推进): + +- [ ] **P1 评测闭环**:eval 结果落库 + 阈值门控(低分标记/触发重试)+ 桌面端质量面板。现状只打日志、不闭环。 +- [ ] **P1 RAG 忠实度评测**:把检索原文喂给 judge,真评幻觉/引用一致性。现状 judge 看不到来源,幻觉其实没评(已知洞)。 +- [ ] **P2 输出脱敏增强**:滑动窗口跨片检测(现流式逐片会漏跨 token 的密钥)+ PII 模式(手机号/邮箱/身份证)。 +- [ ] **P2 输入护栏升级**:纯正则易被改写/编码绕过;加轻量 jailbreak 分类器或 LLM 兜底;`bannedTerms` 落地。 +- [ ] **P3 坏输出自动纠偏**:低 eval 分触发重生成/降级路由(让 harness 真闭环)。 +- [ ] **P3 成本/Token 预算护栏**:单任务/单用户 token 上限与告警。 + +--- + ## 四、原型级 / 未验证(别当生产能力看) - **规模未真实验证**:并发是近期才补的,仅本地小规模测过;无长稳、无容量上限实测曲线。