20260601
This commit is contained in:
42
concepts/code-as-harness.md
Normal file
42
concepts/code-as-harness.md
Normal file
@@ -0,0 +1,42 @@
|
||||
---
|
||||
title: "Code as Harness"
|
||||
created: 2026-05-29
|
||||
updated: 2026-05-29
|
||||
type: concept
|
||||
tags: ["agent", "code-synthesis", "LLM", "framework"]
|
||||
sources: ["https://arxiv.org/abs/2603.03329"]
|
||||
---
|
||||
|
||||
# Code as Harness
|
||||
|
||||
**Code as Harness** 是 [[autoharness|AutoHarness]] 的核心框架哲学:LLM Agent 不应只是一段 prompt + 一个模型,而应该是一个 **LLM + 自动生成的代码 harness** 的组合体——其中 harness 由 LLM 自己编写。
|
||||
|
||||
## 哲学
|
||||
|
||||
> 不是让 LLM 变得完美,而是让它可以被代码约束和保护。
|
||||
|
||||
传统 Agent 定义 = LLM + hand-coded "plumbing"。Code as Harness 将其升级为 = LLM + auto-generated "plumbing"。
|
||||
|
||||
## 为什么是代码?
|
||||
|
||||
- **可验证**:代码的正确性可以被环境客观检验(对比:LLM 推理无法被确定性验证)
|
||||
- **可迭代**:代码可以基于 feedback 逐步改进(对比:fine-tuning 昂贵且不可逆)
|
||||
- **可组合**:不同游戏的 harness 可以组合成库
|
||||
|
||||
## Harness 的三种抽象层级
|
||||
|
||||
从约束最强到最灵活:
|
||||
|
||||
1. **Harness-as-Action-Verifier**:固定 rejection sampling loop,只学习 `is_legal_action()` 函数
|
||||
2. **Harness-as-Action-Filter**:代码生成合法动作集,LLM 负责排序
|
||||
3. **[[harness-as-policy|Harness-as-Policy]]**:代码直接决策,完全消除 LLM 推理——这是 code-as-harness 的终极形态
|
||||
|
||||
## 与 Code-as-Policies 的关系
|
||||
|
||||
Code as Policies (Liang et al., 2023) 将机器人控制直接表达为代码生成。Code as Harness 的独特之处在于:**用迭代代码精炼 + 树搜索 + 环境 feedback 生成 hybrid code+LLM harness**,而不要求一次生成完美代码。
|
||||
|
||||
## 相关
|
||||
|
||||
- [[autoharness]] — 完整方法
|
||||
- [[harness-as-policy]] — 终极形态
|
||||
- [[lou-autoharness-2026]] — 原始论文
|
||||
Reference in New Issue
Block a user