20260514:增加新内容

This commit is contained in:
2026-05-14 13:54:52 +08:00
parent 56c4d3ef7c
commit b116710e4c
294 changed files with 10682 additions and 255 deletions

View File

@@ -0,0 +1,60 @@
---
title: "Replay Buffer 在 LLM RL 中的应用"
created: 2026-05-12
updated: 2026-05-12
type: concept
tags: ["reinforcement-learning", "llm-post-training", "replay-buffer"]
sources: ["arxiv:2503.18929"]
---
# Replay Buffer 在 LLM RL 中的应用
**Replay Buffer** 是 [[tba|TBA]] 框架的核心组件,用于存储和采样 Searcher 节点生成的所有 (query, response, reward) 轨迹,使 Trainer 可以**独立于生成速度**进行训练。
## 架构
```
D_local (per Searcher) D_global (shared)
┌─────────────────┐ ┌─────────────────────┐
│ (x, y1, r1) │ ──sync──▶ │ x1: [(y1, r1, step),│
│ (x, y2, r2) │ │ (y2, r2, step),│
│ ... │ │ ...] │
└─────────────────┘ │ x2: [...] │
└─────────────────────┘
Trainer 采样
(recency + reward)
```
## 设计要点
### 1. 存储内容
每条轨迹存储:`(query x, response y, reward r, trainer_step)` ——其中 `trainer_step` 记录了生成时的训练步数,用于计算 off-policyness 程度。
### 2. 采样策略:[[reward-recency-sampling]]
- **Recency 优先**:采样最近同步步骤添加的数据(近似 on-policy
- **奖励优先**:用 softmax(reward) 或均匀分布采样(鼓励探索)
参数 $m$ 控制 recency 优先的概率。实验表明 $m = 0.5$$0.6$ 效果最佳。
### 3. Buffer 大小
增大 buffer 容量可保留更多 off-policy 数据,在 red-teaming 任务中增加 buffer 大小提升了攻击多样性(牺牲部分毒性)。
## 为什么 LLM RL 需要 Buffer
传统的 PPO/GRPO 训练中生成一批数据后用一次即丢弃——数据利用率极低。Buffer 使得:
- **数据复用**:同一条轨迹可被多次训练(重要性随 staleness 增加而衰减)
- **解耦速度**:搜索和训练可独立节奏(搜索快于训练时 buffer 积累;训练快于搜索时 buffer 供给稳定)
- **探索增强**Buffer 包含历史上多样化的探索数据
## 相关概念
- [[tba|TBA]] — 框架实现
- [[asynchronous-rl-llm]] — 异步 RL 范式
- [[searcher-trainer-decoupling]] — 架构模式
- [[reward-recency-sampling]] — 采样策略
- [[bartoldson-tba-2025|论文页面]]