--- title: "Iterative Code Refinement (迭代代码精炼)" created: 2026-05-29 updated: 2026-05-29 type: concept tags: ["code-synthesis", "optimization", "LLM", "feedback-loop"] sources: ["https://arxiv.org/abs/2603.03329"] --- # Iterative Code Refinement (迭代代码精炼) **Iterative Code Refinement** 是 [[autoharness|AutoHarness]] 的核心优化循环:LLM 作为 gradient-free code optimizer,基于环境反馈反复改进代码 harness。 ## 循环结构 ``` Old Code → Refiner (LLM) → New Code → Evaluator (Environment) → Critic → Refiner → ... ``` ### Refiner - 接收:当前代码 + 失败案例 + 错误信息 - 输出:改进后的代码 - 角色:**gradient-free optimizer**——不需要梯度,通过语言理解来"调试"代码 ### Critic - 接收:环境 rollout 结果 - 输出:结构化反馈(哪些动作非法、为什么、环境 reward) - 角色:给 Refiner 提供"优化方向" ## 精炼策略 - `is_legal_action()` 返回 True 但动作无效 → 同时精炼 `propose_action()` 和 `is_legal_action()` - `is_legal_action()` 返回 False 且动作无效 → 仅精炼 `propose_action()` ## 与标准 LLM 代码生成的对比 | 特性 | 标准生成 | Iterative Refinement | |------|----------|---------------------| | 尝试次数 | 1 次 | 多轮 | | 反馈 | 无 | 环境反馈 | | 搜索 | 无 | Thompson sampling 引导 | | 成功率 | 依赖 prompt | 可达 100% | ## 相关 - [[autoharness]] — 使用此精炼的方法 - [[thompson-sampling-code-search]] — 选择精炼目标的搜索 - [[lou-autoharness-2026]] — 原始论文