2025-12-26
DL论文
00

推理模型与测试时计算 (Test-Time Compute) 核心论文:

"Scaling LLM Test-Time Compute Optimally can be More Effective than Scaling Model Parameters" (2024年8月)

最重要的突破之一,OpenAI o1/o3系列的理论基础

核心观点:在推理时投入更多计算资源(test-time compute)可能比单纯增大模型参数更有效

引入了"System 2思考"概念,让模型在输出前进行深度推理

延伸阅读:

"Competitive Programming with Large Reasoning Models" (OpenAI, 2025年2月)

o3模型在IOI 2024竞赛中的表现,展示了推理模型的实际能力

o3无需人工设计的推理策略就能达到金牌水平

2025-12-25
深度学习
00

现代模型通常组合使用:

展开代码
阶段1: Warm-up SFT ├─ 用高质量CoT数据做监督学习 ├─ 让模型学会基本的推理格式 └─ 建立初步的"逻辑先验" 阶段2: 强化学习 ├─ 基于SFT模型继续探索 ├─ 发现新的推理路径 ├─ 优化推理效率和准确性 └─ 可能超越初始训练数据 阶段3: (可选) Rejection Sampling ├─ 用RL模型生成大量推理 ├─ 筛选出答案正确的 └─ 再做一轮SFT巩固
2025-12-24
Linux运维
00

在 Ubuntu 22.04 中定时重启可以通过以下方法实现:

方法一:使用 systemd 定时器(推荐)

  1. 创建 systemd 服务文件

    bash
    展开代码
    sudo nano /etc/systemd/system/reboot.service
  2. 在文件中添加以下内容

    ini
    展开代码
    [Unit] Description=System Reboot [Service] Type=oneshot ExecStart=/sbin/reboot [Install] WantedBy=multi-user.target
2025-12-24
深度学习
00

1. GAE (Generalized Advantage Estimation) 基础

为什么需要优势函数?

在强化学习中,我们想知道:在状态sts_t采取动作ata_t,比平均水平好多少?

A(st,at)=Q(st,at)V(st)A(s_t, a_t) = Q(s_t, a_t) - V(s_t)

  • Q(st,at)Q(s_t, a_t): 采取动作ata_t后的期望回报
  • V(st)V(s_t): 状态sts_t的平均期望回报
  • A>0A > 0: 这个动作比平均好,应该鼓励
  • A<0A < 0: 这个动作比平均差,应该抑制
2025-12-24
深度学习
00

Proximal Policy Optimization (PPO):

JPPO(θ)=E(q,a)D,otπθold(q)[min(πθ(otq,o<t)πθold(otq,o<t)A^t,clip(πθ(otq,o<t)πθold(otq,o<t),1εlow,1+εhigh)A^t)]\mathcal{J}_{\text{PPO}}(\theta) = \mathbb{E}_{(q,a)\sim\mathcal{D}, o_{\leq t}\sim\pi_{\theta_{\text{old}}}(\cdot|q)} \left[ \min \left( \frac{\pi_\theta(o_t \mid q, o_{<t})}{\pi_{\theta_{\text{old}}}(o_t \mid q, o_{<t})} \hat{A}_t, \text{clip}\left(\frac{\pi_\theta(o_t \mid q, o_{<t})}{\pi_{\theta_{\text{old}}}(o_t \mid q, o_{<t})}, 1-\varepsilon_{\text{low}}, 1+\varepsilon_{\text{high}}\right) \hat{A}_t \right) \right]
  • θ\theta: 当前策略模型的参数(正在训练的新模型)
  • θold\theta_{\text{old}}: 旧策略模型的参数(用于采样数据的模型)
  • πθ(otq,o<t)\pi_\theta(o_t \mid q, o_{<t}): 当前策略在给定任务 qq 和历史观察 o<to_{<t} 下,输出动作 oto_t 的概率
  • πθold(otq,o<t)\pi_{\theta_{\text{old}}}(o_t \mid q, o_{<t}): 旧策略输出同样动作的概率
  • A^t\hat{A}_t: 优势函数估计值(Advantage),表示该动作比平均水平好多少
  • εlow,εhigh\varepsilon_{\text{low}}, \varepsilon_{\text{high}}: 裁剪参数的下界和上界

模型和价值模型在PPO训练中的区别和作用时机:

核心区别

奖励模型 (Reward Model)

  • 作用: 评估单个动作或整个轨迹的好坏
  • 输出: 标量奖励信号 r_t
  • 来源: 环境反馈或外部评判器
2025-12-23
深度学习
00

GSPO

版本依赖:ms-swift >= 3.11

Megatron GSPO 当前已支持以下功能:

  • 训练模式:全参数训练与 LoRA 微调
  • 并行策略:支持上下文并行(CP)、流水线并行(PP)、张量并行(TP)和专家并行(EP)
  • 推理加速:支持 vLLM 的 colocate 模式和 server 模式
  • 模型支持:兼容 Megatron Swift 中的 LLM 及 MLLM(多模态大模型)
  • 算法支持:涵盖 swift GRPO 的大部分功能(GSPO 基于 GRPO 算法)
2025-12-22
深度学习
00
bash
展开代码
export LD_LIBRARY_PATH=/usr/local/nvidia/
2025-12-22
深度学习
00

https://github.com/vllm-project/vllm/blob/v0.11.0/pyproject.toml

在pyproject.toml中查看pytorch版本:

bash
展开代码
requires = [ "cmake>=3.26.1", "ninja", "packaging>=24.2", "setuptools>=77.0.3,<80.0.0", "setuptools-scm>=8.0", "torch == 2.8.0", "wheel", "jinja2", ]

安装uv:

bash
展开代码
curl -LsSf https://astral.sh/uv/install.sh | sh source $HOME/.local/bin/env

查看cuda版本:

bash
展开代码
nvcc --version

安装vllm:

bash
展开代码
uv pip install vllm==0.11.0 --torch-backend=cu129 --system --break-system-packages

torch如果掉了就再装:

bash
展开代码
# CUDA 12.9 uv pip install torch==2.8.0 torchvision==0.23.0 torchaudio==2.8.0 --index-url https://download.pytorch.org/whl/cu129 --system
2025-12-22
深度学习
00

https://github.com/NVIDIA/apex

为了可以离线安装,现编译出whl文件:

bash
展开代码
#!/bin/bash # 构建 apex whl 文件的脚本 # 创建输出目录 mkdir -p /workspace/wheels # 配置 pip 源(避免代理问题,使用国内镜像) export PIP_INDEX=${PIP_INDEX:-https://mirrors.aliyun.com/pypi/simple/} export PIP_TRUSTED_HOST=${PIP_TRUSTED_HOST:-mirrors.aliyun.com} # 先安装构建依赖(避免构建时下载失败) pip install --no-cache-dir -i ${PIP_INDEX} --trusted-host ${PIP_TRUSTED_HOST} \ packaging wheel setuptools pyproject-metadata # 克隆 apex 仓库 git clone https://github.com/NVIDIA/apex.git /workspace/apex # 进入 apex 目录 cd /workspace/apex # 设置环境变量(与 Dockerfile 中保持一致) export TORCH_CUDA_ARCH_LIST="7.0;7.5;8.0;8.6;8.9;9.0" export CUDA_HOME=/usr/local/cuda export MAX_JOBS=${MAX_JOBS:-16} # 使用 pip wheel 构建 whl 文件(不安装) # -w 指定输出目录 # --no-build-isolation: 使用已安装的构建依赖,不创建隔离环境 # --no-deps: 不安装运行时依赖(只构建 wheel) NVCC_APPEND_FLAGS="--threads 4" APEX_PARALLEL_BUILD=8 APEX_CPP_EXT=1 APEX_CUDA_EXT=1 \ pip wheel -v --no-build-isolation --no-deps -i ${PIP_INDEX} --trusted-host ${PIP_TRUSTED_HOST} \ -w /workspace/wheels . echo "apex whl 文件已构建完成,保存在 /workspace/wheels 目录" ls -lh /workspace/wheels/*.whl

重新安装:

bash
展开代码
pip uninstall -y apex || true && APEX_CPP_EXT=1 APEX_CUDA_EXT=1 pip install -v --no-build-isolation /workspace/apex-0.1-cp312-cp312-linux_x86_64.whl
2025-12-21
深度学习
00