万字长文(慎入):一文读懂直接偏好优化(DPO),揭开 RLHF 替代方案的神秘面纱。

详解大模型PPO、DPO的训练过程 AI因你而升温,记得加个星标哦!大家好,我是泰哥。距离上次写技术贴已经1年有余,这一年当中算法技术的发展可以说是日新月异。今天和大家聊聊大模型的训练的三个阶段,分别为有监督学习(SFT)、奖励模型训练(RW)与强化学习(PPO)阶段,我对以上的训练过程会加上一些自己的理解。GPT使用Transformer decoder部分作为语言模型的框架,并将decoder中的Multi-head Attention层删除,其结构和计算过程如上图。 阅读详情

一、概要

虽然大规模无监督语言模型能够学习广泛的世界知识,并拥有一些推理能力,但由于其训练的完全无监督性质,精确控制其行为是相对来说还是很困难的。而要想去实现这种精准控制,可以使用人类反馈强化学习,其简称为RLHF:是通过收集高质量的人工打标签的数据,并使用无监督微调训练来进行偏好一致对齐。然而强化学习是一个复杂且不稳定的训练过程,其过程表现为:首先我们要先拟合一个反映人类偏好的奖励模型,然后使用强化学习对大规模无监督LM进行微调,以最大化这个估计的奖励,同时又不偏离原始模型太远(RLHF原理),具体第二张下图所示,展示了RLHF的训练步骤 或者说是阶段吧。

既然有了PPO,为啥还要有DPO呢?(既生瑜何生亮)可以看下图,答案不着急,后面也会讲解PPO以及其劣势,从而引出DPO的存在。

强化学习(RLHF)

openai在InstructGPT的技术报告指出:ChatGPT使用RLHF的 "三步走"策略,即:监督微调(SFT)、偏好采样和奖励学习(RM)、强化学习(PPO),对应了上图中三个训练阶段,现在我们来对这三个简单讲解下。

监督微调(SFT): 首先在下游感兴趣的任务使用高质量数据(对话、摘要等)和监督学习对预训练的 LM 进行微调,以获得一个模型(sft模型) 。

偏好采样和奖励学习(RM): 使用提示词方法,来生成偏好数据对(注意:第一阶段微调后的sft模型),那什么是偏好数据对呢?可以看这个数据示例。对数据格式感兴趣可以看我这篇:揭秘大模型训练数据的真实面貌:这篇文章值得一看

{
"conversations": [
{
"from": "human", #人类指令
"value": "老虎会吃哪一个,草还是树叶?"
}
],
"chosen": {
"from": "gpt", #优质回答
"value": "我很高兴能帮助你解答问题!不过,我必须指出,这个问题本身可能没有意义。老虎是食肉动物,通常不吃草或树叶。它们的饮食主要包括大型有蹄动物、小型哺乳动物和鸟类。\n\n如果你提出这个问题是出于好奇或有特定原因,我很乐意帮助你找到更多关于老虎饮食习惯的信息,或者建议资源让你更多了解这些壮丽的生物。请告诉我如何进一步协助你!"
},
"rejected": {
"from": "gpt", # 劣质回答
"value": "一只老虎是食肉动物,这意味着它的饮食主要是肉类。老虎主要猎捕和吃其他动物,如鹿和野猪。它们不会选择吃草或树叶,因为这些不是它们自然饮食的一部分。"
}
}

强化学习(PPO):RLHF训练过程主要有四个模型参与,分别是Actor Model 、Reference Model、Reward Model、Critic Model,他们在整个过程的角色如下:

Actor Model(动作模型):需要优化的语言模型,负责生成实际的文本回答,参数会在训练过程中不断更新。

Reference Model(参考模型):Actor Model 的初始副本,参数固定不变,用于计算 KL 散度,防止 Actor 与初始模型偏离太远。

Reward Model(奖励模型):经过人类偏好训练的评分模型,为 Actor 生成的文本提供奖励信号,指导 Actor 向更好的方向优化。

Critic Model(评论模型):估计价值函数,预测动作的长期收益,帮助 PPO 算法更好地优化 Actor。

四个模型之前具体的协作,这里就不做详细介绍,毕竟写的是DPO详解啊。

都知道PPO很好,为啥还要出来DPO呢?这是因为很多工程人员发现PPO很难训练,总结具体如下:

(1)奖励模型RM的准确率较低,在现有的偏好数据上只能训到70%~80%。这一方面是因为人类偏好较难拟合,另一方面是因为奖励模型一般较小,过大的奖励模型会引起PPO阶段训练的崩溃;

(2)PPO训练不稳定,相同的参数和数据也有可能出现不一样的结果;

(3)PPO阶段训练成本大。这是因为策略模型的更新依赖于奖励模型的显式反馈,所以每个训练step耗时长、GPU消耗大。

说白了就是PPO很难训练,并且消耗很大,看看上面的图就知道,四个模型都要参与,这谁顶得住啊?

正因为这些原因,斯坦福大学研究者提出了DPO,从理论上消除了奖励模型RM和与之相关的RL环节,直接采用二元偏好数据对LLMs进行参数更新。

DPO理论理解

之前我们说使用sft模型来生成偏好数据对,然后RM模型来进行评分并给出对应的奖励,让actor model来自适应调整。而DPO就是从理论来消除RM模型的存在,咱们就从Bradley-Terry模型开始(因为论文也是从这个模型开始的,哈哈),BT模型规定了人类偏好分布可以表示为:

看着是不是好像也挺简单的,其实这个式子还可以简化。针对静态数据集D,上面的奖励模型通过对数极大似然估计可以表示为:

数据集:

对数似然估计损失表示:

是的,通用损失函数数学表达式其实已经出来了,但是DPO其实是PPO的一个简化版,所以需要从PPO的损失来简化(DPO其实就是PPO的钙化版、或者说是简化版),直到推导出DPO的损失函数表达式

所以针对用于PPO的损失,上式可以优化为:

针对PPO而言,KL散度很重要,这是为啥?因为KL散度就表示Reference Model(参考模型) 和自己训练的Actor Model 有没有跑偏。大白话就是:这个训练就是让actor model训练,但是我也要拽着你,不然你偏离 reference model太远,如果太远,就训飞了。

因此针对KL散度优化,上面的式子可以进行推导为:

进一步简化:

其中Z(x)表示为:

然后经过一顿数学操作和优化:

得到了最后的loss:

其中 ,πθ 是正在训练的模型 ;πref 是参考模型(通常是 SFT 模型);yw 是首选(获胜)的答案;yl 是被拒绝(输掉)的反应;β 是控制优化强度的温度参数;σ 是 sigmoid函数。

一开始看这些式子是不是挺容易的,但是后面的数学变换和优化操作下来,看懵了,但是不要紧,你就记住最后这个式子就行,因为DPO的损失优化就是通过这个式子来的。

DPO代码片段

损失函数代码:

def preference_loss(policy_chosen_logps: torch.FloatTensor,
policy_rejected_logps: torch.FloatTensor,
reference_chosen_logps: torch.FloatTensor,
reference_rejected_logps: torch.FloatTensor,
beta: float,
label_smoothing: float = 0.0,
ipo: bool = False,
reference_free: bool = False) -> Tuple[torch.FloatTensor, torch.FloatTensor, torch.FloatTensor]:
"""Compute the DPO loss for a batch of policy and reference model log probabilities.
Args:
policy_chosen_logps: Log probabilities of the policy model for the chosen responses. Shape: (batch_size,)
policy_rejected_logps: Log probabilities of the policy model for the rejected responses. Shape: (batch_size,)
reference_chosen_logps: Log probabilities of the reference model for the chosen responses. Shape: (batch_size,)
reference_rejected_logps: Log probabilities of the reference model for the rejected responses. Shape: (batch_size,)
beta: Temperature parameter for the DPO loss, typically something in the range of 0.1 to 0.5. We ignore the reference model as beta -> 0.
label_smoothing: conservativeness for DPO loss, which assumes that preferences are noisy (flipped with probability label_smoothing)
ipo: If True, use the IPO loss instead of the DPO loss.
reference_free: If True, we ignore the _provided_ reference model and implicitly use a reference model that assigns equal probability to all responses.
Returns:
A tuple of three tensors: (losses, chosen_rewards, rejected_rewards).
The losses tensor contains the DPO loss for each example in the batch.
The chosen_rewards and rejected_rewards tensors contain the rewards for the chosen and rejected responses, respectively.
"""
pi_logratios = policy_chosen_logps - policy_rejected_logps
ref_logratios = reference_chosen_logps - reference_rejected_logps
if reference_free:
ref_logratios = 0
logits = pi_logratios - ref_logratios  # also known as h_{\pi_\theta}^{y_w,y_l}
if ipo:
losses = (logits - 1/(2 * beta)) ** 2  # Eq. 17 of https://arxiv.org/pdf/2310.12036v2.pdf
else:
# Eq. 3 https://ericmitchell.ai/cdpo.pdf; label_smoothing=0 gives original DPO (Eq. 7 of https://arxiv.org/pdf/2305.18290.pdf)
losses = -F.logsigmoid(beta * logits) * (1 - label_smoothing) - F.logsigmoid(-beta * logits) * label_smoothing
chosen_rewards = beta * (policy_chosen_logps - reference_chosen_logps).detach()
rejected_rewards = beta * (policy_rejected_logps - reference_rejected_logps).detach()
return losses, chosen_rewards, rejected_rewards

可以看看第26、27、32、35行,这几行都是DPO核心,也完全按照这篇DPO论文来实现的。为了方便整合在一起看就是:

losses = (((policy_chosen_logps - policy_rejected_logps) - (reference_chosen_logps - reference_rejected_logps)) - 1/(2 * beta)) ** 2

DPO训练案例

下列代码使用了TRL库来进行微调训练,方式也比较简单,目的就是打造人人可学大模型,哈哈。

from trl import DPOConfig, DPOTrainer
from transformers import AutoModelForCausalLM, AutoTokenizer
from datasets import load_dataset
# 加载 model and tokenizer
model = AutoModelForCausalLM.from_pretrained("HuggingFaceTB/SmolLM3-3B")
tokenizer = AutoTokenizer.from_pretrained("HuggingFaceTB/SmolLM3-3B")
# 配置 DPO training
training_args = DPOConfig(
beta=0.1,                    # Temperature parameter
learning_rate=5e-7,          # Lower LR for stability
max_prompt_length=512,       # Maximum prompt length
max_length=1024,             # Maximum total length
per_device_train_batch_size=4,
gradient_accumulation_steps=4,
num_train_epochs=1,
)
# 加载数据集
preference_dataset = load_dataset("argilla/ultrafeedback-binarized", split="train_prefs")
# 初始化DPO
trainer = DPOTrainer(
model=model,
args=training_args,
train_dataset=preference_dataset,
processing_class=tokenizer,
)
# 训练
trainer.train()

这一套是完全可以使用的,如果你有自己的数据集,只需要将数据集改成自己的数据集即可。

当然DPO现在也有很多扩展算法,这些算法都是去优化或改进loss目标函数:

如何学习大模型 AI ?

由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。

但是具体到个人,只能说是:

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

在这里插入图片描述

第一阶段(10天):初阶应用

该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。

  • 大模型 AI 能干什么?
  • 大模型是怎样获得「智能」的?
  • 用好 AI 的核心心法
  • 大模型应用业务架构
  • 大模型应用技术架构
  • 代码示例:向 GPT-3.5 灌入新知识
  • 提示工程的意义和核心思想
  • Prompt 典型构成
  • 指令调优方法论
  • 思维链和思维树
  • Prompt 攻击和防范
  • …

第二阶段(30天):高阶应用

该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。

  • 为什么要做 RAG
  • 搭建一个简单的 ChatPDF
  • 检索的基础概念
  • 什么是向量表示(Embeddings)
  • 向量数据库与向量检索
  • 基于向量检索的 RAG
  • 搭建 RAG 系统的扩展知识
  • 混合检索与 RAG-Fusion 简介
  • 向量模型本地部署
  • …

第三阶段(30天):模型训练

恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。

到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?

  • 为什么要做 RAG
  • 什么是模型
  • 什么是模型训练
  • 求解器 & 损失函数简介
  • 小实验2:手写一个简单的神经网络并训练它
  • 什么是训练/预训练/微调/轻量化微调
  • Transformer结构简介
  • 轻量化微调
  • 实验数据集的构建
  • …

第四阶段(20天):商业闭环

对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。

  • 硬件选型
  • 带你了解全球大模型
  • 使用国产大模型服务
  • 搭建 OpenAI 代理
  • 热身:基于阿里云 PAI 部署 Stable Diffusion
  • 在本地计算机运行大模型
  • 大模型的私有化部署
  • 基于 vLLM 部署大模型
  • 案例:如何优雅地在阿里云私有部署开源大模型
  • 部署一套开源 LLM 项目
  • 内容安全
  • 互联网信息服务算法备案
  • …

学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。

如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。

这份完整版的大模型 AI 学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

在这里插入图片描述

【基础知识】DPO(Direct Preference Optimization)的原理以及公式是怎样的? DPO方法的关键在于直接利用人类偏好数据来优化语言模型,从而避免了RLHF流程中奖励模型拟合和RL优化的复杂性和不稳定性。这种方法简化了偏好学习的过程,降低了实现的复杂性,并有可能提高模型根据人类偏好生成输出的效率和准确性。 阅读详情

相关推荐

2025微调实战指南:参数高效微调与业务认知对齐

微调是大语言模型落地的核心工程环节,本质是将通用预训练模型的表征空间与特定业务的认知体系进行精准对齐。其技术原理已从全量训练演进为参数高效微调(PEFT),以LoRA、QLoRA为代表的方法仅调整不到0.1%参数,兼顾性能、可控性与合规可解释性。在基座模型能力趋稳、高质量标注数据成本远超算力的2025年,微调成为提升F1、首次解决率(FCR)、指令遵循率等真实业务指标的关键路径。本文聚焦LoRA秩选择、DPO偏好对齐、三阶数据筛选与动态微调编排等一线验证策略,覆盖从金融客服到医疗问诊的典型场景。

alexhill2009的博客 346

直接偏好优化算法(Direct Preference Optimization,DPO)

基于**人类反馈的强化学习(RLHF)**是一个复杂且不稳定的过程,首先拟合一个反映人类偏好的奖励模型,然后使用强化学习对大语言模型进行微调,以最大限度地提高估计奖励,同时又不能偏离原始模型太远。这涉及训练多个 LM,并在训练循环中从 LM 采样,从而产生大量的计算成本。本文作者提出了**直接偏好优化(DPO)**算法,它稳定、高效且计算量轻,。实验表明,DPO 可以微调 LMs,使其与人类偏好保持一致,与现有方法一样或更好。

chacha_的博客 8233

DeepSeek-V2技术可行性验证:一条可复现、可审计的大模型基座路径

大语言模型基座(LLM Base Model)作为AI基础设施的核心,其技术可行性与工程可复现性正成为产业落地的关键门槛。不同于依赖海量算力与黑盒优化的主流路线,DeepSeek-V2通过结构克制(GQA+静态稀疏)、训练简化(单阶段DPO)、数据洁癖(高质量中文专业语料)和部署确定性(FP8 KV Cache、ONNX/vLLM多后端支持),将‘能否自主构建高性能中文大模型’这一命题转化为3个月可验证、500卡可复现、开源权重+完整日志可审计的工程事实。它不追求全面超越GPT-4,而聚焦法律、数学、编程等

weixin_34192816的博客 411

使用DPO将LLM与人类偏好对齐

预训练为理解语言奠定了基础。监督微调/指令微调教会模型对特定指令做出适当的响应。RHFL将模型的响应与道德和以人为中心的标准对齐,增强了模型在实际应用中的可靠性和安全性。端到端LLM训练流程(图片来源在另一个摘要任务中,他们以Reddit的论坛帖子作为输入 X*,然后策略必须生成帖子主要观点的摘要 Y*。他们在这个实验中使用了Reddit TL;DR摘要数据集以及已经收集到的人类偏好。同样地,首先对Reddit的回复进行监督微调,以学习生成摘要。

数智笔记 3417

[NLP] LLM---<训练中文LLama2(五)>对SFT后的LLama2进行DPO训练

这种方法稳定、高效、计算量小。1.定义policy模型(策略模型)和reference模型(参考模型),Policy模型是需要训练的对话生成模型,reference模型是给定的预训练模型或人工构建的模型。:偏好学习,RLHF或本文所提的DPO,可以让模型的输出更符合人类偏好,通俗说就是同样一句话,得调教的让模型输出人类喜欢的表达方式,好比高情商的人说话让人。已有一个SFT model,为了让它更好,对它的output进行偏好标注,然后使用DPO进行训练,这是最正常的使用场景,但是偏好数据集确实避免不了的。

u013250861的博客 1670

大语言模型实战指南:从预训练到RLHF对齐与工程部署

大语言模型(LLM)作为当前人工智能领域的核心技术,其核心原理是基于Transformer架构,通过海量无标注文本进行自监督预训练,学习语言的统计规律与知识表示。这一过程赋予了模型强大的通用语言理解和生成能力,其技术价值在于能够统一处理多种自然语言任务,为智能对话、内容创作和代码生成等应用场景提供了通用基础。在工程实践中,为了将基座模型转化为安全、有用的AI助手,指令微调与人类对齐技术至关重要。其中,强化学习人类反馈(RLHF)通过奖励模型训练和策略优化,使模型输出与人类偏好对齐;而LoRA等高效微调技术则

weixin_42521032的博客 283

一文读懂大模型后训练(万字长文)

大模型的后训练都在训练些什么?sft、rl、ppo、lora、adapter,这些算法开发们口中的专属名词,都代表着什么意思?本文将尽可能从非技术角度,一文帮你读懂大模型后训练。同时这也是继去年发布《非技术背景,一文带你读懂大模型》后,时隔一年多,推出的非技术系列第二篇文章啦。也确实看到大家对于此类非技术向讲解的科普文比较感兴趣,希望这篇新文章能一样受大家的喜欢。

malingyu的专栏 127

【STC8A8K64S4A12开发板】—学习PWM脉冲宽度调制

版权声明:本文为博主原创文章,转载请附上原文出处链接。 文章目录前言一、硬件设计1.PWM脉冲宽度调制介绍2.STC8A8K64S4A12系列单片机PWM介绍3.PWM配置步骤二、软件设计1.PWM寄存器汇集2.寄存器解析2.1.PWM配置寄存器PWMCFG2.2.PWM控制寄存器PWMCR2.3.PWM中断标志寄存器2.4.PWM外部异常控制寄存器2.5.PWM时钟选择寄存器2.6.PWM触发ADC计数器寄存器2.7.PWM2翻转寄存器2.8.PWMn控制寄存器2.9.PWMn电平保持控制寄存器3.PW

qq_36139768的博客 5219

【AI学习】推理模型相关文章学习笔记

无疑,今年AI方向最大的热点之一,就是推理模型。记录一下学习中的一些重要文章。

bylander的博客 1165

国产FPGA开发实战:紫光同创编程软件中的约束文件详解与常见问题

本文详细解析了紫光同创FPGA编程软件中约束文件的关键配置技巧与常见问题。通过基础架构解析、时钟约束实践、物理约束调控及典型问题排查指南,帮助开发者高效掌握国产FPGA开发中的约束文件应用,提升开发效率与设计稳定性。

gin88的博客 912

网络摄像头(IPC)介绍:类型、供电、镜头、夜视等

IPC(Internet Protocol Camera,网络摄像头),它是一种由传统摄像机与网络技术结合所产生的新一代摄像机。它可以将视频、音频、报警及控制信号通过网络传输,接受网络监控主机(NVR或监控管理平台)的管理。IPC可与路由器、交换机、NVR等设备组建成为监控系统。

学无止境,Fighting! 1万+

Zephyr-7B实战指南:DPO对齐、GQA加速与生产级微调部署

大语言模型(LLM)的轻量化落地正成为企业AI工程的核心命题。在70亿参数量级,模型需兼顾推理效率、指令遵循能力与微调可控性——这正是Zephyr-7B的技术定位。其基于Direct Preference Optimization(DPO)的对齐机制,跳过传统RLHF的复杂奖励建模,在标注噪声下仍保持高鲁棒性;结合Grouped-Query Attention(GQA)架构与动态RoPE位置编码,显著降低KV Cache显存占用并提升长文本稳定性。技术价值在于将‘能跑’升级为‘稳跑、准答、易调’,广泛适用于

weixin_33672109的博客 337

ESP32实战:破解校园网WPA2-Enterprise认证的完整指南

本文详细介绍了如何使用ESP32开发板破解校园网WPA2-Enterprise认证的完整指南。通过硬件准备、环境搭建、核心代码实现及常见问题排查,帮助开发者解决企业级WiFi连接难题,特别适用于校园网环境下的物联网设备开发。

weixin_29194817的博客 457

别把大模型当神仙!一文看懂大厂都在搞的“Loop工程”(新手友好)

看到这里,你可能已经头晕目眩了。从数据清洗、LoRA微调、DPO对齐,到RAG检索、vLLM推理优化,再到Multi-Agent的编排和安全沙盒……这哪里是在搞魔法?这分明是最硬核、最琐碎、也最迷人的现代软件工程!很多初学者迷信“Prompt Engineering(提示词工程)”,以为只要会写几句漂亮的咒语就能颠覆行业。Prompt只是冰山一角,水面之下那套庞大的、日夜不息的Loop工程体系,才是真正的护城河。大模型不是神仙,它是一个会犯错、会遗忘、需要被不断教导和约束的“硅基生命”。

weixin_45631123的博客 469

DETR系列文章之–Co-DETR

Co-DETR,并行训练多个辅助头,以一对多的标签分配方式进行监督从辅助头中提取正样本坐标,为解码器中的正样本的训练效率进行额外的定制化正样本query.一对一标签分配:每个GT框分配给一个特定的query(DETR),较少的正query导致低效训练,从编码器生成的潜在表示和解码器中的注意力学习分析这一问题。一对多标签分配:每个GT框分配给检测器输出的多个proposal/anchor,依赖NMS或者anchor生成(ATSS,RetinaNet,FCOS,PAA)。

weixin_43731232的博客 2122

【软件逆向学习记录】x64dbg调试器入门2:主调试窗口功能及字符串搜索功能介绍

在x64dbg中, ​​CPU视图 是调试过程中最核心的界面,通常被称为​​主调试窗口​​或​​调试视图​​,总体分为四个区域,代码区(反汇编),数据区(内存窗口),寄存器区和堆栈区,详细位置如下图:示例数据代码区最左侧为内存地址,第二块区域为程序代码值,原始程序代码经编译和汇编后变为二进制机器码存储在计算机中,调试器将其展示为易于阅读的十六进制,第三块区域是机器码反汇编后的汇编代码,最右侧为代码的注释窗口,有一些原始的注释,也可以自己添加注释PS:汇编和反汇编解释。

tusikong的博客 2924

7B参数碾压70B?Zephyr-7B-β革命级聊天模型深度测评:从技术原理到企业级部署指南

你还在为大模型部署成本高而头疼吗?还在7B模型性能不足与70B模型资源消耗之间艰难抉择吗?本文将为你揭开Zephyr-7B-β的神秘面纱,这款仅需70亿参数却能在多项权威测评中超越部分70B大模型的聊天模型,如何通过创新的Direct Preference Optimization(DPO,直接偏好优化)技术实现性能飞跃?读完本文,你将全面掌握: - Zephyr-7B-β的技术架构与训练原理 ...

gitblog_02419的博客 470

水文仿真软件:SWMM (Storm Water Management Model)_(6).地理信息系统(GIS)与SWMM数据交换

地理信息系统(GIS)与SWMM数据交换是水文仿真中的一个重要环节。通过合理的数据准备、导入、导出和校验,可以确保模型的准确性和实用性。本文介绍了使用SWMM GIS Add-on和Python脚本进行数据交换的方法,并提供了一些优化建议和常见问题的解决方案。希望这些内容能帮助读者更好地进行GIS与SWMM的数据交换,提高水文仿真的效率和质量。

kkchenjj的博客 579

从数据到基础模型:大模型训练全流程拆解

大模型(Large Language Model)正推动人工智能从专用走向通用,而支撑这一能力的核心是Foundation Model(基础模型)——通过在海量数据上进行预训练,将原始文本转化为可复用的通用底座。其原理基于Transformer架构的自监督学习,结合数据清洗、Tokenization、规模法则(Scaling Law)以及人类反馈对齐(RLHF/DPO)等关键技术,最终实现指令遵循与多任务泛化。这项技术广泛应用于对话系统、代码生成、知识问答等场景,并借助量化、LoRA微调与vLLM推理加速等

315

停车位检测:基于YOLOv5与UI界面的实现

YOLOv5是YOLO(You Only Look Once)系列中的最新版本,它能够在单次前向传播中同时完成多个目标的定位与分类,因此被广泛应用于实时目标检测任务。与之前的版本相比,YOLOv5在精度和速度上得到了很大的优化,适合嵌入到实际的自动驾驶和智能交通系统中。YOLOv5使用了卷积神经网络(CNN)进行特征提取,并通过回归方法预测边界框、类别及置信度。高效的推理速度:YOLOv5采用了优化的模型结构,能够在保证精度的同时提供较快的推理速度。较高的精度。

YOLO 696

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

大模型从数据到模型的完整链路:清洗、预训练、微调与数据工程实践

数据是大模型能力的基石,决定了模型表现的上限。从Token化、清洗过滤到预训练、微调与对齐,数据工程贯穿大模型诞生全流程。理解Transformer的自注意力机制与Scaling Law,能帮助开发者把握模型扩展的边界;而指令微调、RLHF/DPO则让模型从“聪明”变得“好用”。在实际应用中,高质量数据配比、去重与质量过滤是避免“Garbage in, garbage out”的关键。无论是构建垂直行业模型还是个人学习,掌握从数据到模型的全链路方法,都能更高效地完成大模型落地与迭代。

weixin_34050005的博客 391

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

ChatGPT背后的工程奇迹:从零开始理解大模型训练全流程(附开源工具推荐)

本文深入剖析了ChatGPT等大语言模型从数据工程、预训练到对齐微调的全流程工程实践。文章详细解读了数据清洗、分词、分布式训练、监督微调及RLHF等核心技术,并推荐了Hugging Face Transformers、DeepSpeed、PEFT等开源工具,为开发者提供了低成本探索大模型训练与微调的实战指南。

bush的博客 461

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

用烘焙流程拆解大模型训练:从数据清洗到LoRA微调的完整指南

大语言模型训练看似充满预训练、微调、RLHF、LoRA等晦涩术语,本质上却与一次烘焙流程有着惊人的相似。数据如同面粉,GPU集群是烤箱,预训练负责烤好蛋糕胚,微调则是裱花与调味。理解这种映射关系,能帮助开发者快速定位每个阶段要解决的核心问题:数据质量决定模型上限,分词策略影响语义颗粒度,分布式训练与超参数设置决定资源效率。本文从这些基础概念切入,解释预训练如何通过因果语言建模形成通用能力,并重点展示LoRA这一参数高效微调技术,让单卡用户也能低成本定制专属模型。随后延伸到RLHF对齐、评估与部署,形成一套可

weixin_33912638的博客 555

通义千问2.5-7B推理速度慢?vLLM批处理优化实战详解

本文介绍了如何在星图GPU平台上自动化部署通义千问2.5-7B-Instruct镜像,通过vLLM批处理优化显著提升推理性能,适用于智能客服对话、文档摘要与代码辅助等典型文本生成场景,实现在单卡RTX 4090上并发3用户时首token延迟低于800ms。

weixin_33375360的博客 331

Qwen3-14B助力产品经理:快速产出PRD文档初稿

Qwen3-14B作为140亿参数的商用大模型,支持长上下文、Function Calling与本地部署,可帮助产品经理快速生成PRD初稿,整合竞品分析与数据调用,显著提升需求文档撰写效率,降低企业成本。

weixin_35756373的博客 760

通义千问2.5-7B显存占用高?Q4_K_M量化优化部署

本文介绍了如何在星图GPU平台上自动化部署通义千问2.5-7B-Instruct(Q4_K_M量化版)镜像,显著降低显存占用至6GB以内,使RTX 3060等消费级GPU也能高效运行。该镜像适用于本地化AI应用开发,典型场景包括高质量中文内容生成、Python代码编写及结构化数据输出,兼顾性能与实用性。

weixin_35019679的博客 733
上一篇: 训练Agent太贵?Meta交出新答卷!DreamGym让RL训练成本立省90%,开发者福音!
下一篇: Prompt不仅是对话,更是指令!深度拆解Agent核心:如何用Prompt驱动大模型执行复杂任务?
Python_金钱豹
博客等级 码龄5年 1万+粉丝 2840原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值