这个 Skill 能做什么,适合哪些场景?
该技能面向 NVIDIA DALI 的命令式动态模式 API,即 nvidia.dali.experimental.dynamic,简称 ndd。它指导代理使用普通 Python 控制流直接调用 DALI 操作,而不是构建和运行 Pipeline 图。内容覆盖 Tensor、Batch、读取器、设备处理、随机数、执行模式、检查点以及 PyTorch 转换。它适合动态模式开发或从 Pipeline 模式迁移代码,不适合仅涉及 Pipeline 模式的任务。
指导代理导入 ndd 并编写直接的 DALI 调用;创建和复用有状态读取器;为随机操作显式传入 batch_size;使用 GPU 解码、Tensor/Batch 切片和 PyTorch 转换;配置同步执行模式以定位错误;设置随机数种子和线程数;为读取器与 RNG 注册、保存和恢复检查点;审查常见错误并将 Pipeline 模式代码映射到动态模式写法。
- DALI 开发者需要用普通 Python 控制流编写动态模式数据加载和预处理代码时。
- 工程师将使用 Pipeline、@pipeline_def 或 pipe.run() 的 DALI 代码迁移到动态模式时。
- 计算机视觉训练流程需要读取图像、GPU 解码、缩放、裁剪和归一化时。
- 开发者需要处理可变形状 Batch,并将其安全转换为带填充的 PyTorch 张量时。
- 分布式训练代码需要配置分片读取、读取器复用或读取器与 RNG 检查点时。
- 调试异步 DALI 操作,需要让错误在调用位置同步暴露时。
如何安装这个 Skill?
- 运行示例前需确认已安装兼容版本的 NVIDIA DALI、CUDA/驱动和目标框架;当前材料未锁定版本,也未证明 API 在该修订中可执行。
- 评估报告的原始数据集不可用,结果不能视为独立复现证据。
- 技能涉及本地数据读取、GPU 执行和检查点写入;使用者应自行确认路径、数据敏感性、资源消耗和恢复策略。
- 中国大陆网络可达性未被源材料验证;核心功能依赖本地 NVIDIA 软件与 GPU,而非明确的海外在线服务。
- Shell / 命令行
- 本地文件系统
PythonNVIDIA DALICUDA-capable NVIDIA DALI build and NVIDIA GPU/driver for GPU decode or GPU operators
使用 NVIDIA skills CLI 安装指定技能:npx skills add nvidia/skills --skill dali-dynamic-mode --yes。README 未说明该技能的独立版本、额外安装源或固定安装目录;CLI 会处理安装目标。
tmp="$(mktemp -d)"
git clone --depth 1 https://github.com/NVIDIA/skills.git "$tmp"
mkdir -p ~/.claude/skills
cp -R "$tmp/skills/dali-dynamic-mode" ~/.claude/skills/
rm -rf "$tmp"根据源仓库地址和 Skill 路径自动生成,只复制这个 Skill 的文件夹。如果上文有作者提供的安装方式,请优先按作者说明操作;想只在当前项目中使用,把 ~/.claude/skills 换成项目里的 .claude/skills。
如何使用这个 Skill?
安装后,把下面任意一句发给 Agent 即可触发:
- 请使用 nvidia.dali.experimental.dynamic as ndd,帮我把这段 DALI Pipeline 模式代码迁移为动态模式,并遵守 next_epoch(batch_size=64)、device="gpu" 和 Batch 显式切片规则。
安装后,在相关任务中向代理提出明确请求,例如:“请使用 nvidia.dali.experimental.dynamic as ndd,帮我把这段 DALI Pipeline 模式代码迁移为动态模式,并遵守 next_epoch(batch_size=64)、device="gpu" 和 Batch 显式切片规则。”仅涉及 Pipeline 模式的任务应跳过该技能。运行或验证代码前,需要确保 nvidia.dali.experimental.dynamic 可导入;使用 .torch() 的示例还需要 PyTorch。
这个 Skill 有哪些优点和局限?
- 覆盖动态模式的核心数据类型、读取器、设备推断、执行模式、随机数和检查点。
- 明确区分 batch.tensors[] 的样本选择与 batch.slice[] 的样本内切片。
- 包含从 Pipeline 模式到动态模式的具体 API 对照和常见错误纠正。
- 支持可变形状 Batch 到 PyTorch 的带填充转换说明。
- 动态模式可能比 Pipeline 模式性能略低;追求最大吞吐量时应优先考虑 Pipeline 模式。
- GPU 解码和 GPU 操作需要 CUDA-capable 的 DALI 构建以及可用的 NVIDIA GPU 和驱动。
- Batch 的 PyTorch 转换对不规则形状有限制,需使用 pad=True。
- 源材料未提供独立测试套件、性能基准数字或支持的具体 DALI 版本。
这个 Skill 与同类方案有什么区别?
与相关 Skills 并排比较;分数均按同一 FSRS 标准得出。
| Skill | FS 评分 | Star 数 | 最近更新 | License |
|---|---|---|---|---|
| DALI 动态模式开发助手 本页 ✓ NVIDIA · 官方 | 58 · 推荐 | ★ 3.8k | 今天 | Apache-2.0 |
| Hugging Face ZeroGPU 开发指南 | 56 · 谨慎使用 | ★ 11k | 6 天前 | Apache-2.0 |
| CuTile 自动调优指南 ✓ NVIDIA · 官方 | 52 · 谨慎使用 | ★ 3.8k | 今天 | Apache-2.0 |
| Earth2Studio 诊断模型构建器 ✓ NVIDIA · 官方 | 56 · 谨慎使用 | ★ 3.8k | 今天 | Apache-2.0 |
| NeMo AutoModel 配方开发 ✓ NVIDIA · 官方 | 55 · 谨慎使用 | ★ 3.8k | 今天 | Apache-2.0 |
与 DALI Pipeline 模式相比,动态模式使用普通 Python 直接调用、stateful reader 和 next_epoch(batch_size),并以 device="gpu" 替代 device="mixed"。该技能指出动态模式更灵活,但可能性能略低;追求最大吞吐量时建议使用 Pipeline 模式。
FollowSkills 如何评估这个 Skill?
技能限定为代码指导,不要求密钥或外部凭据,也未包含网络访问、数据外传、破坏性操作或过度权限;但缺少执行前用户确认、数据敏感性边界、依赖完整性验证和回滚说明,因此扣7分。
SKILL.md 对动态模式、批处理、读者状态、异步执行、检查点和故障排查给出较一致的规则与示例;但依赖 NVIDIA DALI/CUDA/PyTorch,未提供版本锁定或本地可复现测试,异常输入覆盖有限。静态证据不足,按上限给9分。
目标受众、适用场景和“不适用于仅 pipeline-mode 任务”的边界清楚,且有迁移、调试和多种批处理示例;但未明确语义触发条件、非适用范围的更多细节、中文支持或中国大陆网络可达性,GPU 依赖也限制环境适配,因此扣5分。
文档结构清晰,包含前置条件、核心类型、读者、设备、执行、检查点、示例、常见错误、迁移、限制和排障;技能声明 Apache-2.0,作者和团队明确,skill-card 提供版本与评估信息。缺少专属 changelog、精确依赖版本、安装步骤和明确更新路径,因此扣5分。
内容直接覆盖 DALI 动态模式编写、审查、迁移和调试,并提供可直接改写的 Python 示例;评估报告显示有限的任务级正确性和有效性结果,但原始数据与代表性输出不可复核,且示例不覆盖全部声称场景,因此按静态上限给7分。
存在源代码迁移样例、断言式 evals 和评估报告,形成一定可审计线索;但报告称数据集不可用,未提供针对该技能关键路径的可执行测试套件或第三方复现材料,且静态审查无法独立验证 API 正确性,因此扣6分。
点击维度查看打分理由
证据充分度:低 — 主要依赖静态检查、作者材料或有限演示;适合发现线索,不适合做高风险决策。
查看完整评分方法 →