Files
myWiki/concepts/searcher-trainer-decoupling.md

2.7 KiB
Raw Blame History

title, created, updated, type, tags, sources
title created updated type tags sources
Searcher-Trainer 解耦架构 2026-05-12 2026-05-12 concept
distributed-systems
reinforcement-learning
llm-post-training
arxiv:2503.18929

Searcher-Trainer 解耦架构

Searcher-Trainer 解耦tba 的架构基础,将 LLM 后训练中的**探索(数据生成)学习(策略更新)**分配到独立的计算节点上,实现高度并行化。

架构对比

传统 On-Policy串行

单一节点:
  Generate → Reward → Update → Generate → Reward → Update → ...
     ↑                                                       │
     └───────────────────────────────────────────────────────┘
           每次更新后 GPU 闲置等待生成 / 生成等待更新

TBA Searcher-Trainer并行

Searcher 1: Generate ⇢ Reward ⇢ Buffer  ─┐
Searcher 2: Generate ⇢ Reward ⇢ Buffer  ─┤
    ...                                    ├── D_global
Searcher N: Generate ⇢ Reward ⇢ Buffer  ─┘
                                              │
                        每 k 步同步 ─────────┤
                                              │
Trainer:        ← Buffer Sampling ← TB Loss ←┘

同步协议

  • 同步周期 $k$:每 k 步训练后,暂停以交换权重和 buffer 数据
  • 权重传递Trainer → Searcher更新本地推理策略
  • 数据传递Searcher → Trainer$D_{local} \to D_{global}$

节点定义

在 TBA 中,"节点" 是执行完整搜索或训练操作所需的计算资源:

  • 1 节点 = 1 GPU
  • 典型配置16 GPU → 15 Searcher + 1 Trainer
  • 最小配置2 GPU → 1 Searcher + 1 Trainer

效率来源

操作 瓶颈类型 解耦后效果
LLM 推理(生成) Memory-bound Searcher 持续 vLLM 推理
策略更新(训练) Compute-bound Trainer 持续 forward+backward
关键 两者互不等待 GPU 利用率接近 100%

与经典分布式 RL 的关系

TBA 的 Searcher-Trainer 架构类似于 IMPALAEspeholt et al., 2018后者也通过 actor-learner 分离实现高效分布式 RL。关键区别

  • IMPALA 使用 V-trace需要价值函数 $V(s)$
  • TBA 使用 TB 目标(无需 critic

相关概念