模型微调#
当 VISTA-3D NIM 运行时,默认情况下,它会自动从 NGC 下载 VISTA-3D 模型包和权重到 NIM 容器中。但是,如果您希望微调 VISTA-3D 并在 NIM 中继续使用它,以下是关于在 VISTA-3D NIM 中使用自定义模型包和权重的详细指南。
微调模型#
请按照 Project MONAI 上的 本教程 学习如何微调 VISTA-3D 模型。
在 NIM 中使用微调后的模型#
一旦您在本地存储中有了微调后的 VISTA-3D 包,您只需将其挂载到 /opt/bundle
,并通过设置 NIM_MANIFEST_PROFILE
环境变量为其设置正确的模型清单配置文件。
-e NIM_MANIFEST_PROFILE=43d0baebee73b7bdc2f9c7edf5c726b2323b4f7283eab92fab893d451592656d \
-v /path/to/fine-tuned/bundle:/opt/bundle \
以下是使用微调模型运行 NIM 的完整命令。
docker run --rm -it --name vista3d \
--runtime=nvidia -e CUDA_VISIBLE_DEVICES=0 \
--shm-size=8G \
-p 8000:8000 \
-e NGC_API_KEY=$NGC_API_KEY \
-e NIM_MANIFEST_PROFILE=43d0baebee73b7bdc2f9c7edf5c726b2323b4f7283eab92fab893d451592656d \
-v /path/to/local/bundle:/opt/bundle \
nvcr.io/nim/nvidia/vista3d:1.0.0
以下是可用配置文件的列表
56df3d486bbd1c8ac4a1de4d613d4037927bd462d751bf4fe9cbeb8d14890cb8
:(默认配置文件) 从 NGC 下载并使用 VISTA-3D 包。43d0baebee73b7bdc2f9c7edf5c726b2323b4f7283eab92fab893d451592656d
:使用用户在/opt/bundle
提供的 VISTA-3D 包(微调模型)。
问题排查#
如果您在使用微调模型时遇到问题,以下是一些常见的问题排查步骤
常见问题#
模型未加载:请确保微调包的路径正确,并且该包已正确挂载到 /opt/bundle。如果该包未挂载在
/opt/bundle
下,您可能会看到此错误
nimlib.exceptions.ManifestDownloadError: Error downloading manifest to cache: /opt/nim/.cache error: Invalid Repo ID: path does not exist: /opt/bundle; repo_id: RepoId { repo_path: "/opt/bundle", revision: None, protocol: Some("local") }
如果本地目录(已挂载到 /opt/bundle
)不包含必要的包文件,您也会看到此错误
nimlib.exceptions.ManifestDownloadError: Error downloading manifest to cache: /opt/nim/.cache error: Object not found
配置文件不正确:请验证 NIM_MANIFEST_PROFILE 环境变量是否设置为正确的配置文件 ID。配置文件 ID 需要是上述 ID 之一。否则,您可能会最终使用一些自动配置文件选择。对于微调模型,您可以查看日志以确认配置文件是否已正确设置
"Matched profile_id in manifest from env NIM_MANIFEST_PROFILE to: 43d0baebee73b7bdc2f9c7edf5c726b2323b4f7283eab92fab893d451592656d"
Docker 权限:请确保您拥有运行 Docker 命令和访问指定目录的必要权限。
日志和调试#
要查看日志和调试问题,您可以使用以下 Docker 命令
查看日志
docker logs vista3d
访问容器 Shell
docker exec -it vista3d /bin/bash