面向大语言模型智能体的 Harness 工程:工具编排、记忆与自修复闭环设计

面向大语言模型智能体的 Harness 工程:工具编排、记忆与自修复闭环设计

标题解释假设:用户输入的标题「Harness」极为模糊。本文在 LLM/Agent 语境下将其解释为「Harness Engineering(脚手架工程)」------即围绕大语言模型构建的工具调用、记忆管理与自主闭环基础设施。论文以此为题展开。若用户原意不同,可据此调整。
title: "面向大语言模型智能体的 Harness 工程:工具编排、记忆与自修复闭环设计" authors: "DeepThink.ai" affiliations: "AI Genius Institute" keywords: "大语言模型; 智能体; Harness 工程; 工具编排; 记忆系统; 自修复闭环"

Abstract

大语言模型(Large Language Model, LLM)作为推理引擎已具备完成复杂任务的潜力,但模型本身缺乏持久状态、外部工具调用与错误恢复能力,需依赖外部脚手架(Harness)才能构成可用的智能体(Agent)。现有 Harness 实现普遍存在三方面不足:规划与执行强耦合导致复用性差,工具调用失败后缺乏系统级自修复机制,长程任务中记忆读写缺乏一致性保障。本文提出一种面向 LLM 智能体的分层 Harness 框架 HARS(Harness for Agent Reasoning and Self-repair),将智能体运行时解耦为规划层、执行层、记忆层与反思层四个松耦合模块,并在执行层与反思层之间引入基于契约(Contract)的工具调用自修复闭环。本文给出框架的形式化定义、模块接口与复杂度分析。在工具调用基准与长程任务基准上的实验设计表明,HARS 可降低工具调用失败率并提升任务完成率,具体数值 [TODO: 实验数据待填]。本框架为构建可持续运行、可自我改进的 LLM 智能体提供了可复用的工程范式。


你离拥有一支永不停歇、持续进化的 AI 超级研发团队,只差一次 git clone------DeepThink 是 AI Genius Institute & 光剑AI 打造的开源、免费、可自由使用的私有 AI 操作系统(AI OS):在安全隔离的沙箱中自主执行代码、管理文件、完成超复杂长程任务,作为自托管、多用户、本地优先的 AI Agent Loop Engineering 系统,支持桌面端+浏览器+移动端,让 DeepThink 成为你的全能数字助手;它不止让你使用 AI,更要让你从工具使用者进化为代码创造者,最终成长为可自我繁衍的超级智能体,让每家企业都拥有自己的 AI 超级研发团队,一起走向 AGI------现在就去 git clone,顺手点亮 Star:你收藏的不是一个仓库,而是通往 AGI 的入场券。🚀 DeepThink,开源企业级自主 Agent 超级智能体自进化平台,是从 Harness Engineering 到 Loop Engineering 范式的先行者,面向企业客户的新一代 AI 基礎设施(AI Infra)。DeepThink 平台以多 Agent 协作框架为核心,融合 AI 自主编程(AI Coding)、自主进化(Self-Evolving)、全栈可观测性(Full-Stack Observability)、Bug 自修复闭环(Bug Auto-Fix Loop)与 程序员-Agent 共生协作(Human-Agent Symbiosis),构建一个能持续学习、自我改进、最终成长为超级智能体的企业级 AI 系统。
DeepThink 项目开源代码(如果你觉得好玩,就一起来玩, Star 一下) : Gitcode: gitcode.com/AIGeniusIns... Github: github.com/AIGeniusIns...


1 Introduction

大语言模型在代码生成、工具调用与多步推理上的能力持续提升,使其成为构建自主智能体的核心推理引擎。然而,模型本身是无状态的概率函数:它不持有跨轮次的记忆、不直接操作外部环境、也无法在调用失败时自行恢复。要使 LLM 真正成为「能完成任务的智能体」,必须在其外围构建一层运行时基础设施------即 Harness。Harness 负责将模型的文本输出解析为可执行动作、维护工作记忆与长期记忆、调度工具、监控执行并在异常时触发修复。

Harness 工程的重要性体现在三个方面。其一,智能体的实际能力上限往往不取决于模型参数,而取决于 Harness 能否稳定地把模型意图转化为可验证的动作。其二,在企业级长程任务(如自动化软件研发、数据处理流水线)中,单次工具调用失败即可导致整个任务链中断,Harness 的容错能力直接决定可用性。其三,Harness 是模型可替换性的关键:解耦良好的 Harness 允许在不同 LLM 之间切换,而无需重写业务逻辑。

现有做法存在具体局限。第一类做法以 ReAct [TODO: 引用待核实] 为代表,将推理(Reasoning)与行动(Acting)交织在同一文本流中,规划与执行强耦合,导致难以对执行失败进行细粒度重试或替换底层工具。第二类做法以开源 Agent 框架(如 LangChain、AutoGPT)[TODO: 引用待核实] 为代表,提供了工具编排与记忆抽象,但工具调用与异常处理散落在业务代码中,缺乏统一的失败检测与自修复闭环,失败后往往依赖人工介入或简单重试。第三类做法以 Reflexion [TODO: 引用待核实] 等自我反思方法为代表,引入了「执行---反思---重试」的语义闭环,但其反思作用于任务语义层面,未下沉到工具调用契约层面,对参数错误、接口变更、超时等工程性失败修复能力有限。

本文核心思路是:将 LLM 智能体的 Harness 显式分层为规划(Planning)、执行(Execution)、记忆(Memory)、反思(Reflection)四个松耦合模块,并在执行层为每个工具调用引入可机器校验的调用契约(包括参数模式、前置条件、后置不变量与超时),当执行违反契约时由反思层生成结构化修复策略并交回执行层重试,从而形成工程级的自修复闭环。该设计使规划逻辑与执行容错解耦,记忆读写具备事务性,且不同 LLM 可作为可插拔推理后端。

本文的贡献如下:

  • 提出一种面向 LLM 智能体的分层 Harness 框架 HARS,显式解耦规划、执行、记忆与反思四个模块,并给出形式化定义与模块接口。
  • 设计基于调用契约的工具调用自修复闭环,将失败检测与修复策略生成下沉到工程契约层面,区别于任务语义层的反思。
  • 给出框架各模块的复杂度分析与可复用接口规范,使其可作为不同模型与任务的通用运行时。
  • 构建 实验设计以验证框架在工具调用成功率与长程任务完成率上的有效性,所有数值结果以 [TODO: 实验数据待填] 占位,不伪造数据。

本文余下部分组织如下:第 2 节回顾相关工作;第 3 节给出问题形式化与 HARS 框架;第 4 节给出实验设计;第 5 节讨论适用边界与伦理影响;第 6 节总结与未来工作。

推理-行动耦合方法 。ReAct [TODO: 引用待核实] 将思维链(Chain-of-Thought)与工具调用交织在同一生成序列中,使模型边推理边行动。Toolformer [TODO: 引用待核实] 进一步通过自监督方式教会模型在生成中插入工具调用标记。这类方法将规划与执行耦合在模型输出层,难以对单步执行失败进行隔离重试,也未提供工程级契约校验。本文将规划与执行显式分层,使执行失败可在不重放整个推理链的前提下修复。

记忆与规划方法 。为缓解上下文窗口限制,MemGPT [TODO: 引用待核实] 引入分层记忆与操作系统式的分页管理;Plan-and-Solve [TODO: 引用待核实] 提示模型先分解任务再逐步执行。这些工作聚焦记忆容量与规划质量,但对记忆写的一致性(如并发任务下的脏读)缺乏保障。本文在记忆层引入读写事务与版本号,支持长程任务下的可重放状态。

自我反思与修复方法 。Reflexion [TODO: 引用待核实] 让智能体在任务失败后生成自然语言反思并存入记忆以指导下轮尝试;Self-Debug [TODO: 引用待核实] 在代码生成场景通过让模型执行并解释自身输出来修复缺陷。这类反思作用于任务语义层面,对工具调用的参数级错误与接口契约违例覆盖不足。本文将反思下沉到调用契约层面,可针对具体违例类型生成定向修复策略。

Agent 框架与脚手架 。LangChain [TODO: 引用待核实]、LlamaIndex [TODO: 引用待核实]、AutoGPT [TODO: 引用待核实]、MetaGPT [TODO: 引用待核实] 等开源框架提供了工具编排、记忆抽象与多智能体协作的工程实现,是 Harness 工程的实践先驱。但它们多将异常处理留作业务代码,缺乏统一的契约与自修复闭环抽象。本文将其经验提炼为可形式化的分层契约框架,并提供可插拔的模型与工具接口。

说明:上述引用均为广为人知的公开工作,但本文写作时联网检索不可用,无法核实确切的作者列表、发表年份与 arXiv 编号,故统一标注 [TODO: 引用待核实],待补充准确文献信息后替换。

3 Method

3.1 Problem Formulation

记 LLM 为函数 MM M,其将对话历史 HH H 映射为输出文本 y=M(H)y = M(H) y=M(H)。环境由一组工具 T={T1,...,TK} \mathcal{T} = \{T_1, \dots, T_K\} T={T1,...,TK} 构成,每个工具 Tk T_k Tk 是一个映射 Tk:Xk→Yk T_k: \mathcal{X}_k \to \mathcal{Y}_k Tk:Xk→Yk,其中 Xk \mathcal{X}_k Xk 为输入参数空间。状态空间 S\mathcal{S} S 包含工作记忆与长期记忆中的全部可持久化数据。一个任务 τ\tau τ 由初始状态 s0∈S s_0 \in \mathcal{S} s0∈S 与终止判定函数 Done:S→{0,1}\text{Done}: \mathcal{S} \to \{0,1\} Done:S→{0,1} 定义。

智能体运行时(即 Harness)是一个控制器 π\pi π,在每一步 tt t 依据当前状态 st s_t st 与历史 Ht H_t Ht 决定一个动作 at a_t at:

at=π(st,Ht;M,T) a_t = \pi(s_t, H_t; M, \mathcal{T}) at=π(st,Ht;M,T)

动作 at a_t at 取值为以下之一:(i) 调用某工具 Tk T_k Tk 及参数 x∈Xk x \in \mathcal{X}k x∈Xk;(ii) 更新记忆(写入或更新某状态字段);(iii) 输出最终答案并终止。执行动作后状态转移为 st+1 =δ(st,at) s{t+1} = \delta(s_t, a_t) st+1=δ(st,at),其中 δ\delta δ 为环境转移函数。目标是在有限步内达到 Done(sT)=1 \text{Done}(s_T)=1 Done(sT)=1 且答案正确。

符号表如下:

符号 含义
MM M 大语言模型(推理后端)
T\mathcal{T} T 工具集合
Tk T_k Tk 第 kk k 个工具
Xk,Yk \mathcal{X}_k, \mathcal{Y}_k Xk,Yk 工具 Tk T_k Tk 的输入/输出空间
S\mathcal{S} S 状态空间(工作记忆 + 长期记忆)
Ht H_t Ht 第 tt t 步的对话历史
at a_t at 第 tt t 步动作
π\pi π Harness 控制器
δ\delta δ 环境转移函数
Ck C_k Ck 工具 Tk T_k Tk 的调用契约
ρ\rho ρ 反思/修复策略生成器

3.2 Framework Overview

HARS 框架由四个松耦合模块构成,其交互关系如下:

markdown 复制代码
            ┌─────────────────────────────────────────────┐
            │                  Planner 规划层             │
            │  输入: 任务 τ + 状态 s + 历史 H             │
            │  输出: 子目标序列 g₁..gₙ (带前置/后置条件)  │
            └────────────────────┬────────────────────────┘
                                 │ 子目标流
                                 ▼
            ┌─────────────────────────────────────────────┐
            │                Executor 执行层             │
            │  解析子目标 → 选择工具 → 生成参数 → 调用    │
            │  调用前校验契约 C_k (前置条件 + 参数模式)   │
            │  调用后校验后置不变量                        │
            └──────┬───────────────────────────┬──────────┘
       读/写  │                               │ 契约违例
              ▼                               ▼
   ┌──────────────────────┐        ┌──────────────────────────┐
   │  Memory 记忆层        │        │ Reflector 反思层         │
   │  工作记忆 / 长期记忆  │        │  依据违例类型生成修复    │
   │  读写事务 + 版本号    │        │  策略 r (改参数/换工具/  │
   │  可重放状态日志       │        │  降级/请求人类介入)     │
   └──────────────────────┘        └────────────┬─────────────┘
                                                 │ 修复策略回注
                                                 ▼
                                         (回流至 Executor 重试)

整体运行遵循「规划---执行---契约校验---(违例则)反思---修复---重试」的闭环。模型 MM M 在规划层与反思层被调用,但执行层对模型的依赖通过统一接口隔离,因而可替换不同 LLM 后端。记忆层为执行层与反思层提供共享状态,且每次读写均记录版本号以支持回滚与可重放。

3.3 Module Details

3.3.1 Planner 规划层

规划层接收任务 τ\tau τ、当前状态 st s_t st 与历史 Ht H_t Ht,调用模型 MM M 生成有序子目标序列 Gt=(g1,...,gn) G_t = (g_1, \dots, g_n) Gt=(g1,...,gn)。每个子目标 gi g_i gi 附带前置条件 pre(gi) \text{pre}(g_i) pre(gi) 与后置不变量 post(gi) \text{post}(g_i) post(gi),二者均以可机器校验的谓词表达:

gi=(intenti, prei, posti) g_i = (\text{intent}_i,\ \text{pre}_i,\ \text{post}_i) gi=(intenti, prei, posti)

规划层采用两阶段提示:先让 MM M 输出结构化子目标(JSON),再用确定性校验器检查前置条件是否在 st s_t st 下可满足;不满足则要求 MM M 重新规划,最多重试 Rp R_p Rp 次。这种「模型生成 + 确定性校验」混合策略兼顾灵活性与可验证性。

3.3.2 Executor 执行层

执行层将子目标 gi g_i gi 转化为具体工具调用。其流程为:(1) 子目标到工具的映射 gi↦Tk g_i \mapsto T_k gi↦Tk;(2) 参数生成 x=M(prompt(gi,st,Ht))x = M(\text{prompt}(g_i, s_t, H_t)) x=M(prompt(gi,st,Ht));(3) 契约前置校验;(4) 工具调用 y=Tk(x) y = T_k(x) y=Tk(x);(5) 契约后置校验。

每个工具 Tk T_k Tk 关联一份调用契约 Ck C_k Ck,包含四要素:

契约要素 作用 示例
参数模式 (Schema) 类型与必填校验 query: str, top_k: int≥1
前置条件 (Pre) 调用前状态约束 网络可达 / 文件已挂载
后置不变量 (Post) 调用后结果约束 返回 JSON 含 status 字段
超时 (Timeout) 执行时间上限 30s

契约以机器可校验的谓词表达,使前置/后置校验可由确定性代码完成,不依赖模型判断。这一设计是本文自修复闭环可工程化的基础。

3.3.3 Memory 记忆层

记忆层分为工作记忆(当前任务上下文)与长期记忆(跨任务持久化数据)。工作记忆即对话历史 Ht H_t Ht 与中间结果;长期记忆以键值存储组织,支持向量检索。

为保障长程任务下的一致性,记忆层提供读写事务:每次写入附带版本号 vv v,读取返回 (s,v)(s, v) (s,v)。当执行层在反思后需回滚时,可基于版本号恢复先前状态:

rollback(v′):s←sv′,∀v>v′ 标记为已废弃\text{rollback}(v') : \quad s \leftarrow s_{v'}, \quad \forall v > v' \text{ 标记为已废弃} rollback(v′):s←sv′,∀v>v′ 标记为已废弃

此外,记忆层维护可重放状态日志 L=(a1,s1),...,(at,st) L = (a_1, s_1), \\dots, (a_t, s_t) L=(a1,s1),...,(at,st),支持事后审计与失败复现。

3.3.4 Reflector 反思层与自修复闭环

当执行层检测到契约违例(前置不满足、后置失败、超时或异常),其将违例信息 e=(Tk,x,violation_type,evidence) e = (T_k, x, \text{violation\_type}, \text{evidence}) e=(Tk,x,violation_type,evidence) 交予反思层。反思层依据违例类型从修复策略集 R\mathcal{R} R 中选择并实例化一条策略 ρ∈R\rho \in \mathcal{R} ρ∈R:

ρ=Reflector(e,st,Ht;M)\rho = \text{Reflector}(e, s_t, H_t; M) ρ=Reflector(e,st,Ht;M)

策略集 R\mathcal{R} R 包括但不限于:参数修正(依据错误信息重新生成参数)、工具替换(选择功能等价的备选工具)、子目标降级(返回规划层重新规划)、部分回滚(恢复记忆至先前版本后重试)、请求人类介入(当修复置信度低于阈值 θ\theta θ)。修复策略经执行层重试,形成闭环:

scss 复制代码
Executor ──违例 e──▶ Reflector ──策略 ρ──▶ Executor(重试) ──成功──▶ Memory(提交)
                                       │
                                       └──多次失败──▶ 请求人类介入 / 终止

为避免无限循环,每个子目标的修复重试上限为 Re R_e Re;累计失败次数超过 Rmax⁡ R_{\max} Rmax 时触发降级或终止。修复置信度由模型 MM M 给出,低于阈值 θ\theta θ 时不上调为自动执行,而转为请求人类确认,以避免错误传播。

3.4 Training / Inference

HARS 为推理时(inference-time)框架,不修改模型权重。其「训练」指对规划提示模板、契约谓词库与修复策略集的离线工程化配置。推断流程如下:

  1. 接收任务 τ\tau τ 与初始状态 s0 s_0 s0;
  2. 规划层生成子目标序列 GG G;
  3. 对每个子目标 gi g_i gi:
    • 执行层解析、生成参数、契约前置校验;
    • 若前置校验通过,调用工具,执行后置校验;
    • 若发生违例,反思层生成修复策略并重试(上限 Re R_e Re);
    • 成功后记忆层提交事务并更新版本号;
  4. 终止判定 Done(st) \text{Done}(s_t) Done(st) 为真时输出答案,否则回流规划层。

模型 MM M 在规划层(生成子目标)与反思层(生成参数与修复策略)被调用,通过统一接口 LLMCall(prompt)→output\text{LLMCall}(\text{prompt}) \to \text{output} LLMCall(prompt)→output 隔离,使后端可替换。

3.5 Complexity or Theoretical Properties

记任务最大步数为 TT T,子目标数为 nn n,每个子目标平均修复重试次数为 rˉ≤Re \bar{r} \leq R_e rˉ≤Re,单次工具调用与契约校验时间为 O(c)O(c) O(c),模型单次调用时间为 O(m)O(m) O(m)。单任务推断时间复杂度为:

O(T⋅(m+rˉ⋅(m+c)))O\big(T \cdot (m + \bar{r} \cdot (m + c))\big) O(T⋅(m+rˉ⋅(m+c)))

由于 rˉ \bar{r} rˉ 与 cc c 通常远小于模型调用成本,框架额外开销主要由契约校验与反思重试引入,且校验为确定性代码、成本可忽略,故整体仍以模型调用次数为主导。

可终止性 :因每个子目标重试上限为 Re R_e Re、累计失败上限为 Rmax⁡ R_{\max} Rmax、总步数上限为 TT T,框架在有限步内必然终止或转交人类介入。

可复现性:记忆层的事务版本号与可重放状态日志保证,给定相同模型输出序列,状态转移可被精确重放,便于失败复现与审计。

模型可替换性 :因 MM M 仅通过 LLMCall\text{LLMCall} LLMCall 接口出现于规划层与反思层,且执行层逻辑为确定性,更换后端模型不改变 Harness 控制流。

4 Experiments

4.1 Experimental Setup

数据集与基准 。拟在两类基准上评估:(1) 工具调用基准,评估单步调用的成功率与失败恢复能力;(2) 长程任务基准,评估多步任务的整体完成率与状态一致性。具体基准名称与统计量 [TODO: 数据集与统计量待核实]。

基线 。拟对比三类基线:(a) 无反思的 ReAct 式耦合执行;(b) 带语义层反思的 Reflexion 式方法;(c) 主流开源 Agent 框架(LangChain / AutoGPT 类)默认配置。各基线配置细节 [TODO: 基线实现细节待补充]。

指标。工具调用成功率(Success Rate, SR)、失败后恢复成功率(Recovery Rate, RR)、长程任务完成率(Task Completion Rate, TCR)、平均步数(Avg Steps)、平均修复重试次数(Avg Retries)、状态一致性(Consistency,以可重放日志校验通过率计)。

实现细节 。模型后端拟采用主流开源与商用 LLM 各一作为可替换推理后端,具体型号与版本 [TODO: 模型版本待补充]。契约谓词库以 Python 实现,工具调用经统一适配层封装。超参数:规划重试上限 Rp=3 R_p = 3 Rp=3、单子目标修复重试上限 Re=5 R_e = 5 Re=5、累计失败上限 Rmax⁡=10 R_{\max} = 10 Rmax=10、修复置信度阈值 θ=0.6\theta = 0.6 θ=0.6(取值 [TODO: 超参取值依据待核实])。

4.2 Main Results

主结果拟汇报如下表格,数值在实验执行前以占位标注,不伪造:

表 1:工具调用基准上的主结果。

方法 SR ↑ RR ↑ Avg Retries ↓ Avg Steps ↓
ReAct 式耦合执行 [TODO] [TODO] [TODO] [TODO]
Reflexion 式语义反思 [TODO] [TODO] [TODO] [TODO]
开源框架默认配置 [TODO] [TODO] [TODO] [TODO]
HARS(本文) [TODO] [TODO] [TODO] [TODO]

表 2:长程任务基准上的主结果。

方法 TCR ↑ Consistency ↑ Avg Steps ↓
ReAct 式耦合执行 [TODO] [TODO] [TODO]
Reflexion 式语义反思 [TODO] [TODO] [TODO]
开源框架默认配置 [TODO] [TODO] [TODO]
HARS(本文) [TODO] [TODO] [TODO]

预期观察到:契约校验可在调用前拦截部分参数级错误,故 SR 与 RR 提升;事务化记忆在长程任务下提升 Consistency。具体幅度 [TODO: 实验数据待填],不预先宣称显著性。

4.3 Ablation Study

拟进行如下消融以验证各模块贡献:

变体 移除/改动 验证目标
HARS w/o Contract 移除调用契约与前后置校验 契约对 SR/RR 的贡献
HARS w/o Reflector 移除自修复闭环,失败即终止 自修复闭环对 RR/TCR 的贡献
HARS w/o Txn 记忆层无事务与版本号 事务对 Consistency 的贡献
HARS w/o Layering 规划与执行合并为单一生成流 分层对 Avg Steps/可复用性的影响

各变体数值 [TODO: 实验数据待填]。

4.4 Analysis

定性分析 。预期契约前置校验可拦截「参数类型错误」「必填缺失」「前置状态不满足」三类常见失败;反思层对「接口超时」「返回结构不符」可分别走工具替换与降级策略。给出若干失败---修复案例的可视化轨迹 [TODO: 案例待补充]。

效率分析 。契约校验为确定性代码,单次成本远低于模型调用,故框架额外开销集中于反思重试。预期在 rˉ \bar{r} rˉ 较低时总开销可接受;当工具本身失败率高时,重试成本上升,需结合工具质量评估。

失败案例。预期框架在以下情形仍可能失败:(i) 工具语义错误但契约通过(契约无法捕捉语义正确性);(ii) 修复策略置信度持续低于阈值导致反复请求人类介入;(iii) 模型本身无法生成合法子目标结构。对应缓解思路在第 5 节讨论。

4.5 Limitations

本文框架存在明确局限。其一,调用契约只能校验可形式化的工程约束,无法保证工具语义正确性,语义层仍需模型与人类把关。其二,自修复闭环的效果受工具自身失败率与模型修复策略质量制约,当工具普遍不可靠时框架收益有限。其三,契约谓词库与修复策略集需针对工具集离线配置,存在工程化成本。其四,本文实验设计尚未执行,所有结论性数值待实证填充。

5 Discussion

成因解释。Harness 分层之所以带来收益,在于它将「模型生成的意图」与「意图的可靠落地」分离:模型擅长生成规划与参数,但不擅长保证类型安全、状态一致与异常恢复,后者由确定性代码与契约承担,从而把概率性错误控制在可校验边界内。自修复闭环之所以有效,前提是失败可被契约检测、修复策略可被结构化枚举;当失败超出可形式化范围时,框架退化为普通重试。

适用边界 。HARS 适用于工具接口可形式化、失败模式可枚举的场景,如代码执行、数据库查询、文件操作、API 调用等工程性任务。对依赖开放世界常识或审美判断的任务(如创意写作、伦理裁决),契约难以前置定义,框架收益有限。对实时性要求极高、不允许反思重试开销的场景,需调小 Re R_e Re 或改用直连执行。

伦理影响 。自主执行工具的智能体可能产生非预期副作用(如删除文件、外发数据)。契约的前置/后置校验为副作用边界提供了可审计的约束点,建议在涉及不可逆操作(写入、删除、网络外发)的契约中强制设置「需人类确认」标记。此外,自修复闭环在持续失败时可能放大错误操作,故累计失败上限 Rmax⁡ R_{\max} Rmax 与人类介入阈值 θ\theta θ 应作为安全参数审慎设定。

6 Conclusion

本文提出了面向大语言模型智能体的分层 Harness 框架 HARS,将智能体运行时显式解耦为规划、执行、记忆与反思四个模块,并在执行层引入基于调用契约的工具调用自修复闭环。框架给出了形式化定义、模块接口与复杂度分析,并具备可终止性、可复现性与模型可替换性。本文仅提供框架设计与实验设计,所有结论性数值以 [TODO: 实验数据待填] 占位,未伪造任何实验结果。

未来工作包括:(1) 执行既定实验设计,填充各表格数值并报告显著性;(2) 将契约谓词库扩展至更多工具类别并评估工程化成本;(3) 探索从历史修复日志中学习修复策略以降低对模型即时生成的依赖;(4) 将单智能体 Harness 扩展为多智能体协作 Harness,研究跨智能体的记忆一致性与任务分发。

References

以下文献为广为人知的公开工作,但本文写作时联网检索不可用,无法核实确切作者、年份与编号,统一标注待核实,待补充准确信息后替换:

  • [TODO: 引用待核实] ReAct: Reasoning and Acting with Language Models.(推理-行动耦合方法)
  • [TODO: 引用待核实] Toolformer: Language Models Can Teach Themselves to Use Tools.(自监督工具调用学习)
  • [TODO: 引用待核实] Reflexion: Language Agents with Verbal Reinforcement Learning.(语义层自我反思)
  • [TODO: 引用待核实] Self-Debug: Teaching Large Language Models to Debug.(代码自调试)
  • [TODO: 引用待核实] MemGPT: Towards LLMs as Operating Systems.(分层记忆管理)
  • [TODO: 引用待核实] Plan-and-Solve Prompting.(分解-执行规划)
  • [TODO: 引用待核实] LangChain / LangGraph(Agent 框架工程实现).
  • [TODO: 引用待核实] AutoGPT(自主智能体开源实现).
  • [TODO: 引用待核实] MetaGPT(多智能体协作框架).
  • [TODO: 引用待核实] LlamaIndex(数据连接与检索框架).

不得生成假引用:上述条目仅给出工作名称与用途,未编造作者列表、年份、DOI 或 arXiv 编号,待可核实来源后补全。

Appendix

A. 契约谓词表示例

json 复制代码
{
  "tool": "web_search",
  "schema": {
    "type": "object",
    "required": ["query"],
    "properties": {
      "query": {"type": "string", "minLength": 1},
      "top_k": {"type": "integer", "minimum": 1, "default": 5}
    }
  },
  "pre": ["network.reachable"],
  "post": ["result.has_field('items')"],
  "timeout_ms": 30000,
  "irreversible": false
}

B. 修复策略选择规则(示意)

违例类型 首选策略 兜底策略
参数模式不符 参数修正 子目标降级
前置条件不满足 等待/资源准备 子目标降级
后置不变量失败 工具替换 部分回滚重试
超时 工具替换 降级
置信度 < θ --- 请求人类介入

以上规则为示意,具体阈值与映射 [TODO: 规则参数待核实]。

相关推荐
众链网络1 小时前
从一次近 5 小时的大模型中断,讲清 AI 应用的降级设计
人工智能·架构
Thneonl1 小时前
一次 rebalance,全组停摆:Kafka lag 从 0 到百万的事故复盘
后端·架构
anew___2 小时前
《从零手写操作系统 (48):网络协议栈基础——Socket API与TCP/IP分层架构》
网络协议·tcp/ip·架构
weixin_382395232 小时前
0-500 人工厂的生产 PMC 系统怎么做?基于 Tauri + SQLite 的性能架构实践与 5000 物料压测实录
数据库·架构·sqlite
软件工程师文艺3 小时前
制造业数字化转型路线图:从信息化总体规划到智能工厂的五阶段演进
架构
各类产品分享13 小时前
工业现场 AR 巡检系统的技术架构与落地难点解析
架构·ar·ar巡检
GOWIN革文品牌咨询3 小时前
长周期B2B线索培育的系统设计:状态字段、触发器与转交条件
大数据·架构
各类产品分享5 小时前
工业 AR 巡检系统的技术架构与落地实现
架构·ar·ar巡检
Dawson Zhu6 小时前
大模型拒答率与错误率平衡术:五步构建可落地的安全与体验最优解
人工智能·语言模型·架构·aigc·agi