[ PROMPT_NODE_22878 ]
Post Training Torchforge 故障排查
[ SKILL_DOCUMENTATION ]
# torchforge 故障排除指南
## GPU 资源问题
### 问题:GPU 资源不足
**症状**:“Insufficient GPU resources” 错误
**解决方案**:
1. **减少服务需求**:
yaml
services:
generator:
procs: 1
with_gpus: true
trainer:
procs: 1
with_gpus: true
# 移除 ref_model 或使用 CPU
2. **为参考模型使用 CPU**:
yaml
ref_model:
with_gpus: false # 在 CPU 上运行
3. **在服务间共享资源**:
yaml
services:
generator:
procs: 1
num_replicas: 1
colocate_with: trainer # 与训练器共享 GPU
### 问题:最低 GPU 要求
**参考**:
- SFT: 2+ GPU (训练器 + 生成器)
- GRPO: 3+ GPU (训练器 + 生成器 + 参考模型)
- 大模型: 8+ GPU (使用张量并行)
## 内存问题
### 问题:生成过程中 OOM (显存溢出)
**症状**:vLLM 中出现 CUDA OOM
**解决方案**:
1. **减少批次大小**:
yaml
grpo:
n_samples: 4 # 从 8 减少
2. **减少序列长度**:
yaml
training:
seq_len: 2048 # 从 4096 减少
3. **减少 vLLM 内存占用**:
yaml
generator:
gpu_memory_utilization: 0.7 # 从 0.9 减少
### 问题:训练过程中 OOM
**症状**:反向传播中出现 CUDA OOM
**解决方案**:
1. **启用梯度检查点**:
yaml
training:
gradient_checkpointing: true
2. **增加梯度累积**:
yaml
training:
gradient_accumulation_steps: 8 # 从 4 增加
3. **减少批次大小**:
yaml
training:
batch_size: 2 # 从 4 减少
## 权重同步问题
### 问题:权重同步缓慢
**症状**:训练和生成之间的停顿时间过长
**解决方案**:
1. **启用 RDMA** (如果可用):
bash
export TORCHSTORE_USE_RDMA=1
2. **减少同步频率**:
yaml
training:
sync_interval: 10 # 每 10 步同步一次
3. **使用同置服务**:
yaml
services:
generator:
colocate_with: trainer
### 问题:权重同步失败
**症状**:权重传输错误,权重陈旧
**解决方案**:
1. **检查网络连接**:
bash
ping other_node
2. **增加超时时间**:
yaml
services:
weight_sync_timeout: 600 # 10 分钟
3. **启用同步验证**:
yaml
training:
verify_weight_sync: true
## 训练稳定性问题
### 问题:策略崩溃
**症状**:熵降至零,奖励停止提升
**解决方案**:
1. **增加 KL 惩罚**:
yaml
grpo:
beta: 0.2 # 从 0.1 增加
2. **添加熵