跳到主要内容

720 篇博文 含有标签「llm」

查看所有标签

课程陷阱:为什么针对最佳示例进行微调会产生平庸的模型

· 阅读需 12 分钟
Tian Pan
Software Engineer

每一项微调工作最终都会达成同样的直觉:更好的数据意味着更好的模型,而更好的数据意味着更高质量的样本。因此,团队会构建复杂的标注流水线,以过滤掉平庸的输出,只保留金标准回复,并基于让他们引以为傲的数据集进行训练。然而,由此产生的模型在那些最初推动项目启动的具体用例中表现不佳。这种失败如此普遍,以至于值得拥有一个专属名称:课程陷阱(curriculum trap)。

这个陷阱在于 —— 仅策划你最好、最自信、最权威的输出并不能教会模型变得更好。它教会模型的是无论是否合理都要表现出自信。你创造出的东西在演示中看起来令人印象深刻,但在生产环境中却漏洞百出,因为生产环境充满了你的策划过程系统性排除掉的混乱边缘情况。

过度宣称陷阱:当“歪打正着”摧毁 AI 产品信任

· 阅读需 12 分钟
Tian Pan
Software Engineer

大多数 AI 产品复盘都聚焦于同一个故事:模型错了,用户发现了,信任瓦解了。修复方法显而易见——提高准确率。但有一种更隐蔽的失败模式,复盘很少能捕捉到,因为标准的准确率指标无法反映它:模型是正确的,但原因却是错误的,而那些检查了推理逻辑的高级用户再也没有回来。

称之为“过度声明陷阱”(overclaiming trap)。在这种失败模式下,正确的最终答案是由捏造的、事后修补的或结构不合理的推理链支撑的。它比普通的错误更危险,因为它看起来像是成功,直到你最专业的用户开始悄悄离开。

!["https://opengraph-image.blockeden.xyz/api/og-tianpan-co?title=%E8%BF%87%E5%BA%A6%E5%A3%B0%E6%98%8E%E9%99%B7%E9%98%B1%EF%BC%9A%E5%BD%93%E2%80%9C%E5%9B%A0%E9%94%99%E7%9A%84%E5%8E%9F%E5%9B%A0%E8%80%8C%E6%AD%A3%E7%A1%AE%E2%80%9D%E6%91%AC%E6%AF%81%20AI%20%E4%BA%A7%E5%93%81%E4%BF%A1%E4%BB%BB"]"

Tokenizer 算术:生产环境中悄然作祟的隐藏层

· 阅读需 12 分钟
Tian Pan
Software Engineer

一个团队上线了一条 JSON 提取流水线。在开发环境中运行完美:98% 的准确率、干净的结构化输出、可预测的 token 数量。他们推送到生产环境后,模型开始产生多余的空白字符,JSON 解析器开始报错,API 账单是原型阶段估算的 2.3 倍。模型没变。提示词没变。

是 tokenizer 变了——更准确地说,他们对它的假设从一开始就是错的。

分词(Tokenization)是你的输入经历的第一次转换,却是工程师在调试时最后才想到要检查的地方。大多数团队把它当作已解决的问题:文本进去,token 出来,模型完成其工作。但字节对编码(BPE,Byte Pair Encoding)——大多数生产级 LLM 背后的分词算法——在结构化输出生成、前缀缓存、成本估算和多语言部署中做出的决策,会产生连锁影响。一旦你知道该往哪里看,这些影响完全是可以预测的。

当提示词工程师离职时:AI 知识转移的难题

· 阅读需 10 分钟
Tian Pan
Software Engineer

在你最优秀的提示词工程师转岗到新项目六个月后,一个面向客户的 AI 功能开始出现异常。响应质量下降了,输出格式偶尔损坏,还有一个说不清道不明但持续存在的语气问题。你打开提示词文件,里面是 800 字的自然语言。没有变更日志,没有注释,没有测试用例。写下它的人确切地知道每一段话存在的意义。但那份知识已经消失了。

这就是提示词考古问题,它已经让团队付出了真金白银的代价。一家全美抵押贷款机构最近发现,文档分类的准确率下降了 18%,原因可以追溯到三周前有人在所谓的“常规工作流优化”中向提示词添加的一句话。两周的调查,大约 340,000 美元的运营损失。而那次修改的作者早已离开了。

适配器兼容性悬崖:当你的微调模型遇到新版基础模型

· 阅读需 12 分钟
Tian Pan
Software Engineer

对语言模型进行微调能给你带来竞争优势——直到提供商在你的适配器之下更新了基础模型。此时,两种情况之一会发生:你的服务因形状不匹配错误而崩溃,或者——更危险的是——它开始静默输出降级结果,而你的监控系统毫无异常。大多数团队发现第二种情况,往往是在用户投诉"AI 变蠢了"之后。

这就是适配器兼容性悬崖。你在模型版本 N 上训练了一个 LoRA 适配器,提供商发布了版本 N+1,你的适配器现在运行在一个从未为之设计的基础上,且没有任何迁移路径。

大规模语料库策展:为什么你的 RAG 质量上限取决于你的文档质量下限

· 阅读需 12 分钟
Tian Pan
Software Engineer

在大多数 RAG 架构中都存在这样一种信念:如果检索返回了正确的区块(chunks),LLM 就会生成正确的答案。团队在嵌入模型选择、混合检索策略和重排序流水线方面投入了巨资。然而,在部署到生产环境三个月后,回答质量悄然下降——这不是因为模型变了,也不是因为查询模式发生了剧变,而是因为底层的语料库腐烂了。

企业级 RAG 的实施失败率约为 40%,而从业者最容易低估的失败模式既不是幻觉,也不是检索召回率低,而是文档质量。一项分析发现,通过引入文档质量评分,一个实施方案在不改变嵌入模型或检索算法的情况下,将搜索准确率从 62% 提高到了 89%。语料库是唯一的变量。语料库一直都是变量。

你的 LLM 评估套件中的古德哈特定律:当优化分数破坏系统时

· 阅读需 10 分钟
Tian Pan
Software Engineer

Andrej Karpathy 直言不讳:AI 实验室正在"过拟合"Arena 排行榜。某头部实验室在公开发布前私下评估了 27 个模型变体,只发布了表现最佳的那个。研究人员估计,仅凭选择性提交就可以将排行榜分数人为提高多达 112%。所有人都视为基准真相的众包评估系统已经成为博弈目标——一旦成为目标,它就不再是有效的衡量标准了。

这就是古德哈特定律在发挥作用:当一个指标成为目标时,它就不再是好的指标。这一规律在经济学和政策领域已被充分理解了数十年。在 LLM 工程中,它正在实时摧毁评估套件,而构建这些套件的团队往往浑然不知。

混合 LLM 工作负载的 GPU 调度:那个没人解决好的装箱问题

· 阅读需 12 分钟
Tian Pan
Software Engineer

大多数运行 LLM 推理的 GPU 集群正在浪费 30% 到 50% 的可用算力。这并非因为工程师粗心,而是因为调度问题本身极为困难——而大多数团队首先想到的工具根本不是为此设计的。

标准做法是搭建 Kubernetes,为每个 Pod 申请完整的 GPU,然后让调度器自行处理。这对训练任务运行良好。但对于处理异构模型集合的推理场景,这种方式会悄悄摧毁利用率。一个运行三个不同 7B 模型且流量稀疏的集群,每个 GPU 的实际繁忙时间可能不足 15%,同时却处于完全"已分配"状态,拒绝调度任何新任务。

根本原因在于 Kubernetes 理解 GPU 的方式与 LLM 推理实际需求之间的错配。

幽灵工具调用:当AI智能体调用不存在的工具

· 阅读需 9 分钟
Tian Pan
Software Engineer

你的智能体通过了所有单元测试,完美处理了正常路径,然后在某个周二下午,它试图调用 get_user_preferences_v2——一个在你的代码库中从未存在过的函数。这个调用在语法上看起来完全正确。参数也很合理。唯一的问题是,你的智能体凭空捏造了这一切。

这就是幽灵工具调用:一种不表现为错误文本而表现为错误操作的幻觉。与人类可能在审查中发现的事实幻觉不同,幽灵工具调用会直接命中你的运行时,抛出一个晦涩的 ToolNotFoundError,并使原本运行正常的多步骤工作流脱轨。

质量感知模型路由:为什么仅优化成本会毁掉你的 AI 产品

· 阅读需 11 分钟
Tian Pan
Software Engineer

每个部署 LLM 路由的团队都是同样的起步方式:按价格排列模型,将简单查询发送给便宜的模型,复杂查询发送给昂贵的模型,然后庆祝成本降低了 60%。六周后,有人发现合同分析准确率从 94% 降到了 79%,编码助手开始虚构不存在的 API 端点,复杂支持工单的客户满意度直线下滑——而路由仪表盘上仍然显示"质量保持 95%"。

问题不在于路由本身。问题在于,仅优化成本的路由将所有质量下降视为等同,而实际上你降级的那些查询恰恰是质量最重要的那些。

Spec-to-Eval:将产品需求转化为可证伪的 LLM 评估标准

· 阅读需 10 分钟
Tian Pan
Software Engineer

大多数 AI 功能用自然语言描述需求,也用自然语言进行评估。产品经理写下"助手应当给出有帮助的回复,并避免有害内容"。工程师上线了一个 Prompt,演示时的输出看起来符合要求。团队在站会上达成共识,却在上线时产生分歧——边缘案例浮现,不同工程师对同一输出的评判各异,而"有帮助"这个词,不同评审者的理解竟有七种之多。

这不是工具问题,而是翻译问题。规格说明一直停留在抽象层面,评估标准从未被具体化。Spec-to-Eval 是一门在编写第一个 Prompt 之前,将英文需求转化为可证伪标准的方法论——提前做这件事,将从根本上改变迭代速度。

利益相关者提示冲突:当平台、业务与用户指令在推理时相互竞争

· 阅读需 12 分钟
Tian Pan
Software Engineer

2024年,加拿大航空的聊天机器人凭空发明了一项并不存在的丧亲票价退款政策。法院裁定该公司须对机器人的言论负责。根本原因并非传统意义上的模型幻觉——而是优先级反转。系统提示写着"乐于助人",实际政策写着"遵循已记录的规则"。当用户询问赔偿问题时,模型悄悄地将"高效解决问题"置于"升级投诉"之上,而没有人在这一判断影响公司之前对其进行审计。

这就是利益相关者提示冲突问题。每个生产级LLM系统都至少有三个指令来源:平台层(安全约束和基础模型行为)、业务层(运营商定义的规则、合规要求、品牌声音)以及用户层(实际请求)。当这些层相互矛盾时——它们终将矛盾——模型会选出一个胜者。问题在于,这个选择是由你的工程团队有意为之,还是模型在无人察觉的情况下自行决定的。