【科普】大模型中常说的 SFT 是指什么?

大型语言模型(LLMs)的出现,在自然语言处理领域引发了变革性的影响。这些模型在理解和生成类似人类的文本方面展现出卓越的能力,为众多应用场景带来了新的可能性。通过对海量数据进行预训练,LLMs 获得了广泛的语言理解和知识。预训练赋予了 LLMs 学习语法规则、语言模式、事实信息和推理能力的基础。然而,尽管预训练模型具备通用性,但在处理需要特定领域知识或输出格式的专业任务时,其性能往往有所不足。这种通用能力与特定需求之间的差距,凸显了对 LLMs 进行定制化适配的重要性。监督式微调(Supervised Fine-Tuning,SFT)作为一种关键技术应运而生,它能够有效地将通用LLMs调整为能够胜任特定应用的专业模型。 概念与原理 监督式微调(SFT)指的是利用标注数据来调整预训练大型语言模型,使其适应特定的下游任务的过程。在SFT中,“监督式”强调了对标注数据的依赖,这些数据包含了输入和期望输出之间的明确对应关系,用于指导模型的学习。SFT 是一个监督学习的过程,它使用这些标注的例子(通常是提示-响应对)来更新 LLM 的权重。模型通过比较其预测结果与标注数据中的真实标签之间的差异来学习,并调整其内部参数以最小化这种差异。高质量、结构良好的标注数据对于有效的 LLM 监督式微调至关重要。与使用未标注数据进行预训练不同,SFT 利用经过验证的标注数据进行任务特定的优化。SFT 可以被视为一种迁移学习的形式,它利用预训练阶段获得的知识来解决新的、特定的任务。这种方法使得模型能够基于已有的语言理解能力,更快地适应新的任务需求,而无需从零开始学习。 SFT 的步骤 监督式微调通常包含以下几个关键步骤: 步骤一:准备数据集 首先需要选择或创建一个高质量、任务特定的标注数据集。该数据集应与预期任务高度相关,并包含涵盖各种场景和极端情况的丰富示例。每个示例通常包含输入数据(例如,文本提示)和期望的输出(例如,响应或标签)。为了进行有效的模型训练和评估,数据集通常需要被划分为训练集、验证集和测试集。此外,确保数据的质量至关重要,包括数据的清洁度(去除重复、不一致或无关的条目)、代表性(覆盖所有变体和边缘情况)以及平衡性(避免数据偏斜)。 步骤二:调整模型 加载预训练的LLM(基础模型)是微调过程的开始。选择与目标任务和领域相符的预训练模型至关重要。然后,模型会根据标注数据集中的数据,使用监督学习技术(例如,梯度下降)更新其参数(权重)。在这个过程中,模型会调整其内部参数,以最小化其预测与期望输出之间的差异,从而学习特定任务的模式和细微差别。超参数调优也是一个重要的环节,需要调整学习率、批大小、训练轮数等参数,以获得最佳的性能。 步骤三:验证与测试 在微调过程中,需要使用验证集评估模型的性能,以防止过拟合。通过监控验证集上的损失和准确率等指标,可以帮助确定何时停止训练(早停法)。最后,使用测试集对微调后的模型进行最终评估,以评估其在新数据上的泛化能力。测试集提供了一个无偏的评估,展示了模型在真实世界数据中的预期表现。 步骤四:迭代与优化 监督式微调通常是一个迭代的过程,可能需要多次调整超参数或数据集,并进行多轮的微调,以达到最优的结果。分析评估结果,找出模型需要改进的方面,并重复上述步骤,可以进一步提升模型的性能。 SFT 的优势 选择监督式微调有诸多益处:SFT 能够显著提升模型在特定任务和领域上的性能。通过学习任务特定的模式和细微差别,模型能够产生更准确和相关的输出。SFT 还有助于模型更好地理解领域特定的术语和上下文。经过微调的模型能够提供更自然、更符合用户期望的响应,从而改善用户体验。此外,SFT 能够提高效率,减少对人工校正的需求。微调后的模型通常可以扩展到处理不同项目或领域的类似任务,成为一种可重用的资产。与从头开始训练 LLM 相比,SFT 可以显著缩短训练时间和降低计算资源需求。SFT 还能够有效利用预训练模型已经获得的广泛知识,实现更高效和有效的学习(迁移学习的优势)。通过 SFT,开发者可以将单个基础模型调整用于多个不同的领域。 SFT 的技术概览 监督式微调有多种技术可以采用: 指令微调(Instruction Fine-Tuning):这种方法通过使用示例来训练模型,这些示例展示了模型应该如何响应特定的指令或查询。指令微调旨在提高模型遵循用户指令的能力,并使其能够更好地泛化到新的指令上。训练数据通常包含输入(指令)、可选的上下文以及期望的输出。 参数高效微调(Parameter-Efficient Fine-Tuning,PEFT):PEFT技术通过仅更新模型参数的一小部分,来显著降低计算和内存需求。例如,低秩自适应(Low-Rank Adaptation,LoRA)和量化低秩自适应(Quantized LoRA,QLoRA)是常用的PEFT技术。其他PEFT方法还包括Adapter、Prompt Tuning和Prefix Tuning等。PEFT的优势在于降低了成本、加快了训练速度、减少了存储需求并有助于缓解灾难性遗忘。 全量微调(Full Fine-Tuning):全量微调是指在任务特定的数据集上更新预训练模型的所有权重。相比PEFT,全量微调需要更高的计算成本和资源。虽然全量微调可能带来更高的准确率,但也增加了过拟合和灾难性遗忘的风险。 层冻结(Layer Freezing):层冻结是一种策略,它冻结模型的部分层(通常是捕获通用知识的早期层),而只训练任务特定的层。这种方法可以降低计算需求,并防止模型遗忘预训练阶段学到的知识。 SFT 的应用场景 监督式微调在各个行业都有广泛的应用潜力: 聊天机器人与对话式AI:SFT能够提高客户服务和内部工具的准确性、上下文感知能力和品牌一致性。通过在客户服务记录、常见问题解答和知识库文章上进行微调,聊天机器人可以提供更相关和准确的响应。SFT还有助于处理复杂的查询和多轮对话。此外,通过在具有特定风格的数据上进行微调,可以控制聊天机器人的对话语气和风格。 文本生成与内容创作:SFT可以提高生成内容的领域相关性和准确性。通过在不同风格的数据上进行训练,模型可以适应特定的写作要求(例如,技术性、创造性、正式)。SFT还可以显著提升文档、文章和对话的摘要生成能力。 代码生成:SFT能够提高生成代码的准确性、效率和可读性。通过在代码数据集上进行微调,模型可以学习特定编程语言的语法、编程模式和最佳实践。SFT还可以使模型适应特定的编程语言和编码风格。 特定领域应用: 医疗保健:SFT可以用于分析医学文献、提取患者记录信息、改进诊断辅助系统。 金融:SFT可以用于金融新闻的情感分析、风险评估和欺诈检测。 法律:SFT可以用于理解法律术语、总结合同和法律讨论。 SFT 的挑战与考量 尽管SFT带来了诸多优势,但在实践中也存在一些挑战和需要考虑的因素: 数据质量与可用性:高质量、标注良好的数据对于有效的SFT至关重要。尤其是在利基领域,获取足够的标注数据可能是一个挑战。数据收集和标注的成本和时间也需要考虑。此外,训练数据中的偏差可能会对微调后的模型产生不利影响。 过拟合(Overfitting):模型可能过度适应训练数据,导致在未见过的数据上表现不佳。为了缓解过拟合,可以采用多种策略,例如使用多样化的数据集、限制训练迭代次数、使用正则化技术、进行交叉验证以及监控模型性能。 灾难性遗忘(Catastrophic Forgetting):在适应新任务的过程中,模型可能会遗忘之前学习到的知识。解决这个问题的方法包括多任务微调、参数高效微调和回放机制等。 超参数调优(Hyperparameter Tuning):寻找最优的学习率、批大小和其他超参数可能非常复杂。 计算成本(Computational Cost):微调大型模型,尤其是进行全量微调,需要大量的计算资源。 评估 SFT 性能的关键指标 评估监督式微调的成功与否,需要使用适当的评估指标:...

March 27, 2025 · 1 min · fisherdaddy

GPT-4o 引爆全球吉卜力风格生图潮流!附10+玩法与教程

🚀 GPT-4o 原生生图能力昨天一经发布,因其效果超群引发了病毒式传播,其生成的吉卜力风格图片深受大家喜欢,我昨天翻译的(官方文档)[https://fisherdaddy.com/posts/introducing-4o-image-generation]里有大量优秀的使用案例,这里我单独整理和复现了一下,开一个帖子单独来分享其最佳的使用场景和 prompt。 玩法 1:一次性生成 10-20 个对象 prompt:一张方形图片,包含一个 4 行 3 列的网格,白色背景上放置了 12 个对象,这 12 个对象是中国属相中的 12 生效。按从左到右、从上到下的顺序排列。列表如下:1.鼠;2.牛;3.虎;4.兔;5.龙;6.蛇;7.马;8.羊;9.猴;10.鸡;11.狗;12.猪 输出结果: 玩法 2:贴纸风格转换 prompt:“把这个图片变为贴纸,使用粗白边框和透明背景。“ 输入图片: 玩法 3:吉卜力风格转换 prompt:“把这个图片转为吉卜力风格“ 输入图片: 输出结果: 玩法 4:连环画制作 prompt: 制作一个4格漫画的图像,边框周围留一些空白: 第一格:小老鼠在家里无聊极了,打电话给小牛,小老鼠问小牛“你在做什么”,小牛说“在做草莓果酱” 第二格:小老鼠又和小老虎打电话,小老鼠问小老虎“你在做什么“,小老虎说“在和弟弟一起剪纸帽子“ 第三格:小老鼠又和小兔子打电话,小老鼠问小兔子“你在做什么“,小兔子说“在做胡萝卜汤“ 第四格:小老鼠又和小羊打电话,小老鼠问小羊“你在做什么“,小兔子说“在青青草原吃草“ 输出结果: 玩法 5:古人照片变为彩色真实照片 prompt:“把这个场景变成一张照片。用数码单反相机 (DSLR) 拍摄。“ 输入图片: 输出结果: 玩法 6:小朋友的涂鸦转成彩图图 prompt:“让它变成一张色彩丰富、有童趣的卡通插画风格图像“ 输入图片: 输出结果: 玩法 7:制作海报(以教育场景为例) prompt:“创作一张关于不同种类鲸鱼的教育海报,采用活泼的水彩风格。背景设为纯白色。“ 输出结果: 玩法 8:制作彩色说明书 prompt:“制作一张色彩非常丰富的孔版印刷风格图片,展示如何用面包机制作冰激凌。“ 输出结果: 玩法 9:设计 prompt:在纯色柔和背景上生成一幅雕塑广告。在纯色柔和背景上生成一个 logo。左上角,大约向下三分之一处,用纯白色无衬线字体写着 “This is fisherdaddy”。右下角,大约向上三分之一处,用纯白色无衬线字体写着 “AIGC”。背景中放一张非常光滑、现代化的设计风格的雕塑照片。它应该从左侧的线框草图逐渐过渡到右侧完全照片写实的样子。 玩法 10:生成参考图风格的图 prompt:“参考这张图的画风,帮我画一个李白这位唐代大诗人的照片,最好能配上李白的名字” 输入图片:...

March 27, 2025 · 1 min · fisherdaddy

介绍一下 GPT-4o 的原生图像生成能力

OpenAI 于 2025年 3 月 25日发布了 GPT-4o 的原生生图能力。与以往的生成模型不同,GPT-4o 专注于生成能够有效沟通和传递信息的图像,例如标志、图表和信息图。其核心优势在于精确的文本渲染、准确理解并执行用户指令,以及充分利用 GPT-4o 的知识库和对话上下文。通过对在线图像和文本的联合分布进行训练,并结合积极的后训练,GPT-4o 具备了出色的视觉流畅性,能够生成实用、连贯且符合语境的图像。此外,GPT-4o 还支持通过自然对话进行图像优化,并能从用户上传的图像中学习,实现更智能和高效的图像生成。 实用性: GPT-4o 图像生成旨在超越装饰性应用,成为一种实用的沟通工具,适用于创建标志、图表等信息类图像。 文本渲染: GPT-4o 能够精确地在图像中渲染文本,实现有效的视觉沟通,这得益于其将精确符号与图像融合的能力。 上下文连贯性: 由于图像生成是 GPT-4o 的原生功能,用户可以通过自然对话来优化图像,并在对话上下文中保持图像的一致性,例如在设计视频游戏角色时,角色外观可以在多次迭代中保持连贯。 细节处理: GPT-4o 能够处理更复杂的提示,可以处理 10-20 个不同的对象,而其他系统通常只能处理 5-8 个对象。 情境学习: GPT-4o 可以分析和学习用户上传的图像,并将这些细节融入到图像生成过程中。 照片写实性和风格: 模型在反映各种图像风格的图像上进行训练,使其能够创建或转换具有说服力的图像。 局限性: 当前模型在编辑图像的特定部分(如错别字)时效果不佳,并且在保持面部编辑的一致性方面存在 bug,但 OpenAI 正在努力解决这些问题。 安全性: 所有生成的图像都带有 C2PA 元数据,以标识图像来自 GPT-4o,并提供透明度。OpenAI 还构建了一个内部搜索工具,以验证内容是否来自其模型。同时,系统会阻止违反内容政策的图像生成请求,并对涉及真实人物的图像施加更严格的限制。 访问和可用性: GPT-4o 图像生成功能已开始向 Plus、Pro、Team 和 Free 用户推出,作为 ChatGPT 中的默认图像生成器,Enterprise 和 Edu 用户也将很快获得访问权限。开发者也将在未来几周内通过 API 使用 GPT-4o 生成图像。生成图像可能需要长达一分钟的时间,因为模型会创建更细致的图片。 推出 4o 图像生成 通过一个原生多模态模型解锁实用且有价值的图像生成,该模型能够产出精确、准确、照片般真实的输出。 在 OpenAI,我们一直认为图像生成应成为我们语言模型的一项主要能力。因此,我们将我们迄今为止最先进的图像生成器内置到了 GPT-4o 中。其结果是——图像生成不仅美观,而且实用。...

March 26, 2025 · 7 min · fisherdaddy

介绍一下 OpenAI 最新的音频模型:gpt-4o-mini-tts 与 gpt-4o/4o-mini-transcribe

OpenAI 于 2025年 3 月 20日 发布新一代语音转文本模型和文本转语音模型,这些新模型包括语音转文本 (speech-to-text) 和文本转语音 (text-to-speech) 模型,它们在性能、准确性和可定制性方面均有显著提升,为构建更自然、更有效的语音交互应用提供了有力支持。特别是,新的语音转文本模型在准确性和可靠性方面达到了新的行业标杆,尤其在处理口音、噪音环境和不同语速等复杂场景时表现更佳。同时,文本转语音模型首次允许开发者指导模型以特定的方式说话,从而实现更高程度的个性化和更丰富的应用场景。 新一代语音转文本模型: 推出了 gpt-4o-transcribe 和 gpt-4o-mini-transcribe 模型,相较于原有的 Whisper 模型,在词错误率 (Word Error Rate, WER) 上有显著改进,语言识别和准确性更高。在 FLEURS 基准测试中,这些新模型在多种语言上都展现出更低的 WER,表明其转录准确性和多语言覆盖能力更强。 新一代文本转语音模型: 推出了 gpt-4o-mini-tts 模型,该模型最大的亮点是其可指导性 (steerability),开发者可以指示模型不仅说什么,还可以指定 如何 说,例如模仿 “富有同情心的客服人员” 的语气。这为客户服务、创意故事叙述等应用场景带来了更丰富的可能性。 技术创新: 这些模型的性能提升得益于多项技术创新,包括: 使用真实的音频数据集进行预训练 (Pretraining with authentic audio datasets): 模型基于 GPT‑4o 和 GPT‑4o-mini 架构,并在专门的音频数据集上进行了广泛的预训练,从而更深入地理解语音的细微差别。 先进的知识蒸馏方法 (Advanced distillation methodologies): 通过增强的知识蒸馏技术,将大型音频模型的知识转移到更小、更高效的模型中,利用自博弈 (self-play) 方法捕捉真实的对话动态。 强化学习范式 (Reinforcement learning paradigm): 语音转文本模型集成了强化学习,显著提高了转录的准确性,降低了幻觉 (hallucination),使其在复杂的语音识别场景中更具竞争力。 API 可用性: 这些新的音频模型已在 API 中向所有开发者开放,并与 Agents SDK 集成,方便开发者构建语音助手应用。对于需要低延迟语音对话的应用,推荐使用 Realtime API 中的 speech-to-speech 模型。 未来展望: 未来将继续投入于提升音频模型的智能性和准确性,探索允许开发者使用自定义声音的方法,并拓展到视频等多模态领域。同时,将继续与政策制定者、研究人员等就合成语音的挑战和机遇进行对话。 原文:在 API 中引入下一代音频模型 我们推出了一系列全新的音频模型,为语音 AI 智能体 (AI Agent) 提供强大支持,现在全球开发者均可使用。...

March 21, 2025 · 3 min · fisherdaddy

【科普】大模型应用的回复为什么是打字机的效果?

用户在使用由大模型驱动的应用时,例如ChatGPT(OpenAI)、Gemini(Google)、Deepseek、豆包(字节)和元宝(腾讯),常常会注意到一种引人入胜的“打字机效果”。文本似乎是一个字一个字(更准确地说,是一个token一个token)地逐渐显现,营造出一种类似人类实时打字的互动感和模型以人类似的方式即时生成响应的印象。虽然这种效果在用户界面上增强了交互体验,但它并非仅仅是一个视觉上的技巧,而是 大模型(LLM)底层文本生成方式的直接体现。 语言的基本单元——Token 要理解 LLM 如何产生这种“打字机效果”,首先需要认识到这些模型并非像人类那样直接处理词语,而是以更细粒度的单位——“token”为基础进行操作。文本可以按照不同的粒度进行切分和表示,这个过程称为 tokenization。之前写过一篇科普的文章《大模型中常说的 token 和 Tokenizer 是指什么?》专门介绍过这个知识,这里再稍微讲一下。 常见的 tokenization 方法包括:词语级别、字符级别和子词级别。词语级别的 tokenization 是最直观的方法,它根据空格和标点符号将文本分割成单独的词语。例如,“The quick brown fox jumps.”会被分割成。字符级别的 tokenization 则将文本中的每一个字符(包括字母、数字、空格和标点符号)都视为一个独立的 token。对于同样的句子,字符级别的 tokenization 会产生。 在现代LLM中,子词级别的 tokenization 是一种更为复杂且广泛应用的技术。这种方法旨在平衡词语级别和字符级别 tokenization 的优缺点,将词语分解成更小但更频繁出现的单元。例如,“unbreakable”可能会被分解成[“un”, “break”, “able”]。在子词tokenization的技术中,字节对编码(Byte-Pair Encoding, BPE)被包括 OpenAI、Gemini和 Deepseek 在内的许多主流 LLM 所采用。BPE 的优势在于能够有效地处理罕见词或词汇表外的词语,通过将它们分解成已知的子词来表示,同时还能减小模型的整体词汇量。在使用 LLM 时,用户输入的文本(即prompt)首先会经过 tokenization 处理,转换成模型能够理解的数字 token 序列。同样地,LLM 生成的输出也是一个 token 序列,需要通过 detokenization 的过程转换回人类可读的文本。 因此,用户所观察到的“打字机效果”本质上是这些生成的 token 被顺序地呈现或揭示的过程。根据 LLM 所采用的具体 tokenization 策略,在“打字”的每一个步骤中出现的可能是一个完整的词语、一个词语的片段(子词)甚至是单个字符。理解这一点对于解读模型的可视化输出至关重要。值得注意的是,由于不同的 LLM 可能使用不同的 tokenization 方法和维护着各自独特的 token 词汇表,因此在不同的平台之间可能会观察到“打字机效果”在粒度和视觉呈现上的细微差异。例如,一个模型可能倾向于以较大的文本块(完整的词语或频繁出现的子词)进行“打字”,而另一个模型由于采用了不同的 tokenization 策略,可能会呈现出更接近于逐字符出现的效果。另外,由于底层模型的输出直接与前端交互可能存在安全隐患问题,如暴露 API 密钥,通常采用“双重流式传输”模式,也就是 LLM 将数据流式传输到后端,然后后端再将数据重新流式传输到前端,大家最终看到的“打字机效果其实并不能真实的反映出底层 LLM 的 tokenization 策略。...

March 17, 2025 · 2 min · fisherdaddy

【科普】大模型中常说的参数是指什么?

近年来,大型语言模型(Large Language Models,LLMs)以前所未有的速度发展,深刻地改变了人工智能的格局,并日益融入我们日常生活的方方面面。从智能助手到内容创作和代码生成,大语言模型展现出强大的能力。这些模型已经从科研实验室走向实际应用,成为各种技术产品中不可或缺的组成部分,其重要性和影响力正持续扩大。 当我们谈论大语言模型时,“大”这个字不仅仅指它们所学习的海量数据,更在于其内部庞大的变量,我们称之为“参数”。正是这些数量巨大的参数,赋予了模型理解和生成人类语言的能力。例如,DeepSeek 的模型拥有高达 6710 亿个参数,Qwen 的模型参数量也达到了 140 亿,而一些较小的模型则拥有约 5 亿个参数。这些数字上的巨大差异暗示着参数规模对模型的能力和资源需求有着显著的影响。 什么是“参数”? 要理解大语言模型中的“参数”,首先需要了解它们所基于的底层技术:深度学习和人工神经网络。人工神经网络是一种受人脑结构和功能启发的计算系统。人脑由数以亿计的神经元相互连接构成,而人工神经网络则是由大量相互连接的计算单元(通常称为节点或神经元)组成,这些节点被组织成多个层次,包括输入层、隐藏层和输出层。 在大语言模型的语境下,“参数”指的是神经网络内部的变量,这些变量在模型的训练过程中被调整,以学习数据中的关系。这些参数主要包括以下两种类型: 权重 (Weights): 权重是分配给不同层级节点之间连接的数值,它们表示该连接在影响模型输出时的强度或重要性。权重的大小决定了前一层神经元的输出对下一层神经元的影响程度,通过调整这些权重,模型能够学习到训练数据中的复杂模式。 偏置 (Biases): 偏置是添加到神经元加权输入总和中的常数值。偏置允许激活函数在输入为零时也能被激活,为模型的学习提供了额外的自由度,使其能够学习更复杂的函数关系。 模型的训练过程本质上是一个不断调整这些参数的过程。通过分析大量的训练数据,模型会逐步调整其内部的权重和偏置,以最小化预测结果与真实结果之间的差异 . 想象一下,这些参数就像一个复杂机器上的无数个微调旋钮 。通过对这些旋钮进行精确的调整,机器(模型)才能更好地完成其任务。参数的值在训练结束后就被固定下来,它们实际上编码了模型从数据中学到的“知识” 。因此,参数的数量越多,模型能够学习和存储的语言模式和复杂关系就越丰富。 这里借用一下 OpenAI 前创始人、特斯拉前 AI 总监 Andrej Karpathy 大模型科普视频中的一个例子:Meta 开源的 Lama2 70B模型,可以被精简地理解为电脑文件系统目录中的两个核心文件:一个参数文件以及一个运行代码文件。 在这个模型中,每个参数都采用16位浮点数(即2个字节)来存储,累计起来,这个参数文件的体积达到了140 GB。这一数字不仅反映了模型的复杂性,也预示着其强大的处理能力。 接下来是运行代码文件,这部分可能令人意外地简洁,大约 500 行的 C 语言代码便足以实现整个神经网络的结构。然后我们将代码文件进行编译,并链接上参数文件,那么就形成了一个完整的 Llama2 70B 大模型。 规模的重要性:理解模型大小中的“B” 当我们谈论像 Qwen-14B 或 DeepSeek-671B 这样的大型语言模型时,其中的“B”代表的是“Billions”,即十亿 。这个字母清晰地表明,这些模型的参数数量级已经达到了非常惊人的程度。例如,谷歌发布的 Gemma 模型拥有 70 亿参数,这个数量几乎等同于全球人口。通常来说,模型拥有的参数越多,其学习复杂模式的能力就越强,从而能够更好地理解和生成更复杂的文本,并在各种语言任务中表现出更高的性能 。 值得注意的是,随着模型参数数量的增加,有时会出现所谓的“涌现能力” 。这意味着当模型的规模超过某个阈值时,它可能会突然展现出一些在较小模型中从未出现过的能力,例如进行更高级的推理、理解更抽象的概念,甚至执行一些它在训练过程中没有被明确指示要完成的任务。然而,模型规模的扩大也带来了挑战,例如训练和运行这些模型需要巨大的计算资源,并且需要更多的数据来有效地训练,以避免过拟合 。过拟合指的是模型在训练数据上表现非常好,但在面对新的、未见过的数据时性能却显著下降。 DeepSeek 的 671B 参数 DeepSeek-V3 是由中国人工智能初创公司 DeepSeek 开发的先进大语言模型,其参数量高达 6710 亿。如此庞大的规模使得 DeepSeek-V3 在数学、编码和复杂推理等具有挑战性的任务上,能够达到与 OpenAI 的 GPT-4 和 Anthropic 的 Claude 3 等领先的专有模型相媲美的性能。...

March 17, 2025 · 1 min · fisherdaddy

介绍一下模型上下文协议 MCP • Anthropic

本文介绍了模型上下文协议(Model Context Protocol, MCP),这是一个旨在连接 AI 助手与数据源(如内容仓库、业务工具和开发环境)的新标准。MCP 的目标是帮助前沿模型生成更优质、更相关的响应。当前,尽管 AI 模型的能力迅速提升,但它们与数据的隔离是一个主要瓶颈。每个新的数据源都需要定制化的集成方案,使得构建真正互联互通的系统变得困难。MCP 通过提供一个通用的、开放的标准来解决这个问题,用单一协议取代碎片化的集成方式,从而更简单、更可靠地让 AI 系统访问所需的数据。 模型上下文协议(MCP)是一个开放标准,允许开发者在数据源和 AI 驱动的工具之间建立安全的双向连接。其架构包括:开发者可以通过 MCP 服务器暴露数据,或者构建连接到这些服务器的 AI 应用(MCP 客户端)。 今天发布了 MCP 的三个主要组件: 模型上下文协议规范和 SDK:为开发者提供构建 MCP 连接器的工具和指南。 Claude Desktop 应用中的本地 MCP 服务器支持:允许用户在本地环境中测试和使用 MCP 服务器。 MCP 服务器的开源仓库:提供预构建的 MCP 服务器,方便快速集成常见企业系统,如 Google Drive、Slack、GitHub、Git、Postgres 和 Puppeteer。 Claude 3.5 Sonnet 模型能够快速构建 MCP 服务器的实现,降低了组织和个人将重要数据集与 AI 工具连接的难度。Block 和 Apollo 等早期采用者已经将 MCP 集成到其系统中。Zed、Replit、Codeium 和 Sourcegraph 等开发工具公司也在利用 MCP 增强其平台,使 AI 代理能够更好地检索相关信息,理解代码任务的上下文,并生成更精确、更实用的代码。 MCP 的优势在于,开发者不再需要为每个数据源维护单独的连接器,而是可以基于统一的标准协议进行开发。随着生态系统的成熟,AI 系统在不同工具和数据集之间移动时能够保持上下文,从而构建更可持续的架构。 开发者可以立即开始构建和测试 MCP 连接器。所有 Claude.ai 计划都支持将 MCP 服务器连接到 Claude Desktop 应用。Claude for Work 客户可以开始在本地测试 MCP 服务器,将 Claude 连接到内部系统和数据集。未来还将提供用于部署远程生产 MCP 服务器的开发者工具包。...

March 14, 2025 · 2 min · fisherdaddy

真正的 LLM Agents 即将到来 • Alexander Doria

本文的核心观点是,真正的 生成式 AI LLM 智能体 (agents) 正在到来,它们与目前常见的基于工作流的系统有着本质的区别。这些新型智能体能够进行规划、记忆,并有效地执行多步骤、长期的任务。与预定义规则和提示的工作流系统不同,真正的 LLM 智能体能够动态地指导自身流程和工具使用,从而克服了传统方法在可扩展性和长期效能方面的局限性,并有望在各个领域带来颠覆性变革。文章强调,要实现真正的 LLM 智能体,需要采用 强化学习 (RL) 与推理 (Reasoning) 相结合的方法,并克服数据和计算方面的挑战,以推动这项技术的民主化发展。 LLM 智能体的定义与兴起: 文章指出,OpenAI 在 2025 年 1 月发布的 DeepResearch 以及 Claude Sonnet 3.7 是真正的 LLM 智能体的早期例证。Anthropic 将 LLM 智能体定义为能够动态控制自身流程和工具使用的系统,这与通过预定义代码路径编排 LLM 和工具的工作流系统形成对比。 工作流系统的局限性: 文章批评了当前许多 “智能体” 系统,如 Manus AI,实际上是工作流系统,它们在规划、记忆和长期行动方面存在根本性缺陷,例如无法有效规划搜索策略、难以维持超过 5-10 分钟的任务、以及长期行动中容易累积错误。 “苦涩的教训” (Bitter Lesson): 文章引用了 Richard Sutton 的 “苦涩的教训”,指出在 AI 智能体中硬编码知识和规则虽然短期内有效,但长期来看会阻碍进步。真正的突破来自于扩展计算规模,并基于搜索和学习的方法。这表明,依赖预定义提示和规则的工作流系统注定会遇到瓶颈。 RL + Reasoning 是制胜之道: 文章强调,真正的 LLM 智能体需要通过 强化学习 (RL) 进行训练,并结合推理能力。训练过程涉及生成草稿、评估结果 (通过验证器 verifiers) 以及迭代优化。DeepSeek 的 GRPO 算法和 vllm 技术被认为是实现高效 RL 训练的关键。 数据和计算的挑战与解决方案: 训练 LLM 智能体,特别是对于复杂任务如搜索,需要大量的行动序列数据。由于缺乏公开的 agentic 数据,文章提出了通过模拟 (emulation) 和合成数据生成来解决数据瓶颈的思路。例如,可以创建网络搜索的模拟环境,并利用 Common Crawl 等数据集进行训练。 LLM 智能体的应用前景: 文章展望了 LLM 智能体在搜索之外的应用,例如网络工程 (自动生成设备配置、分析网络拓扑) 和金融领域 (数据标准转换)。这些应用场景都超越了传统工作流系统的能力,需要智能体具备自主规划和动态决策的能力。 技术民主化的必要性: 文章最后指出,目前 LLM 智能体技术主要掌握在少数大型实验室手中,为了促进技术发展和应用普及,需要推动 LLM 智能体训练和部署的民主化,例如开放验证器、 GRPO 训练样本以及复杂的合成管线和模拟器。 原文:真正的 LLM Agents 即将到来 实际的大语言模型 AI 智能体 (LLM Agent) 即将到来。它们将被训练 现在“智能体”这个词随处可见。然而,在大语言模型 (LLM) 驱动的智能体研究领域,一项最重要的研究进展却几乎没有引起人们的注意。...

March 14, 2025 · 2 min · fisherdaddy

【科普】大模型中常说的 MoE 是指什么?

在大语言模型(LLM)领域,模型规模的持续增长是提升性能的关键途径之一。然而,简单地增加模型参数会带来计算成本的急剧上升。为了在扩大模型容量的同时控制计算负担,一种名为“混合专家模型”(Mixture of Experts,MoE)的架构应运而生,并在近年来受到了广泛关注。 MOE,全称 Mixture of Experts(混合专家),是一种机器学习技术,首次在 2017 年提出,主要用于语言建模和机器翻译任务。它并非一种全新的模型,而是一种架构设计思想,可以将其理解为一种特殊的神经网络层。与传统神经网络层不同,MoE 层包含多个“专家”(Experts)和一个门控网络,每个专家都是一个独立的神经网络,可以专注于处理特定类型的数据或任务,门控网络动态选择适合当前输入的专家,从而实现条件计算和专门化。想象一个医疗团队:每个医生(专家)专注于不同领域(如语法或语义),而总医生(门控网络)根据患者症状决定转诊给谁。这样,每个患者只与最相关的专家互动,节省资源。 Mixtral 8x7B 是 MOE 在 LLM 中的一个典型案例,总参数为 47 亿,活跃参数约为 13 亿。它有 8 个专家,每个专家在推理时可能被激活 2 个。这种设计使其在推理时高效,适合处理大规模语言任务。研究显示,它在领域内任务上表现优异,但在领域外任务上效率稍低。 MoE 的原理 MoE 层的核心组件 Experts(专家): 多个独立的神经网络,例如前馈神经网络(FFN)。每个专家都具备处理特定类型数据的能力。 Gating Network(门控网络): 一个路由网络,用于决定将哪些输入数据发送给哪些专家。它根据输入数据的特征,为每个专家分配一个权重,表示该专家处理该输入的概率或重要性。 Combining Function(组合函数): 将被选中的专家的输出进行聚合,生成最终的 MoE 层输出。常用的组合方式包括加权平均。 MoE 的工作原理 输入: MoE 层接收来自上一层的输入数据。 门控网络: 门控网络分析输入数据,并为每个专家计算一个权重。权重越高,表示该专家越适合处理该输入。 专家选择: 根据门控网络的输出,选择一个或多个具有较高权重的专家。常见的选择方式包括 Top-K 选择,即选择权重最高的 K 个专家。 专家计算: 被选中的专家并行地处理输入数据,并生成各自的输出。 输出: 组合函数将这些输出进行聚合,生成 MoE 层的最终输出。 MoE 的优劣势 MoE 的优势 更大的模型容量: MoE 允许模型拥有更多的参数,从而提高模型的表达能力和学习能力。 稀疏激活: MoE 的一个关键优势是稀疏激活。对于每个输入,只有少数几个专家会被激活,这意味着计算量可以显著减少。 更好的可扩展性: MoE 架构易于扩展,可以通过增加专家数量来提高模型容量,而无需重新训练整个模型。 任务专用化: 不同的专家可以学习不同的任务或技能,从而使模型更具通用性和适应性。 高效扩展: MoE 通过稀疏激活和专家特化实现高效扩展。例如,Switch Transformers 等模型在能耗仅为 GPT-3 的三分之一的情况下,实现了与 GPT-3 同等的质量。[2] MoE 的挑战 训练难度: MoE 模型的训练比传统模型更具挑战性,需要仔细调整训练策略和超参数。 负载均衡: 如何确保每个专家都能得到充分的训练,避免某些专家过度使用而另一些专家利用不足,是一个需要解决的问题。常见的解决方案包括辅助损失和专家容量限制。 通信开销: 在分布式训练中,专家之间的通信可能会产生额外的开销。 内存需求: 所有专家都必须加载到 RAM 中,即使未使用(例如,Mixtral 8x7B 需要 VRAM 才能支持 47B 参数)。 Token 溢出: 当专家超出容量时,可能会删除 Token 或通过残差进行路由。 过拟合风险: 稀疏模型比传统密集模型更容易过度拟合,稀疏 MoE 层和密集 FFN 层的存在使统一方法复杂化。 MoE 的应用 MoE 已经在多个领域取得了显著成果,包括:...

March 13, 2025 · 2 min · fisherdaddy

【科普】大模型中常说的 Prompt Caching 是指什么?

近年来,大型语言模型(LLMs,Large Language Models)在自然语言处理领域取得了显著的进展。然而,这些模型通常具有庞大的参数量和计算复杂度,导致推理过程(即根据输入生成输出的过程)耗时且昂贵。缓存是一种常见的计算机技术,其核心思想是将计算结果或数据临时存储起来,以便后续重复使用,从而避免重复计算或数据访问,提高效率。在大模型中,缓存的原理也类似,只不过存储的内容和应用场景更加复杂。 在大型语言模型中提到的缓存(Caching),并不是直接缓存 system_prompt 或 user_prompt 的文本内容,而是缓存模型在计算过程中生成的中间计算结果,尤其是 Transformer 模型中的 键值向量(Key-Value Vectors,KV Cache)。不过,当输入的文本有相同前缀时,可以利用缓存避免重复计算。 1. 缓存的核心:键值向量(KV Cache) 在 Transformer 的自注意力机制中,每个词元(Token)会生成一对向量: Key(K):用于计算其他词元对它的关注程度。 Value(V):存储该词元的语义信息。 缓存的作用: 在生成文本时(例如逐词生成回答),模型会将已生成词元的 K 和 V 向量存储下来。当生成下一个词元时,直接复用这些历史向量,避免重新计算。 2. 前缀匹配与缓存复用 当用户输入的提示(Prompt)有相同的前缀时,模型可以利用缓存快速处理。 例如: 用户输入1: "法国的首都是哪里?法国的美食有哪些?" 用户输入2: "法国的首都是哪里?德国的首都是哪里?" 假设模型已经处理过 用户输入1 的前缀 "法国的首都是哪里?",那么处理 用户输入2 时: 发现前缀 "法国的首都是哪里?" 和之前相同。 直接复用此前缀对应的 KV 缓存,无需重新计算这一部分的 K 和 V 向量。 只需计算新增部分 "德国的首都是哪里?" 的向量。 3. 具体例子 假设用户连续两次提问: 第一次提问: System Prompt: "你是一个百科全书助手。" User Prompt: "爱因斯坦提出了什么理论?" 模型行为: 计算 System Prompt 和 User Prompt 的所有词元,生成对应的 K 和 V 向量,并缓存。...

March 12, 2025 · 1 min · fisherdaddy