你那个智能体的答案早就被商业影响过了。一条披露横幅不是那道管控。
多数把智能体跑在生产环境里的团队都相信自己没有广告问题,而他们多数是错的——被检索页面里的一条联盟链接、一个「要花钱才进得去」的连接器目录、一份背后挂着返利的供应商名单,以及一个带着品牌先验的模型,全都是商业影响,只不过走的是没人登记过的通道。它之所以一直隐形,是因为那些义务是写给人类读者的,而现在的消费者是模型。真正管用的那道管控,是每一份工具结果上的一个溯源字段,外加一份写下来的排序输入清单;不管用的那道,是页脚里的一句话。
把通道枚举出来。你手上的比你以为的多。
从盘点开始,因为这里的治理失效几乎从来不是一个决定——而是压根没人被问过。顺着流水线往下走,把每一个「有财务利益的一方能影响智能体说什么」的点都点名。
- 检索。开放网络里塞满了联盟营销内容,而一篇排名靠前的对比文章,往往就是某个在胜出者身上抽成的人为了排名靠前而写的。你的智能体把它当证据读。你们组织里没有任何人选择过这条通道;它是默认值。
- 工具与连接器目录。如果你智能体可用的那些集成来自一个市场,那么这个市场里的位次,总在某处带着商业维度。接口面见智能体连接器平台与工具目录生命周期。
- 你自己的商业安排。一份优选供应商名单、一笔返利、一层分销毛利、一个合作伙伴等级。这些都是正当生意;而一旦智能体的推荐被它们塑形、却没有留下记录,它们就成了一件智能体治理的事。
- 赞助式对话界面。由广告主运营的智能体如今已是一个正在出货的产品类别。任何从那里跨进你智能体上下文的东西都是付费内容,而且是以普通文本的样子抵达的。
- 模型本身。模型带着预训练留下的品牌先验,而没有人——包括厂商——能把它们完整枚举出来。这是你关不掉的那条通道;正因如此,有用的应对是测量,而不是政策。
- 路由。如果你按成本在多家提供方之间路由,那就是一次对质量的商业影响。它不是广告,但属于同一个语域,理由也相同:一个用户看不见的目标。
「你找到了一条真通道」的判据,不是有没有钱易手。而是:读到这个答案的用户,会不会对「证据是怎么被挑出来的」感到意外。把这份清单写成一个逐行有 owner 的登记册——形状与智能体清册相同,通常也就放在它旁边维护。
那道管控是工具结果上的一个溯源字段,不是页面上的一条横幅。
UI 里的披露只有一个消费者:在渲染那一刻盯着屏幕的人。而智能体系统里其余的一切——摘要器、记忆写入方、链条上的下一个智能体、导出、trace——看到的只有文本。所以那个记号必须待在这些系统读得到的地方。
- 在摄入时盖章,而不是在渲染时。每一份工具结果都带一个小小的溯源对象:来源、该来源是否为商业方、如有对价则对价性质如何,以及分类时间。等生产流量跑了一年之后再往消息格式里加这个,属于那种永远不会真正发生的迁移;第一天就加,成本是一个属性。
- 把这个标记放进模型的上下文里,用话说出来。模型看不见的字段改变不了行为。在工具结果里写上「以下结果来自一家与我们存在商业关系的供应商」,才是那件让「弃答」或「均衡呈现」成为可能的仪器。
- 让它穿过摘要环节。常见的失误不是相信了某个商业来源,而是把六个来源压成一段话、途中丢掉了哪句话出自哪一家。那属于归属纪律,而商业来源正是它兑现价值的地方。
- 让它挺过边界。如果你的智能体把结果发给另一个智能体,那份溯源要么跟着走,要么就丢了。除非是你自己实现的,否则就默认它丢了——因为今天没有哪个被广泛部署的智能体协议带着「对价」这个字段。
// A tool result carrying its own commercial provenance.
{ "content": "…",
"provenance": { "source": "supplier-catalog:acme",
"commercial": true,
"basis": "preferred_supplier_agreement",
"classified_at": "2026-09-19" } }
// The uncomfortable default most systems emit today.
{ "content": "…" }
排序才是那个受规制的行为。趁还没人来问,先把它的输入写下来。
当一个智能体把三个选项按某个顺序端出来时,那个顺序就是一条推荐;而有意思的物证不是那个答案——是产出这个顺序的那个函数。多数团队描述不出自家的那个,因为它散落在检索器、重排器和提示词里。
- 把排序的每一项输入都点名。相关性分数、新鲜度、毛利、合同状态、库存、一份手工维护的加权名单,以及提示词里那句「优先某某」。只要系统提示词里有一行在推着顺序走,它就是一项排序输入,就该进那份文档。
- 在结构上把相关性与商业分开。一个揉在一起的综合分是不可审计的,因为没有反事实可供对照。先算相关性,再把商业调整作为一个具名、有日志的步骤施加上去——机制见混合检索与重排。
- 给它打版本,并把版本与答案绑定。「3 月 4 日那条推荐是哪一份排序配置产出的」应当是一次查询,而不是一场考古。
- 明确定下智能体不得做什么。多数组织被直接问到时都会说:智能体绝不得为了偏袒合作伙伴而贬低竞品,也绝不得为一个被商业影响过的排序主张「独立依据」。这两条都是可测试的。而两条都不会默认被执行。
这就是委托—代理问题的运维面孔:冲突是在排序函数内部被裁决的,所以必须变得可读的,正是那个排序函数。
那些义务是真的,而它们每一条都假定读者是人。
这不是法律意见,各法域也不相同。但它的形状足够一致,可以照着规划;而那个缺口同样一致。
- 背书与原生广告规则。在美国,FTC 的《背书指南》(16 CFR Part 255)及其关于原生广告的指引,关键在于广告主与背书者之间的实质关联是否被清晰、显著地披露,以及属于广告的内容是否能被辨认出来。一个在不披露关系的情况下推荐合作伙伴产品的智能体,正落在这个框里——无论提示词是谁写的。
- 平台广告透明度。在欧盟《数字服务法》下,在线平台必须让用户清楚且实时地辨认出广告,包括是谁付的钱与主要定向参数;超大型平台还须另行维护一个公开的广告存档。这些仪器瞄准的是人或研究者。
- 那个缺口。上述每一件仪器,都是渲染面上的一个可见记号。而一旦读者变成摘要器、记忆库,或者另一个智能体,可见记号就不是一道弱的管控——而是一道不存在的管控。合规与管控在这里分了岔;你完全可能满足了前者,却一点后者都没有。
两半都要规划。法务需要的那份披露是一项渲染要求。你系统需要的那份披露是一项数据要求,也就是 STEP 2 里那个。只做第一项是常见状态,而它是一条潜在的审计发现——见披露与内容溯源。
把它当作一项测量来审计,因为光靠政策看不见模型的先验。
STEP 1 里有两条通道——检索,以及模型自己的先验——没法靠规则治理,因为没人枚举得出来。它们只能被测量。三个检验,都便宜,都能定期跑。
- 反事实运行。取一批真实查询,每一条跑两遍:一遍用完整来源集,一遍把有商业关联的来源摘掉。对比推荐结果。一个稳定偏向某一侧的差值,就是你被测出来(而不是被断言出来)的影响率。这是一次实验,它属于流水线,不属于年报。
- 头位占比。有商业关联的选项排在第一位的频率是多少?拿它和该选项在候选集中的占比作对照。那个无法用质量解释的差额,就是该拿去复盘的那个数。
- 品牌先验探针。不给检索、不给目录,直接让裸模型在你这个品类里做推荐。它说出来的任何名字,都是你产品继承下来的一份先验;与其等客户替你发现,不如自己先知道。
报数之前先分层。一个总体影响率,会把「商业选项确实最好」的品类与「并非如此」的品类平均掉;而产生投诉的是后一批——这与生产反馈信号警告不要只看一个头条数字,是同一个理由。
把记录留住,并给用户一个能推回来的地方。
问题总在答案发生很久之后才到——来自客户、竞争对手、记者或监管者——而且总是同一个问题:它为什么推荐了那个?四件物证能回答它,而这四件事后都重建不出来。
- 当时生效的排序配置版本,与那个答案绑在一起。这属于寻常的审计轨迹,只是多加一个字段。
- 候选集,以及每个候选的溯源——包括那些被考虑过、却没有被展示的选项。被略去的那一半才是有意思的部分。
- STEP 1 那份商业登记册,带版本,好让「3 月份与这家供应商有没有关系」有一个不是邮件线索的答案。
- 一个具名的 owner。要有人对那份登记册与审计结果负责,归属在问责与角色之下。一份没有 owner 的商业影响登记册,退化得比它所描述的那个智能体还快。
然后给用户一条路。一个认为某条推荐是被买来的人,应当能问、并且得到一个具体的答复——这就是把可申诉性用在一种软性损害上。一个能用一次查询回答这个问题的项目,就是一个已经把上面这些统统做完了的项目。