--- title: "Thompson Sampling Code Search" created: 2026-05-29 updated: 2026-05-29 type: concept tags: ["search", "code-synthesis", "thompson-sampling", "optimization"] sources: ["https://arxiv.org/abs/2603.03329"] --- # Thompson Sampling Code Search **Thompson Sampling Code Search** 是 [[autoharness|AutoHarness]] 中用于探索代码 harness 空间的搜索算法:维护多个代码假设的树结构,用 Thompson sampling (Tang et al., 2024) 选择下一个精炼节点。 ## 算法 1. **树结构**:每个节点是一个代码假设(harness 的某个版本) 2. **Heuristic value**:每个节点的平均合法动作率 3. **选择**:Thompson sampling 在探索(尝试不同的代码逻辑)和利用(精炼已有进展的 harness)之间平衡 4. **精炼**:被选中的节点由 Refiner(LLM)基于环境 Critic 的 feedback 生成改进版本 ## 为什么是 Thompson Sampling? - **在线学习**:每一步都需要决策下一个尝试方向 - **不确定性量化**:Thompson sampling 自然处理节点价值估计的不确定性 - **平衡探索-利用**:通过后验采样自动平衡——高不确定性的节点以正概率被选中 ## 在 Harness 合成中的作用 Thompson sampling 决定了在每次迭代中"精炼哪个代码版本"——这直接影响了搜索效率。平均只需 14.5 次迭代即可达到 100% 合法率。 ## 相关 - [[autoharness]] — 使用此搜索的方法 - [[iterative-code-refinement]] — 每步的具体操作 - [[lou-autoharness-2026]] — 原始论文