ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

Scientific Agent Skills:如何把通用Agent改造成真正的AI科学家

2026/9/7 9:49:35 拓冰建站 浏览量
Scientific Agent Skills:如何把通用Agent改造成真正的AI科学家 两三年前我帮一个课题组处理测序数据时特别感慨一件事科研人员真正花在科学思考上的时间可能只占了整个工作流程的三分之一。剩下三分之二全在查文献、写脚本、调格式、想审稿人会问什么。那时候我就在琢磨能不能把这套流程本身变成可调用的工具让 AI 智能体在科研场景里真正干点实事。后来接触到 Scientific Agent Skills 这个概念发现它解决的正是这个痛点——不是让大模型替代你思考科学问题而是把科研流程里所有可标准化的操作拆成一套可插拔、可执行、可校验的技能插件让任意 AI 智能体接上之后就具备接近一名科研工作者的操作能力。这篇文章我想从实操角度讲清楚三件事Scientific Agent Skills 到底是什么它和普通 Agent 功能有什么区别以及如果你想把自己的 AI 智能体改造成一个能读文献、能提假设、能设计实验、能分析数据、能写论文的Ai 科学家具体该怎么落地、该避开哪些坑。内容适合正在做 Agent 开发的工程师、科研团队里的数据分析人员也适合想给 AI 产品增加研究能力的产品经理。下面分享的内容一部分来自我实际项目的改造经验一部分是通用 Agent 实践中总结出来的合理方案供你参考和批判。1. 科研工作流里最消耗人的环节恰好是 Agent 最容易接管的那部分先从一个具体场景说起。假设你是一个生物信息方向的研究生早晨打开电脑第一件事是刷 PubMed 看有没有新文献然后对着 RNA-seq 数据写差异表达脚本下午把结果整理成火山图、热图晚上开始写 Methods 和 Results还得提前想好审稿人会怎么挑毛病。这套流程里真正称得上科学创造的环节是提出假设、解读结果、判断结论是否可靠而查资料、写代码、调格式、组织语言这些事本质上是高度模式化的操作。AI 智能体现在能干的恰恰是后一类工作。但为什么大多数人用 ChatGPT 做科研辅助时总觉得差点意思因为通用对话式 Agent 的设计目标是回答问题不是完成任务。你问它帮我看看这两组数据有没有差异它可以直接给你一个结论却不会主动告诉你它做了哪些假设检验、数据是否满足检验前提、有没有更合适的替代方法。科研工作恰恰最忌讳这种不给过程、不给依据的结论。Scientific Agent Skills 的思路就是把科学研究的完整动作拆成一个个带有输入输出规范、工具绑定和校验规则的技能。每个技能都是一个闭环有明确的目标有可调用的工具有执行完之后的检查逻辑。比如统计推断这个技能它要求 Agent 先做数据体检再选检验方法再验证前提条件再输出带置信区间和效应量的结论。这样一来Agent 的输出就从一句话断言升级成了一条可追溯的证据链。1.1 同样的任务有技能和没技能的差别有多大我拿一个最常见的任务来对比让两个智能体分别分析一份包含 200 个样本、2 个分组和 30 个基因表达值的数据集回答两组之间有没有显著差异。没有技能层的智能体典型的输出是两组数据有明显差异基因 X 的 p 值为 0.002说明该基因在两组间表达显著不同。 看起来没问题但它没有告诉你它有没有检查数据是否符合正态分布用的是参数检验还是非参数检验多重检验校正做了没有0.002 这个 p 值经过校正之后还显著吗接上技能层的智能体执行路径则是调用数据描述工具报告样本量、缺失值比例、分组平衡性调用正态性检验工具判断哪些基因适用 t 检验哪些适用 Wilcoxon 检验调用统计检验工具批量计算 p 值和效应量比如 Cohens d调用多重检验校正工具输出 FDR 校正后的 q 值最后生成结构化结论哪些基因在原始 p 值和校正后 q 值下都显著哪些只是名义上显著。同一个问题两种输出的可信度完全不在一个量级。前者是模型在凭印象作答后者是模型在按科研规范执行。这也是我认为 Scientific Agent Skills 最有价值的地方它把模型的能力从内容生成拉高到了流程执行而科研工作最需要的就是可靠且可复现的流程。2. 技能层不是大模型而是夹在模型和科研任务之间的能力插件集很多第一次接触 Scientific Agent Skills 的人会问这是不是又训练了一个新的科学大模型不是。它更准确的定位是一层中间件。底层仍然是你熟悉的通用 LLM负责语言理解、推理和生成技能层负责把科研操作变成结构化、可调用、可校验的模块。模型的推理能力是底座技能层是让底座在专业场景里发挥价值的手和脚。为什么不能直接靠模型自身记住科研规范因为模型的训练目标决定了它会有问必答而不是按流程办事。你让它分析数据它倾向于直接给结论你让它写方法它倾向于写得顺畅而不是写得严谨。技能层的存在就是用工程手段去约束模型的这种倾向该做的检查一步不能省该透明的依据必须透明该调用的工具必须调用。2.1 一个科研技能的本质结构提示模板 工具绑定 校验规则把一个科研操作封装成技能核心是三件套。提示模板Prompt Template定义这个技能的目标、输入、输出格式和执行约束。比如假设生成技能的提示模板会要求模型产出可证伪的假设陈述 支持证据 反驳路径 可测变量而不是随意写两句话。工具绑定Tool Binding定义技能执行时需要调用哪些外部工具。比如文献证据技能绑定学术检索 API统计技能绑定 Python 环境可视化技能绑定绘图库。校验规则Validation Rules定义技能执行完成后必须通过的检查项。这些规则是硬性的不通过就触发 Agent 自我修正流程。我见过一个很形象的类比把模型想象成一个刚毕业、聪明但没什么纪律的研究生技能层就是实验室里那本SOP 手册。没有手册他做什么都凭感觉有了手册他知道进实验室必须穿白大褂、称量要记录、离心要配平、结果要重复三次。科研 Agent 的技能层干的就是这件事。2.2 和 RAG、Function Calling 是什么关系这里有必要厘清三个概念避免混淆。RAG检索增强生成解决的是模型知识过期和幻觉的问题本质是给模型挂一个外接记忆库。技能层解决的是模型不按流程执行的问题本质是给模型挂一套操作规程。两者可以组合使用文献综述技能内部就经常用到 RAG先检索再组织证据。Function Calling 是模型调用外部函数的能力接口它是技能层的传输层。技能层的每一个技能底层都表现为一个或多个函数调用但技能层比单纯的函数调用多了一层东西——提示模板和校验规则。Function Calling 告诉你模型可以调用函数技能层告诉你这个场景下模型应该按什么顺序调用哪些函数、调用完怎么检查结果。所以你可以这样理解RAG 是给模型提供弹药Function Calling 是给模型提供双手Scientific Agent Skills 是给双手配上标准操作规程。三者叠加才是完整的科研 Agent 底座。2.3 为什么说它能把任意 Agent 变成 AI 科学家因为它的设计目标就是无关底层模型、无关具体 Agent 框架。无论你是基于什么框架搭建的智能体只要实现了技能注册、技能路由、技能校验这套外壳就可以把科研技能包挂载上去。底层是 GPT、Claude 还是开源模型不影响技能层的整体设计。也就是说你可以先有一个成熟的通用 Agent 做日常事务再挂一套科研技能包它就在科研这个垂直场景里上岗了。我自己的改造经验是这套迁移成本没有想象中那么高。通用 Agent 的对话管理、工具调用、记忆机制都可以复用真正要额外做的工作主要是两件事一是写好每个科研技能的定义和校验规则二是准备一个科研项目级的上下文管理机制后面第 4 部分详细说。3. 六大核心科研技能模块拆解从假设生成到论文成稿为了让讨论更具体我把一套比较完整的科研技能包拆成六个模块逐个讲清楚它们的内部逻辑、输入输出和最容易出问题的细节。这六个模块基本覆盖了一个科研课题从构思到成稿的主要环节。3.1 假设生成模块从观察和线索里产出可证伪的假说假设是所有科学研究的起点但这个环节恰恰是模型最容易放飞自我的地方。给模型几个观察结果它很容易生成一堆听起来合理但无法检验的宏大陈述比如该基因可能参与了免疫调控的重要通路——这句话放在论文里没有任何问题但作为假设它没有给出可测量的变量和可证伪的路径。合格的假设生成技能需要在提示模板里强制要求四个部分假设陈述Hypothesis Statement本身要具体到变量关系例如基因 X 的表达水平与 T 细胞浸润评分呈正相关。可测变量Measurable Variables必须明确哪个指标用来代表基因表达哪个指标用来代表免疫浸润。支持证据Supporting Evidence要求模型列出数据摘要或文献线索里的具体依据。反驳路径Falsification Path要求模型写出如果出现什么结果这条假设就不成立。我实际用下来发现加不加反驳路径这一条产出的质量差别特别大。加了这个约束模型会主动考虑混淆变量和替代解释假设的准确性明显提升。这背后的道理也很简单科研假设的质量不在于它听起来多高级而在于它有没有给出可以被数据和实验推翻的具体机制。3.2 文献证据链构建模块把单点引用升级成证据网络做科研综述或论文引言时最常见的痛苦是文献太多、太散凭感觉挑几篇引用容易漏掉关键的反方证据。文献证据链构建技能的作用就是让 Agent 不只给出有哪些相关论文还要输出这些论文之间的关系结构。具体执行时这个技能一般分三步检索召回调用学术数据库 API用关键词和引文关系召回候选论文证据抽取对每篇论文抽取研究对象、方法、核心结论、局限性证据综合按支持假设 / 反对假设 / 提供背景分类生成一个证据表标出结论一致和冲突的地方。这份证据表的价值在写作时完全体现得出来。写引言时你能清晰交代现有研究已经确认了 A 和 B但对 C 仍存在争议写讨论时你能如实对比自己的结果与前人结论的一致性和差异。没有证据链这些内容全靠模型编翻车率极高。3.3 实验协议设计模块把科研目标翻译成可执行的步骤实验协议设计是科研 Agent 最考验domain knowledge的地方也是纯对话模型表现最差的地方之一。让模型直接写一份RNA-seq 实验方案它写出来的东西可能看着专业但细看往往缺关键信息样本重复数是多少、建库试剂盒是什么、测序深度多少、QC 阈值设多少。一个合格的实验协议设计技能需要用校验规则把方案的基本盘锁死。我在实践中发现至少要有这几项样本量与分组是否明确每组至少 3 个生物学重复根据领域规范调整每个步骤是否标注了关键参数和可接受范围是否包含质量控制步骤和失败判据是否列出所需耗材、试剂和仪器。还可以在技能里预设一份协议模板清单让模型按模板填空而不是自由发挥。这种方式的效果立竿见影模型自由发挥时容易遗漏细节但当你给它一个带槽位的模板它可以基于已有的领域知识把细节补得相当完整。这背后是一个朴素的工程经验把开放式问题改造成封闭式问题模型的成功率会大幅提升。3.4 数据清洗与统计推断模块Agent 最该扎实、也最容易糊弄的技能科研数据分析和通用数据分析最大的不同在于科研结论要求每一步都可辩护。你用 t 检验还是 Wilcoxon 检验、用 Pearson 还是 Spearman、p 值校正方法选 BH 还是 Bonferroni都必须有依据。所以这个技能内部要挂两套工具一套是数据处理工具pandas、numpy一套是统计推断工具scipy.stats、statsmodels还要配一个方法选择器。方法选择器的逻辑是一个基于数据特点的决策流程先判断数据类型连续 / 分类 / 生存、再判断分布正态性检验、再判断方差齐性、再决定参数还是非参数检验。每一步都要在输出里留下痕迹也就是要把为什么选了这个检验写清楚。这么做的原因很实际审稿人和导师问的第一个问题几乎永远是为什么用这个方法而不是结果是什么。我在实战中还发现一个高频问题模型处理完数据后常常忘记做多重检验校正。尤其是在做几十个基因、几百个特征的差异分析时不校正 p 值的结论基本不能直接用。所以在统计技能的校验规则里我会强制要求当检验次数超过 20 次时必须输出校正后的 q 值并说明采用的校正方法。这个规则用一次就值回票价。3.5 科学可视化与结果解读模块图要规范解读要克制可视化模块的任务有两层画图和解读。画图层面技能要绑定绘图工具并输出符合期刊规范的图包括轴标签、单位、图例、显著性标注解读层面技能的约束是克制两个字——只描述图中客观可见的数据特征不要过度发挥。模型最常见的两个问题一是生成图片时中文标注乱码、字体缺失、坐标轴信息不全二是解读图表时把趋势说成结论比如图上明明只是两个样本点的差异模型直接写该处理显著上调了基因表达。克制性的解读要求模型区分数据描述和统计推断图中看到的只能描述统计推断必须回到上一节统计模块的输出。这个边界在提示模板里写清楚模型产出会专业很多。3.6 科研写作与审稿应答模块把产出固化成学术语言最后一个模块是写作它和前几个技能是咬合关系。摘要、引言、方法、结果、讨论每个部分调用的证据来源不同写作约束也不同。引言调用文献证据链模块按背景→空白→问题结构组织引用必须对应证据表。方法调用实验协议模块把执行过的方案改写成第三人称方法学描述。结果调用统计输出和可视化模块采用先陈述客观发现再补充统计值的写法。讨论调用假设生成模块和文献证据链说明结果支持了什么、和谁一致、有什么局限。审稿应答需要额外的逐点回应技能把审稿意见拆成可验证的问题每个问题对应修改说明或反驳理由。写作技能的提示模板里还应该包含领域词汇表。比如生物医学领域模型默认的写作风格往往偏科普不够学术喂一份领域术语对照表后质量提升非常明显。这个小技巧成本极低收益却很高我建议每个做科研 Agent 的人都配一份。4. 实操把一个通用 LLM Agent 改装成科研智能体的五个步骤下面这部分是完整的实操链路。我尽量写得可以直接照做而不是停留在概念层面。为方便说明示例代码用 Python 风格伪代码呈现实际接入时你按自己用的 Agent 框架做适配即可。4.1 第一步定义科研工作台角色和边界首先给你的智能体定义一个明确的系统提示词。它不应该只是一个含糊的你是一个科研助手而应该是一份工作台边界说明说明它可以调用哪些科研技能、哪些任务必须走技能流程、哪些请求应该拒绝。系统提示词里我会强制包含这几条你是科研工作台负责处理文献分析、假设设计、实验方案、数据分析、科学写作等任务。所有统计结论必须基于已执行的数据分析工具输出不允许直接凭空给出统计值。所有文献引用必须来自检索工具的返回结果严禁伪造文献和 DOI。涉及实验方案时必须输出完整的参数和质量控制要求不能只给概述。当用户请求不明确时先输出澄清问题不要急于给出答案。把边界写清楚的意义在于它可以大幅降低模型滥用技能的概率。模型是概率生成系统你不约束它就会往最顺滑的回应方向走而最顺滑的回应往往就是编一个漂亮的答案。4.2 第二步注册技能函数建立技能注册表技能注册表是技能层的核心数据结构。每个技能条目包含名称、描述、输入输出 Schema、校验规则和绑定的工具列表。下面是一个简化的示例# skills_registry.py SKILLS_REGISTRY { hypothesis_generation: { description: 基于观察数据和文献线索生成可证伪的科学假设, input_schema: { observations: list[str], literature_hints: list[str], domain: str }, output_schema: { hypothesis: str, measurable_variables: list[str], falsification_path: str }, validation_rules: [ 必须包含可测变量, 必须包含反驳路径, 假设陈述必须具体到变量关系 ], tools: [llm_reasoning] }, statistical_analysis: { description: 执行数据体检、检验方法选择、统计推断与多重检验校正, input_schema: { data_path: str, group_column: str, value_columns: list[str] }, output_schema: { data_quality_report: dict, test_method: str, test_results: list[dict], correction_method: str }, validation_rules: [ 必须先输出数据质量报告, 检验次数20时必须输出校正后q值, 必须说明检验方法选择依据 ], tools: [python_executor, stats_library] }, literature_evidence: { description: 检索文献并输出证据链综合表, input_schema: { topic: str, related_hypothesis: str, top_k: int }, output_schema: { papers: list[dict], evidence_table: list[dict] }, validation_rules: [ 所有引用必须来自检索API返回结果, 证据表必须分类标注支持/反对/背景 ], tools: [literature_search_api, llm_reasoning] } }注册表的核心作用是给路由器和校验器提供元信息。收到一个任务后路由器读注册表匹配最合适的技能执行完后校验器再按注册表里的规则逐项检查。4.3 第三步配置执行→反思→校验→修正回路技能注册只是第一步真正让科研 Agent 好用的是执行回路。我常用的回路是四段式Plan、Execute、Reflect、Fix。下面是这个回路的简化描述。def run_skill_with_reflection(task, skill_name): skill SKILLS_REGISTRY[skill_name] # Plan生成执行计划 plan agent.plan(task, skill[input_schema]) # Execute执行计划中的每个步骤 results [] for step in plan[steps]: output agent.execute_step(step, skill[tools]) results.append(output) # Reflect模型自我反思输出是否满足校验规则 reflection agent.reflect(results, skill[validation_rules]) # Fix如果校验失败定位问题并重新执行 max_attempts 3 attempt 0 while not reflection[pass] and attempt max_attempts: fix_plan agent.plan_fix(reflection[issues], skill[input_schema]) results agent.execute_steps(fix_plan[steps], skill[tools]) reflection agent.reflect(results, skill[validation_rules]) attempt 1 return { results: results, reflection: reflection, attempts: attempt }这里最关键的环节是 Reflect。模型执行完一个技能后让它拿着校验规则一项一项对照有点像让一个程序员回头 review 自己的代码。这一步看起来简单实际上是把整个系统的正确率拉高一大截的核心设计。没有反思回路校验规则只是摆设加了反思回路模型有机会自己发现并修正统计值有没有出处文献有没有真实来源这类问题。4.4 第四步设计科研项目级记忆管理科研任务不是一次性问答它有一个从文献调研、假设生成、实验设计到数据分析的完整生命周期。如果 Agent 每做一步都失忆前面生成的假设和数据摘要到后面就衔接不上了整个流程就会非常干涩。所以需要为它设计一个科研项目上下文管理器。我通常的做法是维护三个层面的记忆项目概览Project Overview研究目标、当前阶段、关键决策和待办事项证据库Evidence Store文献摘要、数据描述、统计结果、图表文件路径会话级记忆Session Memory当前对话中产生的临时结论和待确认问题。项目概览和证据库建议用 JSON 或 SQLite 持久化保存这样即便会话中断下次也能从断点继续。实际测试中加了持久化记忆的 Agent在多步科研流程里的任务完成率远高于无记忆的 Agent。原因很直接科研推理依赖上下文线索上下文断了模型的推理质量会断崖式下跌。4.5 第五步对接真实工具链技能层的最后一公里是让它真正干得动活。这一步需要把你科研工作流里常用的工具全部暴露给 Agent。一个相对完整的科研 Agent 工具链至少包括工具类别具体工具用途代码执行Python 环境pandas、numpy、scipy、statsmodels数据清洗、统计分析学术检索PubMed / Semantic Scholar / 其他数据库 API文献检索与证据收集可视化matplotlib、seaborn、ggplot2R图表生成文档生成LaTeX / Markdown 转换工具论文与报告排版数据管理数据目录 API、SQLite数据加载与项目存档工具对接完成后一定要做一轮端到端冒烟测试给 Agent 一个完整的小任务比如读入这份 CSV分析两个分组的差异输出报告和图表。这一步能暴露大量细节问题比如数据文件路径传参错误、Python 环境缺少某个包、输出的图片路径没被记录下来等等。先跑通一个最小闭环再逐步扩展技能是我反复验证过最稳妥的方式。5. 科研 Agent 最容易翻车的四个环节与排查方法这部分是我最想写的因为网上讲科研 Agent 的文章大多在讲怎么做很少讲哪里会坏。我自己的项目里以下四个坑几乎每个都踩过逐个说下现象、原因和排查思路。5.1 数据幻觉结论与原始数据脱节现象Agent 描述的数据统计量和用代码实际算出来的结果对不上。比如它嘴上说样本量为 50实际数据只有 42 行它报告p0.03实际用代码算出来是 0.31。根因模型把读文件摘要和执行分析混为一谈。它可能只大致看了一眼文件的描述信息就凭统计分布的经验编造了一个看似合理的结果。排查链路第一步检查所有统计输出的来源标记——输出里有没有记录这个数字是哪个工具在哪个时间点跑出来的。第二步设计一个复算任务把数据文件重新喂给一个不预加载模型记忆的进程重新计算结果和 Agent 报告的结果做 diff。第三步在技能校验规则里增加一条硬性要求任何统计数字必须附带计算结果路径或截图否则视为无效输出。我加了来源标记之后数据幻觉问题至少减少了八成。这个机制的原理是它切断了模型的编造渠道——模型可以编故事但没法编出和真实运行日志一致的数字。5.2 引用幻觉编造不存在的文献现象Agent 在写引言或综述时引用了一些看起来非常专业、但实际根本不存在的论文甚至还有作者名、期刊名和年份。这是科研场景下最致命的问题因为一篇论文里有一个假引用整篇论文的可信度都会崩塌。根因模型在训练数据里见过大量论文的相似格式生成时按概率拼接了最像论文引用的字符串而不是检索了真实数据库。本质上是生成机制决定的不靠工程约束根本无法根治。排查链路第一确认文献证据技能是否绑定了检索 API而且必须强制所有引用都带 API 返回的 ID比如 DOI 或 PubMed ID。第二在写作技能里设置引用白名单机制模型只能引用证据库中存在的论文 ID证据库中没有的写作时一律不允许输出。第三交付前跑一个引用校验脚本把所有引用 ID 拿去检索 API 复核标记所有返回无效的记录。引用白名单这个策略其实是从材料学里的来料检验借鉴过来的思路上游不收没有质检报告的材料下游就不用担心混入次品。科研 Agent 的引用也一样只认证据库检索回来的论文才能阻断幻觉。5.3 实验方案不可执行理想协议与现实条件脱节现象模型生成了一份实验方案步骤看着很完整但用现实条件一对照会发现根本做不了。比如要用的试剂盒国内没有代理商、仪器型号在目标平台不存在、样本量算出来要 1000 例但现有队列只有 80 例。根因模型的训练数据里有大量通用知识但它不知道你实验室的具体条件。它生成的是一般情况下的正确方案而不是你这里能执行的方案。排查链路这一步必须在实验协议设计技能里加一条前置交互规则设计实验方案之前Agent 必须先向用户收集资源约束清单包括可用仪器型号、试剂品牌限制、样本可得性、预算范围。如果用户没提供Agent 不得直接输出方案而要先输出一个约束确认清单。这样虽然牺牲了一点一次出方案的爽快感但产出的方案落地率大幅提升。我自己的一个经验是可以在实验协议技能里挂一个可行性检查器列出常见的现实冲突项样本量上限、时间窗口、经费每项都让 Agent 自检。检查器不需要多复杂它最大的作用是把我没想过这些变成我至少问过这些。5.4 复现性漂移同一个问题多次回答结果不稳定现象同一个问题、同一份数据上午跑一次和下午跑一次输出的结论可能不一样甚至一次显著、一次不显著。科研最看重可复现性这个问题不解决智能体就很难真正被科研团队信任。根因一是模型采样温度太高同样的输入走了不同的推理路径二是分析链路本身含有随机性比如随机抽样、随机初始化三是反思修正回路在多次尝试时行为不稳定。排查链路第一步将模型采样温度调到 0 或接近 0在科研场景里创造性输出没那么重要稳定性才是第一位。第二步固定随机种子确保数据抽样、模型初始化行为可复现。第三步为整个分析流水线固化一个分析配置文件记录版本号、依赖版本、随机种子、模型名称和采样参数。第四步建立回归测试机制每次改进技能包后跑一遍固定的测试集对比输出是否有意外变化。复现性这件事听起来不酷但它恰恰是科研 Agent 和普通聊天机器人的分水岭。普通机器人回答稳定不稳定没人计较科研 Agent 如果三天两头变卦没人敢用它跑正式课题。6. 如何给你的AI 科学家出考题科研 Agent 的评估数据集怎么设计最后一个问题也是很多人问我的智能体做出来了怎么知道它够不够格普通对话测评只看回答是否准确科研 Agent 的测评要复杂得多因为科研任务的产出是复合的——一个步骤错了后面全是白搭。评估数据集的设计思路我总结为一句话不要只问回答对了吗要按维度打分按流程拆解。科学结论可以争辩但流程是否符合规范是可以被明确评估的。6.1 拆成五个可打分的评估维度我建议把科研 Agent 的每次产出从下面五个维度分开评分评估维度考察内容典型扣分点假设可证伪性假设是否具体、可测、有反驳路径假设含糊无法设计实验验证证据覆盖率结论是否覆盖正反两方证据只引支持方忽略矛盾文献实验可执行性方案是否包含完整参数和资源约束缺样本量、缺质控步骤统计正确性检验方法选择、多重校正是否正确不校正 p 值、不验证正态性写作严谨性是否区分数据描述和统计推断把趋势直接当结论每个维度按 1-5 分打分总分不是加和而是看最低分。因为科研产出是木桶效应只要统计正确性得 1 分哪怕其他四个维度都是 5 分这个结果也不敢用于实际课题。最低分反映了这个 Agent 当前最需要补强的短板。6.2 一个可落地的评测集结构具体到测试数据我建议不要只准备答案而是准备一个题目 参考答案 评分细则的三层结构。下面用几个案例说明。案例一假设生成给一段合成数据集描述比如药物处理前后的基因表达变化参考答案是可证伪假设 对照变量 替代解释评分细则看三点是否指定了可测量指标、是否写出了反驳路径、是否区分相关和因果。案例二文献综述给定一个具体问题比如某信号通路在肿瘤免疫中的作用评分看证据表是否包含支持、反对、背景三类文献以及引用是否真实可回溯。案例三数据分析给一份带人工注入问题的数据比如含缺失值和离群点评分看 Agent 是否先做数据体检、是否正确选择了检验方法、是否做了多重校正、能否发现注入的数据问题。案例四实验方案给一个研究目标但故意不提供资源约束评分看 Agent 是否主动澄清约束条件而不是直接输出理想化方案。这四个案例覆盖了技能层的主要模块。建议每个模块至少准备 20-30 条测试数据数量太少得不出稳定结论。数据规模不需要很大但覆盖面要全尤其是坏案例要足够多——没有坏数据的评测集测试不出 Agent 的边界。6.3 自动评分和人工评分怎么分工科研 Agent 的评分不能全靠大模型当裁判因为模型裁判有偏好和漂移问题。我常用的组合是自动检查 人工复核。自动检查负责硬性规则这些规则可以用脚本写死引用是否都在白名单内统计输出是否附带了来源标记检验次数超过 20 时是否做了多重校正输出格式是否符合技能 Schema是否有数据描述和统计推断混淆的文本模式。人工复核负责软性质量主要集中在假设的创造性和实验方案的可行性上。这两者需要领域经验和判断力自动化很难替代。实际操作中可以让自动评分先筛一遍只把低分案例和边界案例交给领域专家复核。这样既控制了评估成本又保证了评分质量。另外要强调的是评估数据集本身也需要版本管理。科研 Agent 的技能包每次迭代之后都要重跑一遍完整评测集观察各维度得分的波动。如果某项维度得分意外下降八成是新的技能改动引入了回归问题。把这个流程固化下来你的科研 Agent 才能真正进入可迭代、可信任的状态。最后再说一点我个人的体会。把通用 AI 智能体改造成 AI 科学家技术上没有想象中那么神秘核心就是把科研流程工程化这八个字。难点从来不在于模型够不够聪明而在于你敢不敢把它的输出纳入严格的校验体系愿不愿意为它补上流程、工具、记忆和评测这些不性感但必须做的部分。我踩过的坑告诉我一个朴素的道理科研 Agent 的上限由模型决定下限却完全由技能层决定。下限够高它才敢真正进入科研工作流而不是永远做一个看起来很聪明、一用就露馅的演示品。