在公司内部一个 AIGC页面 Verify 项目(下面代号 HelixVerify )中,我们经历了 114 次版本迭代, 将相对benchmark 的风险样本召回率从 最初的 8% 提升至 98.86%,无风险样本通过率从 36.11% 提升至 54.93%。

**整个 114 次迭代中,基本没有代码是我手写的。**从第一个版本开始,所有代码都是我指导 AI 完成的——包括搭建闭环环境本身的代码。早期 AI 没有闭环,效率很低:每轮迭代都需要我指出方向、审查结果、告诉 AI 下一步做什么。但 AI 在我的指导下逐步搭建出端到端测试、标准化评测、自动诊断等基础设施——每搭建一个模块,AI 就减少一项对人的依赖

这是一个自举(bootstrapping)过程:AI 用自己写的代码,逐步把自己迭代到能够自主闭环运行。当闭环完成后,AI 可以 7×24 小时自主运行:分析问题、生成策略、修改代码、验证效果、进入下一轮——整个过程无需人工介入。

工程师的角色从"编写代码"转向"设计环境、明确意图和构建反馈回路"。我们在HelixVerify项目中的实践与 OpenAI 在 2026 年 2 月分享的理念不谋而合:人类掌舵,智能体执行(Humans steer. Agents execute.)。

一、HelixVerify: Agent 产出检测系统

HelixVerify 是一个 Agent 产出质量验证系统,核心通过后置verify系统反馈,消除 LLM 生成页面内容时的幻觉与低质量问题。

1.1 整体架构

HelixVerify 采用三层分离架构:

  • 首先人类设定目标(召回率≥90%)和安全边界(不可误杀正确样本)
  • 然后就让 AI 自主迭代,完成诊断→策略→实施→验证的闭环
  • 其中我作为“架构师” 指出应该执行的架构,即下面的混合验证引擎

1.2 混合验证-Rule + LLM

这个架构是我作为人类对 AI 最大的输入。刚开始我让模型持续自迭代,但发现模型(Opus-4.5)做不到自己迭代出一个合理的架构——模型更多是在自己的一亩三分地反复优化。而当我指出”Rule 引擎 + LLM 多轮检测可以优势互补”时,模型就在关键指标上持续取得很大进步。

设计思路: Rule 引擎和 LLM 各有所长,让它们各司其职:

  • Rule 引擎(23 条规则): 处理确定性错误——HTML 注释残留、JSON 空数据、格式异常等。毫秒级响应,100% 确定,覆盖 30-40% 的错误。
  • LLM 多轮检测(7 个维度并行): 处理语义错误——数值不准确、术语误用、逻辑矛盾、信息遗漏等。需要语义理解,覆盖 60-70% 的错误。
  • FP Filter(后置过滤): 16 条规则 + LLM 语义判断,过滤两层检测产生的误报。

两者重叠约 10-20%,说明互补性好。


二、如何搭建让 AI 自主迭代的闭环环境

有了验证引擎还不够——AI 需要一个完整的闭环环境才能自主迭代优化这个引擎。本节是这篇文章的核心:搭建闭环所需的 5 个能力模块,以及让闭环 7×24 持续运行的 Loop 基础设施

需要强调的是:这些模块本身也是 AI 写的代码。 整个过程是一个自举:早期我指导 AI 搭建端到端测试 → AI 有了"看"的能力 → 我指导 AI 搭建评测工具 → AI 有了"量"的能力 → ……每搭建一个模块,AI 对人的依赖就减少一层,直到闭环完全合上。

这些模块不是一次性搭完的,而是在 114 次迭代中由 AI 逐步搭建的。每个模块的出现,都是因为闭环在某个环节断了,AI 跑不下去了——然后我指出问题方向,AI 来实现解决方案。

2.1 端到端测试体系:让 AI”看懂”系统

AI 只能改代码,但看不懂改完之后系统内部发生了什么——这就像让一个工程师蒙着眼睛 debug。所以我们要搭建完整的端到端测试框架,让 AI 像人类工程师一样 debug:

  • 模拟人类分析 case: AI 发请求、看响应、分析日志,就像人类工程师 debug 一样
  • 理解 LLM 的思考过程: 通过日志中的 traceId 追踪每个请求的完整链路,包括 LLM 内部的推理过程——这让 AI 不仅知道”结果不对”,还能理解”哪一步思考出了问题”
  • 自主设计测试用例: AI 根据代码变更自己设计测试,不需要人工指定

于是 AI 从”只能改代码”升级为”能改代码 + 能验证效果 + 能定位问题”。这是闭环的起点——没有这个能力,后面所有模块都无从谈起。

2.2 标准化评测(verify_bench):给 AI 一把统一的尺子

解决的问题: AI 改完代码后不知道是进步了还是退步了。没有统一标准,AI 无法自主判断迭代结果,闭环在”评估”环节断裂。

我的做法: 构建 verify_bench 评测工具,输出结构化的两份文件:

verify_bench 评测输出├── metric.txt    → 量化指标,AI 用来判断”好不好”└── detail.txt    → 逐条明细,AI 用来分析”哪里不好”

metric.txt(指标结果):

# AI 可以直接解读的结构化指标{    “total_samples”: 202,    “tp”: 85,     # 真阳性: 正确检出的错误    “fp”: 234,    # 假阳性: 误报    “fn”: 1,      # 假阴性: 漏报    “tn”: 345,    # 真阴性: 正确通过    “recall”: 0.9886,    “pass_rate”: 0.5493}

detail.txt(逐条明细):包含每个样本的完整日志、人工标注的 Ground Truth 结果、以及 HelixVerify 产出的实验过程目录。三者并列,AI 可以逐条对比,发现”人觉得对但机器判错”或”人觉得错但机器漏掉”的具体 case。

为什么这件事对闭环至关重要? 如果 AI 没有一个可程序化调用的评测工具,它就无法自主判断迭代结果。每次改完代码都需要人来看结果、告诉 AI 好不好——闭环就断了。

于是AI 每次改完代码后能自动跑评测、自动解读 metric.txt 判断方向、自动分析 detail.txt 定位问题,自主决定下一步。

detail.txt 如何构建

detail.txt 本身是一个集合,指导 AI 去对应地方查看日志、GT 以及 实验过程目录。我这里附录下具体的实验目录构建步骤:

# ============================================================# Step 1: 设置环境变量# ============================================================...# ============================================================# Step 2: 创建实验目录(带版本号和时间戳)# ============================================================EXPERIMENT_DIR="experiments/v101_stage1_test_$(date +%Y%m%d_%H%M%S)"mkdir -p $EXPERIMENT_DIRecho"📁 实验目录: $EXPERIMENT_DIR"# ============================================================# Step 3: 运行验证# ============================================================echo"🚀 开始验证 Stage 1..."$VENV_PYTHON run_stage_validation_direct.py \  --stage 1 \  --output-dir $EXPERIMENT_DIR# 验证输出示例:# ============================================================# 🚀 Stage 1 | Samples: 10#    Data: stage1.xlsx#    Temperature: 0.0 (Fixed)# ============================================================#   [1/10] BIZ_2026011600000005289480 ✅ BC=2#   [2/10] BIZ_2026010500000004072882 ✅ BC=1#   ...#   [10/10] BIZ_2026011600000005248951 ✅ BC=2# 💾 Results saved: experiments/v101_stage1_test_20260210_104139/stage1_results.xlsx# ============================================================# Step 4: 运行verify_bench评测# ============================================================echo"📊 运行verify_bench评测..."cd ../../../verify_bench....# verify_bench会输出结果目录,例如:# results/20260210_104510_stage1_results_eqfn_v1/# ============================================================# Step 5: 查看评测结果# ============================================================echo"📈 查看指标..."# 找到最新的results目录LATEST_RESULT=$(ls -td results/*stage1* | head -1)echo"最新结果目录: $LATEST_RESULT"# 查看核心指标cat $LATEST_RESULT/metric.txt# 示例输出:# MetricPRF(#     tp = 3,#     fp = 13,#     fn = 1,#     p = 0.1875,   # Precision: 18.75%#     r = 0.75,     # Recall: 75%#     f1 = 0.3,     # F1: 30%# )# MetricRecallPass(#     (风险样本)全召回率 = 66.67 %,#     (无风险样本)通过率 = 28.57 %,  # )# 查看详细case分析(查看前30行)head -30 $LATEST_RESULT/detail.txt# ============================================================# Step 6: 复制verify_bench结果到实验目录# ============================================================cd$VERIFY_V2_ROOTcp -r ../../../verify_bench/$LATEST_RESULT$EXPERIMENT_DIR/verify_bench_resultsecho"✅ verify_bench结果已复制到实验目录"# ============================================================# Step 7: 创建配置快照(推荐)# ============================================================.....# ============================================================# Step 8: 创建分析报告(模板)# ============================================================.....# ============================================================# Step 9: 查看实验目录结构# ============================================================echo"📁 实验目录结构:"tree -L 2 $EXPERIMENT_DIR 2>/dev/null || ls -lR $EXPERIMENT_DIR# 期望输出:# experiments/v101_stage1_test_20260210_104139/# ├── config.json# ├── stage1_results.xlsx# ├── analysis_report.md# └── verify_bench_results/#     ├── metric.txt#     ├── detail.txt#     └── evaluation_results.jsonecho"✅ 完成!现在可以编辑 $EXPERIMENT_DIR/analysis_report.md 进行详细分析"

2.3 Badcase 自动诊断:让 AI 自己发现问题

解决的问题: 以前每轮迭代,都需要我人工分析 badcase,告诉 AI”这批误报的共同特征是 XXX,你试试从这个方向优化”。我是 AI 迭代的瓶颈。

我的做法: 让 AI 直接消费 verify_bench 的两份输出,自动完成诊断:

AI 读取 metric.txt 判断当前瓶颈在哪(是召回率不够还是误报太多),然后读取 detail.txt 聚类分析具体 case,自动生成候选优化策略并按预估收益排序。

关键设计: AI 的诊断是数据驱动的——它从 detail.txt 的逐条对比中发现规律,而不是凭”直觉”猜测。这比人工分析更系统、更不容易遗漏。

解锁的能力: 人类不再需要参与”分析问题”这个环节。AI 自己跑评测、自己分析结果、自己生成策略。

2.4 TP 对抗验证:让 AI 的改动安全

在当前的指标优化场景汇总,AI 自主迭代往往会出现“按下葫芦起了瓢”的情况,即优化了一个指标,另一个指标反而下降了。 比如在 v105 中, AI 统计了高频误报的 case ,直接设计过滤规则和 prompt 。对于正确样本误报确实减少了 23 个,使得无风险样本召回率上升了,但是讲原有的风险样本错误也误杀了,风险样本召回率从 90% 暴跌至 40%。

之所以有这种”优化一个指标、破坏另一个指标”的困境,根因在于 AI 只看了误报数据,没有交叉验证正确样本。所以我们需要TP(True Positive)对抗验证——任何过滤规则上线前,必须验证它不会误杀正确样本:

实现 TP 对抗验证后,后续 30 次迭代无一次召回率下降。AI 终于可以放心地优化误报,不用担心破坏已有成果。

我们需要有手段保证AI 的迭代从”可能破坏”变为”保证不破坏”。使用代码围栏、Lint、对抗测试与模块等。

2.5 阶梯式验证:让 AI 用最低成本试错

全量评测(202 样本) 需要 60 分钟。如果每次试错都跑全量,AI 一天只能迭代几次,效率太低。

于是我从小样本到大样本逐层验证,90% 的问题在前 3 分钟暴露:

为什么不直接跑全量? 因为 AI 的大部分尝试会失败——114 次迭代中 70% 是失败或部分达标。让失败在 3 分钟内暴露,比在 60 分钟后暴露,节省了巨大的时间成本。

于是AI 一天可以迭代十几次(而非几次),大幅加速”试错-学习”循环。

2.6 Loop 基础设施:让 AI 7×24 持续运行

前面 5 个模块解决了”AI 能做什么”的问题,但还有一个关键问题:谁来驱动 AI 不停地跑下去?

人类不可能 24 小时盯着屏幕按回车。我们需要 Loop 基础设施。

Ralph-Loop:让 AI 自己决定”做没做完”

Claude Code 本身是 Loop 组成的智能体,而人类使用 Claude Code 的过程(提需求→规划→实现→review→再提需求)本身也是一个 Loop。Ralph-Loop 借助 Stop Hook,强制 AI 每次自然停下时反思任务是否完成,没完成就继续:

/ralph-loop “Fix xxx” --max-iterations 10 --completion-promise “FIXED”

这个命令让模型修复 xxx,一直到 AI 认为自己修复完成并显式输出 “FIXED” 才会停止,最大迭代 10 次。

上下文窗口不会爆掉吗? 不会。Ralph-Loop 在每轮任务结束后彻底关闭当前 AI 进程并重新启动,模型将进度和状态存储在本地文件中,剥离”短期记忆”。

实际体验: 我跑通了持续运行 6 小时以上的任务。不过也得承认没有很稳定能有效运行这么久——模型会反思进入自身的”无进度循环”中,也可能触发上下文溢出(比如模型突然读了一个很大的日志文件)。保持任务原子化和可验证是关键。

之所以我要求是整个流程要做到连续跑 6h 以上–是希望至少人睡觉前启动下,睡觉后可以看结果。 这个主要依赖两个,一个是 Ralph Loop 本身会不停 save session 再 resume ; 第二个是需要调试到模型每次工作都有完好的实验记录,保证每一次迭代是在上一次基础上前进。让模型每次在新的 session 可以看到之前的实验记录,包括benchmark 、评测结果以及评测细节等。

Supervisor:给 AI 加一个”AI 主管”

Ralph-Loop 的缺点很明显——单纯让 AI 自己反思,不能给 AI 指导性意见,不能像人类一样 review AI 每次停下来的输出,或者在 AI 问你选 A 还是 B 方案时给出判断。

解决办法:在最外层 Loop 加一个 Supervisor Agent,它扮演人类的角色:

方面 Ralph-Loop Supervisor
检测方式 AI 输出结构化状态 + 规则解析 Supervisor AI 直接审查
评估方式 基于信号和规则 Fork 会话上下文,评估实际质量
灵活性 需要更新规则代码 更新 Prompt 即可

Supervisor 会判断:AI 是否在等待确认?是否做了该做的事?代码质量是否达标?用户需求是否全部满足?

不过复杂场景下 AI 归根结底不能代替人做判断。当 AI 给出选项 A、B、C 时,Supervisor 或许能根据当下情况选择,但目前还不能像人一样提出 D 选项。比如下面这个场景:AI 自己给出了几个选项并选了 A,但我明显不同意它妥协的做法——这个判断就是人的核心价值所在

下面是 AI 在 Loop 中 “Aha Monent” 的时候:

⚠️ Loop 过程中我们要避免上下文的无关消耗 虽然每次新的 Loop 会开启新窗口。但是单次 Loop 上下文窗口依然是非常有限的资源。不珍惜的话不仅仅是效果问题,当次 Loop 也可能被中断。 比如实验日志动辄数千行,多次轮询会快速耗尽上下文,导致 AI"失忆"。需要主动避免 AI 无效轮询评测过程。

# ❌ 不要多次非阻塞读取检查进度(每次重新加载全部日志)while True:    result = TaskOutput(task_id, block=False)  # ✅ 阻塞等待,一次性获取结果result = TaskOutput(task_id, block=True)
闭环 + Loop = 基于测试的应用级”强化学习”

当 AI 有了闭环的 5 个能力模块,又有了 Loop 基础设施持续运行,整个系统就构成了一个类似强化学习的过程:

闭环合上前后的对比:

闭环前(v1-v70) 闭环后(v71-v114)
人的角色 指导 AI 分析 badcase、指定方向、审查每次改动 设定目标、审批上线
AI 的角色 执行人的指令写代码,同时搭建环境模块 自主完成诊断→策略→实施→验证全流程
迭代周期 5-7 天/轮 3-4 小时/轮
迭代成功率 ~60% ~75%
召回率进展 0% → ~80%(70 个版本,~4 周) 87% → 98.86%(44 个版本,~2 周)

114 次迭代最终成果:

指标 v71 基线 v114 最终 提升幅度
召回率(Recall) 87.42% 98.86% +11.44pp
通过率(Pass Rate) 36.11% 54.93% +18.82pp
误报数(FP) 346 234 -112 (-32.4%)
漏报数(FN) 19 1 -18 (-94.7%)

三、Harness Engineering:从实践中提炼的方法论

前两节讲了我们做了什么、怎么搭建闭环。本节提炼背后的方法论——让这些经验可以复用到其他场景。

OpenAI 在 2026 年 2 月分享了类似的理念:用 Codex 智能体完成产品开发,接近 100 万行代码没有一行是人工编写的。他们总结的核心是:人类掌舵,智能体执行(Humans steer. Agents execute.)。工程师的角色从”编写代码”转向”设计环境、明确意图和构建反馈回路”。 OpenAI. 将其提炼为 Harness Engineering:

Harness Engineering = 工程师的主要工作不再是编写代码,而是设计环境、明确意图和构建反馈回路,从而使 AI 智能体能够可靠地工作并交付成果。

我们在 HelixVerify 中实践了同样的理念。这里我还想提出基于自身实践的四条核心原则:

可复制的实施路径

如果你想为自己的场景搭建类似的闭环,建议按以下顺序:

Phase 1: 让 AI 能”看”和”量”

  • 搭建端到端测试体系:让 AI 能发请求、看日志、追踪调用链路
  • 对接标准化评测工具:让 AI 有统一的量化指标
  • 建立 Git 版本管理:每次迭代自动 commit,全程可追溯、可回滚

Phase 2: 让 AI 能”诊”和”治”

  • 实现 Badcase 自动诊断:让 AI 能从评测结果中自动发现问题
  • 实现 TP 对抗验证:让 AI 的每次改动都安全可控
  • 实现阶梯式验证:让 AI 能用最低成本快速试错

Phase 3: 让 AI 7×24 自主运行

  • 配置 Ralph-Loop 或 Supervisor,让 AI 持续迭代(现在 Claude Code 自带了原生 Loop)
  • 失败案例自动记录到知识库,避免重复犯错
  • 人类只需设定目标和审批上线

结语

Harness Engineering 的核心很简单:为 AI 搭闭环,让 AI 自举到自主运行

HelixVerify 的 114 次迭代,基本没有代码是我手写的。AI 在人的指导下,逐步搭建出让自己能够自主迭代的闭环环境——端到端测试、标准化评测、Badcase 诊断、TP 对抗验证、阶梯式验证、Loop 基础设施。每搭建一个模块,AI 对人的依赖就减少一层,直到闭环完全合上,AI 可以 7×24 自主运行。

HelixVerify 在质量验证领域验证了这个理念:

  • 效率: 迭代周期从 5-7 天缩短至 3-4 小时(30-40 倍)
  • 质量: Recall 8% → 98.86%, Pass Rate 36.11% → 54.93%
  • 成本: 原本需要很多人标注、看 Case,现在只需要开发者为 AI 建立 Harness 的环境

当你需要 AI 来完成长流程闭环任务时, 先问自己几个问题,如果哪个环节的答案是”不能”,那就是你需要搭建环境中的下一个模块。

希望这些经验能对后 OpenClaw 时代,开发者有效管理 AI 交付需求有所启发。

术语表

为了方便非算法背景的读者理解,这里列出文章中使用的核心术语:

质量验证指标

术语 英文 解释 场景示例
召回率 Recall 所有真实错误中被成功检测出的比例 100个真实错误,检出90个,召回率=90%
通过率 Pass Rate 没有误报的样本占总样本的比例 100个样本,60个完全正确(无误报),通过率=60%
真阳性 TP (True Positive) 正确检出的错误样本 检测出的错误确实是错误
假阳性 FP (False Positive) 误报,把正确的判断为错误 把正确内容误判为错误
假阴性 FN (False Negative) 漏报,把错误的判断为正确 错误内容未被检测出
真阴性 TN (True Negative) 正确判断为正确的样本 正确内容被正确识别

核心机制

术语 解释 价值
TP 对抗验证 在设计过滤规则前,验证该规则是否会误杀正确样本 防止召回率下降
阶梯式验证 从小样本到大样本逐层验证,快速暴露问题 节省验证时间
Rule+LLM 混合 规则引擎处理确定性错误,LLM 处理语义错误 优势互补,提升覆盖率

工程术语

术语 解释
Badcase 错误案例,包括误报(FP)和漏报(FN)
Ground Truth (GT) 人工标注的正确答案
Benchmark 用于评测的标准数据集
Stage 阶梯式验证中的一个阶段

注: Recall 和 Pass Rate 指标均相对于当前 benchmark

学AI大模型的正确顺序,千万不要搞错了

🤔2026年AI风口已来!各行各业的AI渗透肉眼可见,超多公司要么转型做AI相关产品,要么高薪挖AI技术人才,机遇直接摆在眼前!

有往AI方向发展,或者本身有后端编程基础的朋友,直接冲AI大模型应用开发转岗超合适!

就算暂时不打算转岗,了解大模型、RAG、Prompt、Agent这些热门概念,能上手做简单项目,也绝对是求职加分王🔋

在这里插入图片描述

📝给大家整理了超全最新的AI大模型应用开发学习清单和资料,手把手帮你快速入门!👇👇

学习路线:

✅大模型基础认知—大模型核心原理、发展历程、主流模型(GPT、文心一言等)特点解析
✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑
✅开发基础能力—Python进阶、API接口调用、大模型开发框架(LangChain等)实操
✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用
✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代
✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经

以上6大模块,看似清晰好上手,实则每个部分都有扎实的核心内容需要吃透!

我把大模型的学习全流程已经整理📚好了!抓住AI时代风口,轻松解锁职业新可能,希望大家都能把握机遇,实现薪资/职业跃迁~

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

在这里插入图片描述

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐