跳到主要内容

702 篇博文 含有标签「llm」

查看所有标签

LLM 系统的基于属性的测试:即便输出多变也需遵循的不变量

· 阅读需 14 分钟
Tian Pan
Software Engineer

一家金融科技公司的产品团队发布了一款基于大语言模型 (LLM) 的文档摘要生成器。他们的评估数据集包含 200 个经过人工筛选并附带人工评分的示例,质量得分达到 87%。在生产环境中,当用户上传短备忘录时,系统偶尔会返回比原始文档更长的摘要。评估数据集中没有任何篇幅少于 300 字的备忘录。而“对于摘要任务,输出长度 ≤ 输入长度”这一属性从未被测试过。直到一位客户截下了这个荒唐的界面并将其发布到网上,才有人察觉到这个问题。

这就是属性测试 (Property-Based Testing, PBT) 所填补的核心空白。评估数据集衡量的是你“想到的”测试场景中的准确性。而属性测试衡量的则是,在所有可能发生的情况中,你的系统是否始终遵守了预定义的契约。

合并再调用:无需降低用户体验即可削减成本的 LLM 请求批处理模式

· 阅读需 12 分钟
Tian Pan
Software Engineer

大多数团队都是以同样的方式发现请求合并的:收到一张出乎意料的大额账单。他们上线了基于 LLM 的功能,使用量增长,然后账单仪表板显示他们每天为五万个请求付费,而仔细观察后发现其中大约三万个请求在问同一件事,只是措辞略有不同。每一个"总结这份文档"的改写都单独命中了模型。每一个近乎重复的请求都触发了完整的推理周期。成本随流量规模线性增长,而不是随用户实际想要的语义多样性增长。

请求合并正是解决这一问题的模式。它不是单一技术,而是一种分层架构:用于防止并发重复的飞行中去重、用于重复相同提示的精确缓存,以及用于捕捉中间改写变体的语义批处理。顺序很重要,阈值很重要,理解该模式何处会失效——尤其是围绕流式传输——是可用实现与那种在暂存服务器上节省了钱但在生产中引发隐蔽 bug 的实现之间的差别所在。

Schema 驱动的 Prompt 设计:让你的数据模型主导 Prompt 结构

· 阅读需 12 分钟
Tian Pan
Software Engineer

你的数据模式(schema)就是你的提示词。大多数工程师将这两者视为独立的事物——你设计数据库模式是为了满足范式规则,而你设计提示词是为了清晰和具描述性。但实体模式的形状对 LLM 输出质量有着直接且可衡量的影响,忽视这种关系是生产环境 AI 系统中最昂贵的错误之一。

一家中型电子商务公司的团队在他们的产品提取流水线开始生成幻觉模型年份时发现了这一点。修复方法并不是更好的提示词,而是将 {"model": {"type": "string"}} 更改为一个具有明确描述和正则表达式约束的字段。这单一的模式更改——记录在 PARSE 研究中——在他们的提取基准测试中带来了高达 64.7% 的准确率提升。

有状态 vs. 无状态 AI 功能:决定一切下游走向的架构抉择

· 阅读需 13 分钟
Tian Pan
Software Engineer

当一个购物助手向一位两年前曾提及怀孕的用户推荐婴儿产品时,系统没有抛出任何异常。它完全按照设计运行。LLM 返回了一个充满信心的 HTTP 200 响应。问题出在数据上——一段从未被清除的过期记忆——而且它完全隐形,直到一位用户投诉才被发现。这就是潜伏在有状态 AI 系统中的幽灵,其行为与你习惯调试的 Bug 截然不同。

有状态与无状态 AI 功能之间的抉择,表面上看起来异常简单。但在实践中,这是你在构建 AI 产品时最早做出的架构决策之一,其影响会贯穿存储层、调试工具链、安全态势和运营成本。大多数团队是在不经意间做出这个决定的——盲目沿用某种模式,却未仔细审视其权衡取舍。本文旨在帮助你做出有意识的选择。

不会崩溃的合成数据管道:大规模生成训练数据

· 阅读需 10 分钟
Tian Pan
Software Engineer

用模型自身的输出训练模型,再用该模型的输出训练下一个模型,三代之内你就构建了一台逐渐变笨的机器。这就是模型崩溃——一个退化过程,其中每一代合成训练数据都会缩窄分布,直到模型遗忘罕见但重要的长尾模式。Nature 上的一项里程碑式研究证实了从业者的经验观察:即使微小比例的合成数据污染(低至千分之一的样本)也会引发词汇、句法和语义多样性的可测量退化。

然而合成数据并非可选项。真实世界的标注数据昂贵且在专业领域稀缺,在前沿模型所需的规模下日益枯竭。2025-2026 年成功交付微调模型的团队并非在回避合成数据——他们正在设计管道架构以确保生成过程不会崩溃。一个高效管道与一个自我中毒管道之间的区别在于多样性保持、验证循环以及知道何时该停下来。

指令遵循悬崖:为什么在系统提示中多加一条规则会破坏另外三条

· 阅读需 9 分钟
Tian Pan
Software Engineer

你的系统提示最初只有十二行,运行得非常顺畅。后来产品团队要加语气规范,法务部门要加免责声明,安全团队又追加了三条约束。现在你有了四十条规则,模型却忽略了其中一半——而且每次忽略的还不是同一批。

这就是指令遵循悬崖:当你在提示中多加一条规则时,不仅仅是这条新规则的合规率下降——昨天还运转良好的其他规则也会跟着失稳。而且与大多数工程故障不同,这种失败方式令人抓狂地不确定。

生产级 AI 流水线中的视觉输入:无人记录的预处理决策

· 阅读需 12 分钟
Tian Pan
Software Engineer

你的视觉模型在评估套件上跑出了 90% 以上的分数。接着,真实用户上传了实体文档的照片、低 DPI 显示器的屏幕截图,以及经过三次传真机往返扫描的 PDF。准确率骤降。模型“正常运行”——它返回了连贯的响应——但在没有已知标准答案(ground truth)的情况下,这些响应的错误方式很难被察觉。你将其归咎于“模型限制”并继续前进。

模型本身可能不是问题,输入流水线才是。

大多数构建视觉大语言模型(Vision LLMs)的团队在提示词工程(prompt engineering)和模型选择上投入了巨大精力,而在图像到达模型之前的预处理上几乎投入为零。这种不对称正是生产环境质量崩盘的根源。那些无人记录的预处理决策,也是导致生产环境多模态系统准确率无声下降的最大元凶。

当你的智能体意见不一致时:多智能体系统中的共识与仲裁

· 阅读需 15 分钟
Tian Pan
Software Engineer

多智能体系统(Multi-agent systems)是基于一个承诺而诞生的:多个并行的专业化智能体协同工作,产生的结果会优于任何单个智能体。但这个承诺隐藏了一个前提——当智能体给出不同答案时,你知道如何调解它们。大多数团队在发现自己无法调解时,往往为时已晚。

天真的做法是取输出的平均值,或者选择多数票答案,然后继续。在实践中,如果所有智能体共享相同的训练分布,多智能体系统会通过多数表决放大它们的共同错误,而不是抵消错误。一个总是听从最有信心智能体的系统,会盲目跟随那个最过度自信的智能体。而一个将所有分歧都交给 LLM 裁判(LLM judge)处理的系统,会继承该裁判的 12 种已被记录的偏差类型。仲裁问题比看起来要难,如果处理不当,你可能会在一周内遇到四次生产事故。

智能体如何自我学习:闭环自我提升架构

· 阅读需 13 分钟
Tian Pan
Software Engineer

训练智能体最昂贵的部分不是 GPU 时间,而是对多步任务的成功或失败进行标注的人类标注员。对长程智能体轨迹(例如验证智能体是否正确预订了机票、编写了功能性程序或填写了法律表格)进行单次专家标注的成本可能超过数千次推理调用。“闭环自我改进”是一种架构模式,它通过用自动验证器取代人类判断,然后利用该验证器在没有任何人工参与的情况下运行“生成-尝试-验证-训练”循环,从而消除了这一瓶颈。如果操作得当,它是行之有效的:最近的一篇 NeurIPS 论文显示,在没有任何人类标注的情况下,该模式将多轮工具使用环境下的平均任务成功率从 12% 提高到 23.5%,翻了一番。

核心见解不在于模型能够自我改进,而在于验证器是免费的。代码执行以毫秒为单位确定性地返回通过/失败信号,边际成本几乎为零。当你的任务具有可检查的结果时,你可以每小时运行数千个训练情节,并带有模型无法伪造的真值标签(假设你的沙箱设计正确)。这个假设承载了大量工作,我们稍后会再谈到它。

认知工具支架:在不增加成本的情况下获得接近推理模型的性能

· 阅读需 12 分钟
Tian Pan
Software Engineer

你的推理模型账单可能很高,但能力差距可能比你想象的要小。在 AIME 2024 数学基准测试中,一个运行四个结构化认知操作的标准 70B 模型,其准确率从 13% 跃升至 30% —— 以极低的推理成本,几乎赶上了 o1-preview 的 44%。在像 GPT-4.1 这样更强大的基础模型上,同样的技术将准确率从 32% 提升到 53%,这实际上在这些基准测试中超越了 o1-preview。

这种技术被称为认知工具脚手架 (cognitive tool scaffolding),它是过去十年研究如何让语言模型在不改变权重的情况下实现更好推理的最新演变。

AI 个性化中的冷启动问题

· 阅读需 13 分钟
Tian Pan
Software Engineer

一个用户注册了你的 AI 写作助手。他们输入了第一条消息。你的系统此时只有一个数据点 —— 并且必须做出决定:是正式还是随性?是冗长还是简洁?是提供技术深度还是通俗概览?大多数系统都会采取折中方案,提供一个通用的默认设置。少数系统尝试立即进行个性化。而那些立即进行个性化的系统往往会让事情变得更糟。

AI 个性化中的冷启动问题与 Netflix 十五年前解决的问题并不相同。它在结构上更难,失败模式更隐蔽,而且常见的修复方案会主动引入新的 Bug。以下是交付过个性化系统的从业者在应对这一问题时学到的经验。

领域专用 Agent 架构:为什么通用 Agent 在高风险垂直行业表现不佳

· 阅读需 12 分钟
Tian Pan
Software Engineer

一个能够总结合同、起草产品规范和编写 SQL 查询的通用 AI 智能体确实令人印象深刻——直到你将其部署到放射科,并发现它建议了听起来合理但却与患者实际药物过敏史相冲突的剂量。这种失败并非幻觉问题,而是架构问题。

大多数智能体演示中隐含的假设是:足够强大的基础模型加上广泛的工具集,就等于在任何领域都胜任的智能体。而在实践中,这一假设与生产现实之间的差距,正是导致患者受伤、诉讼产生以及实验结果不可复现的根源。通用智能体是一个合理的起点,而非终点。