关于 physical-ai-infrastructure-setup-and-resilient-scaling
此技能编排 Physical AI 基础设施的搭建与弹性运行,适用于通过 Kubernetes 和 OSMO 部署工作负载的团队。它按目标选择组件指南,设置分阶段验证门槛,并将支持的工作负载路由至相应技能。
主要功能
- 01选择兼容的集群、OSMO 与推理目标
- 02部署前运行预检
- 03按基础设施阶段安排部署
- 04验证集群、推理、OSMO 和工作负载
- 05指导工作负载监控与恢复
适用场景
- 01为选定工作负载搭建 Physical AI 基础设施
- 02集群就绪后部署 OSMO 与推理服务
- 03提交工作流前检查端点就绪状态
- 04排查失败工作流,避免盲目重试
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ promptingcompany/ nv-skills --skill physical-ai-infrastructure-setup-and-resilient-scaling安装后在 Claude Code 中输入/physical-ai-infrastructure-setup-and-resilient-scaling确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
BENCHMARK.mdcomponents/azure-access/reference.mdcomponents/cluster-azure/.gitignorereference.mdcomponents/cluster-azure/scripts/helmfile.yamlmain.tfoutputs.tfpreflight.shsetup.shstorage-class-nfs.yamlsystem_node_capacity_test.shterraform.tfvars.examplevariables.tfversions.tfcomponents/cluster-azure/terraform/main.tfoutputs.tfterraform.tfvars.examplevariables.tfversions.tfcomponents/cluster-azure/terraform/modules/README.mdcomponents/cluster-azure/terraform/prerequisites/az-sub-init.shinstall-terraform.shregister-azure-providers.shrobotics-azure-resource-providers.txtcomponents/cluster-microk8s/reference.mdruntimeclass-nvidia-runc.yamlcomponents/cluster-microk8s/scripts/preflight.shcomponents/driver/reference.mdcomponents/inference-azure/reference.mdcomponents/inference-azure/scripts/install.sh详细介绍
Physical AI 基础设施设置与弹性扩展
Physical AI 基础设施栈的权威技能。使用它将集群、推理、OSMO 和工作负载阶段组合起来,构建可复现的 Physical AI SDG 环境,并确保环境始终可观测且可恢复。
操作规则
- 只读取所选目标所需的组件参考资料。不要默认加载所有组件。
- 将仓库作为持久化产物。修复已纳入版本控制的配置或脚本,然后重新运行。不要通过未跟踪的一次性更改来恢复失败的安装。
- 如果存在已纳入版本控制的脚本,则通过该脚本执行会修改集群、OSMO、Helm、Terraform 或 Azure 状态的操作。允许执行只读诊断。
- 在第一个未通过的关卡处停止。按以下顺序修复最底层的责任层:配置、脚本,然后是技能指南。
- 尽可能从环境中推导值。仅询问无法推断的值,例如 API 密钥、目标选择或配额取舍。
- 将密钥存储在
${REPO_ROOT}/.env中。存储、数据库、Redis 和端点名称等从集群推导的值应来自 Terraform 输出或平台查询,而不是.env。 - 预检意味着不存在已部署状态:没有集群 API、Terraform 输出、Helm 发布、OSMO 池或工作流状态。这些属于部署/验证关卡。
- 切勿在命令、YAML、日志或对话记录中打印、回显或粘贴原始密钥。优先使用凭据句柄、Kubernetes
secretKeyRef和仅在运行时注入密钥。分享前,使用scripts/scan_transcript_secrets.py扫描原始对话记录导出文件。 - 使用绝对路径。通过
git rev-parse --show-toplevel推导仓库根目录。
组件参考资料
每个组件都位于此技能中,因此整个技术栈只有一个权威触发入口。仅当所选目标需要相应部分时,才加载该组件的参考资料。
| 事项 | 加载 | 资源 |
|---|---|---|
| 阶段矩阵和旧版驱动程序说明 | components/driver/reference.md | 无 |
| MicroK8s 集群 | components/cluster-microk8s/reference.md | components/cluster-microk8s/scripts/、components/cluster-microk8s/runtimeclass-nvidia-runc.yaml |
| Azure AKS 集群 | components/cluster-azure/reference.md | components/cluster-azure/scripts/、components/cluster-azure/terraform/ |
| NIM Operator 推理 | components/inference-nim-operator/reference.md | components/inference-nim-operator/scripts/、components/inference-nim-operator/nims/ |
| NVCF 推理 | components/inference-nvcf/reference.md | components/inference-nvcf/scripts/ |
| Azure AI Foundry 推理 | components/inference-azure/reference.md | components/inference-azure/scripts/ |
| MicroK8s OSMO | components/osmo-k8s/reference.md | components/osmo-k8s/scripts/、上游 OSMO 部署脚本 |
| Azure OSMO | components/osmo-azure/reference.md | components/osmo-azure/scripts/、上游 OSMO 部署脚本以及 Azure TF 输出 |
| Azure 访问设置 | components/azure-access/reference.md | 无 |
| OSMO CLI 和工作流操作 | components/osmo-cli/reference.md | components/osmo-cli/scripts/、components/osmo-cli/references/、components/osmo-cli/agents/、components/osmo-cli/tests/ |
| OpenClaw Azure 设备登录 | components/openclaw-azure-login/reference.md | 无 |
OSMO CLI 支持文件
OSMO CLI 组件包含二级支持文件,因为其命令和工作流范围较大。仅在指定情况下直接加载这些文件。
| 文件 | 读取时机 |
|---|---|
components/osmo-cli/agents/workflow-expert.md | 启动用于生成工作流或排查工作流故障的子 Agent 时。 |
components/osmo-cli/agents/logs-reader.md | 启动用于汇总 OSMO 工作流故障日志的子 Agent 时。 |
components/osmo-cli/references/cli-commands.md | 需要查询确切的 OSMO CLI 标志、载荷或命令语法时。 |
components/osmo-cli/references/workflow-spec.md | 需要查询工作流 YAML 架构、凭据、输出或提供程序字段时。 |
components/osmo-cli/references/workflow-patterns.md | 需要设计多任务、数据依赖、Jinja、串行或并行工作流时。 |
components/osmo-cli/references/advanced-patterns.md | 需要检查点、重试/退出行为或节点排除相关信息时。 |
components/osmo-cli/tests/orchestrator-runtime-failure.md | 验证或调试 OSMO 编排审查模式时。 |
目标选择
每个阶段恰好选择一个选项。阶段 2 在阶段 1 之后进行。
- Kubernetes:
MicroK8s或Azure - OSMO:Kubernetes 为 MicroK8s 时选
MicroK8s OSMO,Kubernetes 为 Azure 时选Azure OSMO - 推理:
NIM Operator、NVCF、Azure AI Foundry或None - 工作负载:Video Data Augmentation、Defect Image Generation、NuRec Carline Adaptation、NRE、NCore、Asset Harvester 或自定义工作流 YAML
预配前拒绝无效组合:
| 集群 | NIM Operator | NVCF | Azure AI Foundry |
|---|---|---|---|
| MicroK8s | 是 | 是 | 否,Foundry 需要 Azure 标识 |
| Azure | 是 | 是 | 是 |
对于 OpenClaw 或任何无法打开浏览器的纯聊天环境,在检查 Azure 先决条件前,先阅读 components/openclaw-azure-login/reference.md。
对于任何 Azure 目标,在运行 Azure 组件预检前,先阅读 components/azure-access/reference.md。
设置流程
- 确认目标选择和工作负载的计算要求。
- 加载所选组件的参考资料。
- 提前解决先决条件,包括 API 密钥、Azure 访问权限、调用方 CIDR、GPU 配额、存储类和 OSMO 登录要求。
- 预配前,对每个选定的基础设施组件以及任何 OSMO CLI/工作负载运行预检
scripts/preflight.sh;根据结果制定实施计划,并在预检出现红色状态时停止。 - 首先部署 Kubernetes。集群门禁通过前,不得启动其他任何操作。
- Kubernetes 部署完成后,再部署 OSMO 和推理。集群就绪后,这两项可以并行进行,但只有在所有选定门禁均通过后才能提交工作负载。
- 只有在 OSMO、存储凭据、计算池和所选推理端点都通过验证后,才能提交工作负载。对于 VDA,这包括运行
preflight_credentials.sh、使用已解析的--set值运行pre_submit_guard.py、确保模型缓存前缀非空,以及执行工作流命名空间端点冒烟测试。 - 监控直至完成。工作流状态失败时,从
components/osmo-cli/reference.md检查事件和日志;切勿盲目重新提交。
推理发现
避免过度部署成本高昂的端点。
- 扫描所选工作流规范和默认值,查找端点引用:
*.osmo-nims.svc.cluster.local、api.nvcf.nvidia.com/*、*.inference.ai.azure.com或*.cognitiveservices.azure.com。 - 将每个引用映射到所选后端:
- NIM Operator:服务名称必须与
components/inference-nim-operator/nims/下的目录名称一致。 - NVCF:环境必须提供函数 URL 或函数 ID。
- Azure AI Foundry:端点名称必须通过
components/inference-azure/scripts/install.sh部署。
- NIM Operator:服务名称必须与
- 如果工作流需要的能力不受所选后端支持,请停止并报告不匹配。不得悄悄替换为其他模型。
验证关卡
每个阶段在组件参考中都有自己的 Verify 部分。这些关卡是强制要求:
| 阶段 | 关卡 |
|---|---|
| Kubernetes | 可访问集群 API,节点状态为 Ready,GPU 路径已公布 GPU 容量,并且 CPU + NVCF 路径已将 runtimeclass/nvidia 映射到 runc。 |
| 推理 | 工作负载引用的每个端点均可访问。NIM 就绪状态通过 /v1/health/ready 检查;NVCF 和 Foundry 仍需执行特定任务的身份验证检查。 |
| OSMO | OSMO Pod 状态为 Ready,资源池状态为 ONLINE,端口转发看门狗运行正常,存储凭据已配置,且 verify-hello 工作流状态为 COMPLETED。 |
| 工作负载 | 提交前,所选工作负载的防护检查均已通过。osmo workflow query <id> 报告状态为 COMPLETED,且每个任务均为绿色。对于失败的终态,重试前必须先检查事件和日志。 |
弹性扩缩容
- 在配置集群前,根据工作负载需求确定集群规模。对于 Azure,在运行
terraform apply前,检查所选 VM 系列的 CPU 和 GPU 配额。 - 对于 NIM Operator,只部署工作负载引用的 NIMService。每项服务在集群生命周期内都会预留 GPU 和模型缓存存储。
- 使 OSMO 存储 URL 方案与当前使用的后端保持一致。本地 MicroK8s 使用 MinIO,Azure 使用基于 Blob 的配置。
- 将 Pending、Unknown、ImagePullBackOff、未绑定的 PVC 或 Ready 副本数为 0 视为层级故障。再次运行相同命令前,先排查调度、存储、镜像凭据和相邻平台状态。
- 对于耗时较长的部署或工作流监视,提供心跳更新,说明当前状态、已用时间、最近的有效观察结果以及下一步检查。
工作负载路由
- 视频数据增强:使用
skills/physical-ai-video-data-augmentation/SKILL.md。 - 缺陷图像生成:使用
skills/physical-ai-defect-image-generation/SKILL.md。 - NuRec 车系适配:使用
skills/carline-adaptation/SKILL.md。 - NRE、NCore 和 Asset Harvester 位于
skills/INDEX.md中列出的 NuRec 官方目录中。 - 自定义工作负载:检查资源请求、镜像凭据、数据凭据和推理 URL 后,通过 OSMO 提交提供的工作流 YAML。
评估提示词和结果
- 正向触发:“在 Azure AKS 上使用 NIM Operator 为 VDA 设置弹性 Physical AI 基础设施。” 预期:使用此技能。
- 负向触发:“总结此工作流 ID 对应的近期 OSMO 工作流日志。” 预期:除非请求还涉及基础设施堆栈的设置、扩缩容、验证或恢复,否则不要使用此基础设施设置技能。
最近一次静态审查:2026-05-26,描述关键词与上述预期路由相符。
评论
支持 Markdown