化学 AI Skill 究竟是什么
化学 AI Skill 是一种打包好的流程,用于帮助助手完成一项明确的科学任务。它并不会自动成为化学引擎、预测模型或自主研究者。Agent Skills 概览 将核心包定义为一个包含 SKILL.md 的文件夹,其中包括元数据和任务指令;脚本、参考资料、模板及其他支持文件均为可选。
在化学领域,有用的内容往往是围绕软件的决策逻辑:哪些输入可以接受,哪些参数必须明确,何时应当停止,以及如何解读输出。一个分子分析 Skill 可能要求在标准化前保留来源标识符。一个声子 Skill 可能要求在组装力常数前核对位移与力之间的对应关系。
可以把 Skill 看作流程,把科学软件包看作计算工具,把宿主应用程序看作让助手读取指令并使用工具的环境。本指南将说明这些角色及其运作方式。更深入的启用前讨论请参见化学智能体 Skills 评审。
为什么要打包流程,而不是反复编写提示词?
实际目的在于让专业背景知识能够重复使用。Agent Skills 文档介绍了可移植、受版本控制的文件夹,智能体会在相关时加载这些文件夹,而不是在每次对话中都加入所有流程。文档称该格式起源于 Anthropic,并描述了多个智能体产品对其的采用;这并不能证明所有宿主都普遍支持该格式。
化学领域尤其适合采用这种打包方式,因为看似简单的请求可能隐藏着影响重大的选择。“准备这些分子”可能指仅解析、去除盐、规范化电荷,或生成构象。“计算相稳定性”可能指局部计算能量凸包,也可能指有限温度下的 CALPHAD 平衡。范围明确的 Skill 会把这些选择呈现出来,而不是让流畅的语言掩盖它们。
预期优势是提高一致性和可审计性,而非保证正确。Skill 是否真正改善工作流程,必须通过具有代表性的任务进行评估。
Skill、提示词、MCP、智能体与 API:各自扮演不同角色
这些组件可以共存,但并不是同一产品中可以互换的不同层。
| 组件 | 主要作用 | 化学示例 | 不能据此确定的事项 |
|---|---|---|---|
| 提示词 | 陈述请求或提供当前上下文 | 请求计算描述符,同时保留原始 SMILES | 可复用流程或执行环境 |
| Skill | 打包指令和可选支持资源 | 定义验证、描述符选择和拒绝处理方式 | 依赖已安装,或结果有效 |
| 科学库或 CLI | 执行计算操作 | RDKit 操作或 Cantera 反应器模型的数值积分 | 所选科学假设是否恰当 |
| MCP 服务器 | 通过协议公开工具、资源或提示词 | 让宿主能够调用化学 CLI | 科学准确性或对 Skill 的支持 |
| 智能体与宿主 | 选择流程、协调工具并管理交互 | 收集缺失输入并检查计算报告 | 不受限制的执行权限 |
| 托管 API | 提供远程操作或数据访问 | 通过其客户端检索 Materials Project 数据 | 对所有返回数据的权利或实验事实的真实性 |
MCP 架构概览 介绍了宿主管理与服务器相连的客户端。MCP 关注上下文交换,包括可执行工具、资源和可复用提示词;它并不规定应用程序应如何进行化学推理。
rdkit-agent Skill 展示了这一区别:其指令指导验证和 JSON 交换,而独立的 rdkit-agent 包则提供 CLI 操作、MCP 服务和 Node.js 接口。其文档所述的 MCP 模式并不能证明它与所有当前宿主或协议版本都兼容。更全面的介绍请参见 MCP、Skills、智能体与 API 和化学 AI 智能体。
SKILL.md 与资源集合的内部结构
SKILL.md 至少包含名称、描述和指令。描述有助于识别适用任务;正文则说明流程。可选的 scripts/ 可包含辅助工具,references/ 可存放详细文档,assets/ 可提供模板或设置文件。这些文件夹是支持资源,并非已安装的科学依赖项。
所提供的资源集合展示了不同的组织方式。K-Dense 将各项资源放在 skills/rdkit/SKILL.md 这样的路径下。computational-chemistry-agent-skills 集合则按照 atomistic-workflows/ase 和 analysis/phonopy 等领域组织资源。
属于同一个集合,并不意味着每个模块都能以相同方式执行。ASE Skill 是一个路由器:它会选择 ase/ase-workflows 或 ase/ase-calculators,解释选择理由,指出缺失输入并进行委派。其顶层指令明确排除了直接执行计算。相比之下,若干 K-Dense Skills 则描述了随附的计算辅助工具。
应检查各个模块的约定,而不要假设整个集合就是一个集成应用程序。
宿主如何加载和使用 Skill
Agent Skills 概览将渐进式披露描述为三个阶段:
- **发现:**宿主加载可用 Skills 的名称和描述。
- **激活:**相关任务触发后,完整的
SKILL.md指令进入上下文。 - **执行:**助手遵循流程,在需要且获得许可时读取参考资料或调用随附代码。
一个实际的化学工作流程可以是:请求 → 选择 Skill → 检查输入 → 执行获准的工具操作 → 检查输出 → 解读或移交。
不同宿主的支持情况各不相同。应分别确认宿主的发现机制、资源访问方式、工具权限和执行环境。加载指令并不会安装 RDKit、提供力计算器、验证数据服务身份,或授权网络访问。
执行前,助手应确定输入文件、所需输出、科学假设、资源限制和停止条件。执行后,应检查状态字段和警告,而不只是总结生成的文件。
哪些 Skills 适用于哪些研究阶段?
应根据当前任务和所需文件来选择,而不是依据最宽泛的能力列表。下表描述的是来源中说明的用途,并非已测试互操作性的结论。
| 研究阶段 | 相关 Skills | 输入与文档所述输出 | 关键选择 |
|---|---|---|---|
| 化学信息学 | RDKit Skill、Datamol Skill、rdkit-agent Skill | 分子字符串或文件 → 验证、描述符、指纹、搜索结果;Datamol 还说明了骨架和构象工作流程 | 精细控制 RDKit、采用更简单的 Datamol 工作流程,还是进行结构化 CLI 交互? |
| 光谱学 | nmrglue Skill | 经校准的复数一维 FID 和设置 → 光谱、候选峰、有符号积分、处理报告 | 采集校准和手动相位选择是否已确定? |
| 材料发现 | Pymatgen Skill、pycalphad Skill | 结构/计算能量,或本地 TDB/设置 → 验证和凸包分析,或有限温度平衡结果 | 比较计算能量,还是进行基于数据库的 CALPHAD 平衡计算? |
| 原子尺度计算化学 | ASE Skill、Phonopy Skill | 任务意图,或结构加力 → 路由计划、位移布局、力组装、声子分析 | 谁来配置并运行力计算提供程序? |
| 反应分子动力学分析 | ReacNetGenerator Skill | 轨迹或现有分析文件 → 反应/物种文件和报告 | 使用封装工作流、原生 CLI,还是仅检查而不重新运行? |
| 面向过程的模拟 | Cantera Skill | 机理、反应器约束、组成、条件 → 历程和点火延迟诊断 | 封闭绝热理想气体模型是否符合问题? |
Cantera 文档描述的辅助工具并非通用过程优化器,pycalphad 平衡计算也不是析出动力学。只有在定义目标、约束、模型有效性和独立检查后,这类输出才可能支持拟议的优化工作流程。
拟议示例:可审计的分子初筛工作流程
**这是拟议的评估,而不是已经完成的实验或已证实的集成。**假设研究人员提供一个包含化合物标识符和 SMILES 的本地 CSV,以及一个查询分子。目标是生成描述符表和范围有限的相似性候选列表,而不是预测生物活性。
- **定义约定。**请求 MW、LogP 和 TPSA;保留原始字符串和标识符;除非研究人员批准相关策略,否则禁止自动去盐或中和。
- **选择流程。**日常准备可使用 Datamol 指引;需要自定义分子清理时可使用 RDKit 指引。不要仅仅因为两者都可用就同时运行。
- **检查输入。**解析每条记录,将失败项保留在拒绝日志中,并要求查询分子有效后再进行搜索。任何拟议修复都应作为单独记录的转换。
- **计算并检查。**使用有记录的指纹方案,并返回数量受限的候选列表。解释排名前,应检查行对应关系、失败计数、警告和化学转换。
- **交付文件。**建议交付已接受记录的描述符表、拒绝日志、相似性表,以及记录输入、设置和环境的清单。这些是工作流程的交付物,并不意味着每个辅助工具都会自动生成它们。
若考虑使用 DrugAgent 等下游智能体,这属于拟议的移交:首先确认其接受所选模式并保留来源记录。这些来源并未证实与 DrugAgent 的互操作性。
组合、失败处理与科学局限
通过明确的文件约定组合 Skills。一个拟议的材料工作流程可以先用 pymatgen 检查结构,再用 Phonopy 制定计划,并在位移生成与分析之间使用独立的力计算提供程序工作流程。在每个边界处记录单位、原子顺序、晶胞约定和文件对应关系。ASE 路由器可以识别准备流程分支;所提供的摘录并未说明下游执行行为。
失败应保持可见。缺失的力应使声子组装停止。原子类型映射不明确时,应先澄清再进行 ReacNetGenerator 分析。NMRPipe 校准相互冲突时,应拒绝处理,而不是悄悄重新校准。若加热或边界检查不充分,Cantera 可以不提供点火延迟。未通过的平衡检查不应被表述为已收敛。
计算成功的含义也比科学研究成功更有限。指纹相似性并不等同于同一性或效力。nmrglue 辅助工具不会鉴定化合物或计算浓度。计算凸包取决于能量是否兼容以及所提供的竞争相。CALPHAD 结果取决于数据库和选定的相;随附的 Cu-Ni 模型是假设模型。数值守恒并不能验证动力学机理。
重用前还需关注许可范围:RDKit 和 Datamol Skill 的许可声明与其所属集合的许可不同,ASE 的声明也与其集合中的文本不同。应确认哪些条款适用于预期使用的文件,而不是根据公开可用性推断权利。所提供的证据并未确定 rdkit-agent Skill 的许可情况。
评估流程,而不只是最终答案
从一小组有代表性的评估任务开始,其中应包括格式错误的输入和未解决的科学选择。将助手的操作与文档流程进行比较,并在条件允许时与独立准备的参考工作流程比较。记录偏差、环境细节、设置和输出。应分别评估指令遵循情况、数值行为和科学适用性。
简明读者检查清单:
- 该资源是指令、路由器、辅助工具,还是可执行软件?
- 所选宿主是否真正支持其加载和执行需求?
- 依赖项、权限、输入模式和单位是否明确?
- 转换和被拒绝记录是否可追溯?
- 失败状态和不支持的功能是否得到保留?
- 数值检查是否针对预期科学问题?
- 许可、数据条款和拟议移交是否分别核查?
如需了解文件层面的可复现性,请继续阅读可复现化学 AI;如需深入审查依赖项和启用条件,请使用 Skills 评审指南。
继续阅读相关指南:化学与材料科学 AI Skills 指南:RDKit、Datamol、ASE、Phonopy 等。
来源
格式和加载说明依据 Agent Skills 概览;协议区别依据 MCP 架构概览。
支持任务对应表的主要 Skill 指令包括 RDKit、Datamol、nmrglue、pymatgen、Cantera 和 pycalphad,以及 ASE、Phonopy、ReacNetGenerator 和 rdkit-agent。
许可范围注意事项依据这些声明与 K-Dense 集合许可 及 computational-chemistry 集合许可 的比较。