51c大模型~合集91
我自己的原文哦~ https://blog.51cto.com/whaosoft/12848734
#工业界主流大语言模型后训练(Post-Training)技术总结
本文整理工业界主流开源LLM的后训练方案,着重介绍训练算法和数据处理部分
今年工业界陆续开源了多款优秀的大语言模型,并放出了技术报告,本文整理工业界主流开源LLM的后训练方案,着重介绍训练算法和数据处理部分。以下是模型列表:
- Llama3(Meta)
- Qwen2(阿里云)
- Nemotron(Nvidia)
- AFM(Apple)
- Yi(01ai)
- GLM-4(智谱)
- Gemma2(Google)
- DeepSeek-V2(DeepSeek)
- Baichuan2 Alignment(百川)
总结以上技术报告,可以发现一些基本趋势:
- 数据合成已成为工业界主流LLM后训练的基本方案,未来大概率也会持续发展,快速开发出领先的数据合成pipeline,有助于企业保持领先地位。
- 善用LLM-as-judge和拒绝采样技术。在偏好数据的构造上,Llama3、Qwen2、Baichuan2、AFM均采用拒绝采样(Rejection sampling)技术。用不同规模、不同参数的模型多次采样,再使用LLM和人工评估构造偏好样本对。
- Instag (Lu et al., 2023(https://openreview.net/forum%3Fid%3DpszewhybU9)) 方法,最初出现在Qwen技术报告中,今年又出现在了Llama3、Qwen2、Yi三个模型的技术报告中,值得深入研究。
- 重点能力需要单独优化,如代码、多语言、数学、推理、长上下文、工具使用、指令遵循。
- 模型合并。使用不同版本的数据或超参数训练多个模型,最后平均模型参数,可以实现更均衡的性能。Llama3、Gemma2和Baichuan2均采用了模型合并技术。
- 强化学习。Llama3和Qwen2都只用了改良版的DPO,而没有使用PPO在线学习,说明PPO虽然上限高,但有一定门槛。各模型强化学习技术总结如下表。
模型 | 偏好对齐技术 |
Llama3 | 迭代式DPO |
Qwen2、Yi-Lightning | offline DPO + online DPO |
ChatGLM4 | DPO + PPO |
Deepseek-V2、Baichuan2 | GRPO |
Nemotron-4 | 迭代式DPO+RPO |
AFM | 综合RS、DPO、IPO,以及改进版在线RL:MDLOO |
一、Llama31 算法
后训练迭代了数轮。每一轮都包括 SFT 和 DPO,使用人类注释数据或合成数据。后训练目标包括奖励模型和语言模型。首先基于预训练 checkpoint,使用人类标注的偏好数据训练一个 RM,SFT 后使用 RM 进行拒绝采样,并对预训练 checkpoint 进行微调,再执行 DPO 与人类偏好对齐。此过程如图7,适用于Llama 3 系列所有模型。
对话格式。与Llama2相比,Llama3具有新的能力,如 tool use。为支持这一点,llama3设计了一种新的多消息聊天协议,使用各种特殊的 header tokens 和 termination tokens。header tokens 用于指示对话中每个消息的来源和目的地,termination tokens指示何时轮到人类和AI交替发言。
奖励建模 RM。由于数据扩展后改进逐渐减少,Llama3的loss移除了边际项。过滤掉相似响应样本之后,使用所有偏好数据进行奖励建模。除了标准的偏好对(chosen,rejected)外,Llama 3还为某些提示创建了第三个“edited response”,基于chosen response进一步改进得到,偏好顺序:_edited_ > chosen > _rejected_。训练期间将提示和多个响应合并成单行,并随机打乱响应,以近似响应分别放在不同行中计算分数的标准场景。
监督微调 SFT。使用奖励模型在人类标注提示上执行拒绝采样,详细信息见2.2节。与此拒绝采样数据和其他数据源(包括合成数据)一起,执行sft。最大的模型 lr=1e-5, steps 。这些超参设置在不同的轮次和数据混合中都表现良好。
直接偏好优化 DPO。每一轮DPO都使用前一轮对齐中表现最好的模型,并收集最新一批偏好数据。对于Llama 3,lr=1e-5,β=0.1。此外,DPO还应用了以下算法修改:
- DPO loss 屏蔽格式化tokens:从chosen 和 rejected responses 屏蔽特殊的格式化tokens,包括header tokens 和 termination tokens。这些token加入损失可能导致奇怪的模型行为,如尾部重复或突然生成终止符。这可能是由于DPO loss 的对比性质 - 两个响应存在共同token导致学习目标冲突,因为模型需要同时增加和减少这些token的可能性。
- NLL loss 正则化:在选择的序列上增加了一个额外的负对数似然(NLL)损失项,缩放系数为0.2,类似于Pang等人(2024)。这有助于保持生成期望格式,并防止chosen response的对数概率下降,稳定DPO训练(Pang等人,2024;Pal等人,2024)。
模型平均。在每个RM、SFT或DPO阶段使用不同版本的数据或超参数进行实验,平均获得的模型(Izmailov等人,2019;Wortsman等人,2022;Li等人,2022)。
迭代轮次。llama 3应用以上方法迭代六轮。每一轮都收集新的偏好注释和SFT数据,从最新模型中采样合成数据。
2 数据
后训练数据包括人类注释数据、偏好数据,SFT数据组成,以及数据质量控制、清洗方法。
2.1 偏好数据
每训练一轮后部署多个模型进行注释,并为每个user prompt采样两个不同模型的response。这些模型可以使用不同的数据混合和对齐方法训练,从而允许不同的能力强度(例如,代码专业知识)和增加的数据多样性。llama 3要求注释者根据响应的喜好程度,将其分为四个等级:明显更好,更好,稍微更好或略好。还在偏好排名后增加了一个edit步骤,鼓励注释者进一步改进首选响应。因此,最终的偏好数据可能有三个排名响应:_edited_ > chosen > _rejected_。
丢弃相似响应样本后,每一轮后训练llama 3使用所有的偏好数据进行奖励建模,同时仅使用来自各种能力的最新批次数据进行DPO训练。
2.2 SFT 数据
微调数据主要由以下来源组成:
- 人类注释收集的提示,拒绝采样的响应
- 针对特定能力的合成数据(第2.4节)
- 少量人类策划的数据(第2.4节)
拒绝采样 Rejection sampling。对于人类注释的每个提示,从最新的聊天模型(通常是后训练迭代中表现最佳的checkpoint,或特定能力表现良好的checkpoint)采样K(通常是10-30)个输出,并使用奖励模型选择最佳候选。训练后期引入系统提示以引导RS响应符合期望的语气、风格或格式,这些可能因不同能力而异。
整体数据组成。表7是“有用性”混合数据中每个广泛类别的统计信息。虽然SFT和偏好数据包含重叠领域,但它们是分别策划的。2.4节描述了用于对数据样本进行主题、复杂性和质量分类的技术。每一轮后训练仔细调整这些轴上的数据混合,以在广泛的基准测试中调整性能。最终的混合数据在一些高质量资源上多次采样,并降低其他资源采样。
2.3 数据处理和质量控制
由于大部分训练数据是模型生成的,因此需要仔细清洗和质量控制。
数据清洗。实施一系列基于规则的数据删除和修改策略。例如,缓解过度道歉问题,识别过度使用的短语(如“I’m sorry”或“I apologize”),识别过度使用的表情符号或感叹号,并仔细平衡数据集中这类样本的比例。
数据修剪。应用一系列基于模型的技术,删除低质量训练样本:
- 主题分类:将 Llama 3 8B 微调为一个主题分类器,在所有数据上进行推理,将其分类为粗粒度(如“数学推理”)和细粒度(如“几何和三角学”)的桶。
- 质量评分:使用奖励模型和基于 Llama 的信号为每个样本获得质量分数。对于基于 RM 的分数,llama 3认为处于 RM 分数Top 1/4的数据是高质量的。对于基于 Llama 的分数,使用Llama 3 checkpoint对每个样本在三点量表上进行一般数据评分(accuracy, instruction following 和 tone/presentation)。对编码数据进行两点量表评分(bug identification 和 user intention),并将最高分数的样本视为高质量。RM 和基于 Llama 的分数有很高的不一致率,llama 3结合这些信号在内部测试集上获得了最佳的召回率。最终,选择被 RM 或 Llama 标记的高质量示例。
- 难度评分:使用两种难度度量:Instag(https://arxiv.org/abs/2308.07074) 标签和 Deita(https://arxiv.org/abs/2312.15685) 评分。对于 [Instag] (Lu et al., 2023),提示 Llama 3 70B 对 SFT 提示进行意图标记,更多的意图意味着更高的复杂性。对于Deita,提示 Llama 3 在三点量表上测量对话的难度。
- 语义去重:参考(Abbas等人,2023;Liu等人,2024c)。首先使用 RoBERTa(Liu等人,2019b)对完整对话聚类,然后在每个聚类内按质量分数 × 难度分数排序。然后迭代所有排序示例,只保留与样本集的最大余弦相似度小于阈值的示例,贪婪选择。
2.4 能力
重点提升能力,包括:代码、多语言、数学和推理、长上下文、工具使用、事实性和可引导性。
2.4.1 代码
改进代码能力的方法包括:训练代码专家、合成sft数据、带系统提示引导的拒绝采样、代码执行和 model-as-judge 过滤。
1)训练代码专家。对预训练模型进行持续预训练获得,其中持续预训练语料大部分(>85%)是代码数据,合计 1T tokens。遵循类似CodeLlama的配方(Roziere et al.,2023)。最后几千步训练,在高质量的 repository-level 混合代码数据执行长上下文微调(LCFT),将专家的上下文长度扩展到16K tokens。最后,除了针对代码领域的SFT和DPO混合数据外,也遵循Llama 3训练流程对齐模型。该模型也用于代码 prompt 的拒绝采样。
2)合成sft数据。使用Llama 3和代码专家合成大量的SFT对话。包括三种代码数据合成方法,生成超过270万的例子。
- 合成数据生成:执行反馈。当使用参数量更大、性能更强的模型生成数据再进行训练时,8B 和 70B 模型显示出显着的性能改进。而使用 Llama 3 405B 自己生成的数据进行训练,却并没有什么帮助(甚至会降低性能)。为了解决这一限制,llama 3引入了执行反馈,提升代码数据质量,使用以下过程生成约100万代码对话:
- 静态分析:通过解析器和 linter 运行所有生成代码,以确保语法正确性,捕获语法错误、使用未初始化变量、非导入函数、代码风格问题、键入错误等错误。
- 单元测试生成和执行:对于每个问题和解决方案,提示模型生成单元测试,与解决方案一起在容器化环境中执行,捕获执行错误和语义错误。
- 问题描述生成:从各种来源抽取随机代码片段,并提示模型基于这些示例生成新编程问题。编程问题描述涵盖各种主题,包括长尾分布主题。
- 解决方案生成:提示 Llama 3 用给定的编程语言解决每个问题。在提示中添加一般性编程规则提高生成质量。在代码评论中解释其思维过程也能提升效果。
- 正确性分析:从生成的解决方案中提取源代码,并应用静态和动态分析技术测试其正确性,包括:
- 错误反馈和迭代自我修正:当解决方案在任何一步失败时,提示模型进行修改。提示包括原始问题描述、错误解决方案、解析器/linter/测试器反馈(stdout、stderr/ 和返回代码)。单元测试失败后,模型修复代码以通过现有测试,也可以修改单元测试以适应现有代码。只有完全正确的问答对才会包含在最终sft数据集中。llama 3发现约 20% 的解决方案最初是错误的,但可以自我纠正,表明模型从执行反馈中学习并提高了性能。
- 微调和迭代改进:微调过程分多轮进行,每一轮都建立在前一轮基础上,为下一轮生成更高质量的合成数据。
- 合成数据生成:编程语言翻译。将常见编程语言(_例如_,Python/C++),翻译为不太常见的语言(_例如_,Typescript/PHP)来补充现有数据,提升编程语言性能。并提示 Llama 3 通过语法解析、编译和执行,以确保质量。
- 合成数据生成:反向翻译。对于某些编码能力(例如,说明、解释),使用执行反馈不足以改进其能力,llama 3采用了另一种多步骤方法,生成了约 120 万个与代码解释、生成、说明和调试相关的对话。从预训练数据各种代码片段开始:
- 生成:提示 Llama 3 生成代表目标能力的数据,例如,为代码片段添加注释说明,或者解释一段代码。
- 反向翻译:提示模型将合成数据“反向翻译”为原始代码,例如,提示模型仅从代码说明生成代码,或者仅从代码解释生成代码。
- 过滤:使用原始代码作为参考,提示 Llama 3 确定输出质量,例如,询问模型反向翻译代码对原始代码的忠实程度,再使用 SFT 中具有最高自我验证分数的生成示例。
3)带系统提示引导的拒绝采样。拒绝抽样过程使用特定的代码系统提示,提高代码的可读性、说明、彻底性和特异性。
4)使用执行和 model-as-judge 信号过滤数据。早期版本的 Llama 3 评估根据两个标准分配二进制 (0/1) 分数:代码正确性和代码风格。只保留那些获得满分 2 分的样本。最初,这种严格的过滤导致了下游基准性能的回归,主要是因为它不成比例地删除了具有挑战性提示的示例。为了解决这个问题,llama 3策略性地修改了一些被归类为最具挑战性的代码数据响应,直到它们满足基于 Llama 的“model-as-judge”标准。通过改进这些具有挑战性的问题,代码数据实现了质量和难度的平衡,获得了最佳的下游性能。
2.4.2 多语言
方法包括训练多语言专家,采购和生成德语/法语/意大利语等多语言的的高质量指令数据。
训练多语言专家。使用预训练模型在多语言混合数据集(包含90%的多语言tokens)做持续预训练,然后,按照 使用前面的后训练流程。最后,使用该专家模型收集高质量的多语言注释数据直到预训练结束。
多语言数据收集。多语言 SFT 数据主要来自以下来源。总体分布是 2.4% 的人工注释、44.2% 其他 NLP 任务数据、18.8% 的拒绝采样数据和 34.6% 翻译的推理数据。
- 人工注释:从语言学家和母语人士那里收集高质量的人工注释数据。主要由现实世界的开放式提示组成。
- 其他 NLP 任务数据:使用其他任务的多语言训练数据并重写为对话格式。例如, exams-qa和 Conic10k。为了改进语言对齐,使用 GlobalVoices和 Wikimedia的并行文本。使用基于 LID 的过滤和 Blaser2.0 (Seamless Communication et al., 2023) 来删除低质量数据。对于并行文本数据,没有直接使用双文本对,而是应用受 Wei et al. (2022a) 启发的多语言模板,以更好地模拟翻译和语言学习场景中的现实对话。
- 拒绝采样数据:对人工注释的提示应用拒绝采样,以生成高质量微调样本,流程和收集英语类数据类似:
- 生成:前期从 [0.2, 1] 区间随机选择温度T。高T时多语言响应会富有创意,但也容易出现语码转换问题。在最后一轮后训练时,设置T=0.6 。此外,使用专门的系统提示来改进响应格式、结构和可读性。
- 选择:在基于奖励模型的选择之前,实施特定的多语言检查,以确保提示和响应之间的语言匹配率(例如,罗马化印地语提示不应以印地文梵文响应)。
- 翻译数据:尽量避免使用机器翻译数据,以防止可能的翻译名称偏差、性别偏差或文化偏见。有一个例外,llama 3使用了翻译的推理数据(详见2.4.3 数学与推理),以提高非英语语言中定量推理性能。由于这些数学问题仅使用简单的语言,翻译后几乎没有质量问题。
2.4.3 数学与推理
提升数学推理能力,面临着一些挑战:
- 缺乏提示:SFT有效提示或问题数量不足,很难创建多样化且具有代表性的数学训练集。
- 缺乏真实的思维链:缺乏真实的思维链数据,以指导模型如何逐步分解问题并得出最终答案。
- 不正确的中间步骤:当使用模型生成的思维链时,中间步骤可能会出错,影响训练效果。
- 使用外部工具:增强模型利用外部工具(如代码解释器),或通过交错代码和文本进行推理。这种能力可以显着提高他们解决问题的能力。
- 训练和推理之间的差异:微调后的模型可能会与人类或其他模型交互,要求它使用反馈来改进推理结果。确保训练数据和实际使用场景的一致性,对于维持推理性能至关重要。
为了应对这些挑战,采用以下方法:
- 解决缺乏提示问题:从预训练数据中寻找数学相关数据,并将其转换为问答格式用于sft。创建数学技能分类,寻找模型表现不佳的数学技能,人工编写相关提示/问题。
- 通过逐步推理轨迹增强训练数据:使用 Llama 3 为一组提示生成逐步解决方案,再使用 Llama 3 验证特定的逐步解决方案对于给定问题是否有效,根据正确答案过滤这些结果。
- 过滤不正确的推理痕迹:训练结果RM和分步RM(Lightman et al., 2023; Wang et al., 2023a)过滤中间推理步骤不正确的训练数据。对于更具挑战性的提示,使用蒙特卡罗树搜索(MCTS)和学习的分步RM生成有效的推理轨迹。
- 交错代码和文本推理:提示 Llama 3 通过文本推理和 Python 代码组合解决推理问题。以代码执行作为反馈信号,消除推理链无效情况,保证推理过程正确性。
- 从反馈和错误中学习:为了模拟人类反馈,利用不正确的生成结果并提示 Llama 3 产生正确的生成结果,来执行错误纠正,这有助于提高模型推理和从错误中学习的能力。
2.4.4 长上下文
预训练最后阶段,Llama 3 的上下文长度从 8K 扩展到 128K tokens。与预训练类似,微调过程也必须仔细调整配方以平衡短上下文和长上下文能力。
合成数据。使用 Llama 3 的早期版本合成长上下文数据,包括:多回合问答、长文档摘要以及代码存储库推理。
- QA对生成:从预训练数据中精心策划一组长文档,分成 8K token的块,使用早期版本的 Llama 3 模型根据随机选择的块生成 QA 对,训练期间使用整个文档作为上下文。
- 总结:首先使用最强的Llama 3 8K模型对输入长度为8K的块进行总结,然后再对所有的总结进行汇总,从而对长上下文文档进行分层汇总。训练期间,给模型提供完整的文档并提示模型总结文档,同时保留所有重要细节。另外,还根据文档摘要生成 QA 对,并提示模型提出需要理解整个长文档的全局问题。
- 长上下文代码推理:解析 Python 文件识别导入语句,并确定它们的依赖关系。选择最常依赖的文件,特别是至少五个其他文件引用的文件,从存储库中删除这些关键文件之一,并提示模型识别丢失的依赖文件,生成必要的丢失代码。
根据序列长度(16K、32K、64K 和 128K)进一步对这些合成样本进行分类,以实现更细粒度的输入长度定位。最终,消融实验发现混合 0.1% 的长上下文合成数据与原始短上下文数据,性能最佳。
DPO。实验发现只要 SFT 模型在长上下文任务中具有高质量的推理效果,那么 DPO 训练仅使用短上下文也不会影响长上下文性能。鉴于这一发现,长上下文 SFT 之后,保留了 DPO 的短上下文数据混合。
2.4.5 工具使用
Llama 3 训练了三种工具调用:搜索引擎、Python解释器、数学计算引擎。除此之外,还训练了zero-shot工具使用(上下文中给定可能未见过的工具定义和用户查询,训练模型使用正确的工具调用)。
执行。使用不同的方法将核心工具实现为 Python 对象。零样本工具可以实现为带有描述、文档示例的 Python 函数,并且模型只需要函数的签名和文档字符串作为上下文来生成适当的调用。还将函数定义和调用转换为 JSON 格式,所有工具调用均由 Python 解释器执行,必须在 Llama 3 系统提示符中启用该解释器。核心工具可以在系统提示符中单独启用或禁用。
数据收集。llama 3主要依靠人类注释和偏好,合成工具调用数据,这一点与toolformer不同。与标准后训练流程相比,有两个主要区别:
- 对于工具,对话通常包含多条助手消息(例如,调用工具,根据工具输出推理结果)。llama 3在消息级别进行注释以收集细粒度反馈:注释者在具有相同上下文的两条助手消息之间进行偏好选择,或者如果两者都有问题,则编辑改进其中一条消息。然后,所选或编辑的消息将添加到上下文中,对话继续。这为助手调用工具和推理工具输出提供了人类反馈。注释者无法排名或编辑工具输出。
- 不执行拒绝抽样,因为未在工具基准测试中观察到增益。
人工注释数据。人工注释过程从单轮工具注释开始,然后转向对话中的工具使用,最后注释多步工具使用和数据分析。流程如下:
- 单步工具使用:从合成用户提示的少样本生成开始(这些生成需要调用核心工具)。依靠几次生成,为这些提示生成适当的工具调用,执行它们,并将输出添加到模型上下文。最后,再次提示模型根据工具输出生成最终答案。可以得到以下形式的轨迹:系统提示、用户提示、工具调用、工具输出、最终答案。为提高数据质量,过滤了约30%无法执行的工具调用或其他格式问题。
- 多步工具使用:首先提示 Llama 3 生成需要至少两次工具调用的用户提示,这些工具可以与核心工具集不同。然后,使用这些提示多次,让 Llama 3 生成由交错推理步骤和工具调用组成的解决方案,类似于 ReAct。
- 文件上传与分析:对常用文件类型进行注释(如.txt、.docx、.pdf、.pptx、.xlsx、.csv、.py、.json等)。提示模型基于提供的文件,总结文件内容,查找并修复错误,优化代码,执行数据分析或可视化。
使用合成数据微调后,在各种具有挑战性的场景中收集人类注释(包括多轮交互、超过三步的工具使用以及工具调用不准的情况)。llama 3使用不同的系统提示增强合成数据,以教导模型仅在工具功能激活时才使用工具。为了训练模型简单查询直接推理(不需要额外调用工具)的能力,llama 3还添加了来自简单数学或问答数据集的查询,及其在没有工具情况下的响应,只在系统提示激活工具时才调用工具。
零样本工具调用。通过使用大量多样化的工具调用合成数据(函数定义、用户查询、相应调用等),提高了 Llama 3 零样本工具的使用能力。
- 单个、嵌套和并行函数调用:llama 3借助于 the Stack(Kocetkov et al., 2022) ,将合成用户查询应用于实际函数。更准确地说,提取函数调用及其定义,清理和过滤异常代码(例如缺少文档字符串或不可执行的函数)。然后,使用 Llama 3 生成与函数调用相对应的自然语言查询。
- 多轮函数调用:通过函数调用为多轮对话生成合成数据。使用多个代理来生成域、API、用户查询、API 调用和响应,同时确保生成的数据涵盖一组不同的域和实际的 API。所有代理都是 Llama 3 的变体,根据其角色以不同的方式提示,并以 step-by-step 方式进行协作。
2.4.6 事实性
llama 3遵循的原则是,后训练应该使模型 “know what it knows”,而不是添加知识 (Gekhman et al., 2024; Mielke et al., 2020)。主要方法涉及生成数据,使模型生成与预训练中存在的数据保持一致。基于llama 3的知识探测,数据生成过程如下:
- 从预训练数据中提取数据片段。
- 通过提示 Llama 3生成有关这些片段(上下文)的事实问题。
- 使用Llama 3 回答问题。
- 以原始上下文为参考,以 Llama 3 为评审,对各生成的正确性进行评分。
- 使用 Llama 3 作为评估者对各生成的信息量进行评分。
- 使用 Llama 3 对各生成结果的信息一致但不正确的响应生成拒绝。
使用知识探测生成的数据鼓励模型只回答它所了解的问题,并拒绝回答不确定问题。此外,预训练数据并不总是与事实一致或正确。因此,llama 3还收集了一组有限的带标签事实数据,这些数据涉及敏感主题,并且可能存在事实矛盾或不正确陈述。
2.4.7 操纵性(指令遵循)
可操纵性,即指导模型满足用户规范的能力。Llama 3专注于通过带有自然语言指令的系统提示来增强其可操纵性,特别是在响应长度、格式、语气和角色/性格方面。
数据收集。通过要求注释者为 Llama 3 设计不同的系统提示,收集一般英语类别中的可操纵性偏好样本。然后注释者与模型进行对话,以评估它们在对话过程中遵循系统提示中定义的指令一致性。下面展示了一个用于增强可操纵性的自定义系统提示示例:
你是一个乐于助人、快乐的人工智能聊天机器人,为忙碌的家庭提供膳食计划助手。这个家庭由2个成年人,3个青少年和2个学龄前儿童组成。
一次计划两到三天,第二天的计划中使用剩菜或额外的食材。用户会告诉你他们是否需要两到三天的时间。如果没有,假设是三天。
每个计划应该包括早餐、午餐、零食和晚餐。询问用户是否同意该计划或是否需要调整。在他们同意之后,提供一份考虑到家庭规模的购物清单。
始终牢记家人的喜好,如果有他们不喜欢的东西,提供替代品。如果用户没有受到启发,那就问他们这周度假时最想去的地方是哪里,
然后根据该地点的文化建议他们吃什么。周末的饭菜可能更复杂。工作日的饮食应该是快速和容易的。早餐和午餐最好是简单的食物,
比如麦片、英式松饼和预煮好的培根,以及其他快速简单的食物。全家人都很忙。一定要问他们手头是否有必需品和最喜欢的咖啡或能量饮料,
这样他们就不会忘记买。记住要精打细算,除非是特别的场合。
建模。收集偏好数据后,在奖励建模、拒绝采样、SFT 和 DPO 中利用这些数据来增强 Llama 3 的可操纵性。
二、Qwen2
Qwen2后训练阶段提升的能力范围,包括编码、数学、逻辑推理、指令遵循和多语言理解。此外,它确保模型的生成与人类价值观和谐一致,使其有益、诚实且无害。与严重依赖广泛的人类监督的传统方法不同,Qwen2侧重于以最少的人类注释进行可扩展的对齐(Cao et al.,2024(https://arxiv.org/abs/2406.01252))。从人类反馈中获取SFT和RLHF数据,最大限度地减少人工标记需求,同时最大限度地提高数据质量和可靠性。
后训练数据。 训练数据构建需要两个步骤:协作数据注释和自动数据合成。首先,从大规模指令语料库中提取数据本体,从而产生广泛且多样化的高质量指令。再对这些指令进行系统增强以包含更大的复杂性。通过人工注释,获得目标响应 以及对应的正、负 label 。随后,采用各种自动对齐策略合成大量代码、数学、指令遵循、创造性任务、角色扮演和安全领域的人工注释数据。
协作数据标注,包含以下四步:
- 自动本体提取。参考《InsTag: Instruction Tagging for Analyzing Supervised Fine-tuning of Large Language Models》,这是一种开放集细粒度标记器,用于从大规模指令数据集中提取底层本体。随后再人工精炼以保证提取准确性。
- 指令选择。参考《How Abilities in Large Language Models are Affected by Supervised Finetuning Data Composition》,对每条标签注释后的指令,评估标签多样性、语义丰富性、复杂性和意图完整性。根据这些标准选择一组代表性指令 。
- 指令进化。参考《Tree-Instruct: A Preliminary Study of the Intrinsic Relationship between Complexity and Alignment》,使用Qwen模型向现有指令添加约束或要求,从而增加其复杂性并确保数据集中的不同难度级别。
- 人工注释。使用不同的生成策略和不同规模的 Qwen 模型获得指令的多个响应。注释者根据自己的偏好对这些响应进行排名,确保最佳响应符合既定标准,生成事例数据和偏好数据。
自动数据合成。 维持指令响应的注释质量提出了大规模的重大挑战,特别是那些需要专业知识、经验、细心、耐心的注释。为了应对这些挑战,Qwen2设计了各种自动对齐策略大规模合成数据。
- Rejection Sampling 拒绝抽样。对于具有明确最终答案的数学或类似任务,应用 Rejection Sampling(Yuan et al., 2023(https://arxiv.org/abs/2308.01825) )提高解决方案质量。大型语言模型( LLMs )的任务是为每条指令生成多个响应(推理路径),然后,将推理路径正确并且模型认为合理的路径,保留下来作为示范数据。而偏好数据则是通过对比正确和错误路径生成的。
- Execution Feedback 执行反馈。对于编码任务,参考《Self-play with Execution Feedback: Improving Instruction-following Capabilities of Large Language Models》, 使用LLMs生成解决方案和相关测试用例。再通过编译和执行评估测试用例,创建演示和偏好数据。该方法也适用于评估指令遵循。
- Data Repurposing 数据再利用。对于文学写作任务,参考《Large Language Models are Superpositions of All Characters: Attaining Arbitrary Role-play via Self-Alignment》,Qwen2汇总了公共领域的高质量文学作品,并使用LLMs制定不同详细程度的说明。这些说明与原始作品配对,作为演示数据。例如,为了构造角色扮演数据使其具有生动的responses,Qwen2从维基百科等知识库中获取详细的角色档案,并指导LLMs生成相应的指令和响应。此过程类似于阅读理解任务,可确保角色个人资料的完整性。
- Constitutional Feedback 宪法反馈。参考《Constitutional AI: Harmlessness from AI Feedback》,宪法AI是指导LLMs根据预定义的一组原则生成响应的过程。为了确保遵守安全和价值观等准则,Qwen2编制了宪法数据集。该数据集描述了应遵循的原则和应避免的原则。用来指导LLMs做出符合或偏离这些指南的回答,作为演示和偏好数据参考。
SFT。Qwen2收集了广泛的教学数据集,包含超过 500,000 个示例,涵盖指令遵循、编码、数学、逻辑推理、角色扮演、多语言和安全等技能。模型微调两个epoch, 序列长度 32 k 。为了优化学习,学习率 Ir 从 逐渐降低到 。为了解决过拟合问题,设置weight decay=0.1,梯度被裁剪为最大值 1.0。
RLHF。RLHF 包括两个连续阶段:offline训练和online训练。离线训练阶段,使用DPO算法在预编译的偏好数据集 上, 最大化 和 的可能性差异(DPO,Rafailov 等人,2023(https://arxiv.org/html/2407.10671v4%23bib.bib59))。在线训练阶段,模型利用奖励模型进行即时反馈,实时迭代地完善其性能。具体来说,从当前策略模型中采样多个响应,奖励模型选择最喜欢和最不喜欢的响应,形成每一轮迭代的 DPO 偏好对。此外,采用在线合并优化器(Lu et al.,2024a(https://arxiv.org/abs/2405.17931))减轻对齐税,缓解模型对齐后的性能下降。
三、Nemotron-41 奖励模型 RM
Nemotron-4收集了 10k 人类偏好数据集,称为 HelpSteer2,遵循 HelpSteer(https://arxiv.org/abs/2311.09528) 类似的方法。并开源发布,详细信息参考 Wang et al. (2024(https://arxiv.org/abs/2406.08673))。
与欧阳等人采用的成对排名模型不同。Nemotron-4发现多属性回归奖励模型可以更有效地将真正的有用性与不相关性分开(例如仅仅因为其长度而更喜欢较长但无用的响应)。此外,回归模型更擅长预测细粒度奖励,捕捉相似响应之间有用性的细微差别。回归奖励模型建立在 Nemotron-4-340B-Base 模型之上,用新的reward “head”替换最终的 softmax 层。这个“head”是一个线性投影,它将最后一层的隐藏状态映射到 HelpSteer 属性(有用性、正确性、连贯性、复杂性、详细性)的五维向量中。在推理过程中,将这些属性值通过加权和的方式聚合,作为总体奖励。更多细节参考 Wang et al. (2024(https://arxiv.org/abs/2406.08673))。这样的模型在 RewardBench (Lambert et al., 2024) 上表现非常好,达到了发布时的最高准确率。不同类别的得分如表4所示。
Nemotron-4-340B-Reward 的总体得分证明了 Nemotron-4-340B-Base 模型的优势、HelpSteer2 数据集的高质量以及方法的有效性。此外,该奖励模型为训练 Nemotron-4-340B-Instruct 提供了坚实的基础。
2 对齐数据
Nemotron-4开发了一套synthetic data generation (SDG) 解决方案。整个对齐过程中(SFT+偏好训练)超过 98%是合成数据,仅使用约 20K 人工注释数据(10K 用于监督微调,10K Helpsteer2 数据用于奖励模型训练和偏好微调)。整个数据准备过程包括五个部分:构造prompts、合成对话、合成偏好数据、迭代式弱到强对齐和其他数据源。
2.1 构造prompts
准备prompt:合成prompts是 SDG 第一步。这种方法能够控制提示分布以覆盖不同的场景。提示多样性是多维的,涉及任务多样性(例如写作、开放式问答、封闭式问答)、主题多样性(例如词干、人文、日常生活)和指令多样性(例如 json output, # paragraph, Yes-or-No answer)。为了确保prompts维度多样性,采用类似UltraChat(Ding 等人,2023)和 CAMEL(Li 等人,2023)的方法来生成prompts。具体来说,使用Mixtral-8x7B-Instruct-v0.1(Jiang et al., 2024)作为生成器,为开放式问答、写作、封闭式问答、数学和编码等任务分别合成提示。对于每个提示任务,使用一组不同的主题或关键字集合来合成prompt,以使其涵盖广泛的主题。还根据提示生成指令,明确定义期望响应的格式,例如“输出必须采用 json 格式”。此外,生成两轮提示,其中包括用户助手交互历史记录,以提高模型的对话技能。下面分别讨论合成单轮提示、合成指令遵循提示和合成两轮提示的pipeline。
合成单轮prompt:图 2 展示了合成单轮提示的pipeline。首先,提示生成器输出一组不同的宏观主题。然后,再为每个合成的宏观主题输出相关子主题。最终收集了 3K 个主题(包括宏观主题、子主题和人工收集主题)。
- open Q&A prompts。提示生成器生成与每个给定主题相关的open Q&A prompts(例如,“什么是机器学习?”)。然后,要求生成器将问题细化地更加详细和具体(最初生成的问题通常非常短)。
- writing。对于写作类提示(例如,“写一篇关于机器学习的论文。”),提示包括基于给定主题生成特定类型的文本 (例如,时事通讯、散文, Ding 等人(2023))。再要求生成器细化生成的任务以包含更多细节。
- closed Q&A prompts。使用 C4 数据集中的文本(Raffel et al., 2020)。对于每个给定的文档,要求生成器输出受尊重的指令(例如,“总结给定的文本”或“根据给定的文本,xxx 是什么?”)。然后,使用手动定义模板将文档与指令连接起来。
- math&coding。从数学和 Python 编程中收集一组不同的关键字(例如除法、循环、lambda 函数)。然后生成数学和 Python 编程的高级主题和子主题。接下来,提示生成器分类出维基百科条目中,与数学或 Python 编程相关的内容。最后,解析 Python 预训练数据以收集常见的 Python 关键字,并手动收集数学相关的关键字。
最终,收集得到 Python 关键字 12K ,数学关键字 17K。然后,提示生成器生成与每个关键字相关的问题。附录 B 给出了以上过程用到的合成prompts。
合成指令遵循prompts:例如,“写一篇关于机器学习的文章。您的回复应包含三段。” 首先,随机选择一组合成提示。对于每个合成提示,参考 Zhou et al. (2023(https://arxiv.org/abs/2311.07911)) 的“可验证”指令模板,随机生成一条合成指令(例如,您的回答应该包含三个段落)。然后将提示和指令用人工定义模板连接在一起。除了单轮指令跟随提示之外,还构建了多轮指令跟随提示,其中指令适用于所有未来对话,例如,“Answer the question and all following questions according to: [BEGIN OF INSTRUCTION] Answer with three paragraphs. [END OF INSTRUCTION]”。第二轮指令跟随提示需要根据给定的指令修改先前的响应。
合成两轮prompt:虽然sft阶段数据集通常是多轮的,但偏好数据通常是单轮的(Bai et al., 2022; Cui et al., 2023)。为了提高模型在偏好微调中的多轮对话技能,需要构建两轮提示的偏好数据集。具体地,该提示包含一个用户问题、一个助手答案和另一个用户问题,形式为“用户:XXX;助手:XXX;用户:XXX;”。先从 ShareGPT(RyokoAI,2023)获取第一个用户提示,再使用中间指令模型生成助手响应和下一回合问题。
现实世界的LMSYS prompts:从 LMSYS-Chat-1M (LMSYS) 中提取提示(Zheng et al., 2023)。以平衡的比例组合所有提示,并将它们分为两个不同的组,一组用于监督学习,另一组用于偏好学习,确保两者之间不重叠。在监督学习数据组中,从 LMSYS 中删除被标记为潜在不安全的提示。在偏好学习数据组中保留这些提示,以允许模型学习区分安全和不安全的响应。图 3 对合成单轮提示与 LMSYS 提示进行了比较。具体来说,对于每组提示,使用 Mixtral-8x7B-Instruct-v0.1 模型生成响应,并使用 Nemotron-4-340B-Reward 注释响应的有用性分数。图 3 有用性分布显示合成提示的平均有用性高于 LMSYS 提示。由于简单提示更容易“有帮助”,这意味着 LMSYS 提示平均难度高于合成单轮提示。
2.2 合成对话
合成多轮对话:为了培养多轮对话能力,将每个对话设计为三轮。通过迭代式角色扮演,模型在助手和用户角色之间交替。注意,为了在用户轮引发所需的行为,必须为模型提供明确的提示,定义不同的用户个性(如附录 C 所述),并附有对话历史记录。质量控制上,通过排除礼貌性陈述(例如“谢谢你……”、“当然我很乐意……”)来对用户进行后处理,以模仿现实世界的用户问题。采用贪婪采样进行演示数据合成。还利用 Nemotron-4-340B-Reward 评估对话质量,为每个样本分配分数并过滤掉低于预定阈值的样本。
2.3 合成偏好数据
使用 10K 人工注释的 HelpSteer2 偏好数据训练 Nemotron-4-340B-Reward,但还需要更多(更多样化prompt领域、带顶级中间模型的高质量响应以及带有ground-truth信号)的偏好数据。偏好数据为三元组形式(prompt, chosen response, rejected response)。
回复生成:偏好数据包含合成的单轮提示、指令跟随提示、两轮提示以及现实世界提示(包括 ShareGPT 提示、LMSYS 提示以及 GSM8K (Cobbe et al., 2021) 和 MATH ( Hendrycks 等人,2021)的训练数据集)。对于每个提示,使用多个随机中间模型生成响应。以确保偏好数据集的不同响应。此外,当响应是来自(根据 MT-Bench 表现)最佳的Nemotron-4模型的多个随机生成时,还构建了更具挑战性的合成偏好示例。这些具有挑战性的偏好示例使模型能够进一步改进自身。
真值标签:给定每个提示的多个响应,需要判断他们的偏好排名并选择 chosen response 和 rejected response。一些任务可以使用真实标签(例如,GSM8K 和 MATH 训练集答案)或验证器(例如 python 程序验证指令响应)来评估。
LLM评估和RM评估:在 LLM-as-Judge 中,为 LLM 提供prompt和两个响应,并要求其比较两个响应。为了避免位置偏差,询问 LLM 两次并交换响应顺序。只有两次判断一致时,才选择一组有效的(提示、选择响应、拒绝响应)三元组。判断提示位于附录 D 中。早期偏好数据迭代主要是 LLM 评估。在 RM-as-Judge 中, Nemotron-4-340B-Reward预测每对(提示、响应)的奖励,并根据奖励决定偏好排名。奖励基准分数 (Lambert et al., 2024(https://arxiv.org/abs/2403.13787)) 显示,RM评估比LLM评估更准确。具体来说,在“Chat-Hard ”类别中,选择和拒绝的响应很难区分,RM评估比 LLM 评估要好得多,平均准确度为 0.87 比 0.54。实验显示 Chat-Hard 类别分数对于合成数据生成中的偏好排名特别重要。因此,后期的数据集迭代使用RM评估。
2.4 迭代式弱到强对齐
什么模型最适合作为生成器?生成器强度与数据质量有何关系,以及如何改进数据生成器。受弱到强泛化(Burns et al., 2023(https://arxiv.org/abs/2312.09390))的启发,Nemotron-4开发了一种新颖的迭代方法逐步完善数据以实现最优。这种方法结合了对齐训练和数据合成的优势,使它们能够相互增强并推动持续改进。
图4说明了迭代式弱到强对齐的流程。模型质量(无论弱还是强)是由多个评估指标的组合来定义的(参见原论文2.4节base model 和3.4.1节instruct model)。使用一个初始对齐模型作为对话和偏好数据的生成器。然后使用这些数据通过监督微调和偏好训练得到更好的基础模型。实验发现教师模型并没有限制学生模型的上限,随着基本模型和对齐数据的细化,新对齐的模型能够大大超过初始对齐模型。
对齐过程与基础模型预训练并行执行。第一次迭代中,选择 Mixtral-8x7B-Instruct-v0.1 作为初始对齐模型。生成的数据用于训练 Nemotron-4-340B-Base 的中间检查点(称为 340B-Interm-1-Base)。340B-Interm-1-Base 优于 Mixtral 8x7B Base 模型,这反过来又使生成的 340B-Interm-1-Instruct 模型超越 Mixtral-8x7B-Instruct-v0.1 模型。表明弱监督可以激发强能力。
第二次迭代中,利用 340B-Interm-1-Instruct 模型作为新的数据生成器。鉴于其比 Mixtral-8x7B-Instruct-v0.1 更强,第二次迭代中生成的合成数据质量比第一次更高。所得数据用于将 340B-Interm-2-Base 训练为 340B-Interm-2-Chat。这个迭代过程产生了自我强化的飞轮效应,其改进可以归因于两个方面:(1)数据集相同时,基础模型越强,产生的指令模型就越强。(2)基础模型相同时,数据质量更高,产生的指令模型更强。整个对齐过程进行多轮数据生成和细化,不断提高模型质量。
2.5 其他数据源
补充几个特定领域的数据集扩充多样性,如下。
- 主题遵循:纳入 CantTalkAboutThis 训练集(Sreedhar et al., 2024),其中包括广泛主题的合成对话,并故意穿插分散注意力的轮次,以将聊天机器人从主题转移开。该数据集有助于增强模型在面向任务的交互过程中专注于预期主题。
- 无法完成的任务:某些任务模型可能无法自行完成(例如互联网访问或实时知识)。为了减轻这些情况下的幻觉,使用人工编写示例(参见附录 A)提示 LLM 生成各种问题。然后,明确要求 LLM 做出拒绝回应,收集这些回应并将其与相应的问题配对。
- STEM数据:增加五个STEM相关数据集。Open-Platypus (Lee et al.,2023(https://larxiv.org/html/2406.11704v1%23bib.bib30)), PRM800K (Lightman et al.,2023(https://arxiv.org/html/2406.11704v1%23bib.bib33)), SciBench(Wang et al.,2023a(https://arxiv.org/html/2406.11704v1%23bib.bib64)), ARB (Sawada et al.,2023(https://arxiv.org/html/2406.11704v1%23bib.bib56)), openbookQA (Mihaylov et al.,2018(https://arxiv.org/html/2406.11704v1%23bib.bib39))。
- 文档推理和QA:使用 FinQA 数据集 (Chen et al.,2021b(https://arxiv.org/html/2406.11704v1%23bib.bib10))提升数值推理,使用人工标注数据集 (Liu et al.,2024(https://arxiv.org/html/2406.11704v1%23bib.bib35))提升上下文QA,使用 wikitablequestions (Pasupat and Liang,2015(https://arxiv.org/html/2406.11704v1%23bib.bib49))提升模型半结构数据理解能力。
- 函数调用:使用(Glaive AI,2023(https://arxiv.org/html/2406.11704v1%23bib.bib20))数据子集。
3 对齐算法
参考(Ouyang et al., 2022),涉及两个阶段:监督微调和偏好微调。
3.1 监督微调
同时学习多种能力有时会导致它们之间的冲突,尤其是编码任务。为了解决这个问题, Nemotron-4 设计了一个两阶段 SFT 策略,这种方法在所有下游任务中都能产生优异的结果。
代码 SFT。 第一阶段纯粹进行代码sft。此阶段需要大量代码数据才能有效提高模型编码能力。为了有效地合成编码数据,开发了 Genetic Instruct,这是一种模仿进化过程的方法,利用 self instruction(Wang 等人,2022(https://arxiv.org/abs/2212.10560))和wizard coder mutations(Luo 等人,2023(https://arxiv.org/abs/2306.08568))从有限的高质量种子中合成大量数据。此外,还引入了一个适应度函数,它使用 LLM 评估生成的指令及其解决方案的正确性和质量。通过评估和检查的样本将被添加到种群池中,持续数据进化流程,直到达到目标规模。整个pipeline旨在实现多个群体的高效并行执行,从而实现可扩展性。经过广泛的重复数据删除和过滤后,保留了约 800K 精选数据集用于 Code SFT 训练。固定lr=3e-7,batch size=128 ,epoch=1 。
通用 SFT:第二阶段进行通用sft,利用 200K 混合数据集(包含各种任务,如第2节对齐数据所述,还包括代码 SFT 阶段 2% 的样本,以降低遗忘风险)。batch size=128 ,epoch=3,lr取值范围[1e-7, 5e-7]。这两个阶段都仅计算助手回合的损失。
3.2 偏好微调
监督微调之后是偏好微调,数据格式为三元组(prompt, chosen response, rejected response)。偏好微调涉及多次迭代,直接偏好优化 DPO(Rafailov 等人,2024(https:///proceedings.neurips.cc/paper_files/paper/2023/hash/a85b405ed65c6477a4fe8302b5e06ce7-Abstract-Conference.html))和本文提出的新对齐算法RPO(奖励感知偏好优化)。
DPO:DPO算法通过最大化所选响应和拒绝响应之间的隐式奖励差距优化策略网络。但实验观察到选择的响应和拒绝的响应的likelihood随着差距的增加而一致下降,即使选择高质量响应。当训练足够长时,策略网络往往会过拟合,并且各种指标之间此消彼长(例如 MT-Bench提升,0-shot MMLU下降)。这里在所选响应上添加加权 SFT 损失,防止策略网络大量偏离偏好数据,特别是因为偏好数据不是从参考策略生成的。为了避免模型学习低质量的选择响应,当真实情况不可用时,使用 Nemotron-4-340B-Reward 挑选高质量选择响应示例。这会产生一个包含 16 万示例(包括各种任务)的偏好数据集。训练参数为batch size=256 ,epoch=1 ,lr调整区间[3e-8, 3e-7],DPO loss kl正则化系数调整区间[3e-4, 3e-3],SFT损失的权重调整区间[1e-5, 1e-3]。
RPO:由于不了解两个响应的质量差距,DPO 努力最大化所选响应和拒绝响应的隐性奖励差距,会导致过拟合和不必要的“忘记”高质量拒绝响应。为了克服这个问题,提出奖励感知偏好优化(RPO),它使用策略网络定义的隐式奖励来近似奖励差距。新的损失函数如下:
其中 是要训练的策略网络;ref 是参考策略;(,--)分别对应提示、选择响应、拒绝响应;* , 分别是奖励模型选择和拒绝响应的奖励值。与 DPO 相比, RPO 学习近似奖励差距, 从而防止过拟合问题。根据距离度量 和奖励模型 的选择, RPO 与现有方法相关, 例如 DNO、 cDPO 、IPO、Distill DPO和 BRAINn。实验中 。使用 DPO 训练的检查点作为初始化和参考策略, 再使用 RPO 训练模型。具体来说, 使用 30 万的偏好数据集, 并对所选响应进行不太严格的质量过滤。再对所选择的SFT loss添加较小的正则化系数 (1e-5)。实验固定 =1、 = 3-7, KL 系数 调整区间为[1e-3, 1.]。RPO 一共迭代3次,每次迭代都使用前一次迭代的检查点作为初始化和参考策略。三次迭代后即得到最终的 Nemotron-4-340B-Instruct。
四、AFM
后训练过程包含两个阶段:SFT和RLHF。Apple提出了两种新的后训练算法:(1)带有教师委员会(iTeC)的拒绝采样SFT算法。(2)具有镜像下降策略优化和留一法评估 (MDLOO)的RLHF。
3.1 后训练数据
使用混合数据策略,包含人工注释数据和合成数据。并进行了广泛的数据管理和过滤程序。
人工注释数据。 包括演示数据和人类偏好反馈数据。
- Demonstration data:从各种来源收集高质量人工注释演示数据集。包括系统级和任务级指令,及其相应的响应。除了针对涵盖 Apple Intelligence 功能的多样化任务分配外,还重点关注关键数据质量标准,包括有用性、无害性、演示和响应准确性。确保删除数据中用户个人身份信息。
- Human preference feedback:指导人类注释者对同一提示的两个模型响应进行比较和排名,以收集偏好标签。此外,还使用单面问题指导这个过程。这些问题让评估者对模型响应质量的各个方面进行评分,包括指令遵循、安全性、真实性和演示,并保留这些标签用于模型训练。与演示数据类似,数据质量对于反馈数据至关重要,整个过程联合迭代数据和模型质量。
合成数据
在强大的奖励模型指导下,AFM 能够生成高质量的响应,甚至优于人类注释。因此,使用合成数据扩展提示集以增加多样性。AFM 后训练合成数据包括三个领域:数学、工具使用和编码。
数学。 数学合成数据主要涉及两个阶段:生成数学问题并产生相应的解决方案。对于数学问题合成,采用了几种“进化”策略,其中一组提示的种子被转换为更大的一组不同的提示:
- Problem rephrase and reversion(问题改写和回归)。遵循[Yu et al.,2023(https://arxiv.org/abs/2309.12284)]中的方法,提示 AFM 重新表述种子数学问题,并策划反向问题,以便在提供最终答案时在原始问题陈述中导出特定数字。
- Problem evolution(问题进化)。受到指令进化技术的启发[Xu et al.,2023(https://larxiv.org/abs/2304.12244)],给定种子问题集 提示 AFM 生成两组不同的数学问题, 即深度演化 和广度演化 。深度演化通过增加复杂性来增强指令, 而广度演化则提高了主题覆盖范围。对于两个进化数据集, 首先使用embedding模型进行重复数据删除,然后提示LLMs确保数学问题的连贯性和可解性。此外, 对于 分配了难度级别, 只选择分数高于指定阈值的数学问题。
通过一组增强的数学问题,提示 AFM 针对每个问题合成N个带COT推理的回答。如果初始种子数据具有ground truth label,则它们可以用作“结果奖励信号”过滤合成答案。对于需要较少推理步骤的问题,正确的最终答案通常与正确的中间步骤相关联。如果直接答案检查不成功或无法获得真实答案,将询问LLM评估答案的正确性。将过滤后的答案输入训练数据后,可以大幅提高模型的数学能力。
工具使用。 例如function call,code interpreter以及浏览混合数据。模型能力首先通过合成数据进行引导,该数据主要集中于单一工具的使用场景。然后,收集人工注释以改进多工具和多步骤场景的模型功能。通过将原始工具与其他类似工具混合,进一步增强人工策划的函数调用数据,以增加工具选择的难度。此外,我们从人工整理的函数调用数据中合成并行函数调用,以实现新的功能,并基于人工整理的函数调用数据和一般的SFT数据生成工具意图检测数据,从而缓解工具调用过度触发的问题。
代码。 合成代码数据集涉及带有拒绝采样的self-instruct方法。这种方法使模型能够自主学习和生成数据。从 71 个不同的编程主题作为种子开始,提示模型生成一个类似于编程面试的初始问题池。对于每个问题,模型都会生成一组单元测试和许多潜在的解决方案。然后,基于 execution 执行拒绝采样方法,选择最佳解决方案。这涉及到通过每个单元测试来编译潜在的解决方案并执行它们。选择成功执行次数最多的解决方案。最终产生(question, test cases, solution)三元组集合。以单元测试的通过数量验证数据集质量,最终产生 12K 高质量sft三元组数据。
3.2 微调 SFT
数据选择。 建立一系列数据质量守卫, 包括内部人工标记员的评级、基于模型的自动过滤技术以及文本embedding的重复数据删除。还通过各种合成数据生成方法和拒绝抽样来扩大混合数据集。调整混合比。 为了调整混合权重, 将其视为优化问题。具体来说, 给定一组权重 , 其中 表示混合物中特定成分的比例, 用以下方法训练模型 , 并根据一组基准评估质量变化。广泛运行此类实验可以有效地识别最佳混合数据集,并删除影响最小的子集。训练超参数。 AFM-Server固定Ir=5e-6, AFM-Device固定Ir=2e-5, dropout=0.1。由于评估指标在不同的 checkpoint 有所波动, 基于自动评估基准和奖励模型的best-of-N选择最佳 checkpoint, 以测试强化学习的提升空间。
3.3 RLHF
首先训练一个强大的奖励模型 RM 并将其应用到下面的 iTeC 和 MDLOO 两种RLHF算法中。附录 E(https://arxiv.org/html/2407.21075v1%23A5) 描述了 RLHF pipeline的更多细节。
3.3.1 奖励模型 RM
使用收集的人类偏好数据训练奖励模型。每个人类偏好数据项包含一个提示和两个响应以及人类标签,内容如下:
- 首选响应以及偏好水平,偏好水平包括:明显更好、更好、稍好、可忽略不计。
- 对每个回答进行单方面评分,衡量每个回答的指令遵循性、简洁性、真实性和无害性。
RM训练使用标准流程,并做了两点创新:
- 设计一个考虑人类偏好水平的soft label loss函数。
- 将单个回复评分作为RM正则化项。
采用常用的 Bradley-Terry-Luce (BTL) 模型训练RM。在此模型中,两种响应的差异被建模为奖励差异的 sigmoid 函数。soft label loss 函数表明,当偏好水平较高时(例如一个响应明显优于另一个),这种概率就较高,反之亦然。这与 Llama 2[Touvron et al.,2023(https://arxiv.org/html/2407.21075v1%23bib.bib51)]中 margin-based 的损失函数不同,并且效果更好。单边评分作为正则化项可以有效提高奖励模型的准确性。更多细节参考附录 E.1(https://arxiv.org/html/2407.21075v1%23A5.SS1)。
3.3.2 Iterative teaching committee (iTeC)
该框架结合了各种偏好优化算法,包括拒绝采样RS、直接偏好优化 DPO 及其变体(如IPO(https://proceedings.mlr.press/v238/gheshlaghi-azar24a.html) 和在线RL)。
Iterative committee。apple在RLHF 中学到的最重要的经验教训之一是使用一组不同的性能最佳模型来刷新在线人类偏好数据收集。具体来说,对于每批人类偏好数据收集,建立一系列从 SFT、RS、DPO/IPO 和 RL 训练的最新有前途的模型,以及之前迭代中的最佳模型,将其称为“model committee”。从最新的“model committee”抽样收集成对的人类偏好响应。在获取每批人类偏好数据后,更新奖励模型,并使用偏好优化算法集合进一步训练一组新模型。然后,使用新的“model committee”继续下一轮迭代 RLHF 数据收集。
Committee distillation。进一步对模型委员会进行拒绝抽样(蒸馏),并使用最新的奖励模型作为重新排序器。在提示级别重新排名模型响应。具体来说,对每个提示,使用委员会中每个模型的多个响应进行采样,并使用最新的RM为每个提示选择最佳响应。这能够结合不同偏好优化算法训练的模型的优点。例如,apple发现利用反例的算法(例如在线 RLHF、DPO、IPO)可以提高数学推理技能,而拒绝采样 RS 可以有效学习指令遵循和写作技能。
Scaling up distillation。对于较大的模型,仔细迭代数据质量和模型质量比数量更重要。对于较小的模型,扩大蒸馏提示数量,可以实现小模型巨大的改进。最终的 AFM-on-device 模型根据模型委员会生成的超过 100 万个高质量响应进行训练。
3.3.3 Online RLHF algorithm: MDLOO
在本节中,我们介绍在线强化学习算法 - 带有留一估计的镜像下降 MDLOO,我们在模型训练期间解码响应并应用 RL 算法来最大化奖励。
使用常规的 RLHF 目标来最大化 KL 惩罚奖励函数[Ouyang et al.,2022(https://arxiv.org/html/2407.21075v1%23bib.bib40)]。奖励函数如下:
其中 表示输入 x 和输出 y 的奖励函数。该公式通过减去加权的对数比值来调整奖励, 权重系数为 , 而对数比值表示策略 与参考策略 的比率。我们考虑将整个回复的生成视为一个动作的bandit设置, 并且不使用价值网络(即the critic)来获得每个token的奖励或优势。
与常用的 RLHF 算法(例如 PPO[Schulman et al.,2017(https://arxiv.org/html/2407.21075v1%23bib.bib45)])类似,使用基于信任域的策略迭代算法。并在在线 RL 算法做出了两点设计:
- 使用Leave-One-Out(LOO)估计器来估计prompt-response对的优势,类似于最近的工作[Ahmadian et al., 2024(https://arxiv.org/html/2407.21075v1%23bib.bib3) ] 。
- 使用镜像下降策略优化(MDPO,Mirror Descent Policy Optimization) [Tomar et al., 2020(https://arxiv.org/html/2407.21075v1%23bib.bib50) ]来优化策略,这与常用的基于裁剪的 PPO 方法不同。
更具体地,在算法的解码阶段,我们为每个提示解码多个回复,并将每个回复的优势分配为该 (提示,回复) 对的奖励与同一提示生成的其他回复的平均奖励之间的差值。直观上,该估计器旨在衡量响应与典型响应相比好多少。根据经验,这个优势估计器对于稳定 RL 算法并获得良好的结果至关重要。此外,使用基于KL正则化的信任域方法,即MDPO,来控制每次迭代中的策略变化。该算法比 PPO 更有效。更多详细信息参阅第 E.2 节(https://arxiv.org/html/2407.21075v1%23A5.SS2)。
五、Yi
微调强调数据质量而不是数量。与 LIMA[94(https://arxiv.org/html/2403.04652v1%23bib.bib94)]和 DEITA[48(https://arxiv.org/html/2403.04652v1%23bib.bib48)]方法一致,侧重于数据选择而不是规模。由于规模小于10K,能够检查和优化每一条数据。下面讨论数据构建和训练细节。
1 数据预处理
质量控制。微调数据集由不到 10K 的多轮指令-响应对话组成,每条都经过多次迭代和用户反馈完善。
使用以下技术来改进提示分布选择、响应格式、 COT 格式、消除幻觉和重复:
- 从 WizardLM [ 83(https://arxiv.org/html/2403.04652v1%23bib.bib83) ]中汲取灵感,开发了复合指令并逐步改进以增加其复杂性。这种方法显着减小了 SFT 数据的大小;
- 对于响应格式,从 LIMA [ 94(https://arxiv.org/html/2403.04652v1%23bib.bib94) ]扩展默认样式。总体而言,答复采用 “介绍-正文-结论” 的格式,其中正文通常是要点列表;
- 对于 CoT 数据格式化,使用了“Step-Back”模式,灵感来自Cheng 等人[ 92(https://arxiv.org/html/2403.04652v1%23bib.bib92) ] 。先摘要出更高级别的解决方案,再深入推理原始的具体问题。
- 为了减少幻觉,检查并确保响应中的知识不在模型中,并消除可能导致记忆的响应;
- 为了减少重复,重写微调数据中容易被忽略的重复数据。
多样性和混合性。收集广泛的开源提示,涵盖问答、创意写作、对话、推理、数学、编码、安全、双语能力等领域。参考 InsTag[49(https://arxiv.org/html/2403.04652v1%23bib.bib49)],开发了一个指令标记系统。通过设计注重多样性的采样算法,仔细平衡各个标签之间的指令分布。为了平衡不同能力获得最佳数据比例,使用近似网格搜索确定数据混合。受到董等人的激励 [20(https://arxiv.org/html/2403.04652v1%23bib.bib20)],对每种能力的 {1, 1/2, 1/4, 1/8, 1/16, 1/32, 1/64} 比例进行实验。搜索过程使用结果验证和人工评估。
长上下文数据。将短数据与长文档问答数据混合。使用合成数据构建文档QA数据。具体来说,将多个文档随机连接成一个序列,从长序列中采样一个或多个段落,并要求模型根据采样的段落构建QA对。主要是ICL背诵和改写,要求模型先背诵或改写原始段落,再给出答案。这种数据格式鼓励模型检索,从而减少幻觉。
ChatML Format。数据格式极大地影响了模型的最终性能。使用 ChatML 风格的格式[53(https://arxiv.org/html/2403.04652v1%23bib.bib53)]。这种结构化方法使模型能够区分各种信息类型,例如系统配置、用户输入和助手响应。
2 训练方法
训练参数。微调使用标准 next-word prediction loss,仅计算响应损失。使用 AdamW 优化器 和β1=0.9,β2= 0.999,ϵ=10−8。seq_length=4096,batch size=64。step=300,constant lr=1e−5、weight decay=0.1、最大阈值 1.0 的梯度裁剪,以及 NEFTune[34(https://arxiv.org/html/2403.04652v1%23bib.bib34)](Yi-34B-Chat 的 noise scale=45,Yi-6B-Chat 的 noise scale=5)。
安全对齐。根据[24(https://arxiv.org/html/2403.04652v1%23bib.bib24),35(https://arxiv.org/html/2403.04652v1%23bib.bib35)]中的现有研究,首先建立一个全面的安全分类法。该分类法涵盖了广泛的潜在问题,包括环境不和谐、迷信、宗教敏感性、歧视性做法、药物滥用、暴力行为、非法活动、仇恨言论、违反道德行为、侵犯隐私、自残、色情内容、心理健康问题和网络安全威胁。收集此类数据集以实现稳健对齐,并将它们与 SFT 数据混合。还在对齐阶段包含了一组有针对性的模拟攻击场景的提示,这有效提高了模型针对恶意使用的弹性。
长上下文窗口支持。改进了计算通信重叠、序列并行性和通信压缩,以支持高达 200K 上下文长度的持续预训练和微调。改进方法完全基于工程,没有修改模型架构(如sparse, local, or sliding window attention等),即使输入是 200K,模型仍然使用完全注意力。
六、GLM-4
五月底智谱放出了GLM-4的技术报告,开源GLM-4-9B,总结了整个系列从预训练到agent的各个方案。这里简单梳理一下后训练相关技术。
模型结构
- No Bias Except QKV:除了QKV之后都不使用bias,这样可以提升训练速度。此外还发现不使用bias在长度外推的能力有微微提升。
- 使用RMSNorm和SwiGLU。
- 使用2D的RoPE。
- 使用GQA,以减少推理的KV cache需求。由于GQA相比MHA有更少的参数,把FFN的大小增加到10/3的hidden size来保持模型总参数基本不变。
Alignment。主要应用了SFT+RLHF技术。在sft中,团队发现真实的人类prompt和交互,比template-based的生成数据和LLM合成数据要好得多。RLHF可以进一步帮助缓解response排斥、安全性、双语混合生成,以及多轮问答一致性等问题。
后训练技术点
- LongAlign:参考《Longalign: A recipe for long context alignment of large language models》能把GLM-4的推理长度提升到128k,并且效果达到Claude 2和GPT-4-turbo-1106 的水平。
- ChatGLM-Math:参考《Chatglm-math: Improving math problem-solving in large language models with a self-critique pipeline》给出了一套通过self-critique提升数学能力的方法。
- ChatGLM-RLHF:参考《Chatglm-rlhf: Practices of aligning large language models with human feedback》总结了PPO和DPO的应用效果。
- Self-Contrast:参考《Extensive self-contrast enables feedback-free language model alignment》给出了Self-Contrast的策略,可以让模型自动生成大量正负样本对用于RLHF。
- AgentTuning:参考《Agenttuning: Enabling generalized agent abilities for llms》包括agent的训练框架和AgentInstruct 指令数据集(代理和环境之间的高质量交互轨迹)。
- APAR:参考《Apar: Llms can do auto-parallel auto-regressive decoding》总结了auto-parallel auto-regressive的并行解码生成策略。训练llm规划它们的(并行)生成过程并执行APAR生成,以提高llm对层次结构响应的推理速度。
GLM-4 All Tools。集成了各种技术,流程如下。
安全对齐。对每个训练样本进行安全性评估,移除任何具有潜在风险的样本。在比较多个模型输出时,无害性也是偏好对齐的重要标准。设计一个红队,持续向模型提出棘手的问题,以引发潜在的不安全回答。收集所有来自GLM-4的有害问答对,并通过人工标注改进它们,以进一步对齐模型。使用 SafetyBench(https://arxiv.org/abs/2309.07045) 对GLM-4模型进行评估,该评估从七个维度考察每个模型:伦理与道德、非法活动、心理健康、冒犯性、身体健康、隐私和财产、不公平和偏见。
七、Gemma2
1 模型架构
Local Sliding Window and Global Attention。在每个其他层中交替使用局部滑动窗口注意力(Beltagy 等人,2020b(https://arxiv.org/html/2408.00118v3%23bib.bib11),a(https://arxiv.org/html/2408.00118v3%23bib.bib10))和全局注意力(Luong 等人,2015(https://arxiv.org/html/2408.00118v3%23bib.bib33))。局部注意力层的滑动窗口大小设置为4096个token,而全局注意力层的跨度设置为8192个token。
Logit soft-capping。在每个注意力层和最后一层中限制 logits(Bello et al.,2016(https://arxiv.org/html/2408.00118v3%23bib.bib9)),logits 值保持在 (−soft_cap, +soft_cap)之间。使用此函数限制 logits:logits ← soft_cap ∗ tanh(logits/soft_cap)。
**RMSNorm (包括Post-norm 和 pre-norm)**。为了稳定训练,使用 RMSNorm(Zhang 和 Sennrich,2019(https://arxiv.org/html/2408.00118v3%23bib.bib57))对每个 Transformer 子层、注意力层和前馈层的输入和输出进行归一化。
分组查询注意力GQA。GQA设置 num_groups=2,推理速度提高的同时依然能保持下游性能。
2 后训练方案
首先,对纯英文文本的合成数据和人工提示-响应对的组合应用 SFT,再应用 RLHF,其中奖励模型是在标记的纯英语偏好数据上训练的,并且策略基于与 SFT 阶段相同的提示。最后,对每个阶段后获得的模型进行平均,以提高其整体性能。数据混合和后训练方案以提高有用性为基础进行设计,同时最大限度地减少安全和幻觉相关危害。
数据混合。包括内部和外部公共数据,扩展了 Gemma 1.1(https://arxiv.org/abs/2403.08295) 的后训练数据。特别是,使用提示,但不使用 LMSYS-chat-1M 的答案(Zheng et al., 2023(https://arxiv.org/abs/2309.11998) ) 。所有的数据都会经过如下所述的过滤阶段。
SFT。在合成提示和真实提示上运行行为克隆,回复由较大的教师模型生成。再在学生模型的分布上运行来自教师模型的蒸馏过程(Agarwal et al.,2024(https://openreview.net/forum%3Fid%3D3zKtaqxLhW);Gu et al.,2024(https://openreview.net/forum%3Fid%3D5h0qf7IBZZ))。
SFT 补充知识。在SFT的时候,通常的做法是把synthetic data和真实prompt数据喂给teacher模型,获取对应的response,然后用常规蒸馏方式进行训练。Zephyr和OpenHermes就是这样的做法。这样的训练方式虽然有效,但是有可能出现train-inference mismatch的问题,即student model在推理的时候出现和训练时不同的分布。为了解决这个mismatch的问题,Gemma2参考《On-policy distillation of language models: Learning from self-generated mistakes》,使用on-policy distillation的方法。具体来说,就是由student对prompt生成response,然后最小化teacher和student在这个response上的KL divergence。这样就不会出现train-inference mismatch的问题了。参考文章(https://zhuanlan.zhihu.com/p/706636709)。
RLHF。使用与 Gemma 1.1 类似的 RLHF 算法(Gemma Team,2024(https://arxiv.org/abs/2403.08295)),但奖励模型不同,奖励模型比策略大一个数量级。新的奖励模型也更注重对话能力,特别是多轮对话能力。
模型合并。通过使用不同的超参数运行pipeline,对获得的不同模型进行平均(Ramé 等人,2024(https://arxiv.org/html/2408.00118v3%23bib.bib40))《Warp: On the benefits of weight averaged rewarded policies》。
数据过滤。使用合成数据时,运行多个阶段的过滤,以删除个人信息、不安全或有毒输出、错误的自我识别数据和重复示例。实验发现包含一些数据子集以鼓励更好的上下文归因、保留措辞以及拒绝回答,可以减少幻觉现象,从而提高事实性指标表现,同时不会降低其他指标性能。
对话数据格式。Gemma 2 使用与 Gemma 1 相同的控制 token 进行微调,如表4(https://arxiv.org/html/2408.00118v3%23S3.T4)所示,但格式架构不同,参见下图对话示例。请注意,模型显式地以<end_of_turn>标识结束生成,而之前它仅生成。有关此格式结构背后的动机,请参阅 Gemma 1。
八、DeepSeek-V2
对齐数据。收集了大约 150 万个中英文的数据实例,涵盖广泛的“有用”和“无害”主题。“有用性”数据 120 万(其中通用语言任务 31.2%,数学问题 46.6%,编码 22.2%)。安全性数据30万,涵盖各种敏感主题。
监督微调。 DeepSeek-V2 微调 2 个 epoch ,学习率 5e-6。
强化学习 RL。借鉴deepseekmath,采用组相对策略优化(GRPO)(Shao et al.,2024),它放弃了ppo中的 critic model,并以 group scores 估计 baseline。具体来说,对于每个问题q, GRPO 从旧策略 采样一组输出 , 然后优化策略模型 以最大化以下目标:
公式中 和 是超参数, 是对应一组奖励计算的优势 :
实验发现,模型的数学和编码能力可以在较长时期的训练中不断提高。因此,采用两阶段强化学习训练策略,首先进行推理对齐,然后进行人类偏好对齐。第一个推理对齐阶段,训练奖励模型 用于代码和数学推理任务, 并根据 的反馈优化策略模型
第二个人类偏好对齐阶段, 采用多重奖励框架, 该框架从有用性RM中获取奖励 , 安全性RM中获取 , 以及基于规则的RM中获取 。回复的最终奖励 是:
其中,c1, c2和c3是对应的系数。
RM。为了训练奖励模型,仔细收集偏好数据,并精心进行质量过滤和比例调整。根据编译器反馈获得代码偏好数据,并根据真实标签获得数学偏好数据。对于奖励模型训练,我们使用 DeepSeek-V2 Chat (SFT) 初始化奖励模型,并使用逐点或成对损失训练它们。实验中,强化学习训练可以充分挖掘模型潜力,使其能够从可能的响应中选择正确且令人满意的答案。
九、Baichuan2
百川提出了一套综合性的系统对齐方案 Nova Alignment,包括三个阶段:提示增强系统 (PAS)、监督微调 (SFT) 和偏好对齐(PT)。本报告主要关注Nova Alignment的优化、数据、关键能力提升、系统评估四个方面。第2(https://arxiv.org/html/2410.14940v3%23S2)节详细讨论了训练、提示论证和模型合并方法。在第3(https://arxiv.org/html/2410.14940v3%23S3)节中,强调数据对齐的重要性,重点关注提示选择、响应构建和偏好数据。第4(https://arxiv.org/html/2410.14940v3%23S4)节概述关键能力挑战,详细介绍了通过 Nova Alignment 获得的具体方法和见解。最后,第5(https://arxiv.org/html/2410.14940v3%23S5)节对Nova Alignment进行了全面评估。Qwen2-Nova-72B 和 Llama3-PBM-Nova-70B 分别是基于 Qwen2-72B[95(https://arxiv.org/html/2410.14940v3%23bib.bib95)]和 Llama-3-70B[27(https://arxiv.org/html/2410.14940v3%23bib.bib27)]训练的指令模型。
2 优化
2.1 训练
SFT。学习率 1e−5,epoch取值范围[2,6],使用NOVA提出的高效训练方法(包括Packing、Multi-layer Gradient Checkpointing和Sequence Parallel策略),还应用权重衰减防止过拟合。
Reward。传统奖励模型仅保证不同反应的奖励分数的相对顺序,而缺乏绝对感知。例如:拟合奖励分数差为 可能小于 ,这鼓励模型找到破解奖励的捷径。为了减轻这种影响,添加了point wise MSE loss。奖励模型将最小化以下目标:
其中, 是一个可调系数, 和 是所选数据和拒绝数据的标准化注释绝对分数。。另外,偏好数据集中,还混合了一些没有绝对分数的数据集,例如开源 hh-rlhf[7(https://arxiv.org/html/2410.14940v3%23bib.bib7)]数据集、SHP[28(https://arxiv.org/html/2410.14940v3%23bib.bib28)]数据集。对于这些数据集中的数据,α设置为 0。通过这个目标,拟合的奖励模型更加稳健。RM 根据其大小训练 1~2 个 epoch。
强化学习。选择了GRPO[74(https://arxiv.org/html/2410.14940v3%23bib.bib74)]强化学习方法。相比 PPO[73(https://arxiv.org/html/2410.14940v3%23bib.bib73)], GRPO没有critic模型,结果与PPO相当,同时节省近一半的训练资源。此外,它比 DPO[68(https://arxiv.org/html/2410.14940v3%23bib.bib68)]和 KTO[29(https://arxiv.org/html/2410.14940v3%23bib.bib29)]等直接优化方法实现了更好的性能。GRPO优化目标如下:
2.3 提示优化
设计了一个提示增强系统(PAS),可以自动生成补充提示。pipeline一般会根据用户提示生成相应的补充内容,并输入到主模型中。PAS通常补充以下几方面内容:1)应用场景响应要求。2)基于用户意图的扩展内容,非强制语气。3)响应格式约束,例如“内容应逻辑清晰、条理清晰、易于用户理解”。
关于LLMs的检索增强生成(RAG),扩展提示内容需要在检索结果范围内;因此,在生成补充提示时,搜索关键词应作为新的约束条件。
2.4 模型合并
通过合并不同下游任务的微调模型,可以显著增强LLM的综合性能,缓解“跷跷板效应”。参考合并算法综述[96(https://arxiv.org/html/2410.14940v3%23bib.bib96)]。百川使用模型合并工具包 MergeKit[32(https://arxiv.org/html/2410.14940v3%23bib.bib32)],从不同领域选择最佳模型,应用各种合并算法,包括 Linear、Task Arithmetic[38(https://arxiv.org/html/2410.14940v3%23bib.bib38)]和 Model Stock[40(https://arxiv.org/html/2410.14940v3%23bib.bib40)]。实验表明,合并模型实现了更平衡的性能。在测试的算法中,Model Stock 始终提供最佳整体性能。
3 数据
图4(https://arxiv.org/html/2410.14940v3%23S3.F4)描绘了构建 Nova 对齐数据集的流程。最初开发了一个提示系统和一个分类模型(第3.1.1(https://arxiv.org/html/2410.14940v3%23S3.SS1.SSS1)节),它们构成了数据飞轮的基础。然后详细阐述数据构建的关键步骤,重点关注提示多样性(第3.1.2(https://arxiv.org/html/2410.14940v3%23S3.SS1.SSS2)节)和提示质量(第3.1.3(https://arxiv.org/html/2410.14940v3%23S3.SS1.SSS3)节)。此外详细介绍了生成响应的各种技术和最佳实践(第3.2(https://arxiv.org/html/2410.14940v3%23S3.SS2)节)。最后总结构建偏好数据的见解(第3.3(https://arxiv.org/html/2410.14940v3%23S3.SS3)节)。
3.1 Prompt 选择
3.1.1 Prompt系统与Prompt分类
prompt系统在数据管理、增加数据覆盖的广度和平衡性、引导模型性能迭代的可靠性和方向等方面发挥着至关重要的作用。以分类学和统计分析为指导,辅以人类专业知识,经过多次迭代和完善,我们开发出了多维度、多粒度的提示标注系统。随后,在数据生产的各个方面训练和部署自动标签分类模型。
提示系统。策划了一个多样化的 initial prompt pool,结合了来自人类提示和各种开源数据集的真实请求。利用通用模型,为提示分配初步标签。随后,通过同义词合并、长尾剪枝、层次关联等技术开发了初步的提示标注系统。再通过人工注释迭代完善扩展,精心建立了最终版本的标签系统和丰富的标签数据集。系统主要围绕六个维度精心构建:能力、属性、领域、语言、难度和提示约束。这些维度具有交织和分层结构,可以创建数千种组合类型。
- 能力涵盖LLM完成任务所需的技能,包括知识问答、文本生成、代码和逻辑推理。
- 属性提供与功能相关的独特上下文信息,例如用于文本生成的文学写作和实用写作。
- 领域将现实世界与LLM联系起来,赋予其相关性和活力,共同领域包括信息技术、历史和人文学科。
- 语言定义了表达的媒介,分为中文、外文、编程语言,再细分为简体中文、繁体中文、文言文、英文、法文、Python、C++等。
- 难度表示提示的复杂程度,分为简单、中级、困难三个级别。
- 提示约束强调了提示中约束的重要性,根据约束的数量将其分为无约束、简单约束和强约束。
这个集成框架确保了一个全面且适应性强的系统,擅长解决各种指令场景。
分类模型。在上述提示系统的指导下,最初利用先进的LLMs对提示进行分类。通过投票和低置信度样本的人工验证等方法完善这一过程,最终构建了包含数万个样本的训练集。随后,基于Baichuan2-13B[94(https://arxiv.org/html/2410.14940v3%23bib.bib94)]和标签数据,微调了专门的自动提示标注模型 (automatic prompt labeling model),在评估集上标注准确率达到 90%。相比之下,经过微调的 BERT[24(https://arxiv.org/html/2410.14940v3%23bib.bib24)]仅 81%。提示系统与自动分类模型的集成,实现了提示集的高效管理和迭代。包括评估提示的多样性和覆盖范围、分组以进行挖掘和优化,以及自动将提示与专门的人工注释者进行匹配。训练集中的每条新数据都会经历这个系统过程,确保一致且全面地处理所有与提示相关的任务,如图4(https://arxiv.org/html/2410.14940v3%23S3.F4)最左侧所示。
3.1.2 Prompt 多样性
训练了一种任务感知 embedding 模型,该模型可以精确地捕获指令差异,促进多样化。提示通常包括 instructions 和 inputs,通常格式化为与上下文信息连接的任务模板。如图4(https://arxiv.org/html/2410.14940v3%23S3.F4)右上部分,通过多粒度聚类方法提取高质量的任务感知训练数据。从粗粒度聚类开始,然后在每个类别内进行细粒度聚类。利用最长公共子序列(LCS)算法和启发式规则,从不同的细粒度簇中,将具有相似任务模板的样本识别为硬正样本,而将不具有相似任务模板的样本识别为硬负样本。然后将这些样本用于对比学习(基于Triplet Loss),以训练高质量的 embedding 模型。此外,通过设置阈值增量序列结合层次聚类原理执行分层聚类,从而增强算法的鲁棒性、效率和稳定性。与原始算法相比,这种组合方法仅使用 50%原始数据量,能够获得显着优越的结果。
3.1.3 Prompt 质量
利用 LLMs 开发了一个自动提示质量评估框架。
训练数据。受到ArenaHard评估系统[ 47(https://arxiv.org/html/2410.14940v3%23bib.bib47) ]的启发,利用基于LLM的成对判断机制来构建训练数据集。具体来说,最初采用第3.1.1(https://arxiv.org/html/2410.14940v3%23S3.SS1.SSS1)节中概述的分类模型将指令分类为 20 个不同的桶。每个桶随机选择 30 条作为数据锚点。随后,桶内的其他数据与锚点配对,并采用多个LLMs作为评估器。评估过程考虑四个维度:清晰度、实用性、复杂性和新颖性(Clarity, Practicality, Complexity, Novelty),使用三级评分系统进行成对比较。最终聚合多个锚点的评分结果为示例分配最终质量标签。
质量评分模型。考虑到性能和效率,使用上述训练数据对Baichuan2-7B [ 9(https://arxiv.org/html/2410.14940v3%23bib.bib94) ]基础模型进行微调,以开发最终的提示评分模型Quality-7B。通过对200个评估样本的测试,Quality-7B模型的评分准确性显着超过GPT-4。
3.2 Response 构造
人工注释+拒绝采样。采用不同尺寸模型和不同生成策略,对同一提示的多个响应进行采样。这些响应会根据类型标签自动分配给专门的注释器进行偏好排序。使用奖励模型或LLM作为评估器预过滤响应,形成具有分级质量区别的响应集,以收集足够丰富的偏好顺序。当最佳答案不能满足既定标准时,要求注释者修改答案,从而构建高质量的SFT和偏好数据集。
人机协同标注。使用LLM评估作为辅助信息来提高响应修改速度和质量。有时,要求评估人员根据采样的数据子集编译出一组质量缺陷,然后使用LLM进行缺陷挖掘和自动重写。标注过程积累了很多有用的技术,任何利用LLM提高标注效率的尝试方法都有增益。
指令回译。对于专业知识或创造力任务,受[ 49(https://arxiv.org/html/2410.14940v3%23bib.bib49) ]的启发,首先,收集大量高质量的文案、范文和好评帖子,再使用文本质量模型过滤高质量文本,最后,合成高质量的提示-响应对,反向翻译生成相应的创意指令。
个性化。对于同一提示,个人可能会表现出不同的答案风格偏好:有些人喜欢简洁直接的答案,另一些人则喜欢详细而结构化的回答。通过将不同响应风格描述合并到提示中,减轻了风格偏好冲突并增强了模型的风格适应性。此外,有关安全性、及时性、模型功能的提示很容易导致过度拒绝。通过严格控制拒绝比例,并将拒绝约束纳入系统提示解决这个问题。
3.3 偏好数据
高数据质量和多样性对于RLHF数据集也很重要。执行类似于第3.1(https://arxiv.org/html/2410.14940v3%23S3.SS1)节的数据过滤管道,以获得高质量和多样化的提示集合及其偏好数据集的标签。此外,使用分类标签过滤简单、时间敏感、无意义或超出能力的任务提示。由于注释者语言限制,只保留中英文提示。
对于数据标注,参考并改进了 Llama 2[82(https://arxiv.org/html/2410.14940v3%23bib.bib82)]的流程管道。使用前 3 个最先进的模型对每个提示抽取 5 个响应样本。模型生成设置 Temperature=1,TopP=0.99,TopK=50。为了进一步增加数据多样性并过滤模型已经很好回答的提示,使用 rouge[54(https://arxiv.org/html/2410.14940v3%23bib.bib54)] rule based 过滤器粗略过滤相似响应。对于不同的任务集,开发名为 AutoRator 的LLM-as-Judge[102(https://arxiv.org/html/2410.14940v3%23bib.bib102)]提示评估响应分数。综上所述,判断流程中使用的 AutoRator 分为三种类型:
- 绝对分数:判断开放响应任务(如写作、OpenQA 等)的绝对评估分数。
- 成对比较:判断两个响应是否具有相似思路,同样的结果。对于有具体答案的任务,如数学、推理。
- 黄金答案:对于有黄金答案的数据集,判断相对于黄金答案的绝对评估分数。
AutoRator 评估后,所有高分响应或相似评分响应提示都会被删除,剩余数据发送给注释者。对于一些有黄金答案的数学和推理数据,LLM-as-Judge分数已经足够好,可以直接使用。
在进行标注时,对于每组回复,不仅要求标注者打出自己喜欢的顺序,还要求标注者对有用性、书写流畅性和安全性进行绝对感觉评分。为了确保良好的注释质量并供将来使用,要求注释者突出显示错误部分,并在响应存在事实错误或逻辑错误时添加有关错误注释。如果提示的所有响应都获得较低的绝对注释分数,则被发送到3.2(https://arxiv.org/html/2410.14940v3%23S3.SS2.SSS0.Px1)节描述的响应修改过程。
由于大部分标注数据都是中文,增加其他语言的额外开源数据集,包括 hh-rlhf[7(https://arxiv.org/html/2410.14940v3%23bib.bib7)]、Helpsteer2[86(https://arxiv.org/html/2410.14940v3%23bib.bib86)]、UltraFeedback[21(https://arxiv.org/html/2410.14940v3%23bib.bib21)]和 SHP[28(https://arxiv.org/html/2410.14940v3%23bib.bib28)]。
4 关键能力
4.1 Instruction Following (IF)
如图5所示。指令遵循主要包括复杂系统消息构建、指令约束扩展、响应逆转和教科书学习。
系统消息(System Message)。一方面,从真实用户日志和开源数据收集直接系统消息,进一步将它们分解为任务描述、工作流程、输出规范、约束和初始语句。另一方面,从广泛的多轮对话中提取具有复杂约束和要求的样本,利用LLMs提取并合成相似组件。随后,采用聚类和过滤技术获得各种约束描述和其他组件池。将原始提示与约束无缝集成。同时,精心选择系统消息的其余组成部分,并将约束提示嵌入到合适位置,伴随着进化学习和约束合理化步骤。这个过程会重复多次,经过最后的过滤步骤,消除不合理系统消息,形成一个全面的系统提示数据库(确保系统消息涵盖多种任务类型,例如角色扮演、函数调用和安全性。还确保约束描述和任务描述的紧密集成,以及数据的整体高质量)。
约束指令扩展(Constraint Instruction Expansion)。添加约束构建复杂指令已被证明可以增强IF能力[76,25,33,92]。如图5(b)所示。借鉴之前的工作[99](https://arxiv.org/html/2410.14940v3#bib.bib99),利用LLMs从大量提示中分解、聚类和合成 30 多种约束类型。随机采样验证约束类型覆盖率达到90%,并获得了每种约束对应的丰富描述。随后,采用多个LLMs增加原始提示约束的复杂性。这个过程涉及详细的提示工程指导,以确保LLMs选择与提示相匹配的约束描述,重点关注约束类型的合理性、表达灵活性以及基于提示质量分数的过滤。最后,使用单独的LLM作为验证器选择高质量、约束丰富的指令。
响应逆转(Response Reversal)。 复杂指令的对齐提出了两个关键挑战:(1)包含多重约束的高质量提示稀缺且缺乏多样性。(2)难以产生严格遵循这些提示的响应。互联网上存在大量高质量的自然语言文本,利用这些文本的固有属性作为生成指令的约束条件,即可大规模创建具有多重约束的高质量提示-响应对。为了解决这个问题,开发一个响应逆转pipeline,如图5(https://arxiv.org/html/2410.14940v3%23S4.F5)(c) 所示。首先,采用质量评分模型进行质量过滤,从知识丰富的网页段落中提取高质量文本。接下来,使用此高质量文本作为响应,并要求LLM生成相应的提示,并将响应的固有属性合并为提示约束。最后, LLM评估生成的提示质量,打分,并提供改进建议。迭代此过程,直到响应中存在的所有约束都完全封装在提示中。
教科书(Textbook)。为了增强模型对复杂指令的理解能力,提出一种教学模仿方法。明确关注学习指令的意图、思维过程、类比推理和对齐原则。具体来说,对于复杂指令,利用LLMs生成与提示高度一致的响应,如图5(https://arxiv.org/html/2410.14940v3%23S4.F5)(d) 所示。例如,当任务是理解指令时,可能会提示模型 _“解释如何理解指令,从专业性、复杂性和输出限制等多个维度分析其细节和挑战。”_或者,引导LLMs阐明解决方案背后的思维过程(例如,详细阐述解决方案背后的推理过程,包括相关领域知识、推理方法和常见陷阱,特别关注错误的推理路径和容易被忽视的输出约束,如格式、风格、语气、长度和字数限制。)另外,诸如 _“你需要从给定的例子xx中学习推理技巧和背景知识。”_这些提示输入LLM,可以赋予LLM泛化和适应不同任务场景的能力。还教授了一些对齐原则(如“尽可能避免使用技术术语或复杂表达方式”、“考虑用户的情绪状态”)。这些方法确保了LLM对复杂指令的更深入理解和稳健应用,从而增强了模型概括和适应不同教学要求的能力。
4.2 Math
Prompt Collection。平衡各难度级别的数学指令,如在小学、初中、高中和大学各个级别进行均匀抽样。此外,使用更细粒度标准 - “知识点”,在每个级别选择问题以均匀覆盖 1,000 多个不同的知识点。优先考虑可以解决问题的样本(通常包含更全面的步骤)。
Response Generation。在许多解决数学问题的数据集中,提供的答案通常缺乏详细的步骤。手动标注是一种常见的方法,但是,一些中间步骤可能会被忽略。尽管如此,这些步骤对于模型训练很重要。通过利用LLM结合提示和标准答案,生成详细的解决方案,并根据参考答案保持一致的风格。这种方法通过详细的步骤合成了大量的数学对齐数据,显着增强了模型的数学能力。直接生成的答案通常很难匹配正确答案,因此提供参考答案和步骤有助于模型将其丰富为连贯的推理链。实验发现参考答案可以显着提高生成答案质量。然而,由于参考答案可能包含错误,指示模型参考答案正确率只有 95% 。这种方法减少了基于潜在错误参考的错误推论。最后,进行后处理以控制响应生成质量(如确保未明确提及参考答案的存在)。
4.3 Reasoning
收集的推理数据类别如下:
- 常识推理:涉及时间换算、时区计算、排序、路线规划、日期推理、几何空间推理、家庭关系判断等;
- 命题假设:包括演绎推理、归纳推理、反证陈述;
- 关系判断:涵盖包含/蕴涵关系、因果关系、对立关系、中立关系、类比推理等;
- 多步推理:包括并行推理、串行推理、链式推理、树推理以及推理链攻击。
- 博弈论:囚徒困境、鹰鸽博弈等经典问题;
- 破坏性问题:涉及引入破坏性条件来测试推理能力;
- 反事实推理:涉及同一个人的场景,将不相关的个人联系起来,颠倒因果关系,将字面上相关但因果上不相关的事件联系起来,并探索科学上难以置信的情况。
数据收集。开源数据中提供参考答案可以显着提高数据质量。逻辑推理任务对数据质量特别敏感,需要手动检查响应风格和准确性。一些任务(如复杂的数值序列问题)对当前LLM提出了相当大的挑战。这些任务通常涉及探索各种解决方案。如果手动标记的数据仅提供正确的答案,而不包括对不同解决方法的探索,则可能会产生负面影响。
推理CoT。为了增强模型的推理能力,通过思维链提示增强指令调整数据88,43,17、 (https://arxiv.org/html/2410.14940v3%23bib.bib88)、(https://arxiv.org/html/2410.14940v3%23bib.bib43) 。该技术鼓励模型将复杂问题分解为逐步推理过程。
推理反思。有时LLMs会由于推理缺陷和自我纠正能力有限而产生错误答案。为了增强模型反映和纠正错误的能力,实施一种策略来识别错误响应,提供参考答案让LLMs重写这些数据2,75,60、(https://arxiv.org/html/2410.14940v3%23bib.bib60)、(https://arxiv.org/html/2410.14940v3%23bib.bib2)。
数据分布。逻辑推理训练集中各难度数据应该如何分布?实验得到了一些结论,如减少简单数据比例可以提高模型性能,但如果减少过多则会产生负面影响。
长尾谬误理解。考虑涉及误导性信息、不正确前提和故意模糊的推理问题。现有研究表明,当前的逻辑推理数据集并不能充分覆盖这些长尾问题,这表明“弱智吧”数据可以增强模型的逻辑推理能力[51(https://arxiv.org/html/2410.14940v3%23bib.bib51)]。从互联网收集更广泛的“弱智吧”用户问题仔细选择和标记,以创建高质量的逻辑推理数据集。
4.4 Code
代码类指令,类别分类如下:
- 代码生成,其中查询采用自然语言,响应包含代码;
- 代码完成,具有带空格的部分代码段;
- 代码调试,涉及提供代码中的错误识别和纠正;
- 代码解释,需要总结给定代码的功能或流程;
- 代码知识问答,涉及常见的编码知识。
代码类指令,难度分类如下:
- 简单,对于用基础知识即可解决的小代码问题;
- 中等,针对需要高级知识和分析时间的更复杂问题;
- 困难,对于需要深入算法理解和大量调试的大型复杂代码;
- 非常困难,需要专业知识、大量努力,还可能需要深入研究。
代码知识问答本质上是常识性提问,并不能增强编码技能,所以进行了降采样。被归类为“非常困难”的数据通常需要超出模型能力的知识或广泛的上下文才能解决,这使它容易产生幻觉,并且人类难以监督验证,因此丢弃此类数据。最后,平衡不同编程语言的数据比例。
Prompt Collection。最初的代码相关提示来源多样,包括代码相关网站和开源数据集。对于提示回复,根据几个标准验证:
- 一致性,检查代码块和公式格式,确保正确缩进并包含必要的注释;
- 正确性,确保响应符合提示要求,例如使用指定的编程语言并提供所需示例,同时还评估解决方案的准确性和完整性,包括边界情况讨论;
- 质量,评估响应是否提供了详细的问题背景描述、解决方案的清晰解释以及代码后的进一步解释或总结。
Multi-turn。受 WizardCoder [59(https://arxiv.org/html/2410.14940v3%23bib.bib59)]启发,利用LLMs在现有单轮问答基础上生成一个新问题。这个新问题:1)以原问题为基础,增加难度和深度,2)确保它具有现实意义,并且与第一轮问答相关。获得新问题后再使用 LLMs推理答案。有趣的是,人类对第二轮问答的评估表明,后续问答通常比最初的答案更有用,这表明多轮对话更有效。
4.5 Tool-using
本节概述增强LLM通用工具使用和代码解释能力的方法。
General Tool-using。模拟不同场景,合成通用的工具使用数据,包括单工具、单回合交互和多工具、多回合交互。在单工具场景中,重点是确定何时调用工具并通过理解上下文和格式化输入以获得所需结果来正确构建参数。在更复杂的多工具场景中,模型必须为用户查询选择最佳工具,管理顺序和并行工具调用,并协调多个工具获得一致结果。这需要了解工具依赖性和功能,根据中间结果动态调整策略,并在输出不符合预期时诊断问题。为了提高模型区分相似工具的能力,生成现有工具的变体,使模型能够学习细微差别,并改进不同环境下选择和使用工具的决策。
Code Interpreter。在开发代码解释器能力时,重点关注编码技能和解释能力。为了提高编码能力,主要利用 Jupyter Notebooks 和开源 Python 代码数据。Jupyter 中的结构化数据(包括文本、代码和执行结果)与多轮编码提问、响应+执行结果场景非常吻合。实验发现,在预训练阶段增加 Jupyter 数据比例可以提高模型在 Python 编码、代码解释和工具使用方面的熟练程度。对于开源Python数据,设置Python Jupyter Notebook沙箱环境执行LLM生成的代码,选择运行无错误的输出。为了构建调试功能,对沙箱执行中发生的错误进行分类,以识别真正的编码问题错误。提示LLM反思完整的错误消息并相应地修改代码,从而教会模型学习调试技能。
对于解读能力,重点关注数据分析和文件阅读能力。为了解决涉及Excel、CSV、JSON和Markdown文件上传的场景问题,使用LLM模拟用户、问题解决者和验证者的角色。使用 Pandas 和 Scikit-learn 等库对主要任务进行分类,例如摘要、统计、图表生成和机器学习。LLM作为用户,将任务随机组合并组织成连贯的请求。然后,问题解决者将这些任务分解为子任务,并在 Jupyter 沙箱中使用 Python 代码解决每个子任务。验证者检查每个执行步骤,如有必要,使用DFS方法恢复到先前的步骤,直到完成。数据集均经过手动验证。任务的多样性带来了广泛的结果,平均对话 12 轮,超过 2000 个tokens。
#Tokenization不存在了?
Meta最新研究,无需Tokenizer的架构来了
BLT 在许多基准测试中超越了基于 token 的架构。
最近几天,来自 Meta 、芝加哥大学等机构的合著论文《 Byte Latent Transformer: Patches Scale Better Than Tokens 》火了,在 Hacker News 上受到广泛讨论。
有人表示,非常期待这项研究取得成功,这样就可以和 tokenizer 拜拜了!
还有人担心的表示,「现在 tokenization 是大多数模型的基础,这项研究被采用的可能性究竟有多大?」
总结而言,该研究提出了一种新的 LLM 思想。传统的语言模型依赖于 tokenizer 来预处理数据,但 tokenization 有其固有的局限性,包括固定的词汇表、处理多语言或噪声数据的效率低下,以及由压缩启发式方法引入的偏见。
该研究提出字节潜在 Transformer(Byte Latent Transformer,简称 BLT)挑战了这种常规做法。BLT 通过直接建模原始字节流,将它们根据熵动态分组为 patch 以实现高效计算。
具体而言,BLT 不需要 tokenizer 架构,可以直接从原始字节数据中学习,避免了静态词汇表的限制,并能更好地处理多样化和带噪声的输入。
基于熵的 Patch:根据信息复杂度动态地将字节分组为 Patch,对高熵区域(复杂输入)分配更多的计算资源,在低熵区域节省资源。
高效扩展:通过优化 patch 大小并利用轻量级局部模型,BLT 实现了与基于 token 模型(如 LLaMA)相当或更好的性能,并在推理过程中节省高达 50% 的计算资源。
鲁棒性与灵活性:BLT 在需要字符级理解、噪声输入或长尾泛化的任务中表现出色,在许多基准测试中超越了基于 token 的架构。
图源:https://x.com/theraggedflesh/status/1867911485428482131
此外,该研究首次提出了对字节级模型进行 flop 控制的扩展研究,参数规模高达 8B,训练字节高达 4T,从而展示了在没有固定词汇表 tokenization 的情况下,从字节级别端到端地大规模训练模型。
总体而言,BLT 在训练时的 flop 控制性能与 Llama 3 相当,同时在推理时使用的 flop 减少了高达 50%。该研究还进行了 inference-flop 控制的扩展实验(图 1),并观察到与基于 tokenization 架构相比,BLT 扩展趋势明显更好。
这篇论文贡献如下:
- 提出了 BLT,这是一种字节潜在 LLM 架构,动态分配计算资源以提高 flop 效率;
- 展示了在 8B(即 80 亿)参数规模下,能够实现与 Llama 3 模型相当的训练 flop 控制,同时可以通过牺牲一小部分评估指标来换取高达 50% 的 flop 效率提升;
- BLT 模型为扩展大型语言模型开启了一个新的维度,现在可以在保持固定推理预算的同时扩展模型大小。
- 论文标题:Byte Latent Transformer: Patches Scale Better Than Tokens
- 论文地址:https://arxiv.org/pdf/2412.09871
- 项目地址:https://github.com/facebookresearch/blt
这种无需 tokenizer 的方法代表了语言建模的重大转变,为更高效、可扩展和鲁棒的人工智能系统铺平了道路。
对此,有研究者表示:「Meta 刚刚杀死了 TOKENIZATION,他们发布的 BLT 是一种无 tokenizer 的架构,可以动态地将字节编码为 patch,并实现更好的推理效率和稳健性!」
「2025 年可能是我们告别 tokenization 的一年。」
BLT 架构
BLT 由一个对 patch 表征进行操作的大型全局自回归语言模型以及两个较小的局部模型组成,两个较小的局部模型将字节序列编码为 patch 并将 patch 表征解码回字节(图 2)。
潜在全局 Transformer 模型
潜在全局 Transformer 是一个具有 l_G 层的自回归 transformer 模型 G,它将一系列潜在输入 patch 表征 p_j 映射到一系列输出 patch 表征 o_j。
论文使用下标 j 表示 patch,使用下标 i 表示字节。全局模型使用块因果注意力掩码(Dubey et al., 2024)。
局部编码器
局部编码器模型(用 ε 表示)是一种基于 transformer 的轻量级模型,具有
层,其主要作用是有效地将输入字节序列 b_i 映射为表达性 patch 表征 p_j。与 Transformer 架构的主要区别是在每个 Transformer 层之后添加了一个交叉注意力层,其功能是将字节表征池化为 patch 表征(图 5)。
首先,使用
矩阵嵌入输入字节序列 b_i ,表示为 x_i 。然后,这些嵌入可以选择以散列嵌入的形式添加附加信息。然后,一系列交替的 transformer 和交叉注意力层将这些表征转换为由全局 transformer G 处理的 patch 表征 p_i。transformer 层使用局部块因果注意力掩码;每个字节都关注前面字节的固定窗口,该窗口通常可以跨越动态 patch 边界,但不能跨越文档边界。
局部解码器
与局部编码器类似,局部解码器 D 是一个基于 transformer 的轻量级模型,具有
层,它将全局 patch 表征序列 o_j 解码为原始字节 y_i 。局部解码器根据先前解码的字节来预测原始字节序列,因此将局部编码器为字节序列生成的隐藏表征作为输入。它应用了一系列交叉注意力层和 transformer 层的 lD 交替层。解码器中的交叉注意力层在 transformer 层之前应用,以首先从 patch 表征创建字节表征,并且局部解码器 transformer 层对生成的字节序列进行操作。
扩展趋势
该研究展示了字节级模型扩展趋势的整体图景,可以为 BLT 模型的进一步扩展提供信息,旨在通过以下方式解决先前字节级模型研究的局限性:
- 比较计算最优训练方案的趋势;
- 在大量训练上训练匹配的 8B 模型数据并评估下游任务;
- 测量推理成本控制设置中的扩展趋势。
参数匹配计算最优扩展趋势
使用 Llama 2 数据集,该研究训练了四种不同大小(参数范围从 1B 到 8B)的各种计算最优 bpe 和 BLT 模型。然后在训练数据混合物的代表性子集上根据语言建模性能绘制训练 flops 图。BPE 模型使用 Llama 3 确定的模型参数与训练数据的最佳比率进行训练(Dubey et al., 2024)。这种计算最优设置理论上旨在在给定的训练预算内实现训练数据集的最佳性能(Hoffmann et al., 2022),为模型提供鲁棒的基线。对于每个 bpe 模型,该研究还使用与相应 bpe Transformer 的大小和架构相匹配的潜在 Transformer 在相同数据上训练相应的 BLT 模型。
如图 6(右)所示,BLT 模型要么相当,要么优于 BPE 模型,并且随着扩展模型大小和 flops,这种趋势仍然存在。
为了进一步评估扩展特性,该研究在更大的高质量数据集 BLT-1T 上训练了一个 8B 参数规模的 BLT 模型。表 1 比较了在 BLT-1T 数据集上训练的三个模型,基于 tokenizer 的 BPE Llama 3 模型和 BLT 模型的两个变体(一个采用空间 - patch 方案 (BLT-Space),另一个采用基于熵的 patch 方案 (BLT-Entropy))。
结果显示,BLT-Entropy 模型在 7 项任务中的 4 项上的表现优于 Llama 3 模型。这种改进是由于 (1) 通过动态 patch 更好地利用了训练计算,以及 (2) 直接对字节级信息进行建模,而不是对 token 进行建模。
此外,论文还介绍了 Patch 比 Token 更容易扩展。
总结来说,对 patch 长度扩展研究表明,BLT 这种基于 patch 的架构可以通过同时增加 patch 和模型的大小来实现更好的扩展趋势。这样的趋势似乎在更大规模的模型中持续存在,甚至有所改善。
字节建模提高鲁棒性
字符级任务
在对带噪声的 HellaSwag 测试结果发现,BLT 确实在鲁棒性方面全面超越了基于 tokenizer 的模型,平均优势达到 8 个百分点,甚至超过了在更大数据集上训练的 Llama 3.1 模型。
图 7 展示了 Llama 3 tokenizer 模型表现不佳,但 BLT 模型表现良好的几个场景。
表 4 表明,BLT 的表现超过了使用 Llama 3 tokenizer 训练的模型。在流行的语言对中,BLT 的表现与 Llama 3 相当或略好。然而,在资源较少的语言对上,BLT 的表现超过了 Llama 3,这强调了字节建模在泛化到长尾字节序列上的有效性。
从 Llama 3 到 BLT
最后,作者还探讨了一种工作流,其中 BLT 模型可以利用经过预训练的基于 tokenizer 的模型,通过使用经过预训练的 Llama 3.1 初始化 BLT 的全局 tokenizer 参数来实现更好更快的训练收敛。表 5 为结果。
很明显,经过 Llama 3.1 初始化的 BLT 显著优于 Llama 3 和 BLT 基线,这些基线是用相同数量的 flop 训练的。
#AI大模型时代,人才的需求已经变了
什么是 AI 发展的第一驱动力?最近,全球科技大厂都在用行动告诉我们:人才。
本月初,谷歌 NotebookLM 的核心团队共同宣布离职创业,他们新公司的网站已经进入了「建设中」的状态。
谷歌 NotebookLM 的核心成员 Raiza、Jason、Stephen 创业新公司的网页
紧随其后的是,开创性工作 Vision Transformer(ViT)的三位主要作者一齐官宣了自己的新动向:共同加盟 OpenAI。他们来自谷歌 DeepMind 的苏黎世办事处,加入的是新成立的 OpenAI 苏黎世部门。
新加入 OpenAI 的三位 ViT 作者,其中 Alexander Kolesnikov 已经更新了自己的领英页面
对于最抢手的 AI 技术人才来说,在不同公司之间跳槽并不罕见,但像这样为大牛原地成立新部门的确是许久未见的奇景了,让我们不得不感叹如今全球科技公司之间竞争的激烈程度。
其实,全球范围内,在 AI 广阔的应用场景中,人才稀缺的问题也已经显得十分急迫。
AI 技术落地
正在面临「最后一公里」难题
我们正处在一个微妙的时间点上:爆发两年的生成式 AI 正在进入大规模应用阶段。一方面在 AI 领域里,技术人才成为了极度稀缺的「资源」;另一方面,在各个落地行业内,人们也在面临困境。
大模型重塑所有行业的过程,既是机遇也是挑战。AI 技术必须落地到具体的场景中,才能实现它真正的价值。
然而,现实却给了我们当头一棒 —— 承载期望的 Killer App 依然未能现身。对于抖音、快手这些国民级内容社区,AI 并未带来预期中的实质性变革。调性与 AIGC 最契合的小红书,今年也放弃了旗下的 AI 生图工具 Trik AI。
投资人越来越迟疑,「AI 六小龙」已有三家选择了战略性放弃 C 端业务线。为什么会这样?
让我们从最基础的问题谈起。很多公司在开发 AI 产品时,总是习惯性「拿着锤子找钉子」。他们练就了一身本领,就着急要找地方施展,但却没考虑过用户的真实需求。
就拿今年随着 Sora 现世,卷到飞起的 AI 视频生成来举例子,AI 开盲盒式的生成方式,缺失了剪辑师们必须的控制画面元素的效果控件,于是落入了现实用不好,搞抽象很契合的境地。
究其原因,AI 技术的研发者和从业者之间存在难以跨越的认知鸿沟 —— 术业有专攻,许多需求早已内化为肌肉记忆般的本能反应,往往是「问不出来」却「离不开」的隐性知识。
问题不止于此,即使 AI 产品的研发团队对齐了颗粒度,现实中也要面临打不通的底层逻辑。相对 C 端,在垂直更为清晰的 B 端,技术与需求的错配则更为显著。
目前 AI 进企业主要分为两条技术路径,但各有各的难处:通用场景模型像是「万金油」,部署门槛低,却难以应对特定的边界情况;细分行业模型虽然效果更好,却需要海量的数据和繁重的标注工作。
根据亿欧智库的《企业 AIGC 商业落地应用研究报告》,「与当前系统集成的难度与兼容性」是企业首要考虑的因素。对于企业来讲,引入 AI 系统意味着要算一笔增加人力、运维成本的综合账。因此,最划算的就是一套封装好的固定方案。
于是这样的情节经常上演,即使「AI + 传统方法」可以让效率翻倍,一提还需提供 20 个超参数,一切免谈;即使已经搭建起「标注 - 训练 - 部署」的闭环生态,只需在更换设备型号时重新训练一遍,得到的还是客户斩钉截铁的拒绝。
这些问题已经织成了一张难解的网:AI 产品难以满足实际需求,导致行业内客户的合作意愿变低,需求更难深入理解......
归根结底,一切症结都指向了同一个结构性矛盾:懂行业场景的「老师傅」不懂 AI,而精通 AI 技术的人又不了解行业里的人需要什么。如果无法化解,AI 落地就将持续面临「最后一公里」的挑战。
面对这样的困境,一个关键性的问题浮现出来:到底是让 AI 研发者去学习行业知识,还是让行业从业者来学习 AI 技术呢?
帮大模型「立三观」
需要行业、AI 一起来
显然,双向奔赴才是更好的选择。
ChatGPT 出现前,AI 在很多行业中的应用被定位在两个方面:一是对已知机理模型进行重复工作的自动化,二是对未知机理模型进行探索性工作,扩充人类的认知边界。大模型的技术突破,让人们看到了 AI 应用的新形态,在数字化转型过程中,原先顶层设计的流程是解耦的,但现在逐渐变成了「端到端」一体化,有了更直接、更强大的方案。
大模型通过对世界进行建模,让机器能够理解复杂现象,获得了一种认知世界的能力,因此能够理解和处理复杂的行业数据,并据此进行分析和决策,以前这种能力通常只有人类专家才具备。
换句话说,这也意味着能够帮助大模型建立「三观」的人,最好是懂 AI 的行业专家。相比于让 AI 工程师从零开始积累行业经验,让已经深耕行业多年的专业人才掌握 AI 应用技术,学习曲线会更平缓,也更容易实现技术与场景的深度融合。
在 AI 技术使用门槛快速降低的如今,这个选择正在变得愈发合理,会打字就能 3D 建模,会说话就能自动生成小游戏......各大厂商正在围绕生成式 AI 争相推出「零门槛」产品。而那些过去需要复杂编程才能实现的功能,现在通过简单的 API 调用就能完成。像 Cursor 这样的 AI 辅助编程工具的出现,更是大大降低了开发难度。
这一切都为行业从业者来主动拥抱 AI 技术积攒了越来越大的动能。最近,很多行业都在涌现新的 AI 应用案例。
以医疗领域为例,一位优秀的临床医生需要至少 8 年时间(从本科到规培毕业)才能培养出准确解读病症的专业直觉。而借助 AI 大模型应用,医生们可以在较短时间内掌握 AI 辅助诊断工具的能力,从而提升诊断能力,大大提高诊断治的效率。
在化工领域,经过专门调优的大模型可以精确模拟关键运行参数,保障生产过程的深度优化与极致稳定。在一些化工厂,自动化系统经过长时间稳定生产已经大幅减少了人员干预、降低了劳动强度,显著增强了装置运行的稳定性与安全性,也直接提升了经济效益。
在智慧港口,自动化和机器人化等先进手段可以实现更高效的生产和管理流程,显著减少人力和时间消耗。随着 AI 大模型的出现,智能化水平再度得到了大幅提升,使得基于统一大模型底座全面支撑生产、管理、服务、安全等领域应用成为了可能。
不过,这条道路仍面临着诸多现实挑战。
首要问题是「没人教」,既懂行业又懂 AI 的「双师型」教师凤毛麟角。
即便有这样的伯乐,也面临着「教什么、怎么教」的难题 —— 行业 + AI 方向缺乏体系化的教材和前沿的实践案例,课堂内容往往流于表面。虽然自 2019 年以来,AI 专业院校从 35 所扩展至 537 所,但大多数院校仍在培养通用型 AI 人才,学生学的是经典的深度学习算法框架,面对的却是千差万别的行业场景。
下一个难题是「没算力」。高校普遍缺乏算力资源,训练平台和开发环境配置不完善。更棘手的是「没数据」。真实的行业数据极少公开流通,已有数据往往质量参差不齐、标注不完整,这使得许多研究项目难以开展。
破解这些难题,亟需学术界、产业界与教学机构携手合作,共同构建一个全方位的人才培养体系。
解法:培养复合型行业 AI 人才
大模型技术兴起之前,我们见证了国内一批高校人工智能学院的建立,在科研探索方向,国内一直在加大人工智能人才的培养力度。面对 AI 大规模行业应用的新需求,很多科技公司正在与大学合作,开始寻求培养行业 AI 复合型人才。
上周,由东北大学、中国医科大学联合华为开展的【医路智行,探索无限未来】行业 AI 应用创新孵化营正式开营。活动持续两天,一大批来自医疗领域的研究者们共同体验了一场 AI 与医学的融合之旅。
课程从人工智能方法的发展开始讲起,从特征工程到 ChatGPT 出现,深入浅出,再联系到医生看病的实际工作中,为行业内人士构建起 AI 知识体系的框架。
另一边,华为也邀请到了一批前沿学者展示一系列医疗+AI 交叉研究的落地成果,包括数据处理、自动填写病历、医疗影像检查、组织切片分析等。
东北大学医学与生物信息工程学院执行院长赵越在发言中表示,医学与人工智能的融合是不可或缺的趋势,华为给予了学院无私的帮助和支持。
在第一天的活动中,中国医科大学附属第一医院教授齐瑞群以「皮肤与皮肤病理的诊断逻辑与难点」为例,探讨了临床医疗诊断方法及存在的问题。
在 2500 多种皮肤病中,医生主要通过 8 种原发皮损和 10 种继发皮损共 18 种特征进行诊断。每种特征又可能呈现出不同的颜色、形状和纹理变化,这使得皮肤病的诊断成为一项极具挑战性的工作。
于是,来自中国医科大学附属第一医院的临床医学,与东北大学的医工学院,两个学科背景的团队携手开发了一套皮肤病理大模型。以往,医生标注一张切片需要耗费半小时,通过 AI 系统,整个过程缩短至不到三分钟,还能与临床的日常工作无缝衔接。
第二天的活动中,中国医科大学教务处副处长、盛京医院教授/主任医师于宏带来了关于「人工智能标准化病人(AISP)的病史采集和医患沟通」的课程。他分享了一款广受好评的 AI 工具。他讲到:「我们百分之七八十的医疗差错都是因为沟通不畅所造成的。」他们之前也尝试过让学生与真实病人练习病史采集,但推荐 10 个学生,10 个学生都不敢开口。
原因很简单,初出茅庐的学生在面对病人时往往战战兢兢,生怕一个不当的问题就会影响患者休养。而标准化的病人也需要培养,数量有限且质量参差不齐,很难满足训练和考核的需求。比如在外科手术中,有时会遇到需要手术升级的情况。这时,如何向家属解释,并获得其理解和信任,就需要较高的沟通技巧了。
因此,他们开发了 AI 标准化病人平台,主要用于提高问诊技巧和医患沟通能力。AI 能够模拟不同病种、不同性格特点的虚拟病人,支持文字、语音、表情等多模态交互,还能自动评分并给出反馈,告诉学生哪些方面需要改进。学生们可以在安全的虚拟环境中反复练习这类棘手场景的沟通技巧,做一个既专业又有温度的医生。
教授们表示,AI 不会取代医生,但不懂 AI 的医生将会被淘汰。积极学习 AI 知识,利用自动化工具提升能力,可以为未来的职业发展筑牢根基。
这只是一些案例,还有更多将医生们从繁琐工作解放出来的 AI 应用等待同学们去探索和创新。
具体到 AI 与医疗深度结合的实践中,掌握 AI 开发、数据处理、大模型训练、模型微调等技能是应用能力的关键。在课堂上,人们跟随老师使用 ModelArts、MindSpore 等 AI 开发平台和开发框架进行了实操演练,基于医疗数据对大模型进行微调。为了让更多的人能够尝试,华为还为每位学员准备了免费的云资源券,让充足的算力支持每一次创新尝试。
「授人以渔」,华为提供了一站式、全栈自研的 AI 开发工具,从底层算力开始整合,向上支持主流开发框架,可以对计算资源、模型资源进行高效率调用,将复杂的算法化繁为简,支持了 AI 应用从数据标注、模型开发、训练、部署的全流程,让医学生能够轻松驾驭。
经过与专家的深度交流,学员们不仅获得了结业证书,更收获了宝贵的前沿洞察与前瞻见解。
医疗只是华为布局的一个缩影,而在更广泛的领域,华为产教融合的探索更加深入,行迹愈发坚定。
华为启动了全国首届化工行业人工智能应用创新大赛,旨在整合技术、场景和数据,凝聚多家企业、组织的能力,打造共生共赢的产业生态联盟。
直接面向专业人才的课程也在进行当中。就在今年,华东理工大学、青岛科技大学两所学校的化工学院与华为联合开展了「化工 + AI」实训课程,通过产教融合的方式,培养了一批化工 AI 人才。
基于这样的理念,华为正在通过行业 AI 应用创新孵化营与行业 AI 应用创新大赛,培植起丰硕的人才培养沃土,从中国医科大学到华东理工大学,从医疗到材料,从港口到制造,点亮一个个传统制造业的「星辰大海」。
在探索的过程中,华为逐步形成了一套「四个基于」的核心原则:基于实际客户需求、基于实际场景、基于实际数据、基于实际商业闭环。
在我们看来,这种机制的意义远超人才培养本身:
对于人才供给端,这种人才培养模式开辟了一条可持续的量级跃升之路。
对于应用层,让最了解行业痛点的人掌握 AI 工具,能催生更多接地气的创新。这不仅降低了 AI 技术与行业场景的对接成本,更能将分散想法整合起来,形成更强大的技术突破动能。
放眼整个产业图景,每个行业都由千千万万的从业者构成。当他们的思维模式与能力结构发生根本性转变,传统行业「被改造」到「主动转型」的身份转变也将水到渠成。
人才的战役已经打响
大模型技术的落地,还在对 AI 人才提出更多需求。
一方面,从 ChatGPT 到 Sora,生成式 AI 引领的工业、行业、组织转型和智力变革,让人工智能的应用场景和范围得到了极大拓展。这意味着还有更多的行业,更多的人可以参与进来。
另一方面,在众多行业方向上,单一技能已不足以应对未来挑战。真正的 AI 人才,应该是能够将 AI 技术与行业实践深度融合的复合型人才。学习 AI 技能,或许会变成一个系统、长期学习的过程。
在 AI 人才方面,国内虽然仍处在追赶者的位置,但我们已经看到了一些自身优势:
- 首先是技术驱动。截止到 7 月,全球 AI 大模型的数量超过 1300 个,中国大模型数量占比 36%。大模型市场的升温已经带动起上下游产业链的发展,提升了数据、算力和算法等领域的人才需求。
- 其次是场景优势,也在推动 AI 的应用从量变走向质变。随着技术的大面积落地,智能化转型已不再是一句空话,不论工业还是服务业,工作的流程、产品的形态都在积极寻求变化。
在这样的环境中,只有充分把两者结合起来,联系起 AI 技术基础与行业需求的两端,才能最终释放出 AI 技术的全部潜力。
但要真正解决 AI 人才短缺的问题,还需要更多企业、高校和社会各界的共同努力。
#HuggingFace逆向出o1背后技术细节并开源
3B模型长思考后击败70B!
如果给小模型更长的思考时间,它们性能可以超越更大规模的模型。
最近一段时间,业内对小模型的研究热情空前地高涨,通过一些「实用技巧」让它们在性能上超越更大规模的模型。
可以说,将目光放到提升较小模型的性能上来有其必然性。对于大语言模型而言,训练时计算(train-time compute)的扩展主导了它们的发展。尽管这种模式已被证明非常有效,但越来越大模型的预训练所需的资源却变得异常昂贵,数十亿美元的集群已经出现。
因此,这一趋势引发了人们对另外一种互补方法的极大兴趣,即测试时计算扩展(test-time compute scaling)。测试时方法不依赖于越来越大的预训练预算,而是使用动态推理策略,让模型在更难的问题上「思考更长时间」。一个突出的例子是 OpenAI 的 o1 模型,随着测试时计算量的增加,它在困难数学问题上表现出持续的进步。
虽然我们不清楚 o1 是如何训练的,但 DeepMind 最近的研究表明,可以通过迭代自我改进或使用奖励模型在解决方案空间上进行搜索等策略来实现测试时计算的最佳扩展。通过自适应地按 prompt 分配测试时计算,较小的模型可以与较大、资源密集型模型相媲美,有时甚至超越它们。当内存受限且可用硬件不足以运行较大模型时,扩展时间时计算尤其有利。然而这种有前途的方法是用闭源模型演示的,没有发布任何实现细节或代码。
DeepMind 论文:https://arxiv.org/pdf/2408.03314
在过去几个月里,HuggingFace 一直在深入研究,试图对这些结果进行逆向工程并复现。他们在这篇博文将介绍:
- 计算最优扩展(compute-optimal scaling):通过实现 DeepMind 的技巧来提升测试时开放模型的数学能力。
- 多样性验证器树搜索 (DVTS):它是为验证器引导树搜索技术开发的扩展。这种简单高效的方法提高了多样性并提供了更好的性能,特别是在测试时计算预算较大的情况下。
- 搜索和学习:一个轻量级工具包,用于使用 LLM 实现搜索策略,并使用 vLLM 实现速度提升。
那么,计算最优扩展在实践中效果如何呢?在下图中,如果你给它们足够的「思考时间」,规模很小的 1B 和 3B Llama Instruct 模型在具有挑战性的 MATH-500 基准上,超越了比它们大得多的 8B、70B 模型。
HuggingFace 联合创始人兼 CEO Clem Delangue 表示,在 OpenAI o1 公开亮相仅 10 天后,我们很高兴地揭晓了其成功背后的突破性技术的开源版本:扩展测试时计算。通过给模型更长的「思考时间」,1B 模型可以击败 8B、3B 模型可以击败 70B。当然,完整的技术配方是开源的。
各路网友看到这些结果也不淡定了,直呼不可思议,并认为这是小模型的胜利。
接下来,HuggingFace 深入探讨了产生上述结果背后的原因,并帮助读者了解实现测试时计算扩展的实用策略。
扩展测试时计算策略
扩展测试时计算主要有以下两种主要策略:
- 自我改进:模型通过在后续迭代中识别和纠错来迭代改进自己的输出或「想法」。虽然这种策略在某些任务上有效,但通常要求模型具有内置的自我改进机制,这可能会限制其适用性。
- 针对验证器进行搜索:这种方法侧重于生成多个候选答案并使用验证器选择最佳答案。验证器可以是基于硬编码的启发式方法,也可以是学得的奖励模型。本文将重点介绍学得的验证器,它包括了 Best-of-N 采样和树搜索等技术。这种搜索策略更灵活,可以适应问题的难度,不过它们的性能受到验证器质量的限制。
HuggingFace 专注于基于搜索的方法,它们是测试时计算优化的实用且可扩展的解决方案。下面是三种策略:
- Best-of-N:通常使用奖励模型为每个问题生成多个响应并为每个候选答案分配分数,然后选择奖励最高的答案(或稍后讨论的加权变体)。这种方法强调答案质量而非频率。
- 集束搜索:一种探索解决方案空间的系统搜索方法,通常与过程奖励模型 (PRM) 结合使用,以优化问题解决中间步骤的采样和评估。与对最终答案产生单一分数的传统奖励模型不同,PRM 会提供一系列分数,其中推理过程的每个步骤都有一个分数。这种细粒度反馈能力使得 PRM 成为 LLM 搜索方法的自然选择。
- 多样性验证器树搜索 (DVTS):HuggingFace 开发的集束搜索扩展,将初始集束拆分为独立的子树,然后使用 PRM 贪婪地扩展这些子树。这种方法提高了解决方案的多样性和整体性能,尤其是在测试时计算预算较大的情况下。
实验设置
实验设置包括以下步骤:
- 首先给 LLM 提供一个数学问题,让其生成 N 个部分解,例如,推导过程中的中间步骤。
- 每个 step 都由 PRM 评分,PRM 估计每个步骤最终达到正确答案的概率。
- 一旦搜索策略结束,最终候选解决方案将由 PRM 排序以产生最终答案。
为了比较各种搜索策略,本文使用了以下开源模型和数据集:
- 模型:使用 meta-llama/Llama-3.2-1B-Instruct 为主要模型,用于扩展测试时计算;
- 过程奖励模型 PRM:为了指导搜索策略,本文使用了 RLHFlow/Llama3.1-8B-PRM-Deepseek-Data,这是一个经过过程监督训练的 80 亿奖励模型。过程监督是一种训练方法,模型在推理过程的每一步都会收到反馈,而不仅仅是最终结果;
- 数据集:本文在 MATH-500 子集上进行了评估,这是 OpenAI 作为过程监督研究的一部分发布的 MATH 基准数据集。这些数学问题涵盖了七个科目,对人类和大多数大语言模型来说都具有挑战性。
本文将从一个简单的基线开始,然后逐步结合其他技术来提高性能。
多数投票
多数投票是聚合 LLM 输出的最直接方法。对于给定的数学问题,会生成 N 个候选解,然后选择出现频率最高的答案。在所有的实验中,本文采样了多达 N=256 个候选解,温度参数 T=0.8,并为每个问题生成了最多 2048 个 token。
以下是多数投票应用于 Llama 3.2 1B Instruct 时的表现:
结果表明,多数投票比贪婪解码基线有显著的改进,但其收益在大约 N=64 generation 后开始趋于平稳。这种限制的出现是因为多数投票难以解决需要细致推理的问题。
基于多数投票的局限性,让我们看看如何结合奖励模型来提高性能。
超越多数:Best-of-N
Best-of-N 是多数投票算法的简单且有效的扩展,它使用奖励模型来确定最合理的答案。该方法有两种主要变体:
普通的 Best-of-N:生成 N 个独立响应,选择 RM 奖励最高的一个作为最终回答。这确保了选择置信度最高的响应,但它并没有考虑到回答之间的一致性。
加权 Best-of-N:汇总所有相同响应的得分,并选择总奖励最高的回答。这种方法通过重复出现来提高分数,从而优先考虑高质量的回答。从数学上讲,回答的权重 a_i:
其中,RM (p,s_i) 是对于问题 p 的第 i 个解决方案 s_i 的奖励模型分数。
通常,人们使用结果奖励模型 (ORM) 来获得单个解决方案级别的分数。但为了与其他搜索策略进行公平比较,使用相同的 PRM 对 Best-of-N 的解决方案进行评分。如下图所示,PRM 为每个解决方案生成一个累积的步骤级分数序列,因此需要对步骤进行规约(reduction)以获得单个解决方案级分数:
最常见的规约如下:
- Min:使用所有步骤中的最低分数。
- Prod:使用阶梯分数的乘积。
- Last:使用步骤中的最终分数。该分数包含所有先前步骤的累积信息,因此将 PRM 有效地视为能够对部分解决方案进行评分的 ORM。
以下是应用 Best-of-N 的两种变体得到的结果:
结果揭示了一个明显的优势:加权的 Best-of-N 始终优于普通的 Best-of-N,特别是在发电预算较大的情况下。它能够汇总相同答案的分数,确保即使频率较低但质量较高的答案也能得到有效的优先处理。
然而,尽管有这些改进,仍然达不到 Llama 8B 模型所达到的性能,并且在 N=256 时 Best-of-N 方法开始趋于稳定。
可以通过逐步监督搜索过程来进一步突破界限吗?
使用 PRM 的集束搜索
作为一种结构化搜索方法,集束搜索可以系统地探索解决方案空间,使其成为在测试时改进模型输出的强大工具。与 PRM 结合使用时,集束搜索可以优化问题解决中中间步骤的生成和评估。集束搜索的工作方式如下:
- 通过保持固定数量的「集束」或活动路径 N ,迭代生成多个候选解决方案。
- 在第一次迭代中,从温度为 T 的 LLM 中抽取 N 个独立步骤,以引入响应的多样性。这些步骤通常由停止标准定义,例如终止于新行 \n 或双新行 \n\n。
- 使用 PRM 对每个步骤进行评分,并选择前 N/M 个步骤作为下一轮生成的候选。这里 M 表示给定活动路径的「集束宽度」。与 Best-of-N 一样,使用「最后」的规约来对每次迭代的部分解决方案进行评分。
- 通过在解决方案中采样 M 个后续步骤来扩展在步骤 (3) 中选择的步骤。
- 重复步骤 (3) 和 (4),直到达到 EOS token 或超过最大搜索深度。
通过允许 PRM 评估中间步骤的正确性,集束搜索可以在流程早期识别并优先考虑有希望的路径。这种逐步评估策略对于数学等复杂的推理任务特别有用,这是因为验证部分解决方案可以显著改善最终结果。
实现细节
在实验中,HuggingFace 遵循 DeepMind 的超参数选择,并按照以下方式运行集束搜索:
- 计算扩展为 4、16、64、256 时的 N 个集束
- 固定集束宽度 M=4
- 在温度 T=0.8 时采样
- 最多 40 次迭代,即最大深度为 40 步的树
如下图所示,结果令人震惊:在 N=4 的测试时预算下,集束搜索实现了与 N=16 时 Best-of-N 相同的准确率,即计算效率提高了 4 倍!此外,集束搜索的性能与 Llama 3.1 8B 相当,每个问题仅需 N=32 解决方案。计算机科学博士生在数学方面的平均表现约为 40%,因此对于 1B 模型来说,接近 55% 已经很不错了!
哪些问题集束搜索解决得最好
虽然总体上很明显,集束搜索是一种比 Best-of-N 或多数投票更好的搜索策略,但 DeepMind 的论文表明,每种策略都有权衡,这取决于问题的难度和测试时计算预算。
为了了解哪些问题最适合哪种策略,DeepMind 计算了估计问题难度的分布,并将结果分成五等分。换句话说,每个问题被分配到 5 个级别之一,其中级别 1 表示较容易的问题,级别 5 表示最难的问题。为了估计问题难度,DeepMind 为每个问题生成了 2048 个候选解决方案,并进行了标准采样,然后提出了以下启发式方法:
- Oracle:使用基本事实标签估计每个问题的 pass@1 分数,对 pass@1 分数的分布进行分类以确定五分位数。
- 模型:使用每个问题的平均 PRM 分数分布来确定五分位数。这里的直觉是:更难的问题分数会更低。
下图是根据 pass@1 分数和四个测试时计算预算 N=[4,16,64,256] 对各种方法的细分:
可以看到,每个条形表示测试时计算预算,并且在每个条形内显示每种方法的相对准确度。例如在难度等级 2 的四个条形中:
多数投票是所有计算预算中表现最差的方法,除了 N=256(集束搜索表现最差)。
集束搜索最适合 N=[4,16,64],但 Best-of-N 最适合 N=256。
应该说,集束搜索在中等难度和困难难度问题(3-5 级)中取得了持续的进展,但在较简单问题上,尤其是在计算预算较大的情况下,它的表现往往比 Best-of-N(甚至多数投票)更差。
通过观察集束搜索生成的结果树,HuggingFace 意识到,如果单个步骤被分配了高奖励,那么整棵树就在该轨迹上崩溃,从而影响多样性。这促使他们探索一种最大化多样性的集束搜索扩展。
DVTS:通过多样性提升性能
正如上面所看到的,集束搜索比 Best-of-N 具有更好的性能,但在处理简单问题和测试时计算预算较大时往往表现不佳。
为了解决这个问题,HuggingFace 开发了一个扩展,称之为「多样性验证器树搜索」(DVTS),旨在最大限度地提高 N 较大时的多样性。
DVTS 的工作方式与集束搜索类似,但有以下修改:
- 对于给定的 N 和 M,将初始集束扩展为 N/M 个独立子树。
- 对于每个子树,选择具有最高 PRM 分数的步骤。
- 从步骤 (2) 中选择的节点生成 M 个新步骤,并选择具有最高 PRM 分数的步骤。
- 重复步骤 (3),直到达到 EOS token 或最大树深度。
下图是将 DVTS 应用于 Llama 1B 的结果:
可以看到,DVTS 为集束搜索提供了一种补充策略:在 N 较小时,集束搜索更有效地找到正确的解决方案;但在 N 较大时,DVTS 候选的多样性开始发挥作用,可以获得更好的性能。
此外在问题难度细分中,DVTS 在 N 较大时提高了简单 / 中等问题的性能,而集束搜索在 N 较小时表现最佳。
计算 - 最优扩展(compute-optimal scaling)
有了各种各样的搜索策略,一个自然的问题是哪一个是最好的?在 DeepMind 的论文中(可参考《Scaling LLM Test-Time Compute Optimally can be More Effective than Scaling Model Parameters 》),他们提出了一种计算 - 最优扩展策略,该策略可以选择搜索方法和超参数 θ,以便在给定的计算预算 N 下达到最佳性能:
其中
是问题 q 的正确答案。
表示计算 - 最优的扩展策略。由于直接计算
有些棘手,DeepMind 提出了一种基于问题难度的近似方法,即根据哪种搜索策略在给定难度级别上达到最佳性能来分配测试时的计算资源。
例如,对于较简单的问题和较低的计算预算,最好使用 Best-of-N 等策略,而对于较难的问题,集 shu 搜索是更好的选择。下图为计算 - 最优曲线!
扩展到更大的模型
本文还探索了将计算 - 最优(compute-optimal)的方法扩展到 Llama 3.2 3B Instruct 模型,以观察 PRM 在与策略自身容量相比时在哪个点开始减弱。结果显示,计算 - 最优的扩展效果非常好,3B 模型的性能超过了 Llama 3.1 70B Instruct(后者是前者大小的 22 倍!)。
接下来该怎么办?
对测试时计算扩展的探索揭示了利用基于搜索的方法的潜力和挑战。展望未来,本文提出了几个令人兴奋的方向:
- 强验证器:强验证器在提高性能方面发挥着关键作用,提高验证器的稳健性和通用性对于推进这些方法至关重要;
- 自我验证:最终目标是实现自我验证,即模型可以自主验证自己的输出。这种方法似乎是 o1 等模型正在做的事情,但在实践中仍然难以实现。与标准监督微调 (SFT) 不同,自我验证需要更细致的策略;
- 将思维融入过程:在生成过程中融入明确的中间步骤或思维可以进一步增强推理和决策能力。通过将结构化推理融入搜索过程,可以在复杂任务上实现更好的表现;
- 搜索作为数据生成工具:该方法还可以充当强大的数据生成过程,创建高质量的训练数据集。例如,根据搜索产生的正确轨迹对 Llama 1B 等模型进行微调可以带来显著的收益。这种基于策略的方法类似于 ReST 或 V-StaR 等技术,但具有搜索的额外优势,为迭代改进提供了一个有希望的方向;
- 调用更多的 PRM:PRM 相对较少,限制了其更广泛的应用。为不同领域开发和共享更多 PRM 是社区可以做出重大贡献的关键领域。
原文链接:https://huggingface.co/spaces/HuggingFaceH4/blogpost-scaling-test-time-compute
#OpenAI被偷家,谷歌Veo 2反超Sora
视频生成领先 OpenAI 了?
今天是个好日子,至少谷歌这么想。几个小时前,该公司一键三连,一口气发布了两款视觉生成模型和一个工具:
- Veo 2:视频生成模型,可使用文本或图像 prompt 生成高真实感、高质量的视频;
- Imagen 3:文生图模型,可更忠实地遵从提示词,实现更加丰富的细节和纹理渲染;
- Whisk:图生图工具,基于 Imagen 3 与 Gemini 的视觉理解和描述能力打造,能让用户更加方便地调整图像的场景、风格和物体。
其中,Veo 2 可说是直接引爆了整个社交网络。从早期用户发布的生成结果以及反馈来看,Veo 2 的生成质量明显超过了当前最佳的 Sora 等模型。一问世便是当世第一,似乎完全可以嚣张地喊一声:「还有谁?」
谷歌 CEO Sundar Pichai 介绍 Veo 2 的推文
据介绍,Veo 2 可以创建 2 分钟以上长度的 4k 分辨率视频,也能理解提示词中的相机控制指令(比如广角镜头、POV 和无人机镜头),还能重建出符合真实世界的物理交互和人脸表情。
但也必须指出,目前这只是一个理论上的优势。在谷歌的实验性视频制作工具 VideoFX 中,Veo 2 目前只提供分辨率上限为 720p、长度为 8 秒的视频生成服务。(而目前的 Sora 可以制作高达 1080p、20 秒长的视频。)
尽管如此,Veo 2 现有的表现已经足够惊艳了其表现是如此之好,以至于一心推介自家 Grok 的马斯克也跑来赞美了一句。
为了佐证 Veo 2 确实优秀,谷歌还做了一个基于人类评估者的对比评估,简单来说就是让人类评估者看不同模型基于同一提示词生成的视频,然后判断自己更喜欢哪一个视频。他们对比了 Meta Movie Gen、可灵 1.5、Minimax 和 Sora Turbo。参与者观看了 1003 条提示词及相应视频。
在整体偏好上,Veo 2 的优势非常明显,被另一个对比模型胜过的概率不超过 33%。
而在指令遵从度上,Veo 2 的表现依旧强势。
令人意外的反倒是 Sora Turbo,其整体偏好和指令遵从表现是这几个模型里面最差的。Sora 要想「挽回面子」,可能还得看以后的满血版了。
Veo 2 表现惊艳
话不多说,看看 Veo 2 的表现,我们或许就能理解为什么它在大众评审中能够压倒性地战胜之前的明星视频生成模型。
首先是对物理世界的理解力大大提高。如果不说是 AI 生成的,水下的波纹、光影,狗狗潜水时的动作协调性,都让人感觉如此真实,仿佛眼前的一切都是手持相机拍出来的,简直分不出来。
虽然仪表盘上的字不是完美,但我们可以看到,方向盘向左转的时候,整体画面也有一个左移,之后镜头向上从车窗摇到街道。
做到这种和主画面保持强一致性的摇镜头,其实非常难,每个细节都需要精确控制,确保镜头移动时画面中的物体位置和运动协调一致。
只有提升对真实世界物理运动规律的理解,才能做到这点,而 Veo 2 在这方面表现得尤为出色。
除此之外,Veo 2 的另一个亮点就是它生成的人类表情更加真实。
拿相似的 prompt 去测试其他模型,想实现这种自然又细腻的陶醉微表情,不失真、不鬼畜,试过才知道有多难。
,时长00:08
还有,这画面简直就像从纪录片里截取的一幕。镜头里,一个养蜂的男人在蜂群中忙碌,Veo 2 在生成这一场景时,真的是突破了不少难关。
,时长00:08
蜜蜂群体飞行不仅要表现出自然的协调感,还得和背景、光影无缝对接,避免出现卡顿或不自然的分布。但 Veo 2 把这些复杂的细节都处理得恰到好处,蜂群飞舞的每一刻都像是活生生的,「AI 味」已经很淡了。
DeepMind 表示,虽然视频模型经常出现「幻觉」,展示不必要的细节(例如多余的手指或额外的物体),但 Veo 2 产生这些细节的频率较低,模型的输出更加逼真。
,时长00:08
当然,作为一款 SOTA 视频生成模型,光能生成拟真视频可不够。从官方以及网友分享的生成结果看,Veo 2 在生成幻想和动画内容方面的表现也同样非常出色。
,时长00:08
提示词:A meeting of a lion, a bear and a giraffe, all of them wearing suits. Photorealistic, cinematic. 来自 X @hhm
,时长00:08
提示词:a sitcom tv show about potatoes,来自谷歌研究科学家 @babaeizadeh
Veo 2 还让创作者可以轻松实现以前需要复杂后期才能完成的视觉效果。比如,它可以让这个运动的立方体稳定地切换材质,这个画面让人来做,看起来就很难,换 AI 来做,其实一点也没变简单。
,时长00:08
Veo 2 不仅要解决实时追踪的问题,确保在物体快速移动时也能精准捕捉位置和形态,仅需 Prompt 就能置换材质。最厉害的是,它能保证在多次连续变换过程中画面始终流畅自然,不会出现抖动或错位。
Veo 2 的功能已经被加入到 Google Labs 视频生成工具 VideoFX 中,并扩大了可访问的用户数量。谷歌表示,计划明年将 Veo 2 扩展到 YouTube Shorts 和其他产品上。
,时长00:08
提示词:A broccoli wearing a leather jacket and carrot wearing a tank top having a steak dinner,来自谷歌研究科学家 @RubenEVillegas
不过 Veo 2 现在还未正式开放,需要填表排队,等待正式上线。
- 排队链接:https://labs.google/fx/tools/video-fx
OpenAI 连开直播 12 天,虽然赚足了流量,但从开播至今干货越来越少,可谓噱头大于实质。
而之前谷歌一直被 OpenAI 狙击,这次终于迎头反击。
雪上加霜的是,OpenAI Sora 的项目负责人 Tim Brooks 也在两个月前选择了跳槽至 DeepMind。
按照目前双方技术迭代的速度和质量来看,或许就像网友们所预测的:「谷歌明年就会把 OpenAI 甩得连尾气都吃不上了」。
参考内容:
https://blog.google/technology/google-labs/video-image-generation-update-december-2024/
锤爆Sora,尺度最大,谷歌发布最强视频模型Veo2,叫板海螺可灵
之前,OpenAI 一直狙击谷歌的新产品。现在,这个回旋镖打回来了。
谷歌昨晚在 OpenAI 发布会之前,发布了两个重量级更新,一个是最先进的视频生成模型 Veo 2,一个是文生图模型 Imagen-3。
先给你看个视频:
,时长00:22
打网球、挥拍、投篮、跑步,这不是运动会宣传片,而是谷歌这次发的Veo 2生成的视频!它扛住了大幅度运动的考验,我愿称之为年度尺度最大、效果最佳的视频模型!
拿 Sora 跟 Veo 2 对比一下,看完这个,瞬间感觉刚开的 OpenAI 订阅不香了……
Sora 20 美元版:5 秒视频时长、分辨率最高 720p
Sora 200 美元版:20 秒视频时长、分辨率最高 1080p
Veo 2:约 2 分钟视频时长、分辨率最高 4k
除了生成视频的参数,benchmark 表现也超越 Sora,一同比较的模型有 4 个,除了 Sora, 还有 Meta Movie Gen 和 Kling v1.5、Minimax。
左侧是整体满意度,右侧是提示词遵循度
谷歌这次发布的 Veo 2 的几项增强:
- 保真度:显著改进细节、真实感和减少伪影。
- 准确度:更理解物理世界,懂得遵循详细指令,能高度准确地表示运动。
- 相机控制:了解电影摄影的独特语言,能创建各种拍摄风格、角度、动作。
说到指令遵循,我前几天做的 Sora 实测,Sora 指令遵循能力差到难以置信。推特上一网友提供了一组切西红柿的 Veo 2 和 Sora 的对比视频。
A pair of hands skillfully slicing a ripe tomato on a wooden cutting board.(一双手熟练地在木菜板上切成熟的西红柿)
Veo 2 演示效果:
,时长00:08
Sora 效果:
,时长00:05
家人们,就看看 Veo 2 的阴影、反射、力学和视觉效果,未免太真了吧!现在能这么自然地处理对象交互的模型,谁还能拉出第二个来看看?
你们可以看一下,官方的演示视频:
prompt:Cinematic shot of a female doctor in a dark yellow hazmat suit, illuminated by the harsh fluorescent light of a laboratory. The camera slowly zooms in on her face, panning gently to emphasize the worry and anxiety etched across her brow. She is hunched over a lab table, peering intently into a microscope, her gloved hands carefully adjusting the focus. The muted color palette of the scene, dominated by the sickly yellow of the suit and the sterile steel of the lab, underscores the gravity of the situation and the weight of the unknown she is facing. The shallow depth of field focuses on the fear in her eyes, reflecting the immense pressure and responsibility she bears.
(电影镜头中一位身穿深黄色防护服的女医生,在实验室刺眼的荧光灯照射下。镜头慢慢拉近她的脸,轻轻摇动以强调她额头上刻着的担忧和焦虑。她弯腰伏在实验台上,聚精会神地看着显微镜,戴着手套的双手小心地调整焦点。场景的色调柔和,以病态的黄色套装和实验室的无菌钢铁为主,强调了局势的严重性和她所面临的未知的重量。浅景深聚焦于她眼中的恐惧,反映出她所承受的巨大压力和责任。)
,时长00:08
你们就说,能看出来这是 AI 生成的视频吗?
如果说特写镜头体现不出实力,那来看看这个:
Prompt: The camera floats gently through rows of pastel-painted wooden beehives, buzzing honeybees gliding in and out of frame. The motion settles on the refined farmer standing at the center, his pristine white beekeeping suit gleaming in the golden afternoon light. He lifts a jar of honey, tilting it slightly to catch the light. Behind him, tall sunflowers sway rhythmically in the breeze, their petals glowing in the warm sunlight. The camera tilts upward to reveal a retro farmhouse with mint-green shutters, its walls dappled with shadows from swaying trees. Shot with a 35mm lens on Kodak Portra 400 film, the golden light creates rich textures on the farmer’s gloves, marmalade jar, and weathered wood of the beehives.
(相机轻轻地漂浮在一排排粉彩画的木制蜂箱中,嗡嗡作响的蜜蜂在画面中滑进滑出。动作落在站在中间的优雅农民身上,他质朴的白色养蜂服在金色的午后阳光下闪闪发光。他举起一罐蜂蜜,稍微倾斜以捕捉光线。在他身后,高大的向日葵在微风中有节奏地摇曳,花瓣在温暖的阳光下闪闪发光。镜头向上倾斜,露出一座带有薄荷绿色百叶窗的复古农舍,墙壁上布满了摇曳的树木的阴影。使用 35 毫米镜头在柯达 Portra 400 胶片上拍摄,金色的光线在农民的手套、果酱罐和风化的蜂箱木材上创造出丰富的纹理。)
,时长00:08
家人们,这一段视频,都能拿去做纪录片以假乱真了吧!
除了人像,模拟真实物理世界也不在话下。
Prompt: The sun rises slowly behind a perfectly plated breakfast scene. Thick, golden maple syrup pours in slow motion over a stack of fluffy pancakes, each one releasing a soft, warm steam cloud. A close-up of crispy bacon sizzles, sending tiny embers of golden grease into the air. Coffee pours in smooth, swirling motion into a crystal-clear cup, filling it with deep brown layers of crema. Scene ends with a camera swoop into a fresh-cut orange, revealing its bright, juicy segments in stunning macro detail.
(太阳在完美的早餐场景后面慢慢升起。厚厚的金色枫糖浆缓慢地倒在一堆松软的煎饼上,每个煎饼都释放出柔软温暖的蒸汽云。脆皮培根的特写镜头发出嘶嘶声,金色油脂的微小余烬飞散到空气中。咖啡以平稳、旋转的方式倒入水晶般透明的杯子中,充满深棕色的咖啡油脂层。场景结束时,摄像机猛扑到刚切好的橙子中,以令人惊叹的宏观细节展现出其明亮、多汁的部分。)
,时长00:08
Prompt: A cinematic, high-action tracking shot follows an incredibly cute dachshund wearing swimming goggles as it leaps into a crystal-clear pool. The camera plunges underwater with the dog, capturing the joyful moment of submersion and the ensuing flurry of paddling with adorable little paws. Sunlight filters through the water, illuminating the dachshund's sleek, wet fur and highlighting the determined expression on its face. The shot is filled with the vibrant blues and greens of the pool water, creating a dynamic and visually stunning sequence that captures the pure joy and energy of the swimming dachshund.
(电影般的高动作跟踪镜头拍摄了一只戴着泳镜的极其可爱的腊肠犬跳进水晶般清澈的水池的画面。相机与狗一起潜入水下,捕捉到浸入水中的快乐时刻以及随后用可爱的小爪子划水的瞬间。阳光透过水面,照亮了腊肠犬光滑湿润的皮毛,凸显了它脸上坚定的表情。这张照片充满了池水充满活力的蓝色和绿色,创造了一个充满活力和视觉震撼的序列,捕捉到了游泳的腊肠犬纯粹的快乐和能量。)
,时长00:08
A cinematic shot captures a fluffy Cockapoo, perched atop a vibrant pink flamingo float, in a sun-drenched Los Angeles swimming pool. The crystal-clear water sparkles under the bright California sun, reflecting the playful scene. The Cockapoo's fur, a soft blend of white and apricot, is highlighted by the golden sunlight, its floppy ears gently swaying in the breeze. Its happy expression and wagging tail convey pure joy and summer bliss. The vibrant pink flamingo adds a whimsical touch, creating a picture-perfect image of carefree fun in the LA sunshine.
(在阳光普照的洛杉矶游泳池中,一个电影镜头捕捉到了一只毛茸茸的可卡犬栖息在充满活力的粉红色火烈鸟浮标上。清澈见底的海水在加州灿烂的阳光下闪闪发光,倒映着嬉戏的景象。可卡犬的皮毛是白色和杏色的柔软混合色,在金色的阳光下显得更加突出,它松软的耳朵在微风中轻轻摇曳。它快乐的表情和摇动的尾巴传达着纯粹的欢乐和夏日的幸福。充满活力的粉红色火烈鸟增添了一种异想天开的感觉,在洛杉矶的阳光下营造出一幅无忧无虑的完美画面)
,时长00:08
Prompt: A low-angle shot captures a flock of pink flamingos gracefully wading in a lush, tranquil lagoon. The vibrant pink of their plumage contrasts beautifully with the verdant green of the surrounding vegetation and the crystal-clear turquoise water. Sunlight glints off the water's surface, creating shimmering reflections that dance on the flamingos' feathers. The birds' elegant, curved necks are submerged as they walk through the shallow water, their movements creating gentle ripples that spread across the lagoon. The composition emphasizes the serenity and natural beauty of the scene, highlighting the delicate balance of the ecosystem and the inherent grace of these magnificent birds. The soft, diffused light of early morning bathes the entire scene in a warm, ethereal glow.
(低角度拍摄捕捉到一群粉色火烈鸟在郁郁葱葱、宁静的泻湖中优雅地涉水。它们鲜亮的粉红色羽毛与周围翠绿的植被和晶莹剔透的碧绿海水形成了美丽的对比。阳光在水面上闪闪发光,在火烈鸟的羽毛上产生闪烁的倒影。当它们穿过浅水时,它们优雅而弯曲的脖子被淹没,它们的动作产生轻柔的涟漪,蔓延到整个泻湖。构图强调场景的宁静和自然之美,突出生态系统的微妙平衡和这些宏伟鸟类与生俱来的优雅。清晨柔和、漫射的光线使整个场景沐浴在温暖、空灵的光芒中。)
,时长00:08
除了真实的场景,哪怕是“梦核”的内容,Veo 2 也能稳定驾驭:
Prompt: The camera spirals down through an infinite network of glowing threads, pulsating with multicolored light. The setting feels alive, each thread thrumming with faint whispers and bursts of imagery—fractals, mythological beasts, and celestial maps. The courier darts through the maze, their silhouette painted with the kaleidoscopic glow of the fibers. As they weave between strands, their every touch triggers animations—one a glowing phoenix, another a blooming lotus—until they stumble upon a massive, golden thread. It flares, and a holographic figure emerges: a younger version of themselves, surrounded by fiery glyphs. The scene shifts between soft, glowing pastels and brilliant, fiery tones, blending hand-drawn 2D animation with dynamic light effects, captured in fluid, sweeping motion.
(摄像机螺旋向下穿过一个无限的发光线网络,闪烁着五彩的光芒。场景给人一种生机勃勃的感觉,每条线索都充满了微弱的低语和图像的爆发——分形、神话野兽和天体图。信使飞快地穿过迷宫,他们的轮廓被纤维的万花筒般的光芒所描绘。当它们在线之间编织时,它们的每一次触摸都会触发动画——一个是发光的凤凰,另一个是盛开的莲花——直到他们偶然发现一根巨大的金线。它闪耀,一个全息人物出现:他们自己的年轻版本,周围环绕着炽热的符号。场景在柔和、发光的粉彩和绚丽、火热的色调之间变换,将手绘的 2D 动画与动态灯光效果融为一体,以流畅、扫过的动作捕捉。)
,时长00:08
看完这些 showcase,笔者就第一时间冲到官网,打算实验一下 Veo 2 是不是真的这么牛——
结果,目前仅支持通过 VideoFX 平台使用这个模型,并且想使用只能申请加入 waitlist!
申请地址:https://labs.google/fx/zh/tools/video-fx
介于 Veo 2 模型如此震撼的效果,之前实测 Sora 时,大家在评论区打出的“想看夕小瑶跳青海摇”,我打算直接用 Veo 2 满足广大小伙伴的愿望。
现在笔者已经申请 waitlist 了,只要申请通过,就给大家带来一手实测!(才不是因为我自己也想看跳青海摇是什么效果——)
放个family群里的神评论hhh看完上述官方 demo 的小伙伴可能还有一个疑问:
诶它不是最长能生成 2 分钟左右的视频吗,怎么每个官方演示视频都只有 8 秒?
这是因为目前 VideoFX 平台上只能使用 Veo 2 阉割版,限制视频分辨率上限为 720p,长度为 8 秒。
(即便是这样,也比 20 美元套餐的 Sora 强啊)
DeepMind 产品副总裁 Eli Collins 表示,在接下来的几个月中,他们将继续根据用户的反馈进行迭代,慢慢放出 Veo 2 完全体,并将 Veo 2 集成到整个 Google 生态系统中。预计明年会分享更多更新。
好吧,原来是一个期货。
但谷歌的交付速度我是比较信任的,肯定不会像 Sora 一样等了一年才放出来。
与 Veo 2 一起发布的,还有一个文生图模型 Imagen 3,生图细节更好、光照更丰富、干扰更少。benchmark 得分就直接看图吧。
这个模型生图细节确实好到爆,现在就能直接使用,想体验的小伙伴可以直接去下面的地址试一下。
Imagen 3 使用地址:https://labs.google/fx/tools/image-fx
谷歌现在放出的大招,跟 OpenAI 12 天直播的更新内容形成了鲜明对比——
谷歌每次出现就是核弹级别,Gemini 2.0,还有这次的 Veo 2,抢尽了 OpenAI 的风头。
OpenAI 这边就是纯粹的炒作过度了,预告 12 天直播给大家勾起了兴趣,现在又一直给大家泼冷水。
不知道 Sam Altman 看到谷歌这次的更新后,还能不能睡得着觉。
#Towards an Information Theoretic Framework of Context-Based Offline Meta-Reinforcement Learning
基于信息论,决策模型有了全新预训练范式统一框架
论文一作为之江实验室研究专家、香港中文大学在职博士李蓝青,指导老师为香港中文大学计算机科学与工程系王平安 (Pheng Ann Heng) 教授。同济大学硕士生张海为共同第一作者,指导老师赵君峤教授为论文通讯作者。
现如今,以 GPT 为代表的大语言模型正深刻影响人们的生产与生活,但在处理很多专业性和复杂程度较高的问题时仍然面临挑战。在诸如药物发现、自动驾驶等复杂场景中,AI 的自主决策能力是解决问题的关键,而如何进行决策大模型的高效训练目前仍然是开放性的难题。
强化学习(RL)作为一种经典的时序决策模型的训练方法,势必成为决策大模型训练及微调的核心技术之一。而由于任务和数据的复杂性,我们希望模型在训练时能摆脱传统强化学习与环境在线交互的方式,实现在海量历史数据中进行离线、多任务的高效学习,这一新范式被称为「离线元强化学习 」(Offline Meta-RL)。
近期,围绕离线元强化学习,来自之江实验室、香港中文大学、同济大学等单位的研究团队提出了全新算法 UNICORN。该方法基于信息论,首次系统性地提出了一套关于强化学习中任务表示学习(task representation learning)的理论框架 UNICORN(UNIfied Information Theoretic Framework of Context-Based Offline Meta-ReiNforcement Learning),将现有主流方法利用一个基于任务表征的通用互信息优化目标进行了统一,并凭借理论创新和全面的实验验证,成为离线及元强化学习领域的重要里程碑,被人工智能三大顶级会议 NeurIPS 2024 接收为 Spotlight 文章(中稿率 2.08%)。
- 论文标题:Towards an Information Theoretic Framework of Context-Based Offline Meta-Reinforcement Learning
- 论文链接:https://openreview.net/pdf?id=QFUsZvw9mx
- 项目地址:https://github.com/betray12138/UNICORN
问题背景
在经典强化学习中,智能体(agent)通过与外部环境实时交互来收集反馈,在不断试错(trial-and-error)中积累经验进行学习。然而在诸如自动驾驶、疾病治疗等现实场景中,试错带来的风险往往是无法承受的,从而使人们开始关注如何摆脱与环境的在线交互,仅从历史数据中进行学习,这一新范式被称为「离线强化学习」(offline RL)。
另一方面,复杂多变的真实场景使得智能体处理多任务能力的必要性与日俱增,这种使智能体像人类一样同时学习多种技能并进行举一反三的范式被称作「元强化学习」(meta-RL)。
离线强化学习和元强化学习作为强化学习的两个分支,有着各自独特的优势。前者由于摆脱了与环境的在线交互,可以重复利用历史数据进行训练,具有高安全性、高样本效率的特点;而后者聚焦多任务及迁移学习,在泛化能力方面表现突出,两者优势互补。
于是在 2021 年前后,人们开始尝试结合两种范式来训练更加强大的智能体,其中主流的一类方法被称为「基于语境的离线元强化学习」(Context-Based Offline Meta-RL,COMRL),其核心思想是将当前任务的表征作为额外的状态信息,训练一个适用于任意任务 / 环境的通用策略(universal policy):
在该框架下,如何学习鲁棒、有效的任务表征 Z 成为核心问题,而其中最重要的挑战是语境偏移(context shift)。由于智能体的训练数据是离线也就是固定分布的,但在测试时面临的任务语境未知且多变,导致训练和测试集间可能在状态 - 动作(state-action)维度或者任务维度上存在巨大分布偏移,这对于模型的鲁棒性、泛化性提出了极高要求。
针对上述问题,现有主流方法例如 FOCAL[1]、CORRO[2]和 CSRO[3]陆续提出了多种优化目标,利用度量学习(metric learning)、对比学习(contrastive learning)等思想进行任务表征学习:
- FOCAL
- CORRO
- CSRO
然而,现有方法主要聚焦于对损失函数的经验性改进,缺乏针对任务表示学习尤其是语境偏移的系统性理论支持和设计指导。
基于信息论的统一理论框架 UNICORN
UNICORN 的核心创新在于借助信息论,从数学定义、因果关系分解、中心定理三个层面依次递进,首次系统性地定义和解构了 COMRL 中的任务表示学习这一问题,并通过严格理论证明将现有方法的优化目标进行了统一,由此提出并验证了两种新的算法实现,以启迪未来更多新方法的设计。
1. 任务表示学习的数学定义
由于在 COMRL 中,数据覆盖多个任务,假设这些任务采样于一个特定的任务分布,我们将遵从该分布的任务变量定义为随机变量
,与之对应的数据样本和任务表示变量分别定义为
、
,则三者构成如下马尔可夫链:
任务表示学习的数学定义:COMRL 中的任务表示学习意在找到一个数据
相对于任务变量
的充分统计量(sufficient statistics)
。
2. 因果关系分解
在 COMRL 中,原则上,任务变量 与进行采样的行为策略(behavior policy)应该相互独立。我们发现如果将数据样本
看作包含状态、动作、奖励的四元组 (s, a, s’, r),则其中前两项(s, a)的分布主要与行为策略相关,而在给定 s、a 的情况下,s’、r 的分布完全由任务本身的奖励函数及状态转移函数所决定。基于此,我们可以对上述马尔可夫链进行如下拆解:
该分解反映了由 s’, r 构成的 X_t 包含了与任务变量
、
的绝大部分因果关系,而由 s, a 构成的 X_b 由于与行为策略高度相关,含有大量虚假相关性(spurious correlation)。同时在数学上,我们发现该因果关系分解正好可以对应如下的互信息分解:
基于上述分析,我们将右边第一项命名为主因果关系(primary causality),第二项称为次因果关系(lesser causality)。
3. 中心定理
本文从数学上严格证明了如下不等式(中心定理):
该中心定理引申出 2 个重要结论,为未来 COMRL 领域的新方法设计指明了道路:
- 主因果关系作为不等式下界,虽不包含虚假相关性,但缺失部分因果相关性;而主因果关系与次因果关系之和作为上界,在囊括全部因果相关性的同时引入了虚假相关性。因此,理论上,一个有且仅包含全部因果相关性的「最优优化目标」应该介于两者之间,而 I (Z; M) 刚好满足这一要求。基于上述观察,我们提出 I (Z; M) 应该作为任务表示学习优化目标的金标准(ground truth),其天然具有对于语境偏移的鲁棒性。
- 现有主流方法本质都是在优化 I (Z; M) 的一个近似,例如 FOCAL、CORRO、CSRO 分别优化的是其上界、下界和两者的线性插值。因此,找到更好的 I (Z; M) 近似方法将成为 COMRL 领域未来发展的关键方向。
基于上述洞察,为了展示 UNICORN 框架的指导意义,通过对 I (Z; M) 的近似,我们提出了两种新的算法实现:
- 有监督 UNICORN:将 I (Z; M) 的求解近似为离散化的分类问题
- 自监督 UNICORN:将 I (Z; M) 的求解近似为数据重建(生成式)+ 度量学习(对比式)
实验结果
UNICORN 的广泛适用性和鲁棒性
为了证明 UNICORN 理论框架的普适性,我们在多种机器人连续控制任务的相关设定下对新提出的两种方法进行了广泛的实验验证:
1. Behavior IID/OOD (训练集与测试集的行为策略采样于相同分布 / 不同分布)
结论:UNICORN 算法在同分布测试集上性能媲美 SoTA,在分布外测试集上性能显著优于现有其他方法。
2. 不同质量的数据集表现
结论:UNICORN 算法(尤其无监督版本)在不同质量的数据集上的性能均达到 SoTA。
3. 不同模型架构的可迁移性(应用于 Decision Transformer(DT)的测试结果)
结论:UNICORN 算法在 MLP/Decision Transformer 架构上相比现有方法均呈现明显优势,可以作为即插即用的模块广泛应用于其他 RL 算法中。
4. 对于分布外任务的泛化性
图左为分布外任务的构造方式:以 Ant-Dir 为例,训练任务的目标方向采样自第二、三象限,测试任务分布于第一、四象限,两者完全不重叠。图右为测试结果:自监督 UNICORN 为唯一取得正向小样本迁移(positive few-shot transfer)的算法。
结论:利用无监督 UNICORN 中的自编码器进行 domain randomization 和 model-based RL,可以将智能体的能力外推至分布外的任务,这一点是现有其他方法都无法做到的。
UNICORN 的未来展望
为拓展决策大模型的能力边界提供理论基础
UNICORN 为离线元强化学习提供了统一理论基础和算法设计准则,对于决策大模型的大规模离线、多任务预训练及微调,从而进一步拓展决策大模型的能力边界具有指导意义。该技术有助于解决药物设计、精准医疗、具身智能等前沿领域面临的 AI 模型的泛化性、多目标优化、样本利用率等挑战,同时,团队也在探索将 UNICORN 框架进一步推广到在线强化学习等更多场景
#StruQ
LLM提示词注入攻击如何防?UC伯克利、Meta最新研究来了
本文介绍对 LLM 提示词注入攻击(prompt injection)的通用防御框架。首篇论文已被安全顶会 USENIX Security 2025 接收,第一作者陈思哲是 UC Berkeley 计算机系博士生,Meta FAIR 访问研究员,研究兴趣为真实场景下的 AI 安全。他的导师是 David Wagner (UCB), 郭川 (Meta), Nicholas Carlini (Google)。
一作主页:https://sizhe-chen.github.io
项目报告 slides:https://drive.google.com/file/d/1baUbgFMILhPWBeGrm67XXy_H-jO7raRa/view?usp=sharing
- 论文地址:https://arxiv.org/pdf/2402.06363
- 项目主页:https://sizhe-chen.github.io/StruQ-Website
- 代码仓库:https://github.com/Sizhe-Chen/StruQ
- 论文地址:https://arxiv.org/pdf/2410.05451
- 项目主页:https://sizhe-chen.github.io/SecAlign-Website
- 代码仓库:https://github.com/facebookresearch/SecAlign
提示词注入攻击:背景
LLM 强大的语言能力,使其被广泛部署于 LLM 应用系统(LLM-integrated applications)中。此时,LLM 需要访问外部数据(如文件,网页,API 返回值)来完成任务。在这个交互场景下,有以下三方:
- 指令(可信的):来自 LLM 应用系统开发者
- 模型(可信的):来自开发者或 API 供应方
- 数据(不可信的):来自外部或第三方
系统对外部数据源的访问,提供了全新的攻击视角:攻击者可以在第三方数据中,注入额外的指令,以覆盖 LLM 应用的原指令。如下图所示,餐厅 A 的老板在点评网站 yelp 上,发布一条含有提示词注入攻击的评论,误导 LLM 忽视其原指令(推荐一些好餐厅),转而推荐风评不佳的餐厅 A。
提示词注入攻击,被 OWASP 安全社区列为对 LLM 应用系统的最大威胁 [1],对更广泛的 LLM 应用造成重大安全阻碍。部署的工业级 LLM 应用系统(Google Docs [2], Slack AI [3], ChatGPT [4]),经测试可以被提示词注入攻击攻破,造成私有内容的泄露。
提示词注入攻击:原因
第一个原因:LLM 输入中,没有分离指令和数据,二者被直接拼接为单个 LLM 输入。
对此,我们提出一个安全前端(secure front-end),在组织 LLM 输入时,显式分离指令和数据。
第二个原因:LLM 训练中,模型被教导遵循输入中的任意指令。
对此,我们提出结构化指令微调(structured instruction tuning)和安全对齐(secure alignment),训练 LLM 识别安全前端组织的输入,从中生成高质量的输出,并对提示词注入攻击鲁棒。
防御策略 1:安全前端
在 LLM 输入上,我们设计只能被系统使用的分隔符(delimiters),分离指令和数据。安全前端会留出一些 LLM special tokens(如下图中的 [MARK], [INST], ...),用于指令 / 数据分离,并删除数据部分可能含有的特殊分隔符,使其仅能被 LLM 应用系统(而非数据提供方 / 攻击者)所使用。
防御策略 2:结构化指令微调
在 LLM 训练时,我们模拟提示词注入攻击,教导模型忽视任何在数据中的注入指令,仅遵循 LLM 应用系统的原指令(由安全前端分离并定义)。具体来说,我们从原指令微调数据集,生成一个新的 “结构化指令微调数据集”,其部分包含带提示词注入攻击的样本,如下图所示。在此数据集上,我们利用标准 SFT(supervised fine-tuning)算法微调模型。
防御策略 3:安全对齐
在 LLM 训练时,除了指令微调,还有对齐这一步骤,我们同样可以在此做防御。安全对齐构建一个偏好数据集(preference dataset),对于每一个 SFT 数据集中的样本:
- 采样另一个随机样本 s',用于模拟提示词注入攻击
- 偏好数据集中,LLM 输入是被注入了 s' 指令的样本 s
- 偏好数据集中,LLM 理想输出是对 s 指令的回复
- 偏好数据集中,LLM 不良输出是对 s' 指令的回复
在此数据集上,我们利用标准偏好优化(direct preference optimization)算法微调模型。
提示词注入攻击:防御结果
防御策略 1+2 被称为 StruQ (USENIX Sec'25),防御策略 1+3 被称为 SecAlign。
如下图所示,StruQ/SecAlign 模型保持和未防御模型相同的性能(general-purpose utility by AlpacaEval2 WinRate)。
对于无优化的提示词注入攻击,StruQ 模型实现了 < 2% 攻击成功率,SecAlign 实现 0% 攻击成功率(Max ASR Opt.-Free)。
对于基于优化的提示词注入攻击,StruQ 显著降低其成功率,SecAlign 又进一步将成功率降低 4 倍以上,到 15% 以下(Max ASR Opt.-Based)。
提示词注入攻击:防御总结
我们提出提示词注入攻击成功的两个原因,并逐一对它们设计防御。
由于 LLM 输入中,没有分离指令和数据,我们提出安全前端(secure front-end),在组织 LLM 输入时,用只能被系统所用的分隔符,分离指令和数据。
由于 LLM 训练中,模型被教导遵循输入中的任意指令,我们提出结构化指令微调(structured instruction tuning)和安全对齐(secure alignment),训练模型只遵循 LLM 应用系统设计的指令。
以下是三个防御策略,在模型训练 pipeline 中的位置。
[1] https://owasp.org/www-project-top-10-for-large-language-model-applications
[2] https://embracethered.com/blog/posts/2023/google-bard-data-exfiltration
[3] https://promptarmor.substack.com/p/data-exfiltration-from-slack-ai-via
[4] https://thehackernews.com/2024/09/chatgpt-macos-flaw-couldve-enabled-long.html
#HyperSeg
大模型助力分割,刷新10项SOTA!清华和美团提出HyperSeg:通用分割框架
首个基于视觉大语言模型(VLLM)的通用分割模型,能够处理像素级的图像和视频感知任务,并具备复杂的推理和对话能力。HyperSeg在多个分割任务中刷新了10项SOTA(State of the Art),展现了其在视觉-语言推理感知任务中的卓越性能。模型和代码已开源。
近来,视觉大语言模型(VLLM)在多种视觉-语言理解任务中表现出色的推理和对话能力。然而,这些方法基于全局的视觉-语言对齐,限制了其在视觉感知任务中细节理解能力,如图像和视频域的像素级分割。近期的研究使VLLM能够进行细粒度的视觉理解,如指代分割(RES)和推理分割(ReasoningSeg)。尽管这些方法的表现令人瞩目,目前仍缺乏基于VLLM的通用分割框架,可以同时处理图像和视频域的诸多视觉感知任务,以及更复杂的推理分割任务,并且同时具备VLLM本身强大的对话推理能力。
清华和美团的研究团队针对VLLM在细粒度视觉感知任务中的局限性,提出了统一的通用分割框架:HyperSeg。HyperSeg是首个基于VLLM的通用分割模型,可以同时处理像素级图像和视频感知,并具有复杂的推理和对话能力。HyperSeg在需要丰富世界知识的复杂视觉-语言推理感知任务中表现出色,这对于现实世界的理解和交互具有重要意义。HyperSeg把诸多感知任务划分为两种统一的prompt格式:(1)文本提示(类别名称、推理问题和指代语句),(2)视觉提示(框、掩码等)。得益于对多样分割任务和不同视觉域数据的协同训练,HyperSeg可以学习不同指令和视觉概念之间复杂关联。
HyperSeg贡献如下:
首个基于视觉大语言模型(VLLM)的通用分割模型,用于像素级的图像和视频感知,涵盖了诸多常见分割任务、复杂推理分割任务以及基于对话的视觉-语言理解任务。
将混合实体识别和细粒度视觉感知策略整合到VLLM中,充分利用VLLM的语义识别能力以及注入更多细粒度的视觉信息。此外,得益于时序适配器的设计,模型能够处理更具挑战性的视频感知任务,提升通用分割能力。
模型性能优异,在多项通用分割任务中展示了强大的性能,对于开放分割以及多模态对话任务也展示出了令人瞩目的能力。
HyperSeg的模型和代码已开源:
论文:https://arxiv.org/abs/2411.17606
代码:https://github.com/congvvc/HyperSeg
模型实现:
HyperSeg的架构包含一个细粒度的金字塔视觉编码器、一个轻量级的视觉大语言模型(VLLM),一个细粒度视觉感知器(FVP)和一个分割预测器。模型根据视觉输入(图像或视频)和prompt输入(视觉或文本),输出分割掩码、类别得分和实例嵌入(用于视频实例跟踪)。FVP模块将多尺度高分辨率视觉特征融合于细粒度tokens,为LLM注入细粒度的视觉信息。LLM接收三种类型的输入:由CLIP编码器编码的视觉tokens、细粒度tokens以及多样化的prompt tokens。分割预测器接收语义增强的mask tokens、prompt 特征嵌入以及多尺度视觉特征作为输入,输出对应prompt下的分割结果。
细粒度视觉感知器(FVP)设计。以往的视觉感知器往往使用的是粗糙的单尺度CLIP视觉特征, 相比之下FVP将多尺度的细粒度视觉特征融入LLM,更加适配细粒度视觉感知任务。
混合实体识别策略。相比于以往的generation-only (a) 方法以及decode-only (b) 方法,混合实体识别策略 (c) 结合语义类别识别以及类别相似度计算两种方式,得到每个分割掩码的得分。
模型性能对比
对于广泛使用的指代分割 (RES) 任务,HyperSeg在RefCOCO, RefCOCO+和RefCOCOg上均取得了最先进的性能,此外在G-RES基准gRefCOCO上也取得了令人瞩目的zero-shot性能。
对于更加复杂且具有挑战性的推理分割任务来说,HyperSeg以更少的模型参数(3B)大幅领先于先前最先进的方法,尤其是在ReVOS-Reasoning上带来了+12.1的性能提升。
此外,HyperSeg在传统的全景分割、语义分割、以及开放词汇分割任务的多个数据集上,无论是与以往的分割专家模型或是基于VLLM的分割模型相比,也取得了最先进或具有竞争力的结果。
HyperSeg在常见的视频分割任务如视频目标分割,指代视频目标分割及视频实例分割上也取得了令人印象深刻的性能表现。
最后,HyperSeg在常见的多模态问答任务上也有着不错的表现,展现了其在推理和对话方面的卓越能力。
下图展示了 HyperSeg在多个视觉分割任务上的可视化结果,如全景分割、指代分割、推理分割等。
总结
HyperSeg是首个基于视觉大语言模型(VLLM)的通用分割模型,专为像素级图像和视频感知设计,涵盖了广泛的通用分割和复杂推理任务。通过一些专有模块的设计,HyperSeg能灵活处理不同类型以及不同视觉域的分割任务,并且保留了强大的对话推理能力。HyperSeg拓展了VLLM在视觉感知以及推理任务中的可能性,并为未来可能的研究提供了一些insight。
#亚马逊云科技为什么还在做基础大模型
Scaling Law撞墙?预训练终结?
12 月 2-6 日,亚马逊云科技在美国拉斯维加斯举办了今年度的 re:Invent 大会。会上,亚马逊云科技发布了相当多东西,其中之一便是新的大模型系列 Nova。说实话,这确实出乎了相当多人的意料 —— 毕竟亚马逊已经重金押注 Anthropic,似乎没有必要再自起炉灶了。
亚马逊总裁兼 CEO 安迪・贾西(Andy Jassy)宣布 Nova 系列模型,包括 Micro、Lite、Pro 和 Premier 四个版本,其中后三者是多模态模型。
虽然事实上 Nova 并非亚马逊发布的第一款基础大模型 —— 这家科技巨头在 2023 年的 re:Invent 大会上就曾发布过 Titan 系列 AI 模型,但考虑到前段时间关于「Scaling Law 是否撞墙」的问题甚嚣尘上,很多人都认为继续耗费资源和时间来训练基础大模型并不划算,还不如基于已有的模型进行微调、再训练或推理时间优化。
那亚马逊云科技训练 Nova 就算是无用功了吗?并非如此。实际上,从 re:Invent 大会后一些研讨会上的讨论情况看,亚马逊云科技在基础模型上的投入并未受到「Scaling Law 撞墙论」的影响,依然认为基础大模型大有可为;同时,训练基础大模型对亚马逊云科技自身以及 AI 领域的创业者来说都具有巨大的潜在价值。这篇文章将告诉你为什么亚马逊云科技不可能放弃基础大模型,还会继续一路走下去。
Scaling Law 就算撞墙也无妨基础大模型依然大有可为
Scaling Law 是否已经或将要撞墙?对这个问题的争论已经遍布整个学术界和产业界。毫不夸张地讲,这个问题的答案直接决定着 AI 领域的资源和资金流向。但到目前为止,即便这个问题已经引发许多业内大佬的争论,我们依然没能看到一个确切答案的苗头。
OpenAI CEO Sam Altman 坚信「没有墙」,而著名研究者 Ilya Sutskever 却多次表示「我们所知的预训练将会终结」,图片分别来自 X 和 NeurIPS 2024 演讲。
虽然关于「Scaling Law 是否撞墙」的争论纷纷扰扰,但刚刚发布 Nova 系列模型的亚马逊云科技显然并不受影响;不仅如此,他们还对基础大模型的前景非常乐观。亚马逊云科技大中华区产品部总经理陈晓建就表达了这样的观点,他说:「到今天为止,基础大模型还远远没有到非常成熟、已经不需要新的提供商入局的阶段,它其实还是在一个非常早期的阶段。」
事实上,恐怕不止亚马逊一家公司这么想,毕竟它并不是唯一仍在积极布局基础大模型的科技巨头。比如苹果就一直在研发规模不大的基础大模型,前些天还刚刚发布了一款多模态模型 STIV;重金支持 OpenAI 的微软也没有放弃自家的大模型,更遑论谷歌和 Meta 了。在国内,字节跳动、阿里巴巴和腾讯等巨头也都有自己的基础大模型项目。陈晓建也说明了这一点:「在亚马逊云科技内部,我们有高度共识认为要做大模型。」
究其根本,目前关于 Scaling Law 是否撞墙的问题其实主要集中在数据上。前段时间有一项研究认为,如果 LLM 保持现在的发展势头,预计在 2028 年左右,已有的数据储量将被全部利用完;前些天 Ilya Sutskever 也表示数据就像是 AI 的化石燃料,迟早会消耗光:「我们已经达到了数据的峰值,未来不会再有更多数据。我们必须利用现有的数据,因为互联网只有一个。」
来自论文《Will we run out of data? Limits of LLM scaling based on human-generated data》
但实际上,公共互联网数据并不能完全代表所有数据。人类世界还有很多数据并未数字化或没有公开,包括大量古老的纸质文献、大量涉及机密或隐私的数据、许多物联网和传感器数据以及封闭的行业数据等。
此外,人类每一天都还在继续产生大量新数据 —— 虽然其中绝大部分都是低质量或重复的数据,但也不能否认,当任何一种新技术得到广泛应用,又会创生出大量新形势的高质量数据,而我们又正处于一个新技术迸发的时代,量子计算、生物技术、虚拟和混合现实、物联网…… 它们都有可能成为下一代 AI 的重要数据来源。
因此,就算基于公共互联网的数据 Scaling 撞墙了,基础大模型的发展也不会停滞,私有数据和新型数据有望继续创造新的可能性。
陈晓建也指出了这一点:「数据的价值是毫无疑问的。我们一直在强调,在这个大模型时代,合适的模型和平台只是其中一个部分,远远不是做大模型的全部。你的整个数据资产,你的数据基座才是你真正实现业务差异化的能力。」
此外,已有数据是否已被充分利用也是一个有待商榷的问题,毕竟我们不能保证现在的 token 化方案就是完美的,能够在不丢失任何信息的情况下完成对文本、视频、时间和空间等信息的编码。随着模型规模的扩大以及编码技术的进一步演进,基础大模型或许能从已有数据中发掘出新的养分,实现进一步的 Scaling。
当然,另一个重要的探索方向也不容忽视,即利用 AI 合成高质量数据来训练下一代 AI。
亚马逊云科技开源的一个使用 Amazon Bedrock 生成合成数据集的项目架构,项目地址:https://github.com/aws-samples/amazon-bedrock-synthetic-manufacturing-data-generator
总之,Scaling Law 撞墙论显然无法动摇亚马逊等科技巨头继续投入基础大模型的决心。事实情况可能刚好相反,它们不仅看到了基础模型目前的应用价值,还看到了未来通过技术进步和数据挖掘实现更大突破的机会。
在 re:Invent 大会上,亚马逊云科技发布了多款与数据相关的产品,包括可以连接多个外部数据源的 Kendra Index、让用户可以使用自己的私有数据的结构化数据检索能力、用于知识图谱的 GraphRAG 技术、用于非结构化数据的数据增强功能以及升级版的 SageMaker(将数据、分析和 AI 整合到一起的服务)。陈晓建表示:「所有这些工具都是为了帮助大家更好地把自己的私有数据 —— 无论是结构化还是非结构化数据 —— 通过 Bedrock 平台更方便地跟大模型能力整合起来。」
下一代 Amazon SageMaker 概况,来自亚马逊云科技 re:Invent 2024
在「Scaling Law 是否撞墙」的争论中,亚马逊云科技一方面没有放弃基础大模型,另一方面也在积极探索其它有潜力的技术方向。比如,去年 11 月,亚马逊云科技就宣布为 Bedrock 的智能体(Agents)配备上了思维链(CoT)推理能力;此外,在今年的 re:Invent 大会上,亚马逊云科技还推出了一个名叫 Automated Reasoning checks 的服务,可通过自动推理减少大模型幻觉、检查提高对话式 AI 准确性。
利己也利创业者为市场提供另一个选择
毫无疑问,亚马逊云科技之所以投入大量资源来训练基础大模型,首先这肯定是对其自身有利的。
我们知道,创业公司或小公司往往缺乏像 OpenAI 或谷歌那样的资源,很难自己训练出满足自身业务的大模型,因此,面向企业(To B)的大模型有一个存在强烈需求的市场。目前,几乎所有的云服务商和大模型服务提供商都在努力争夺这一快速增长的市场的份额。亚马逊云科技,坐在云服务商的头把交椅上,自然不可能错过这块潜力无限的大蛋糕。
亚马逊云科技继续维持在云市场的领先地位,来自 Statista
从用户,尤其是创业者的角度来看,不论是计划自己训练模型的团队,还是希望基于现成模型部署应用的开发者,亚马逊云科技的基础模型都提供了一个有力的替代选项。亚马逊云科技中国区技术合作伙伴总监李奔也在研讨会上提到了这一点,他表示:「我们面对的客户有两种属性:一种是 Buyer 属性,一种是 Builder 属性。Builder 公司可能更喜欢用工具链自己去构建。但还有很多客户群是 Buyer 属性的,他们不大会去自己 build,他们更愿意直接购买好的应用产品来提升能力。」
作为用户,替代选项带来的好处显而易见,尤其是我们中国互联网用户,对此的感受可能尤为深刻。而亚马逊云科技的 Nova 系列可为创业者和小公司提供一个并不比其它竞争者差的替代选项,并且不同规模的版本还能满足不同层次的需求,降低了进入壁垒。比如 Nova Pro 和 Nova Lite 虽然性能不及 Nova Premier,但同样可以处理文本、图像和视频等多种模态的数据。对于预算有限的创业公司来说,这些低成本且性能优越的模型提供了一种能够快速部署并支持创新的解决方案。
使用 Nova Pro 执行文档分析示例,来自亚马逊云科技博客
与此同时,替代选项还能保证创业公司的业务安全。这不,前些天 ChatGPT 宕机事件还历历在目,全世界的用户都深深受到影响。Vozo AI 创始人周昌印在研讨会上也表达了类似的看法:「我觉得对于大模型,我们希望有 Multiple LLM,这对我们的业务来说是比较安全的。」
并且,多样化的选择也能有效激发创新。当多个提供商竞争同一市场时,为了吸引客户,他们必然会不断提升服务质量、优化成本结构。这不仅让创业者能够更轻松地基于基础模型构建应用,还能将更多精力投入到差异化创新中,进一步推动 AI 技术和应用的繁荣发展。
李奔分享了他在跨境电商领域观察到的状况:「这个行业是一个充分竞争的市场,竞争特别激烈,而深圳人使用新工具的速度也非常快。我去年年初到深圳去的时候,发现 GPT 才刚出来,很多跨境电商企业就在用了,使用场景从营销侧一直延伸到售后,包括使用 AI 工具来生成广告和营销素材、执行用户反馈分析、增强中间的各种数据分析等等。亚马逊云科技跟电商客户在这个应用场景里的探索也特别多。」
在基础模型赛道上,亚马逊云科技通过 Nova 系列为企业用户带来了新的可能性,也在一定程度上推动了市场的良性循环与健康竞争。
此外,从亚马逊自身的角度,我们还可以总结出以下几点原因:
- 强化自身的云服务生态:通过提供基础模型及相关服务,亚马逊云科技可以吸引更多企业上云,并借此深度绑定客户,强化其云计算市场的领先地位。
- 数据和技术的长远布局:自主训练基础模型能帮助亚马逊云科技积累宝贵的技术和数据经验,形成核心竞争力,并为未来潜在的颠覆性 AI 应用奠定基础。
- 参与行业标准的定义:通过持续发布基础模型,亚马逊云科技可以在 AI 领域成为标准制定者,塑造行业对模型能力和 API 服务的认知,甚至影响开源模型的发展方向。
- 增强亚马逊内部服务和产品:基础模型可以直接应用于亚马逊电商平台、语音助手 Alexa 及物流系统,提升搜索、推荐和自动化能力,从而实现全方位优化。
- 应对竞争压力:在面对谷歌、Meta 和微软等巨头和众多初创企业的竞争时,亚马逊需要保持技术领先。这种战略不仅是防守,更是进攻。
基础大模型体现了亚马逊坚持的长期主义
「长期主义」,是亚马逊创始人及现任董事长杰夫・贝佐斯所著文集的中文版书名,也是亚马逊一直以来都坚持的企业文化。
业内人士普遍认为,构建基础大模型需要大量的资金、时间和技术资源,而亚马逊的坚持与投入展现了它作为科技巨头的责任感与前瞻性。Nova 系列模型的推出表明,亚马逊不仅希望通过自身的技术创新引领 AI 的发展,还致力于降低开发者和企业进入 AI 领域的门槛,为创业公司提供灵活的替代方案。这种多样化选择带来的生态效应,可被视为其「长期主义」文化的具体体现。
而在坚持基础大模型的道路上,亚马逊云科技不仅能稳固和提升自身的市场占有率,还能帮助更多企业进入 AI 应用生态,从而提升整个市场的活力与创造力。这是亚马逊云科技不可忽视的重要贡献。
#英伟达下代RTX 50系列显卡规格被泄露
旗舰5090显存达32GB
自 2022 年 10 月以来,高端显卡性能终于又将迎来大幅度升级。
明年的国际消费类电子产品展览会(CES 2025)将在北京时间 1 月 8 日至 11 日举行,包括英特尔、英伟达和 AMD 在内的各大 CPU、GPU 厂商将带着自家最新产品闪亮登场。
大家最期待的应该当属英伟达的最新 RTX 50 系列显卡了,到时候肯定会成为全场的焦点。
最近,据外媒 videocardz 等报道,英伟达的一些合作伙伴和 PC 制造商开始无意地向外透露最新 RTX 50 系列显卡的详细规格。
图源:ZOTAC
从 Zotac(索泰)和 Acer(宏碁)透露的消息可知,英伟达预计将在明年一月份发布首批全新的 GPU,均为产品线的高端产品,包括 RTX 5090、RTX5080、RTX 5070 Ti 和 RTX 5070,最高将搭载 32GB GDDR7 显存。
此外,英伟达还有一款 RTX 5090D 变体显卡,看起来 CUDA 核心、显存等规格与 5090 没有差别,但后续可能会进行调整。
图源:ZOTAC/VideoCardz
其中,旗舰显卡 RTX 5090 32GB GDDR7 是 4090 24GB GDDR6X 的升级版。此外 RTX 5080 的 16GB 显存与上代 RTX 4080、4080 Super 相同,规格也从 GDDR6X 升级到了 GDDR7。
另外,泄露规格中没有证实有关 RTX 5070 或 5070 Ti 的更多信息,显存分别为 12GB 和 16GB,这与当前的 RTX 4070 Super 和 4070 Ti Super 保持一致。
而用于中端游戏 PC 的 RTX 5060 和 5060 Ti 信息更少,显存规格为 8GB 和 16GB,可能会于明年二三月之间发布,并于第二季度末上市。
毫无疑问,全新 RTX 50 系列显卡的发布将是业界一件大事,从 2022 年 10 月至今,没有其他显卡的性能可以接近 RTX 4090。
英伟达今年早些时候对部分 40 显卡进行了 Super 更新,但并不包括 4090 Super。竞争对手如 AMD 推出的 RX 7900 XTX 更适合与 4080 和 4080 Super 对标。因此,接下来的 RTX 5090 将是 GPU 市场两年多来的首次高端性能升级。
至于售价,新系列价格预计会高于 RTX 4090 的 1599 美元。这是因为尽管使用了更先进的台积电制程工艺,但 RTX 5090 搭载的 GB202 GPU 芯片在物理尺寸上要大于 4090 使用的 AD102 GPU。并且英伟达及其合作伙伴在继续保持零售价在 1599 美元价位方面也遇到了困难。
价格上涨与此前英伟达创始人黄仁勋的言论保持一致,在 2022 年 9 月,他曾表示,随着时间推移,芯片价格下降已经是「过去的事了」。
图源:Nvidia
在不断「压榨」显卡性能的同时,英伟达也在探索在不同的硬件上跑生成式 AI,比如今天发布了超级便宜的生成式 AI 超级计算机 Jetson Orin Nano Super,仅售 249 美元。
这款生成式 AI 硬件能够提供高达 67 TOPS 的 AI 性能,可以无缝运行视觉 transformer、大语言模型和视觉语言模型等。
参考链接:
https://arstechnica.com/gaming/2022/09/do-expensive-nvidia-graphics-cards-foretell-the-death-of-moores-law/
https://www.nvidia.com/en-us/autonomous-machines/embedded-systems/jetson-orin/nano-super-developer-kit/
https://arstechnica.com/gadgets/2024/12/nvidia-partners-leak-next-gen-rtx-50-series-gpus-including-a-32gb-5090/
https://videocardz.com/newz/zotac-confirms-geforce-rtx-5090-with-32gb-gddr7-memory-5080-and-5070-series-listed-as-well
#Megrez-3B-Omni
本文通过实际测试,展示了模型在文本、图像、语音三个方面的表现,并探讨了一个相关的web-search项目,该项目可以帮助用户搭建自己的本地搜索服务。总体上,Megrez-3B-Omni在多模态任务中展现了较好的性能,尤其是在资源受限的端侧部署场景下。
中午看到无问芯穹开源了一个端侧全模态大模型-Megrez-3B-Omni,马上来测测看,效果如何。
Github: https://github.com/infinigence/Infini-Megrez
HF: https://huggingface.co/Infinigence/Megrez-3B-Omni
Demo: https://huggingface.co/spaces/Infinigence/Megrez-3B-Omni
先说点题外话,大模型发展到现在,虽说参数越大,模型越智能,但毕竟现在GPU资源还是蛮紧张的,太大的模型消耗资源太多,并发起来的时候,根本烧不起,真正坐落地的懂得都懂。当然现在也是越来越多的人来搞SLMs(small language models),像千问最新的Qwen2.5系列也是开源了0.5B、1.5B、3B模型,面壁前端时间也是开源了MiniCPM3-4B模型,微软的Phi系列模型也是一直在更新。这也是AI现在冲突的点吧,模型越大越智能,模型越小越容易落地。
一个全模态的端侧模型,相当于一个模型干3个事情,可以极大减少部署成本。
还发现他们开了一个web-search的相关项目(直接本地搭建自己的Kimi或Perplexity),还是蛮良心的,特此分享给大家。
下面从模型介绍、模型实测(文本、图像、语音三个方面)、web-search项目三个部分来介绍。
模型概述
Megrez-3B-Omni是由无问芯穹研发的端侧全模态理解模型,基于无问大语言模型Megrez-3B-Instruct扩展,同时具备图片、文本、音频三种模态数据的理解分析能力,具体模型参数如下表所示。
Megrez-3B-Omni在并未牺牲模型的文本处理能力的前提下,在三个模态上相较于同等参数模型,均取得较好的效果。
图源:https://internvl.github.io/blog/2024-12-05-InternVL-2.5/
注意:下面的文本、图像、语音评测均基于https://huggingface.co/spaces/Infinigence/Megrez-3B-Omni
文本测试
依旧老三样,看看是否可以解决。
- 9.9和9.11谁大的问题正确,回答十分简洁,因此又追问了一下为什么,回答的很好,解释思路也有点奇特,是按照数值范围来比较的。
- 用水来兑水,得到的是浓水还是稀水正确,理解的问题的关键,水兑水,还是水。
- 小红有2个兄弟,3个姐妹,那么小红的兄弟有几个姐妹错误,没有理解小红是女生,当然这道题本身也有争议,很多人都说应该分开讨论,分别讨论小红是男生和女生的情况。不过有意思的是,他先回答的是1,最后又纠正成3。从文本的评测榜单上来看,Megrez-3B-Omni在数学上还是有一些欠缺的。但话说回来,3B模型对于数学还是精力有限,太难的问题还是推荐大家用32B以上的模型。
- 那道伦理、生物、数学问题这道题算是比较难的了,虽然没回答对,但是可以看出安全对齐的还是不错的。
其他问题,大家自测吧,我整体的体验效果还不错,对于小参数模型来说,还是不错的。
图像测试
- 测试一下单图片信息抽取功能input:谁(姓名)几点出发,从哪儿到哪儿,并且花了多少钱结果:正确
- 测试一下单图片信息抽取+计算功能input:请逐步详细分析,告诉我在中文数据和英文数据分别占比是多少,并且告诉我总和
结果:正确
- 测试一下单图片理解功能input:请逐步详细分析,这张图片里是有两只狗,对吗结果:一开始说是,但后面又答对了,说一只猫一只狗。
- 测试一下单图片手写ORC功能input:请逐步详细分析,输出图片中的文字内容结果:输出结果丢字了,官方也说了OCR场景下开启采样可能会引入语言模型幻觉导致的文字变化,可考虑关闭采样进行推理,但关闭采样可能引入模型复读
- 测试一下单图片表格结构化输出input:识别图片中表格内容,并以结构化格式输出结果:正确,不过我这里贴的是简单表,复杂表的话,效果不好。当然好像现在复杂表的识别,模态大模型包括4o的效果都不好。
当前版本模型暂时不支持多图,就没测试,内部消息说下一版本会支持多图和视频(这一版本模型训练时多图数据没加太多)。此外篇幅有限,更多的能力大家自己测测看看吧。
语音测试
- 语音转文本结果:正确
- 语音问答结果正确,可以理解语音内容
我在电脑端,音频测试有点麻烦,就简单测了几个,其他语音内容大家就自己测试吧。
Web-Search部分
其实让我感兴趣的还有一个web-search方案,里面还是有一些细节内容的,并不是一个简单的RAG总结项目。比如:工程中会增加一步摘要过程,去除无效的网页信息,并将内容cache下来,以便提高模型回复效果等。
Github: https://github.com/infinigence/InfiniWebSearch
项目是基于Megrez-3B-Instruct模型,进行的web-search搭建,做了一些适配Search的专项训练,
- 模型调用Search Tool的时机挺准确的。做过相关内容的同学一定知道,模型在Search工具调用上很容易出现一直调用工具的情况,但实际上一些日常问题是不需要调用搜索引擎的,大模型可以直接回答甚至效果更好。
- 多轮对话的理解不错。我们也知道多轮对话理解是大模型的强项,但在带检索的过程当然,就需要模型对整个对话有很好的理解能力。
- 当然给出带ref格式的输出内容,这个部分是模型针对性训练后才用的能力。
看他的工程,里面还是有很多有意思的细节内容,并不是一个简单的RAG总结项目。比如:工程中会增加一步摘要过程,去除无效的网页信息,并将内容cache下来,以便提高模型回复效果等。
Github: https://github.com/infinigence/InfiniWebSearch
项目的整体流程如下图所示:
- 判断是调用工具回答还是大模型直接回答
- 若调用工具回答则对用户Query改写,生成相应的搜索关键词
- 通过查询Query获取相关的网页文本内容
- 根据Query和各个网页内容生成对应的summary,无关网页或者内容会以“无相关信息”替代
- 在根据summary和Query终结生成答案。
SUMMARY_PROMPT_TEMPLATE = (
'从信息中总结能够回答问题的相关内容,要求简明扼要不能完全照搬原文。直接返回总结不要说其他话,如果没有相关内容则返回"无相关内容", 返回内容为中文。nn'
"<问题>{question}</问题>n"
"<信息>{context}</信息>"
)
OBSERVATION_PROMPT_TEMPLATE = (
"You will be given a set of related contexts to the question, "
"each starting with a reference number like [[citation:x]], where x is a number. "
"Please use the context and cite the context at the end of each sentence if applicable."
"nn"
"Please cite the contexts with the reference numbers, in the format [citation:x]. "
"If a sentence comes from multiple contexts, please list all applicable citations, like [citation:3][citation:5]. "
"If the context does not provide relevant information to answer the question, "
"inform the user that there is no relevant information in the search results and that the question cannot be answered." # noqa: E501
"nn"
"Other than code and specific names and citations, your answer must be written in Chinese."
"nn"
"Ensure that your response is concise and clearly formatted. "
"Group related content together and use Markdown points or lists where appropriate."
"nn"
"Remember, summarize and don't blindly repeat the contexts verbatim. And here is the user question:n"
"{question}n"
"Here is the keywords of the question:n"
"{keywords}"
"nn"
"Here are the set of contexts:"
"nn"
"{context}"
)
整个项目的启动也是十分简单,三步走,你就可以得到一个本地部署的kimi啦:
- 启动检索
export SERPER_API_KEY=$YOUR_API_KEY
cd infini_websearch/service
python search_service.py --port 8021 --chrome ./chrome-linux64/chrome --chromedriver ./chromedriver-linux64/chromedriver
- 启动模型
python -m vllm.entrypoints.openai.api_server --served-model-name megrez --model $MODEL_PATH --port 8011 --max-seq-len 4096 --trust_remote_code
- 启动Demo
python gradio_app.py -m $MODEL_PATH --port 7860
PS:其他详细内容自己去看Github,比如摘要字数、关注的对话轮等等。
写在最后
Megrez-3B-Omni模型的整体体验还是不错的,但还是存在一些问题,比如ocr时候需要平衡准确识别和复读、模型数学能力有待提高等等,但对于小模型来说,还要同时负担三个模态,其实也不错了,要啥自行车呢。期待下一版更新吧,愿开源大模型越来越好~~
#谷歌逆风翻盘暴击OpenAI,90天王者归来
44页报告押注25年三大技术前沿
在这场如火如荼的AI军备竞赛中,谷歌在年底彻底打响翻身仗,成功逆袭!Google Cloud于近日也发布了一份44页「2024 数据和AI趋势报告」,直指AI智能体、多模态AI,企业搜索将成为2025年三大主导技术。
逆袭之战开启,谷歌用90天重回巅峰!
短短90天,谷歌就从业内笑柄,逆袭成突破最大、产品最颠覆的科技大公司。
用AI初创创始人Ole Lehmann的话说,「我们正在见证2024年最大的科技转变」。
如今,前方是捷报频传。
根据OpenRouterAI的数据,Google Gemini在开发者中的市场份额从9月份的约5%,上升到了上周的>50%市场份额。
Google Gemini系列在OpenRouterAI的趋势排行中独占鳌头,远超其他模型。
在被公认是下一个AI前沿的智能体领域,谷歌的Project Mariner,可以直接让Gemini控制我们的浏览器,自行执行任务!直接一步跨越到人机交互的未来。
惊人之处在于,Mariner是一个真正可以在浏览器上完成复杂任务而不会失败的AI。预定航班、定餐馆,它都可以通过在屏幕上看到的内容完成操作。
此外,谷歌的Project Astra的早期测试报告结果也令人兴奋不已。
受邀参加项目测试的Linus Ekenstam表示,这一天很快就会到来:人手一个AI私人助理,而且它们无所不在。
我们会严重依赖这些AI助手,甚至在2025年,人类发展格局都会被带来重大改变。
更不用说,就在昨天放出的AI视频模型Veo 2.0,无论是在物理学、质量还是指令遵循上,效果都妥妥吊打Sora,全网测试,为之疯狂。
有人实测Veo 2和Sora后直言:这是自行车和宇宙飞船的区别
现在,市场已经给出了反应,在过去一个月内,谷歌的市值直接上涨了14%。
不再追逐头条,而是集中精力做产品、注重实用性的谷歌,已经成为了OpenAI真正的可怕对手。
突然逆袭,重拳反击OpenAI
曾被认为遥遥领先的OpenAI,正面临着来自谷歌的迎头痛击。
网友Chubby做了一篇长文分析,指出两个AI巨头的对战潮流正在转向。
声明:目前一切都还未定论,我的分析仅是对现状的一瞥
早在2017年,Sam Altman在一次邮件交流中就明确表示,谷歌DeepMind是在AGI竞争中最大的对手。
当时,他还未能预见其他玩家会加入这场竞争。不过,估值180亿美金Anthropic的崛起,证明了新玩家也能翻身成巨头。
Meta通过「开源」(虽然并非真正的开源)另辟蹊径,避免了与谷歌占据主导地位路线的直接竞争。
ChatGPT如同一匹黑马,自2022年横空出世以来,OpenAI一直牢牢掌握着AI的话语权。与此同时,ChatGPT成为了「AI」的代名词。
凭借此,奥特曼带领着团队迅速征服消费市场,甚至直接带飞了微软。
然而,谷歌却在这场竞赛中措手不及,连连败北。
最初的几轮交锋中,谷歌试图通过Gemini去挽救落下的成绩,并期望以此获得市场青睐,但总是未能如意。
此前,AI Overview总结能力大翻车,遭到网友连连的吐槽。
比如,建议孕妇吸烟、建议自杀跳桥、建议用胶水将胶水和披萨固定在一起....
各种荒谬的建议,简直震碎三观。
上半场的比赛中,谷歌彻底输掉了。
更耐人寻味的是,OpenAI几乎毫不费力,每次都能在谷歌发布新产品前后抢尽风头。即便在模型推理能力上,到目前为止,OpenAI也一直是遥遥领先。
人们不理解的是,谷歌DeepMind拥有世界上最好的资源,为什么会在这场竞争中略显得仓促和被动?
与OpenAI不同,他们有大量用于训练推理的TPU、更多的训练数据(比如YouTube),以及DeepMind这个世界级研究机构和顶尖人才。
DeepMind团队也在努力用实力,去证明这一切。在科学领域,AlphaFold、GenCast等等,取得了难以置信的成就。
但这些研究成果,在消费市场上并没有给谷歌带去任何实质性的帮助。
甚至,就连Anthropic这样后来者,也赢得了AI社区更多关注和支持。
然而,这种局势在12月发生了戏剧性的逆转。突然间,谷歌发力给OpenAI来了当头一棒。
就在OpenAI接连献上12天产品秀之际,谷歌推出了两款惊艳的模型——Gemini 2.0 Flash和Veo 2。
Gemini 2.0 Flash在所有基准测试中,超越了GPT-4。
AI视频模型Veo 2直接吊打Sora,展现出令人惊叹的物理世界理解能力。
它还能根据提示中的方程式2x-1=0,直接生成出得到解答x=1/2的视频。
相较之下,Sora的生成简直一言难尽。
关于新模型的亮相,谷歌并没有做任何事先的炒作和预热,用低调有力的方式做出了反击。
而对于,过去一年总结,和未来一年技术预测,谷歌也有话要说。
谷歌AI年,2025年三大技术向
今天,Google Cloud发布的一份44页「2024 数据和AI趋势报告」,直指AI智能体、多模态AI,企业搜索将成为2025年三大主导技术。
报告地址:https://services.google.com/fh/files/misc/data_ai_trends_report.pdf
多智能体将催生出一个巨大的市场机会
当前,智能体已经能够独立完成多步骤任务,而只有约10%的大公司已经采用,另外82%公司计划三年内将智能体整合到工作流中。
谷歌云全球GenAI副总Oliver Parker表示,「不久的将来,你会看到不同智能体之间相互频繁地交流协作」。
在谷歌,他们将智能体划分为六个类:
- 面向客户的智能体:用于了解客户需求、回答与解决问题并推荐相应的产品和服务。它们支持跨多模态工作,可以分析语音与视频内容
- 员工智能体:有助于简化流程、管理重复性任务、解答问题和文档编辑与翻译。
- 创意智能体:生成有助于设计、营销、文案等项目的内容、图像,提供灵感
- 数据智能体:可以在确保准确性的基础上,通过检索与数据处理来协助研究和数据分析。
- 代码智能体:支持代码生成与提供辅助编码
- 安全智能体:降低网络攻击的危害,或者加快安全漏洞的筛查速度
然而,Parker指出,过多的智能体同时处理多个流程,可能会导致系统的混乱。
他看到了这一现象背后蕴藏着巨大的机遇,这将催生出全新的平台——智能体治理。
「我们认为一个巨大的机会即将到来,那就是一个能够管理协调你各种智能体的平台」,他讲道,这将会催动「智能体管理」或者需要一个支持 「在不同系统中的任何地方都能提供不同服务的智能体层」。
人工智能发展的五大趋势
多模态AI将会带来千亿美元市场
全球多模态人工智能市场在2025年估值为24亿美元,预计到2037年底将达到989亿美元。
多模态人工智能将人工智能的理解能力提升到一个新的水平,使模型能够解读和处理一系列数据源,不仅包括文本,还包括图像、视频和音频。
目前一些主要的供应商和前沿的初创公司已经发布了许多功能强大的多模态工具,例如谷歌自己的Gemini 2.0 Flash、Mistral的Pixtral 12B或Cohere的Embed 3。谷歌预测,多模态人工智能的爆发将支持复杂的数据分析,并为人们带来对于事物更深刻的基本认识和更个性化的见解。
Parker指出,在过去的12个月里,企业已经从单一模型转变为针对不同的场景去部署多个模型,如Gemini、Anthropic、Mistral、Cohere、Llama等,而不仅仅是OpenAI模型。
虽然当前谷歌云的重点依然大多在开发上,但2025年的目标则是让企业级用户自己掌握生成式人工智能能力。
目前企业已经不仅仅只是关注模型本身,而且开始分析不同的部署平台并制定人工智能和智能体的规划发展路线图。Parker对此表示,这些通常是几年内才能看到的趋势,但在12个月内就快速呈现了,令人惊叹。
企业级搜索大幅提高信息获取效率
你是否还在苦恼于查询工作文档却因忘记对应关键词而无法入手项目?
现在结合了生成式人工智能的企业搜索,再也不用局限于仅基于关键词的查询了。
你可以使用图像、音频、视频或者是对话提示来快速查询访问企业内部数据。毫无疑问,这将让搜索变得极其丝滑。
在实际工作中,人们往往是搜寻到相应信息并将其整合以获得见解,做出相应决策,进而采取行动。由于许多组织的不同信息通常分散在不同的应用程序中,而人工智能搜索可以快速跨越这些应用程序将数据整合在一起,这就彰显了结合生成式人工智能的企业搜索的巨大优势。
Gemini 2.0加持编码助手,一键打通软件开发全流程
上周,谷歌发布的Gemini 2.0 Flash在编程基准SWE-bench Verified上,刷新了SOTA。
它的性能完全碾压满血版o1、Claude 3.5 Sonnet,成为公认的最强编码AI。
就在今天,谷歌宣布在Gemini Code Assist中,集成最新模型Gemini 2.0 Flash,并推出了一系列工具。
由此,开发者们可以将外部系统加入IDE,直接与GitHub、GitLab、Sentry、Google Chrome和Atlassian交互。
在此之前,Gemini Code Assist已经接入了VS Code和JetBrains。
谷歌云产品管理高级总监Ryan J. Salva表示,这个想法是为编码任务扩展更多的上下文,而不中断工作流程。
开发者只需进入Code Assist聊天页面,说明需要处理的数据,然后LLM可以自动从数据源查询并对其分析。
为了给开发者们提供便捷,谷歌计划未来还将更多工具,直接集成到Gemini Code Assist中,比如可观察性工具、安全软件以及数据库。
从ChatGPT可以协助编码之后,人工智能编码助手是GenAI的首批重要用例。GitHub、甲骨文、Harness纷纷推出了以企业为重点的编码助手。
与此同时,OpenAI和Anthropic对外提供API接口,让程序员直接在聊天平台上编程。
比如,我们可以直接在ChatGPT中的Canvas运行Python代码,还能进行交互性的编辑生成。
Anthropic推出的Claude Artifacts,与Canvas产品理念相同,皆是便于开发者们生成、编辑和运行代码。
另外,OpenAI还在ChatGPT MacOS桌面应用程序中添加了与VS Code、XCode、Terminal和iTerm 2等工具的集成。
据Gartner估计,「截止2028年,90%的企业软件工程师将使用AI编码助手,这一比例在2024年初还不到14%」。
谷歌宣称,Gemini Code Assist企业版已超越了IDE中的AI编码辅助功能,不仅可以理解本地代码库,还可以定制代码,提供代码建议。
它的定制功能可索引来自GitHub和GitLab的repos,并将于2025年初支持其他源码控制系统和自托管的内部repos。
同时,它还能完成复杂的任务,如在整个软件包中升级Java版本。此外,企业版提供了企业级安全以及法律赔偿条款。
在推出Gemini 2.0时, 谷歌同步发布了编码工具 Jules。
Salva表示Code Assist与其完全隔离,Code Assist仍是唯一由Gemini支持的通用企业级编码工具。
参考资料:
https://venturebeat.com/ai/google-ai-agents-multimodal-ai-enterprise-search-will-dominate-in-2025/
https://venturebeat.com/ai/google-upgrades-its-programming-agent-code-assist-with-gemini-2-0-adds-source-integrations/
https://x.com/kimmonismus/status/1869111765700853779