Sebastian Raschka分析了VibeCoder的后训练秘诀,基于3B模型就取得惊人成绩,训练顺序和RL方法值得参考。
VibeCoder采用Qwen2.5-Coder-3B作为基座,通过一套后训练技术栈大幅提升性能。技术报告显示其包含高信号合成数据、多重推理路径、2阶段SFT(先广训再难长推理样本)、MGPO(MaxEnt-Guided Policy Optimization)强化学习等9个关键组件。训练顺序为Math RL→Code RL→STEM RL,并采用了单64k长上下文RL而非渐进扩展。最后通过奖励短正确轨迹来提升效率而不牺牲准确性。
Crazy model! It actually uses the old Qwen2.5-Code…
Crazy model! It actually uses the old Qwen2.5-Coder-3B stack and got really great performance with their post-training stack. Need to use it in the next days to see if vibes of VibeCoder actually check out in practice. But impressive first impression!
Based on the tech report, some of the important pieces of their post-training stack:
1. High-signal synthetic data (math problems with credible solutions, code with tests)
2. Multiple reasoning paths for each answer
3. Filtering, filtering, filtering
4. 2-stage SFT (start with broad training, then train on hard long-reasoning samples)
5. Use target (pass@k) accuracy over validation loss for checkpoint selection
6. MGPO (MaxEnt-Guided Policy Optimization) for RLVR: basically a GRPO-style RL method with an extra weighting that favors examples that are neither too easy nor too hard for the current policy
7. Single 64k long-context RL (they found that the usual progressive context expansion hurt this model because early truncation damaged long-thinking behavior)
8. Training data order: they do Math RL, then Code RL, then STEM RL in this particular oder which they found helped overall
9. After optimizing for accuracy, they add a stage that rewards shorter correct trajectories; basically making the model more efficient without accuracy degradation