配置#
NVIDIA NIM 多模态安全打包为容器。您可以设置环境变量并指定命令行参数来配置微服务。
GPU 选择#
NIM 容器是 GPU 加速的,并使用 NVIDIA Container Toolkit 来访问主机上的 GPU。
如果主机具有一个或多个相同的 GPU 型号,您可以为 docker run
命令指定 --gpus all
命令行参数。如果主机具有 GPU 组合,例如 A6000 和 GeForce 显示 GPU,请仅在具有计算能力的 GPU 上运行容器。
通过使用以下任一方法,将特定 GPU 暴露给容器
指定
--gpus
参数,例如--gpus="device=1"
。设置
NVIDIA_VISIBLE_DEVICES
环境变量,例如-e NVIDIA_VISIBLE_DEVICES=1
。
运行 nvidia-smi -L
命令以列出要在参数或环境变量中指定的设备 ID
GPU 0: Tesla H100 (UUID: GPU-b404a1a1-d532-5b5c-20bc-b34e37f3ac46)
GPU 1: NVIDIA GeForce RTX 3080 (UUID: GPU-b404a1a1-d532-5b5c-20bc-b34e37f3ac46)
有关更多信息,请参阅 NVIDIA Container Toolkit 文档中的 GPU 枚举。
环境变量#
下表标识了容器中使用的环境变量。使用 -e
命令行参数为 docker run
命令设置环境变量。
名称 |
描述 |
默认值 |
---|---|---|
|
将此变量设置为您的个人 NGC API 密钥的值。 |
无 |
|
指定容器中已下载模型的完全限定路径。 |
|
|
指定容器中用于 gRPC 访问微服务的网络端口号。 |
|
|
指定容器中用于 HTTP 访问微服务的网络端口号。 有关主机和容器网络端口的更多信息,请参阅 Docker 文档中的 发布端口。 |
|
|
指定为 HTTP 请求启动的工作线程数。 |
|
|
指定容器中用于 NVIDIA Triton Inference Server 的网络端口号。 |
|
|
当设置为 |
|
|
当设置为 |
|
|
指定日志记录级别。微服务支持以下值:DEBUG、INFO、WARNING、ERROR 和 CRITICAL。 |
|
|
指定容器中模型清单 YAML 文件的完全限定路径。 |
|
|
指定要与容器一起使用的模型配置文件 ID。默认情况下,容器会尝试自动将主机 GPU 型号和 GPU 计数与最佳模型配置文件匹配。 |
无 |
|
指定 API 中使用的模型名称。在逗号分隔的列表中指定多个名称。如果您指定多个名称,服务器将响应任何名称。响应的模型字段中的名称是此列表中的第一个名称。默认情况下,模型是从 |
无 |
|
当设置为 |
|
|
指定 NVIDIA Triton Inference Server 的超时时间(以微秒为单位)。默认值 |
|
|
指定 NVIDIA Triton Inference Server 的 gRPC 端口号。 |
|
卷#
下表标识了容器中使用的路径。使用此信息来规划要绑定挂载到容器中的本地路径。
容器路径 |
描述 |
示例 |
---|---|---|
|
指定已下载模型的路径,相对于容器的根目录。 此路径的典型用途是将主机上的目录与容器内的此路径绑定挂载。例如,要在主机上使用 如果您未指定绑定或卷挂载(如上述命令中的
|
|