同步最新

This commit is contained in:
Zane
2026-05-07 11:14:29 +08:00
parent ff654b91f2
commit 8f3aa6fd3a
12 changed files with 319 additions and 381 deletions

View File

@@ -1,14 +1,13 @@
---
原文发布链接: https://zhuanlan.zhihu.com/p/2016839356833341880
tags:
- AutoHarness
- AI
- 论文解读
- AutoHerness
- LLM
- Agent
- ProgramSynthesis
- GRPO强化学习
- harness
---
## 一句话总结

View File

@@ -0,0 +1,326 @@
---
tags:
- harness
---
# Harness Engineering 最佳实践Agent Harness 底层原理、核心组件与实战应用
## 目录
1. [AI 工程师的岗位分层体系](#1-ai-工程师的岗位分层体系)
2. [大模型应用的三层进化范式](#2-大模型应用的三层进化范式)
3. [Prompt Engineering让模型"会说"](#3-prompt-engineering让模型会说)
4. [Context Engineering解决上下文膨胀问题](#4-context-engineering解决上下文膨胀问题)
5. [Agent Harness 核心架构](#5-agent-harness-核心架构)
6. [Harness Engineering 的工程实践](#6-harness-engineering-的工程实践)
---
## 1. AI 工程师的岗位分层体系
### 1.1 三层架构概述
在 2026 年AI 工程师可分为三个层级,每个层级有明确的技术侧重点:
| 层级 | 定位 | 核心职责 | 技术侧重 |
|------|------|----------|----------|
| **AI 产品化** | AI 产品经理、AI 解决方案架构师 | 发现 AI 价值场景,重塑业务流程 | 业务分析、产品设计 |
| **AI 应用层** | AI 应用工程师、大模型应用开发 | 业务方案落地AI 赋能场景 | Prompt Engineering、Context Engineering、RAG |
| **AI 大模型算法层** | 模型研发工程师 | 提升模型垂直能力 | SFT 微调、RLHF 对齐、安全护栏 |
### 1.2 各层级的核心差异
**AI 产品化层**
- 聚焦于找到 AI 的价值场景
- 重新定义业务产品线
- 属于业务与产品方向
**AI 应用层**Harness Engineering 的落地层):
- 偏业务 + 方案落地
- 利用开源模型构建垂直应用
- 2026 年最稀缺、最具机会的方向
**AI 大模型算法层**
- 不做基座模型GPT-4、Qwen3.6 等基座由大厂完成)
- 聚焦于模型的**垂直能力提升**
- 包括:
- **SFT 微调**Supervised Fine-Tuning
- **RLHF**Reinforcement Learning from Human Feedback
- **对齐训练**Alignment
- **安全护栏**Safety Guardrails
### 1.3 职业选择建议
```
技术背景 → AI 应用层(最佳入场点)
产品背景 → AI 产品化层 → 可延伸至应用层
算法背景 → AI 大模型算法层
```
> **核心观点**2026 年是**大模型应用落地**的关键年份,大多数人的机会在于 AI 应用层。
---
## 2. 大模型应用的三层进化范式
从时间维度看AI 应用开发经历了三个阶段的范式转变:
```
2022-2024Prompt Engineering 时代
2025Context Engineering 时代
2026Agent Harness / Harness Engineering 时代
```
---
## 3. Prompt Engineering让模型"会说"
### 3.1 时间窗口
2022 年 11 月 ChatGPT 发布后成为焦点
### 3.2 核心问题
**解决"如何说"的问题**——如何更好地与模型沟通,让模型生成更高质量的回答。
### 3.3 技术特征
- 单对单对话模式
- 用户输入一句话,模型返回一句话
- 关注点:如何编写有效的 Prompt
### 3.4 典型场景
```
用户 → Prompt → LLM → Response
```
---
## 4. Context Engineering解决上下文膨胀问题
### 4.1 时间窗口
2025 年
### 4.2 核心问题
随着 Agent 开发引入工具调用(如 MCP 协议),上下文窗口中的内容越来越多,导致模型能力反而下降、**幻觉Hallucination** 问题加剧。
### 4.3 核心目标
**解决"有什么"的问题**——让模型清楚地知道当前拥有哪些信息。
### 4.4 关键概念
**Context Window上下文窗口**
- 多轮对话的执行过程中,所有历史信息都存储在上下文窗口中
- 当内容越来越多时,模型会出现"迷失"现象
**迷失问题Lost in Context**
- 模型在大量上下文中无法准确识别关键信息
- 导致:
- 响应质量下降
- 幻觉增加
- 任务执行失败
### 4.5 Context Engineering 的职责
| 问题 | 解决方案 |
|------|----------|
| 上下文过长 | 上下文压缩、摘要 |
| 信息混乱 | 结构化组织、分类管理 |
| 关键信息被淹没 | 关键信息突出、检索增强 |
---
## 5. Agent Harness 核心架构
### 5.1 官方来源
本文档基于 **LangChain 团队**发布的关于 Agent Harness 的官方博客,是全球最懂 Agent 的团队发布的系统性技术文档。
### 5.2 Agent Harness 的定位
**Harness** 的本意是"驾驭、利用"Agent Harness 即对 Agent 的工程化驾驭框架。
### 5.3 核心架构体系
```
┌─────────────────────────────────────────┐
│ Agent Harness │
├─────────────────────────────────────────┤
│ ┌─────────────┐ ┌─────────────────┐ │
│ │ 规划层 │ │ 执行层 │ │
│ │ Planning │ │ Execution │ │
│ └─────────────┘ └─────────────────┘ │
│ ┌─────────────┐ ┌─────────────────┐ │
│ │ 工具层 │ │ 记忆层 │ │
│ │ Tools │ │ Memory │ │
│ └─────────────┘ └─────────────────┘ │
│ ┌─────────────┐ ┌─────────────────┐ │
│ │ 感知层 │ │ 评估层 │ │
│ │ Perception │ │ Evaluation │ │
│ └─────────────┘ └─────────────────┘ │
└─────────────────────────────────────────┘
```
### 5.4 各层核心组件详解
#### 5.4.1 规划层Planning
**职责**:将复杂任务分解为可执行的子任务
**关键技术**
- **任务分解**Task Decomposition
- **思维链**Chain of Thought, CoT
- **子任务规划**
#### 5.4.2 执行层Execution
**职责**:执行规划层生成的子任务
**关键技术**
- **工具调用**Tool Calling
- **动作执行**Action Execution
- **结果反馈**
#### 5.4.3 工具层Tools
**职责**:为 Agent 提供外部能力
**典型工具类型**
- **MCP 工具**Model Context Protocol
- API 调用
- 搜索引擎
- 数据库查询
- 文件系统操作
#### 5.4.4 记忆层Memory
**职责**:存储和管理 Agent 的历史状态与上下文
**记忆类型**
| 类型 | 说明 | 用途 |
|------|------|------|
| 短期记忆 | 当前对话上下文 | 处理即时任务 |
| 长期记忆 | 持久化存储 | 跨会话经验积累 |
| 工作记忆 | 工作过程中的临时状态 | 任务执行中间态 |
#### 5.4.5 感知层Perception
**职责**:接收和处理外部输入
**感知内容**
- 用户指令
- 文档输入
- 多模态信息(图像、音频等)
- 环境状态
#### 5.4.6 评估层Evaluation
**职责**:评估 Agent 执行结果的质量
**评估维度**
- 输出正确性
- 任务完成度
- 安全性检查
- 效率评估
---
## 6. Harness Engineering 的工程实践
### 6.1 定义
**Harness Engineering** 是系统性地构建、测试、优化 Agent 行为能力的工程学科。
### 6.2 与传统软件工程的区别
| 维度 | 传统软件工程 | Harness Engineering |
|------|-------------|---------------------|
| 不确定性 | 低(确定性逻辑) | 高(概率性输出) |
| 测试难度 | 可精确断言 | 需概率评估 |
| 调试方法 | 日志追踪 | 行为轨迹分析 |
| 质量保障 | 单元测试 + 集成测试 | 评估驱动开发 |
### 6.3 核心工程实践
#### 6.3.1 评估驱动开发Evaluation-Driven Development
```
设计评估指标 → 开发 Agent → 持续评估 → 迭代优化
```
#### 6.3.2 行为可复现性
- 通过种子seed控制随机性
- 构建可测试的 Agent 行为
- 建立回归测试机制
#### 6.3.3 多维度评测
- **任务完成率**Agent 是否完成目标
- **效率指标**:消耗的 Token 数量、执行时间
- **质量评分**:输出的人力评估
- **安全性检查**:有害内容过滤
### 6.4 LangChain Agent Harness 的工具链
```
┌──────────────────────────────────────────┐
│ LangChain 生态 │
├──────────────────────────────────────────┤
│ LangChain │ Agent 开发框架 │
│ LangSmith │ 追踪与评估平台 │
│ LangServe │ Agent 部署服务 │
│ LangGraph │ Agent 工作流编排 │
└──────────────────────────────────────────┘
```
---
## 7. 补充:观众反馈中的有价值观点
> 本节整理自视频弹幕中观众的补充与讨论
### 7.1 关于 Context Engineering 的延伸
- Context Engineering 不仅解决"上下文膨胀",还需要考虑**信息密度**问题
- 有效上下文 = 去除噪音后的核心信息
- 常用的压缩策略LLM 摘要、关键信息提取、信息去重
### 7.2 关于 Agent 幻觉的处理
- 幻觉问题在单轮对话中已存在
- 在多轮 Agent 执行中,幻觉会被**级联放大**
- 建议在每个关键步骤增加**自我校验**机制
### 7.3 关于实际落地的建议
- 不要过度追求 Agent 的自主性,**人机协同**往往更可靠
- 初期应聚焦垂直场景,积累领域知识后再扩展
---
## 附录:关键术语表
| 英文术语 | 中文解释 |
|----------|----------|
| **Harness Engineering** | 驾驭工程Agent 的系统工程化方法 |
| **Agent Harness** | Agent 框架的核心组件集合 |
| **Prompt Engineering** | 提示词工程,优化人机交互质量 |
| **Context Engineering** | 上下文工程,管理信息输入质量 |
| **Hallucination** | 幻觉LLM 生成虚假或不准确内容 |
| **Chain of Thought (CoT)** | 思维链,引导模型展示推理过程 |
| **SFT** | Supervised Fine-Tuning有监督微调 |
| **RLHF** | Reinforcement Learning from Human Feedback基于人类反馈的强化学习 |
| **MCP** | Model Context Protocol模型上下文协议 |
| **Agent** | 智能体,能够自主执行任务的 AI 系统 |
---
> **笔记说明**:本笔记基于 LangChain 团队发布的官方博客整理,聚焦于 Agent Harness 的技术架构与工程实践。视频原版对三层架构有详细展开,读者可根据需要结合原视频深入理解各层级的技术细节。

View File

@@ -0,0 +1,274 @@
---
description: 从输出文本变成了输出并检验证据是否完整RAG之后+VAG
---
# 病例驱动证据验证框架:从表面匹配到可验证推理
## 研究背景与问题
### 当前 AI 证据引用的核心缺陷
现有 AI 模型在引用外部证据时存在严重的逻辑断层问题:
| 缺陷类型 | 具体表现 |
| ---------- | --------------------- |
| **表面匹配依赖** | 过度依赖文本相似度,用文字重合度"走捷径" |
| **逻辑断层** | 未真正理解证据与主张之间的因果关系 |
| **虚假支撑** | 生成看起来合理但缺乏逻辑支撑的回答 |
| **高风险隐患** | 在医疗、法律等领域可能导致致命错误 |
### 问题本质
模型并未真正"看懂"证据,而是利用文本重合度生成看似合理的回答。这种虚假的逻辑支撑在专业领域非常危险。
---
## 解决方案:三位一体验证框架
### 框架架构
研究团队提出**病例驱动验证框架Case-Driven Evidence Verification**,核心是三位一体结构:
```
┌─────────────────────────────────────────────────────┐
│ 验证任务 │
│ (转化为严苛的判断题) │
├─────────────────────────────────────────────────────┤
│ │
│ ┌─────────┐ ┌──────────────┐ ┌───────────┐ │
│ │ 具体情境 │ + │ 外部证据 │ + │ 结构化主张 │ │
│ │ CASE │ │ EVIDENCE │ │ CLAIM │ │
│ └─────────┘ └──────────────┘ └───────────┘ │
│ │
│ ↓ │
│ 模型输出裁定结果 VERDICT │
│ (支持 / 不支持) │
└─────────────────────────────────────────────────────┘
```
### 工作机制
1. **输入三元组**同时输入具体情境Case、外部证据Evidence和结构化主张Claim
2. **判断题模式**:将任务转化为判断题,强制模型输出明确裁定
3. **逻辑验证**:验证证据在当前情境下是否真实支撑主张
---
## 自动化数据生成方法
### 核心创新
**零人工标注成本**的自动化数据生成流水线,整合两大数据源:
| 数据源 | 用途 |
|-------|------|
| **MIMIC-CXR**(真实影像报告) | 提取病例状态Case |
| **Radiopaedia**(医学知识库) | 抽取数万条证据Evidence |
通过 **Refire Core** 逻辑规则智能重组,自动映射成数十万条正负样本。
### 四类训练样本
| 样本类型 | 特征 | 作用 |
|---------|------|------|
| **正样本** | 明确支持主张 | 学习正确关联模式 |
| **错误状态陷阱** | 高度相关但结论相反 | 封堵关键词匹配捷径 |
| **困难负样本** | 因果关系复杂 | 强化深层理解 |
| **简单负样本** | 明显不支持 | 基线学习 |
### 反事实负样本(核心突破)
- **语义特征**:与主张极度接近,包含所有核心关键词
- **逻辑特征**:由于病例特征差异,推导方向与主张完全相反
- **占比**25% 的数据集专门用于封堵关键词匹配捷径
**目的**:逼迫模型放弃表面关联,深入理解文字背后的逻辑因果。
---
## 实验设计与结果
### 关键对比实验
#### 1. 病例深度关联的效果
| 配置 | AUPRC | 平衡准确率 |
|-----|-------|-----------|
| 纯证据验证 | 35.1% | — |
| **深度关联验证** | **87.8%** | **92.0%** |
**结论**:单纯堆砌资料不能让 AI 变聪明,结合具体情境才能实现性能跨越。
#### 2. 关键词陷阱测试
**场景**:病例明确显示无胸腔积液,面对包含相同术语的干扰证据
| 模型 | 支持率 |
|-----|-------|
| 普通 AI | 99.1% |
| **深度验证模型** | **0.000%** |
**结论**:框架能有效识破伪装,不再盲目信任语义相近但逻辑无关的信息。
#### 3. 物理干预测试(检验推理真实性)
三种极端条件:
| 测试条件 | 描述 | AUPRC | F1 分数 |
|---------|------|-------|---------|
| 正常关联证据 | 基线测试 | 87.8% | 高 |
| 清空证据 | 切断所有参考资料 | 大幅下降 | 大幅下降 |
| **交换证据** | 张冠李戴的专业文本 | **21.7%** | 显著缩水 |
**结论**:性能急剧崩溃证明模型**高度依赖正确的外部证据**,而非死记答案。
#### 4. 证据数量与性能关系
| 证据数量 | AUROC |
|---------|-------|
| 1 句 | 较低 |
| **2 句** | **97.4%(巅峰)** |
| 10 句 | 基本持平 |
**关键发现**:模型不需要翻阅数百页文档,只需抓准最关键的两句信息就能实现满血性能。过度堆砌资料反而引入背景干扰。
### 全维度性能对比
| 方法 | AUROC | AUPRC | BRI Score |
|-----|-------|-------|-----------|
| 纯情境推断 | 59.90% | — | 高 |
| 纯证据验证 | — | 35.11% | 高 |
| **三位一体深度关联** | **97.43%** | **87.8%** | **0.060** |
---
## 泛化能力验证
### 陌生知识测试Held-out Content
使用**从未参与训练**的全新医学百科文章:
| 指标 | 结果 |
|-----|------|
| AUROC | 97.2% |
| F1 分数 | 77.9% |
**结论**:模型学习到的是**通用验证逻辑**,而非对特定教材句式的死记硬背。
### 跨数据集迁移
将基于 MIMIC-CXR 训练的模型**直接空降**到 CheXpert Plus 数据集6万+患者):
| 指标 | 结果 |
|-----|------|
| AUROC | 93.46% |
| 平衡准确率 | 87.45% |
**结论**:即便面对截然不同的书写风格和病例分布,模型验证能力依然在线,展现极强落地适应性。
### 底层模型对比
| 模型 | 参数量 | AUPRC | 特点 |
|-----|-------|-------|------|
| **DeBERTa-v3-large** | **3.95亿** | **87.8%** | 综合最强,面对未知证据最稳 |
| FlanT5-large | — | 次之 | 经典大模型 |
| RoBERTa-large | — | — | 经典 baseline |
**结论**:更现代的特征提取器能更敏锐地锁定微小的语义偏差。
---
## 应用场景
### 1. 临床问答护城河
```
检索器 → 生成器 → 【验证框架】 → 医生
输出置信度分数
拦截 99% 幻觉主张
```
- 作为最后一道交叉质证
- 有效拦截无依据方案
- 辅助医生做出更稳健的决策
### 2. 自动化医疗报告审核
- 自动提取结构化结论
- 与原始影像发现及医学标准逐一核对
- 实时标注逻辑冲突,提示人工复核
- 减轻高年资医生审核负担
- 杜绝因疲劳引发的关键性疏漏
### 3. 跨领域泛化
| 领域 | 应用 |
|-----|------|
| 法律合规 | 核实法条是否真实适用于案件事实 |
| 科研验证 | 自动检查实验引用是否存在张冠李戴 |
| 企业知识库 | 核对工单与操作手册,拒绝随意发挥 |
---
## 范式跃迁:从 RAG 到 VAG
| 范式 | 特征 | 核心区别 |
|-----|------|---------|
| **RAG**(检索增强生成) | 只要检索文本看起来相似,就强行作为答案参考 | 区分**相关性**与**支撑性** |
| **VAG**(验证增强生成) | 只有存在明确逻辑因果的文本才被认定为有效证据 | 追求**确凿性** |
**本质转变**AI 从松散的文本拼接机器 → 严谨的逻辑推演中枢
---
## 当前局限与未来路线
### 技术边界
| 局限类型 | 具体问题 |
|---------|---------|
| **泛化损耗** | 面对截然不同的新证据时AUPRC 指标仍会产生客观衰减 |
| **多状态扩展** | 目前主要验证二元主张,未来需向复杂多元连续图谱扩展 |
| **端到端噪声** | 引入全网实时检索后,对模型抗干扰能力提出更高要求 |
### 演进路线
```
第一阶段(已完成) 第二阶段(进行中) 第三阶段(愿景)
↓ ↓ ↓
三位一体验证框架 → 端到端动态检索 → 人类专家深度对齐
+ +
非结构化长文本 证据链自我修剪
高噪声环境 自主思考 Agents
```
---
## 核心结论
| 指标 | 结果 | 意义 |
|-----|------|------|
| AUPRC | 87.8%(提升 52.6% | 跨越性性能提升 |
| 平衡准确率 | 92.0% | 高可靠性 |
| BRI Score | 0.060 | 极低预测误差 |
**核心启示**:真正的智能不仅在于调取知识,更在于懂得如何对证据负责。
---
## 术语表
| 术语 | 全称 | 解释 |
|-----|------|------|
| **AUPRC** | Area Under Precision-Recall Curve | 精确率-召回率曲线下面积,衡量不平衡数据集性能 |
| **AUROC** | Area Under Receiver Operating Characteristic Curve | ROC 曲线下面积,衡量分类器区分能力 |
| **BRI Score** | Brier Score | 预测误差的均方误差,越低越准确 |
| **RAG** | Retrieval-Augmented Generation | 检索增强生成 |
| **VAG** | Verification-Augmented Generation | 验证增强生成 |
| **DeBERTa** | Decoding-enhanced BERT with disentangled attention | 更现代的预训练语言模型架构 |
| **MIMIC-CXR** | Medical Information Mart for Chest X-ray | 公开胸部 X 光影像数据集 |
| **反事实负样本** | Counterfactual Negative Samples | 语义相似但逻辑结论相反的样本,用于测试模型是否真正理解因果关系 |
| **CheXpert Plus** | — | 斯坦福大学胸部 X 光数据集 |
| **Refire Core** | — | 逻辑规则引擎,用于自动构建训练样本 |