@PyTorch: 利用 PyTorch 原生构建模块,与编码代理一起构建 GPU 加速材料模拟工作流…

X AI KOLs Following 工具

摘要

本文介绍了 NVIDIA ALCHEMI Toolkit 如何使用 PyTorch 原生构建模块,与 AI 编码代理一起构建 GPU 加速材料模拟工作流,详细阐述了端到端的过程,并提供了在 NVIDIA H200 GPU 上验证的实用指导。

利用 PyTorch 原生构建模块,与编码代理一起构建 GPU 加速材料模拟工作流。 @NVIDIA 遵循端到端的 NVIDIA ALCHEMI Toolkit 工作流:研究人员从哪里开始,如何提示代理,它生成什么代码和模拟管道,以及结果如何在 NVIDIA H200 GPU 上得到验证。 阅读更多:
查看原文
查看缓存全文

缓存时间: 2026/08/25 20:08

利用PyTorch原生构建模块,通过编码代理构建GPU加速的材料模拟工作流程。

@NVIDIA遵循端到端的NVIDIA ALCHEMI工具包工作流程:研究人员从何处入手,如何提示代理,代理生成哪些代码和模拟流水线,以及如何在NVIDIA H200 GPU上验证结果。

阅读更多:


AI编码代理如何通过NVIDIA ALCHEMI工具包解锁材料模拟

来源:https://developer.nvidia.com/blog/how-ai-coding-agents-can-unlock-materials-simulation-with-nvidia-alchemi-toolkit/ 原子模拟需要三样东西:科学知识、计算高效的模拟实现,以及可访问的模拟栈接口。

第一项仍然是研究人员的领域,因为没有任何工具能替代了解模拟什么或识别物理上有意义的结果。今年早些时候推出的NVIDIA ALCHEMI工具包,已通过可组合的PyTorch原生构建模块,大幅降低了第二个障碍——用于构建支持流式批处理的GPU加速模拟工作流程的机器学习原子间势能。

第三个障碍一直存在。与经典力场不同,MLIP生态系统仍处于起步阶段,现有用于经典模拟的可访问接口非常有限。它们运行在与许多计算化学家习惯的工具不同的软件栈上,具有新的数据结构、组合模式和依赖关系。

AI编码代理提供了一种解决途径:它们根据研究人员在日常技术讨论中使用的术语,从自然语言描述中生成并执行代码。但通用代理可能不了解ALCHEMI工具包API,可能生成看似合理但仅表面正确使用它的代码。

ALCHEMI工具包的代理技能和参考文件按需提供缺失的API模式,让提示专注于您的科学:材料、条件和模拟协议的约束。

使用编码代理构建模拟工作流程https://developer.nvidia.com/blog/how-ai-coding-agents-can-unlock-materials-simulation-with-nvidia-alchemi-toolkit/#building_simulation_workflows_with_a_coding_agent

本文介绍了一个端到端的ALCHEMI工具包工作流程:研究人员从何处入手,如何提示代理,代理生成哪些代码和模拟流水线,以及如何在NVIDIA H200 GPU上验证结果。它还从45个生成的流水线中提炼经验,为使用编码代理构建可信赖的GPU加速模拟工作流程提供实用指导。

如何开始https://developer.nvidia.com/blog/how-ai-coding-agents-can-unlock-materials-simulation-with-nvidia-alchemi-toolkit/#how_to_get_started

系统和软件包要求https://developer.nvidia.com/blog/how-ai-coding-agents-can-unlock-materials-simulation-with-nvidia-alchemi-toolkit/#system_and_package_requirements

  • Python ≥3.11, <3.14
  • PyTorch ≥2.8
  • CUDA 12或CUDA 13,以及兼容的NVIDIA驱动程序(推荐570+)
  • 操作系统:Linux(主要),macOS
  • NVIDIA GPU(RTX 20xx或更新型号),CUDA计算能力≥ 7.0
  • 最少4 GB RAM(大型系统推荐16GB)

安装https://developer.nvidia.com/blog/how-ai-coding-agents-can-unlock-materials-simulation-with-nvidia-alchemi-toolkit/#installation

您设置代理环境的方式会显著影响生成代码的可靠性。我们建议在可运行的Python环境中安装工具包,并让代理执行其生成的脚本。在最终的45个流水线测试中,此设置未产生任何导入错误或引用不存在的API。

**步骤1:**使用uv包管理器(https://docs.astral.sh/uv/getting-started/installation/)创建Python环境并安装ALCHEMI工具包:

# 通过uv安装到本地文件夹
# 在.venv创建本地环境
uv venv --seed --python 3.12
# 将ALCHEMI工具包安装到.venv
uv pip install "nvalchemi-toolkit[mace,ase]==0.2.0"

要在NVIDIA GPU上运行,请包含与您的CUDA环境匹配的CUDA扩展。例如,对于CUDA 13,安装nvalchemi-toolkit[mace,ase,cu13]==0.2.0

**步骤2:**从同一版本标签下载代理技能,使其与安装的API匹配:

# 下载nvalchemi-toolkit技能
npx degit NVIDIA/nvalchemi-toolkit/.claude/skills#v0.2.0 .claude/skills

**步骤3:**安装编码代理。此基准测试使用Claude Code:

# 通过npm安装Claude Code
npm install -g @anthropic-ai/claude-code
# 或通过curl原生安装
curl -fsSL https://claude.ai/install.sh | bash
# 在本地文件夹中启动claude会话
claude

在您的项目目录中打开代理,允许其执行代码,并开始描述模拟;代理会按需加载相关技能。让代理运行其编写的代码几乎可以在您看到脚本之前消除所有机械错误。此后,质量主要由您的提示决定。

如果没有可运行的shell,源代码git检出是备用方案:在早期测试中,读取源代码消除了617个导入语句中的错误导入。既没有shell也没有源代码的pip安装是最弱的配置。

任何支持开放代理技能标准的代理都可以工作,包括Cursor和OpenCode(有关配置,请参阅代理技能用户指南(https://nvidia.github.io/nvalchemi-toolkit/userguide/agent_skills.html))。

编写良好提示的最佳实践https://developer.nvidia.com/blog/how-ai-coding-agents-can-unlock-materials-simulation-with-nvidia-alchemi-toolkit/#best_practices_for_writing_a_good_prompt

以下原则是从基准测试输出质量的可测量差异中综合得出的,而非来自一般的编码代理建议。五个提示级别,从最少到最多指定,如下图1所示。

五级提示阶梯(L1-L5)的堆叠图。每一级都在前一级的基础上增加规范:L1 草图(仅任务类型),L2 目标(材料、方法、规模、交付成果——“良好的起点”),L3 步骤(分步协议——“当协议很重要时推荐”),L4 规范(命名工具包构造和产物),L5 合同(CLI标志、输出模式、验收测试)。 图1。五级提示阶梯,以液态锂自扩散工作流程为例说明。每一级严格在前一级的基础上添加;目标是一个良好的起点,当结果取决于模拟协议时推荐使用步骤 始终命名系统、方法和规模;仅在无人值守操作时添加CLI合同。命名材料、方法和规模的提示得分最高。完整的CLI合同实现了完全的可重用性,但消耗的令牌数约为草图提示的4倍,生成的代码量约为草图提示的2.3倍。规范提示最脆弱,占七个筛选失败案例中的三个。指定科学和交付成果;让技能提供API模式。

明确命名材料、相和参考约定。在早期测试中,对系统规范不足导致了最明显的物理失败:“一种锂材料的输运性质”产生了一个氩气演示,两个Cu脚本使用了不同的吸附参考,实质性地影响了结果。最终的提示通过命名材料、相和参考约定消除了这些失败。协议也很重要:没有恒温器指令的脚本使用了阻尼扩散3-5倍的Langevin生成动力学;请求NVE改变了每个脚本以使用适当的测量系综。

**指定约束,而非实现。**描述脚本必须完成什么,而不是内部API类。在受控比较中,命名一个流水线构造没有改变12个实现中的任何一个。API模式来自示例和技能,而不是提示。在没有完整接口合同的情况下命名内部构造是脆弱性的集中所在。

**明确要求自我评估和前提检查。**代理不会质疑任何请求的物理性质是否定义明确。明确要求前提检查、验证和不确定性估计,并要求恢复独立的已知结果;代理不会主动添加这些。

三个工作流程,从提示到GPU执行https://developer.nvidia.com/blog/how-ai-coding-agents-can-unlock-materials-simulation-with-nvidia-alchemi-toolkit/#three_workflows_from_prompt_to_gpu_execution

以下工作流程展示了ALCHEMI工具包和编码代理可以从自然语言提示端到端处理什么。为了将这些建议建立在测量结果的基础上,我们对三个工作流程、五个提示级别和每个级别三个样本的45个模拟流水线进行了系统基准测试。

  1. 硅状态方程(EOS)
  2. 氧在Cu(111)上的吸附
  3. 锂自扩散分子动力学(MD)

脚本通过两种方式评估。首先是确定性代码特征检查:属性覆盖(正确的量,正确的公式)、API模式覆盖(使用工具包的批处理API表面)和可重用性(参数化、可重新运行的接口)。其次是在相同的NVIDIA H200 GPU上执行作为基准。

所有45个脚本都使用了批处理GPU执行。L2-L5提示需要批处理;L1从工具包技能和示例中采用了它。我们在演示规模下筛选了所有脚本,并在生产设置下为每个工作流程和级别运行了一个代表性脚本。

45个基准单元的3×15执行结果网格:三个工作流程(体相Si EOS、O/Cu(111)、Li自扩散)×五个提示级别(L1–L5)×每个级别3个样本。大多数单元格为绿色(完成);红色单元格(崩溃,标记为C)出现在Li自扩散的L2和L3级别,以及体相Si EOS中零散出现;一个橙色单元格(分析失败)出现在O/Cu(111)的L4级别。45个单元格中有38个完成。 图2。45个基准流水线在H200上的执行结果。三十八个完成筛选;所有15个生产代表性测试完成

体相硅状态方程https://developer.nvidia.com/blog/how-ai-coding-agents-can-unlock-materials-simulation-with-nvidia-alchemi-toolkit/#bulk_silicon_equation_of_state

**任务:**金刚石立方硅的状态方程

能量-体积曲线,其最小值给出晶格常数a0,其曲率给出体模量B0。在每个提示级别,代理都构建了相同的流水线:50-60个应变体积作为一批GPU并发弛豫,然后进行Birch-Murnaghan (https://doi.org/10.1103/PhysRev.71.809)拟合。所有五个生产代表性测试的最后一位数字一致,a0= 5.4661 Å,B0= 88.15 GPa,位于已确立的全电子PBE参考窗口(https://doi.org/10.1126/science.aad3000)内。晶格常数与NIST实验值(https://physics.nist.gov/cgi-bin/cuu/Value?asil)不同,而体模量比较来自McSkimin的实验测量(https://doi.org/10.1063/1.1721449)。这些偏差与报告的PBE行为(https://doi.org/10.1103/PhysRevB.79.155107)一致。结论与基准测试的普遍模式一致:提示特异性改变了代码的结构和成本,从未改变物理。

两张散点图,比较金刚石立方硅在不同提示级别(L1-L5)下的模拟结果与参考值。左图显示拟合的晶格常数a0;右图显示体模量B0。所有五个生产代表性测试无论提示级别如何都落在相同的值上,两者都位于全电子PBE参考窗口内,并且明显偏离实验值。 图3。不同提示级别下的金刚石立方硅晶格常数和体模量

氧在Cu(111)上的吸附https://developer.nvidia.com/blog/how-ai-coding-agents-can-unlock-materials-simulation-with-nvidia-alchemi-toolkit/#oxygen_adsorption_on_cu111

**任务:**对Cu(111)上原子氧的吸附位点进行排序

流水线冻结板的底层,将24个以上的候选者作为一批GPU弛豫于四个高对称位点,并计算Eads=Eslab+ads−Eclean slab−EO。每个生产代表性测试都发现fcc空位最稳定,五个级别的Eads(fcc)= −4.799 ± 0.004 eV,排序为fcc ≥ bridge > hcp >> top。报告的参考值(https://doi.org/10.1007/s11244-018-0943-0)在0.25单层时为−4.31 eV。Giamello等人和Naumann d’Alnoncourt等人的铜微量热研究报道的值在−4.46至−4.60 eV之间。覆盖度差异和模型误差可能导致更强的结合。独立脚本之间的毫电子伏特一致性正是指定参考约定所带来的。

O在Cu(111)上的fcc吸附能散点图,对应不同提示级别(L1-L5)。所有五个点落在-4.799 ± 0.004 eV,低于DFT-PW91参考值(-4.25 eV,蓝色虚线)和实验微量热法带(-4.5 eV)。 图4。不同提示级别下最稳定的O/Cu(111)吸附能,与DFT-PW91和其报告覆盖度下的微量热法比较

通过分子动力学进行锂自扩散https://developer.nvidia.com/blog/how-ai-coding-agents-can-unlock-materials-simulation-with-nvidia-alchemi-toolkit/#lithium_self-diffusion_via_molecular_dynamics

**任务:**估算液态锂的自扩散系数D。

流水线构建一个bcc锂超胞,将其熔化并在锂的454 K熔点以上平衡,在GPU上作为一个批处理系统传播三个温度乘以三个种子(九个副本),并从均方位移MSD——原子行进的平均平方距离——中提取D,其随时间变化的斜率通过爱因斯坦关系给出D。

提示级别 生产系综 600 K时的D(cm²/s) 800 K时的D(cm²/s) 1000 K时的D(cm²/s) L1(草图) Langevin –1.21 x 10⁻⁴ – – L2(目标) Langevin 0.80 x 10⁻⁴ 1.03 x 10⁻⁴ 1.55 x 10⁻⁴ L3(步骤) NVE 2.91 x 10⁻⁴ 5.38 x 10⁻⁴ 7.22 x 10⁻⁴ L5(合同) NVE 3.62 x 10⁻⁴ 4.32 x 10⁻⁴ 6.49 x 10⁻⁴ 表1。不同提示级别和温度下的液态锂自扩散。L4被排除,因为其生成的脚本未能守恒能量

液态锂自扩散系数D与温度(450-1100 K)的对数坐标折线图,对应四个生产代表性测试,按系综类型划分。NVE运行(L3, L5)形成上部带,落在基于实验NMR锚定的阿伦尼乌斯外推值约2倍范围内;Langevin运行(L1, L2)形成下部带,比NVE低3-5倍,因恒温器摩擦而非锂物理而抑制。L4被排除,因为其生成的脚本未能守恒能量。 图5。液态锂自扩散与温度的关系。NVE运行在实验外推值约2倍范围内;Langevin运行比NVE低3到5倍,因为恒温器摩擦抑制了输运。L4被排除,因为其生成的脚本未能守恒能量

技术规格https://developer.nvidia.com/blog/how-ai-coding-agents-can-unlock-materials-simulation-with-nvidia-alchemi-toolkit/#technical_specifications

以下配置用于生成本文中的工作流程示例:

  • 编码代理:Claude (claude-opus-4-8)
  • 努力程度:高
  • MLIP检查点:MACE-MPA-0 (medium-mpa-0) (https://doi.org/10.1063/5.0297006)
  • 工具包版本固定(0.2.0)

提示级别 处理的总令牌数(含缓存) 生成的令牌数 迭代次数 脚本长度(行数) 草图 ~2.4M ~32k 4 4498 目标 ~3.3M ~39k 4 8451 步骤 ~4.4M ~43k 6 0574 规范 ~8.9M ~81k 8 8788 合同 ~10.0M ~107k 8 41,168 表2。每个单元格的生成成本、迭代次数和代码长度(按提示级别)。提示缓存读取主导总令牌数

三张条形图,显示生成成本和脚本大小与提示级别(L1-L5)的关系,每个级别平均9个单元格。总令牌

相似文章

@eladgil: https://x.com/eladgil/status/2099916017510047788

X AI KOLs Following

Liam Fedus 描述了在 Menlo Park 建立的高通量材料实验室,这些实验室在实验和 AI 模型之间创建了一个循环,利用 1,300 个 H200 GPU 和实验数据来中间训练模型,以做出下一步决策。

一个可定制的编译器,用于为AI模型生成高效的融合GPU内核 [P]

Reddit r/MachineLearning

作者介绍了一款用 Python 编写、高度可定制且易于修改的 ML 编译器。该编译器通过多级 IR 流水线将 LLMs 转换为优化的 CUDA 内核,在特定操作上实现了与 PyTorch 相当甚至更优的性能。文章详细阐述了该编译器的优化过程、降级规则以及用于生成高效融合 GPU 内核的 CLI 用法。

NVIDIA 工程师与研究人员如何利用 Codex 进行构建

OpenAI Blog

NVIDIA 的工程师和研究人员正在使用由 GPT-5.5 驱动的 OpenAI Codex,作为处理复杂工程任务和端到端机器学习工作流的默认工具。本文重点介绍了通过在该 NVIDIA 基础设施上集成 Codex 所取得的显著生产力提升、自主系统构建以及研究自动化成果。