为什么对话记录会失效
一个协同科学家智能体,如果它能阅读论文、查询数据库并起草假设,人们往往通过其最终答案听起来多有说服力来评估它。但那是错误的产物。聊天记录把三种不同类型的陈述混在一起,不加区分:检索(来源说了什么)、推断(智能体得出了什么结论)和猜测(智能体猜了什么)。当审阅者后来问“哪篇论文支持了化合物 X 抑制通路 Y 这一主张?”时,对话记录只能给出一段流畅的文字,没有任何可追溯的链接。
科学中的可复现性取决于知道哪个来源支持了哪条陈述。对话记录无法提供这一点,因为它是按时间排序的,而不是按认识论地位排序的。相隔几秒产生的两句话,可能建立在完全不同的证据基础上,而文本中没有任何东西标记这一边界。这个问题会跨会话累积:后面的一轮可能悄悄把早先的猜测当作既定事实来复用,这种失败模式在散文中不可见,但在结构化记录中却显而易见。
这不是风格上的抱怨,而是架构上的问题。如果智能体的输出要由专家来核查,那么输出的形态就必须让核查成为可能。
主张账本
替代方案是把智能体视为主张的生产者,而不是消息的生产者。每条断言都存储为一条记录,至少包含:
- 一个稳定的标识符;
- 主张文本,经过足够规范化以便与其他主张比较;
- 支持或反驳该主张的证据链接(DOI、URL、数据库行、数据集版本);
- 一个置信度值,并说明其依据,而不是一个光秃秃的数字;
- 产生该主张的工具调用,包括参数和原始响应的摘要;
- 发出该主张的智能体或子智能体,以及它所派生自的父主张;
- 审阅状态(未审阅、已接受、已拒绝、需要更多证据),并附审阅者的备注。
一个最小化的 schema 可能如下所示:

{
"claim_id": "c-7f3a",
"text": "Compound X inhibits pathway Y in cell line Z",
"evidence": [
{"type": "doi", "value": "10.0000/example", "stance": "supports"},
{"type": "database_row", "value": "uniprot:P12345", "stance": "supports"}
],
"confidence": {"value": 0.62, "basis": "single in-vitro study, no replication"},
"provenance": {"tool": "literature_search", "args": {"query": "X Y Z"}, "response_hash": "sha256:..."},
"derived_from": ["c-1a2b"],
"review": {"state": "unreviewed", "note": null}
}
重要的不是具体字段,而是关注点的分离。证据附着于主张,而不是附着于恰好包含它的那条消息。置信度有一个人类可以与之争辩的依据。溯源记录在工具调用这一层级,因此一条主张可以被重新推导,或者被证明不可复现。
账本也改变了矛盾的处理方式。在聊天记录中,两个相互冲突的发现往往被糅合成一段含糊其辞的文字,或者其中一个因为来得较晚而被丢弃。在账本中,两条主张都保留下来。矛盾是一等对象:两条文本重叠、立场相反的主张记录。系统可以浮现这一冲突,标记出共享的证据,并将其转交审阅,而不是把它平均掉。平均是一种决策,应当由能看到双方的人来做出。
人工审阅附着于具体的主张。审阅者可以接受 c-7f3a 而拒绝 c-9d1e,账本会记录谁基于什么依据决定了什么。审阅整个会话是不可行的;审阅一个由原子主张组成的队列则是可行的。这个队列可以按置信度、按矛盾状态,或按有多少下游主张依赖于某条记录来排序。
实践中的机制
这一模式在多智能体设置中最容易看清。一个检索智能体搜索文献,并输出带证据的候选主张。一个抽取智能体将它们规范化为账本 schema。一个批评者智能体寻找矛盾,以及那些置信度超出其证据的主张。一个综合智能体只能引用账本中已经存在的主张标识符;它不得在散文中引入新的断言。
最后这条约束是承重的那一条。如果综合层可以写自由文本,它最终就会写出一个没有任何主张记录支持的句子,整个结构就会退回到一个多了几步的对话记录。在生成时强制按标识符引用,正是让记录保持可核查的关键。
这里确实有代价。结构化输出比自由对话更慢,也更耗 token,并且会限制智能体的流畅度。有些确实有用的上下文并不适合主张 schema,强行塞进去只会产生噪声。诚实的权衡是:账本在探索方面不如对话记录,在验证方面则优于对话记录。实际的解决办法是,让探索在草稿空间中进行,只要求那些最终进入记录的主张是结构化的。草稿空间被丢弃;账本不会。
第二个权衡涉及粒度。

领域适配
这一模式并不专属于科学。它可以推广到任何高风险领域,只要智能体的输出后来要由专家核查:临床决策支持、法律研究、金融合规、安全分析。在每一种情况下,审阅者都需要知道智能体断言了什么、依据是什么、有多确信,而在每一种情况下,聊天记录恰恰遮蔽了这些东西。
共同的要求是:智能体的输出是某项带有后果的人类判断的输入。当输出仅仅是一份草稿或一个供进一步思考的提示时,对话记录就够了。当输出是一份有人要为之负责的记录时,它就需要结构化、有来源,并且能在单条主张的层级上被审阅。
先构建什么
最小可行版本是一张主张表、一张证据表和一台审阅状态机。一开始不需要图数据库;一个带外键的关系型 schema 就够了。更难的工作在上游:约束智能体输出主张而非散文,以及构建那个能检测出某条主张的置信度并未得到其证据支持的批评者。
一个有用的早期测试是:拿一个已完成的会话,仅凭记录来回答,最终答案中的每一句话分别由哪个来源支持。如果答案是一份对话记录,测试就失败了。如果答案是一个账本,那么这个问题就是一次查询。
结论
协同科学家智能体的评判标准,是它的输出能否被核查。聊天记录无法在真正重要的层级上被核查,因为它不区分检索、推断和猜测,也因为它把证据附着于消息而非主张。主张账本恢复了这一区分,让矛盾变得可见而不是被平均掉,并让人工审阅附着于那些真正需要它的具体断言。代价是流畅度和速度。对于任何专家后来要为结果负责的领域,这都是正确的权衡。
封面照片:panumas nikhomkhai / Pexels。
