跳到主要内容

678 篇博文 含有标签「ai-engineering」

查看所有标签

N 层确认级联:为什么更多的人工审批反而让 AI 更不安全

· 阅读需 11 分钟
Tian Pan
Software Engineer

当 AI 系统犯下严重错误时,一种本能的反应似乎很合理:在流程中加入人工环节。如果一名审核员遗漏了某些内容,就增加第二层审核。如果法务部门感到不安,就增加第三层。这种级联反应给人的感觉像是安全性的复利叠加——每一个审批阶段都是另一层保护。

事实并非如此。在大多数高审核量的生产系统中,增加审批层级反而会降低 AI 的准确性,让审核员产生一种毫无实际作用的监管错觉,而且最糟糕的是,它会毒化 AI 训练所依赖的反馈信号。最终,你承担了人工审核的全部运营成本,却几乎没有获得任何安全性收益。

非阻塞 AI:让应用在智能体工作时保持响应的异步 UX 模式

· 阅读需 12 分钟
Tian Pan
Software Engineer

大多数团队都以相同的方式发现了同步 UI 的问题:用户点击"生成报告",然后浏览器标签页陷入沉默长达四十秒。没有加载动画,没有进度提示,只有一个冻结的按钮。一半用户刷新页面并重复提交。另一半用户认为产品出了故障,直接关掉标签页。

根本问题不在于智能体的延迟——而在于 LLM 驱动的智能体所处的时间尺度,打破了同步请求-响应 UX 所有内置的假设。单次 GPT-4o 调用平均需要 8–15 秒。一个搜索网页、读取三份文档、写初稿再格式化输出的多步智能体,可能需要两到四分钟。你无法通过优化智能体来让这感觉变快,必须重新设计后端与 UI 之间的契约。

过拟合的组织:当你的 AI 团队模型专业知识成为负担时

· 阅读需 11 分钟
Tian Pan
Software Engineer

你最优秀的 AI 工程师能凭记忆背诵 Claude 的 XML 格式偏好。他们知道 Claude Opus 拒绝泛化隐式指令,知道少样本示例(few-shot examples)实际上会损害 o1 系列模型的性能,还知道在某些地区,Azure OpenAI 相比直接 API 会增加额外的 8 到 12 秒延迟。这种专业知识花了数月时间积累。它也代表了当今 AI 工程中最被低估的风险之一。

当供应商弃用某个模型或悄然改变行为时,这些知识并不会随之迁移。它会消失。那些围绕单一模型系列构建系统以及组织能力的团队,往往会以惨痛的方式发现这一点。

个性化画像衰减:当 AI 对用户的认知不再是真实的用户

· 阅读需 11 分钟
Tian Pan
Software Engineer

你的 AI 个性化系统已经学会了用户是谁。它建立了用户画像,调优了向量表示,并给出了令人惊叹的精准推荐。然后,它悄悄地开始欺骗你——不是用错误,而是用过时的"真相"。上个季度痴迷于 Kubernetes 的用户加入了一家初创公司,现在需要了解销售漏斗。买了两年婴儿用品的客户刚刚把最小的孩子送去了幼儿园。你的模型仍然以为自己认识他们,但它并不了解。这就是个性化画像衰减,这是团队只有在用户抱怨 AI"不再懂我"时才会发现的静默失败模式。

提示工程的职业陷阱:哪些 AI 技能会复利增长,哪些会逐渐退化

· 阅读需 11 分钟
Tian Pan
Software Engineer

在 2023 年,“提示词工程师”(prompt engineer)是科技领域搜索频率最高的职位名称之一。LinkedIn 上到处都是重新包装个人简介的工程师。招聘信息许诺给那些懂得如何诱导 GPT-4 表现的人六位数的薪水。但职位描述中没有提到的是,其中列出的许多技能已经处于“借来的时间”中——到 2026 年,那些能够分辨出持久技能与衰减技能区别的工程师,最终的境遇将大不相同。

提示词工程的职业陷阱并不在于这个领域消失了,而在于它变化太快,以至于在 12 个月内建立的技能到第 18 个月就变成了负资产。那些在错误的层面过度投入而忽视了正确层面的工程师发现,随着下一个模型版本的发布,他们所掌握的专业知识变得毫无意义。

Prompt 变异测试:找出哪些系统提示词指令真正起作用

· 阅读需 12 分钟
Tian Pan
Software Engineer

有一种特定的工程债(Engineering debt)永远不会出现在你的指标中。每当有人在系统提示词(System prompt)中添加一个句子来修复一个偶发的投诉——比如 “绝不讨论竞争对手的产品” 或 “始终以正式的口吻回复” ——而随后又没有人验证模型是否真的执行了它,这种债务就会累积。几个月后,提示词增加到 800 个 Token。它听起来很有权威感,包含的内容包罗万象。但也许其中三分之一根本没起作用。

提示词变异测试(Prompt mutation testing)就是找出那三分之一无效指令的实践。该技术借鉴了软件工程中经典的变异测试:系统地在代码中引入微小、刻意的错误,以确定你的测试套件是否真的能捕获它们。在这里,你向系统提示词中引入刻意的扰动——删除一个分句、抵触一条规则、用近义词替换关键关键词——并衡量模型的输出实际发生了多大变化。那些在扰动下幸存且不影响行为的指令是装饰性的。而那些一旦被触碰就会导致出错的指令则是承重的(Load-bearing)。

当 RAG 让你的 AI 变差:创造力与事实锚定的权衡

· 阅读需 10 分钟
Tian Pan
Software Engineer

某家产品公司的团队为市场部门构建了一款头脑风暴助手。他们在文档语料库——营销简报、品牌指南、竞品分析——上添加了 RAG,认为更丰富的上下文会产出更好的创意。三周后,使用率下降了。定性反馈如下:输出"太安全"、"太可预测"、"感觉只是在重混我们现有的东西"。他们从头脑风暴功能中移除了检索。创意改善了,参与度也恢复了。

这种模式在实践中出现的频率远比人们承认的要高。检索增强生成已成为将 LLM 输出锚定到事实的默认架构,对于事实性任务,它当之无愧。但对于生成类任务——创意构思、创意写作、新颖方案生成——添加检索层可能会悄然压低模型产出的上限。这不是因为检索坏了,而恰恰是因为它按照设计在正常运转。

重排序才是核心:为什么检索系统的瓶颈从来不在索引

· 阅读需 12 分钟
Tian Pan
Software Engineer

构建 RAG 系统的团队几乎普遍都会遇到同样的瓶颈:他们花一周时间调整 HNSW 索引参数,添加乘积量化(product quantization),将 recall@100 从 0.81 提高到 0.87 —— 然后发现 LLM 的输出质量几乎没有任何改观。投入数月努力所基于的假设是:更好的索引等于更好的回答。事实并非如此。瓶颈从来不在索引上。

真正的卡点在于候选集与上下文窗口(context window)之间的重排序(ranking)步骤。你喂给 LLM 的内容决定了它的输出,而重排序的工作就是确保那些真正相关的文档,而不仅仅是语义上最相似的文档,能够进入上下文。这种区别比你调整的任何 HNSW 配置都更重要。

系统提示词是软件接口,而非配置字符串

· 阅读需 10 分钟
Tian Pan
Software Engineer

大多数团队对待系统提示词的方式,就像早期 Web 开发者对待 CSS:粘贴一段能跑的代码,小心翼翼地修改以免破坏什么,提交到配置文件,然后祈祷没人动它。接着某位新成员"顺手整理"了一下,模型升级后行为悄然改变,三周后用户提了一个 bug,而没人能复现——因为没人知道上周二那个提示词究竟写的是什么。

这不是工作流问题,而是概念分类的错误。系统提示词不是配置,而是软件接口。只要工程团队还没有如此对待它们,他们构建的 LLM 功能就将持续脆弱、难以调试、无从扩展。

思考预算:扩展推理模型何时真正具备经济意义

· 阅读需 11 分钟
Tian Pan
Software Engineer

令人惊讶的是,许多 AI 团队一旦获得 o3 级别或 Claude 扩展思考模型的访问权限,就会默认对所有查询启用扩展思考。这背后的逻辑看似显而易见:更智能的推理等于更好的输出,何不始终开启?问题在于,这种逻辑没有考虑到测试时计算扩展在实践中如何运作的基本事实。扩展思考能显著提升特定类型任务的性能,在另一些任务上则会降低质量,并可能将全局推理成本推高 5-30 倍。那些从这些模型中获取最大价值的团队,将推理预算作为一个明确的决策来对待——其重要性不亚于模型选择或提示词工程。

本文阐述了任务分类体系、成本结构,以及将战略性使用思考预算的团队与仅仅为质量幻觉溢价买单的团队区分开来的路由决策框架。

AI 驱动的 API 产品 Token 经济学:如何为不可预测的成本定价

· 阅读需 12 分钟
Tian Pan
Software Engineer

一个团队发布了一款面向用户的 AI 助手。他们将其定价为每席位每月 49 美元,根据一份假设“每次查询平均 500 个 token”的电子表格,目标毛利率为 70%。三个月后,财务部门指出,他们的重度用户在每个会话中消耗了 15,000 个 token。定价模型之所以崩溃,并不是因为功能失败,而是因为产品团队为他们尚不了解的东西定了价。

这并非预测失败。这是一个结构性问题:大模型驱动产品的成本基准与传统 SaaS 定价所设计的处理方式根本不同。每一次 API 调用都有不可预测且实质性的 token 成本。输入因用户、任务和时间段而异。输出以各种方式复合增长,而这些影响直到几周后才会出现在你的云账单上。一旦你引入了智能体模式 (Agentic patterns) —— 工具调用、多轮推理、子智能体编排 —— 单次用户交互的成本可能是 0.02 美元,也可能是 20 美元,这完全取决于模型的决定。

工具输出 Schema 设计:你的工具响应如何塑造智能体推理

· 阅读需 9 分钟
Tian Pan
Software Engineer

大多数团队在设计 LLM 智能体时,会花大量精力在工具选择和系统提示措辞上。而几乎没有人认真思考工具返回什么内容。这是一个后果不断叠加的错误——因为工具响应的结构决定了智能体能否有效推理、消耗多少上下文窗口,以及产生幻觉解读的频率。

工具输出 schema 设计是基础设施,而非管道细节。设计失误,你的智能体将以表面上像推理问题的方式失败,而根源其实是 schema 问题。