聊天窗口对面的AI是如何偷偷降智的【施工中】

Updated on

前言

如果你经常混迹各种AI社区,想必时不时便会碰到此类提问:大家有没有感觉AI变笨了?

在此话题下,大家就会聊什么满不满血,账号干净不干净,AI服务提供者有没有偷偷给你阉割服务。不过到底什么叫满血模型,残血又会残在哪里?AI服务提供者有哪些花式服务阉割技巧?为什么情况相似,享受的服务有的是皇帝有的是公公?

我会在下文相对系统的列出常见缘由,帮助诸君梳理各种情况。

量化(Quantization)

量化是将模型参数(如权重)和计算过程中间结果(如激活值)从高精度(通常是浮点数,如FP32或FP16)转换为低精度(通常是整数,如INT8或INT4)的模型压缩技术。低精度数据操作的计算需求较低,可以减少内存占用,加快推理速度。  

策略:

  • 训练后量化(PTQ): 在模型完全训练后对其进行量化,相对简单。

  • 量化感知训练(QAT): 从头开始训练模型,或使用低精度数据类型对其进行微调。这种方法技术要求更高,但可以生成更小、性能更好的模型,而且可以更大程度上压缩 。  

影响:

  • 推理能力下降: 量化会大幅降低推理能力,其中算术推理最为敏感 :4位量化可能导致推理任务性能下降10-30%,低于4位时性能会“急剧下降”,意味着4位是保持模型能力体面的下限 。

  • 内部表示的破坏: 高保真内部表示对于像思维链(CoT)提示这样的高级推理策略至关重要 。量化可能会破坏这些关键的内部状态,导致逻辑推理错误,使推理步骤无法连贯 。  

  • 非均匀退化: 退化并非在所有任务或模型系列中都均匀发生;一些模型(例如Mistral)在量化下能更好地保持推理能力 。  

  • 通过提示/微调缓解: 思维链(CoT)提示可以显著提高量化鲁棒性 。此外,对少量特定任务示例(例如,545个示例,在4个GPU上训练3分钟)进行轻量级微调,可以有效地将量化模型的推理能力恢复到接近全精度的水平 。

应对

有研究提出两种假设:知识在压缩过程中被“遗忘/抹去”或“内部位移” 。而微调可以“恢复”量化模型的性能 。这表明对于量化而言,知识可能更多是位移而非不可逆转地丢失。模型仍然“知道”,但需要特定的“重定向”(微调或CoT提示)才能访问这些知识。这暗示了“降智”并非永久性的智力损伤,而是知识可访问性或效率的转变。这使得用户端的策略(如CoT提示)更为有效,因为它们有助于模型“找到”其位移的知识。  

蒸馏

知识蒸馏(KD)是一种将知识从大型复杂“教师”模型(例如,强大的LLM)转移到更小、更高效的“学生”模型(SLM)的技术 。可以使学生模型尽可能保持准确性的同时,显著降低计算开销、提高推理速度 。  

策略:

  • 传统KD: 知识从教师到学生的直接转移。
  • SIKeD(自引导迭代知识蒸馏): 一种更高级的方法,LLM教导小型模型使用不同的策略处理任务,小型模型利用其自身生成的输出与教师数据混合,选择最适合给定任务的策略 。这种迭代方法旨在提高推理能力和泛化能力,尤其是在分布外(OOD)任务上 。  

影响:

  • 小型模型难以从教师那里学习多种正确的推理轨迹,创造性和泛化能力降低。
  • 学生模型表达能力较弱,在蒸馏时倾向于优先选择一种推理策略,即使教师模型使用了多种策略 。  
  • 小型学生模型通常会损失一些准确性 。蒸馏的质量取决于初始LLM数据的质量 。  

剪枝

剪枝涉及在不显著损失性能的情况下,从神经网络模型中移除不必要或冗余的组件(如单个权重、神经元或整个层/注意力头)。大型机器学习模型通常“参数过剩”,包含冗余的计算单元 。  因而剪枝本身并不等同降智,可以说是一种降本增效的策略。当然实际效果还要看这个策略是如何具体实施的。

策略:

  • 非结构化剪枝: 移除单个参数,导致稀疏矩阵(包含许多零的矩阵)。尽管在减少参数数量方面有效,但它需要专门的硬件才能实现效率提升,因为标准硬件无法比非稀疏操作更有效地处理稀疏操作 。  

  • 结构化剪枝: 移除整个结构(例如,注意力头、神经元、层)。这避免了稀疏矩阵问题,并可以在标准硬件上实现更直接的效率提升 。  

  • 基于逻辑的剪枝(Prune-on-Logic): 一种结构感知框架,将思维链(CoT)转换为逻辑图,并在自我验证约束下选择性地剪枝低效的推理步骤 。  

影响:

  • 推理能力下降(有条件): 剪枝推理步骤或整个CoT链(全链步骤)可能会降低性能 。然而,选择性剪枝长CoT推理中的“验证”步骤已被证明可以持续提高准确性,同时降低推理成本 。  

  • 效率与冗余: 长的CoT过程可能导致“由于过度内省而产生冗余输出” 。剪枝或像思维树(ToT)这样的替代推理结构,旨在减少这种冗余和相关的token成本 。小型模型受益于“语义上更精简”的CoT,而不仅仅是更短的CoT 。  

  • 收益的硬件依赖性: 非结构化剪枝的优势通常取决于专门的硬件,这限制了其在没有基础设施支持的情况下作为通用“降智”策略的实际部署 。  

总结

策略原理提供商主要目标对感知智能/质量的关键影响权衡/考量
量化降低模型参数(权重、激活)的位宽精度降低内存/成本,加快推理速度算术和复杂逻辑推理能力下降;内部表示受损,导致逻辑错误;非均匀退化位宽敏感性(低于4位急剧下降);可通过CoT提示或轻量级微调缓解
知识蒸馏将知识从大型“教师”模型转移到小型“学生”模型降低计算开销,提高推理速度,实现资源可持续性创造力受限,泛化能力下降;难以学习多样化策略;存在准确性损失蒸馏质量取决于教师模型数据;学生模型倾向于优先选择单一策略
剪枝移除模型中不必要或冗余的组件(权重、神经元、层)减少参数数量,提高效率,降低token成本推理能力可能下降(取决于剪枝类型);输出可能缺乏深度或详尽性;非结构化剪枝依赖专用硬件剪枝验证步骤可提高准确性;可能导致输出“语义上更精简”而非全面

 

B. 上下文窗口管理:“记忆”的限制

上下文窗口是LLM的“工作记忆”,定义了模型在任何给定时间可以考虑的文本量(以token计)。这一基本的架构限制显著影响了LLM保持连贯性、理解长输入和生成全面响应的能力。  

1. 上下文窗口限制与截断

LLM以固定的上下文窗口运行,这限制了它们在单次处理中可以处理的token总数(输入+输出)。这类似于人类的工作记忆,过载会导致遗忘或注意力下降。  

策略:

  • 输入截断: 当提示或文档超出模型的上下文窗口时,它必须被截断,这意味着部分输入被简单地剪掉并忽略 。  

  • 摘要/分块: 对于非常长的文档,提供商或用户可能会通过将文本分成更小的块、对每个块进行摘要,然后将结果组合起来进行预处理 。  

  • 迭代处理: 一个请求的输出可能会作为下一个请求的输入,但这会增加复杂性和延迟 。  

相关概念: Token、自注意力机制、工作记忆、上下文长度、“大海捞针”问题。

影响:

  • 遗忘早期细节: 超出token限制会导致模型“遗忘”对话或文档的早期部分,从而导致响应的准确性和连贯性降低 。  

  • 连贯性和准确性降低: 无法保留完整上下文直接影响模型对长输入的理解和响应生成,从而影响整体输出质量 。  

  • “懒惰”行为/位置偏差: LLM无法充分利用长输入上下文中的信息;它们通常在相关信息位于输入开头或结尾时表现最佳,而忽略中间的细节 。这种“大海捞针”问题意味着即使上下文很大,模型也可能无法有效利用所有提供的信息 。  

  • 计算成本增加: 尽管更大的上下文窗口通常会提高准确性和连贯性,但它们会显著增加计算能力需求和成本 。这种成本效益权衡促使提供商限制上下文窗口。  

2. 输出长度限制

AI服务提供商可能会对生成的响应的最大长度(max_new_tokens)施加限制 。这通常是为了管理计算资源、减少延迟和控制成本,因为更长的输出会消耗更多的token和处理时间 。  

策略:

  • 自适应token长度调节: 根据检测到的对抗性攻击类型或输入复杂性等因素,动态调整max_new_tokens参数 。  

  • 基于强化学习的策略调整: 使用强化学习来引导影响输出长度的策略,通常是为了平衡安全性和连贯性 。  

  • 提示工程以求简洁: 鼓励或隐式要求用户设计能引出更短响应的提示 。

相关概念: 思维token比率、对抗性条件、自我纠正、推理延迟、token预算。

影响:

  • 推理深度降低: 较短的输出限制会阻止模型充分阐述其推理过程,导致答案不够详细或不够全面 。这可能被视为缺乏深度或智能。  

  • 阻碍自我纠正: 较长的输出可以允许模型“自我纠正”错误 。限制长度可能会消除这种机会,导致最终响应的准确性降低。  

  • 安全相关性各异: 输出长度对安全性的影响并非统一;虽然较长的输出可能会提高某些攻击类型的安全性,但其他攻击类型在扩展生成时会变得更有效 。这在安全性和输出丰富性之间造成了复杂的权衡。  

  • 与质量的权衡: 尽管减少max_tokens可以加快响应时间并降低成本 ,但它固有地限制了细致、全面或创造性输出的潜力,直接导致在丰富性和完整性方面的感知“降智”。  

深层考量:

  • “简洁-深度”困境: 提供商被迫在对简洁、快速响应的需求(由成本和用户耐心驱动 )与对深入、全面或自我纠正输出的需求 之间取得平衡。这通常导致优先考虑简洁性的妥协。这导致了一种“降智”形式,即AI提供的是“表面”答案,而不是真正智能、详尽的答案,因为系统针对token效率和速度进行了优化。用户可能会将其解释为AI“知识不足”,而不是受到限制。  

  • 安全作为输出限制的理由: 有研究明确将输出长度与安全性联系起来,指出自适应token长度调节可用于对“检测到的攻击类型”应用“更短的token限制” 。这表明提供商可能会故意限制输出长度作为安全防护措施。这意味着在某些情况下,AI可能“更笨”(不那么冗长,不那么详细),不是因为它缺乏知识,而是因为它被刻意阻止生成可能有害或可利用的长输出。用户可能不会将其视为安全措施,而是AI智能的局限性。  

D. 性能优化:速度优先于实质?

AI应用中的用户体验受到响应时间和延迟的严重影响 。提供商会实施各种技术来减少这些延迟,但通常以牺牲输出质量或完整性为代价,从而导致感知上的“降智”。  

1. 延迟降低技术

原理: 最小化用户提交提示与LLM提供完整响应之间的时间延迟(响应时间)或处理开始前的延迟(延迟)。低延迟对于无缝用户体验和实时应用至关重要 。  

策略:

  • KV缓存: 保存先前token计算出的键值对,以消除文本生成过程中的冗余工作,从而提供更快的响应和更高的吞吐量 。  

  • 批处理(连续批处理): 将多个用户请求分组以同时处理,这提高了整体吞吐量和资源利用率,但可能增加单个请求的延迟 。  

  • 模型路由: 根据复杂性、需求或速度需求将传入请求发送到最合适的模型 。这可能涉及级联架构(功能越来越强的模型)或并行架构(多个模型同时)。  

  • 推测式推理/解码: 使用更小、更快但“草稿”模型快速预测token,然后由更大、更准确(但更慢)的目标模型进行验证。这在旨在保持质量的同时显著缩短了推理时间 。  

  • 提示工程以求简洁: 设计提示以引出更短的响应,从而减少模型token生成并加快响应时间 。  

  • 模型优化(量化与蒸馏): 如II.A所述,这些技术减少了模型大小和计算开销,直接有助于加快推理速度 。  

相关概念: 首个token延迟、推理延迟、响应时间、吞吐量、内存受限操作、模型并行化。

影响:

  • 速度与准确性/质量的权衡: 在速度和准确性之间存在根本性挑战 。高质量的响应需要更多的计算和时间,而更快的响应通常通过简化计算来实现,从而损害输出质量 。这是导致感知“降智”的直接原因。  

  • 单个请求的延迟增加(批处理): 尽管批处理提高了整体系统吞吐量,但它可能使单个用户的响应时间变慢,导致用户沮丧 。  

  • 响应不够全面/细致(简洁提示): 如果提示工程用于强制输出更短的响应以提高速度,AI的响应可能缺乏深度或细节 。  

  • 不可靠的输出: LLM推理的概率性质意味着结果并非总是可靠的,为提高速度而简化计算可能会加剧这种情况 。  

深层考量:

  • 智能的“不耐烦惩罚”: 用户期望“近乎即时”的响应 。这种对速度的高期望迫使提供商优先考虑延迟降低。像批处理 或鼓励简洁提示 这样的技术直接影响单个响应的质量或全面性。市场对速度的需求,由用户体验期望驱动,直接导致提供商实施优化,从而导致单个交互中AI输出质量的“降智”。AI可能“变笨”是因为它被迫更快。  

  • “足够好”的速度带来“足够好”的质量: 像推测式解码 这样的技术旨在实现更快的推理,同时“不损害质量”,但潜在的权衡仍然存在 。目标通常是找到“最佳平衡” ,而不是绝对的最佳质量。这意味着提供商通常部署的模型在速度-质量平衡方面进行了优化,这意味着对于某些复杂查询,如果需要太长时间,AI可能无法提供其最佳响应。这导致用户在处理复杂任务时感知到“降智”。  

  • 吞吐量优化的“隐藏成本”: 批处理是最大化系统吞吐量和降低总成本的非常有效技术 。然而,它明确指出批处理可能使“单个请求的响应时间变慢” 。这揭示了系统级效率(吞吐量)与个体用户体验(延迟)之间的冲突。用户可能会因为批处理而认为AI“更笨”或更慢,即使系统作为一个整体对提供商而言是最佳性能。这是个体用户即时体验中“降智”的微妙形式。  

III. “智能退化”的经济和运营驱动因素

本节探讨了促使AI服务提供商实施上述技术机制的整体业务和基础设施现实,这些现实往往导致AI感知智能的降低。

A. 成本降低与可扩展性挑战

原理: 大规模部署LLM的根本挑战在于其庞大的内存需求、高昂的计算成本和基础设施限制 。训练和运行最先进的模型可能需要数百万美元的电力和硬件成本 。  

策略:

  • 模型压缩(量化、蒸馏、剪枝): 这些技术主要是为了降低内存使用、计算需求和能耗,使LLM更具资源效率和可持续性 。  

  • 优化推理: 像KV缓存、批处理和推测式解码等策略旨在提高效率并降低每次推理的成本 。  

  • 分布式计算: 利用Kubernetes集群和云自动扩缩容解决方案,在不同服务器和区域高效部署和扩展LLM,从而降低全球用户的延迟 。  

相关概念: GPU/TPU成本、能耗、内存使用、用户流量增加导致的非线性成本增长、硬件限制、基础设施瓶颈。

2. 免费与付费层级:差异化服务质量

提供商可以优先为高付费层级分配资源(CPU时间、内存、带宽),从而有效地“饿死”低优先级(免费)用户的最佳性能。免费层级通常在共享、有限的资源上运行 。

  • 使用功能较弱的模型(例如,高峰时段的GPT-3.5),或者在达到使用限制时切换到这些模型

  • 更严格的消息限制,并可能在高峰时段遇到排队或响应速度变慢

  • 缺乏高级安全功能,并可能收集用户数据以改进模型

  • 理解模型限制和权衡: 用户应了解AI性能受各种技术和经济权衡的影响(例如,速度与准确性 ;成本与能力 )。并非所有AI服务都在所有维度上提供最佳性能。  

  • 战略性提示工程以缓解退化:

    • 对于复杂的推理任务,采用思维链(CoT)提示可以提高对抗量化效应的鲁棒性 。  

    • 对于长输入,用户可能需要策略性地将相关信息放在提示的开头或结尾,以对抗位置偏差 。  

    • 当简洁性至关重要时,用户可以明确要求简洁的响应 。  

  • 为关键任务选择合适的服务层级: 对于对准确性、全面响应或高级功能要求较高的应用,投资付费层级或企业解决方案通常是必要的,因为免费层级固有地受到限制 。  

  • 提供反馈: 参与持续的反馈循环有助于随着时间的推移提高AI性能 。

后话

强劲的LLM以其庞大规模与计算需求无限拉高内存使用和推理成本,AI服务提供商往往选择以模型性能为代价,操盘各种降本增效神秘技巧玩弄广大小白用户。而正经的AI服务提供商理当开局就清晰地声明不同服务类型可体验的细分产品与限制 。在易混淆之处,服务提供者有责任主动、透明地向大众区分,说明各种优化技术(如量化、蒸馏)对模型性能表现的影响。至于打着知名模型的title搞擦边,冠各种各样乱七八糟莫名其妙的系列后缀迷乱用户智慧の眸,简直跟搞花式套餐的通讯运营商似的,下头!