AI Workbench 命令行界面 (CLI) 参考#

NVIDIA AI Workbench 是一个用于数据科学、机器学习和 AI 项目开发的开发者工具包。对于喜欢在终端中工作的用户,AI Workbench 提供了命令行界面 (CLI)。有关 AI Workbench CLI 的当前和历史版本,请参阅发行说明。有关 AI Workbench 应用程序中的 Git 支持,请参阅AI Workbench 中的 Git

提示

要开始使用 AI Workbench CLI,请参阅基本快速入门 (CLI)

AI Workbench CLI 命令#

以下是 AI Workbench CLI 命令。

全局选项#

以下选项可用于所有 AI Workbench CLI 命令。

选项

描述

类型

默认值

有效值

--context, -c

运行命令时要使用的上下文(位置)的名称。这对于脚本编写以及在运行命令之前未激活上下文时非常有用。

字符串

--debug

使用调试日志运行命令。

--help, -h

提供命令的帮助信息。

--output, -o

确定命令输出的格式。设置为 json 表示 JSON 格式。设置为 default 表示人类可读的文本。如果您的终端支持 TTY,则输出将以样式呈现。

字符串

default

default, json

--project, -p

运行命令时要使用的项目的绝对路径。这对于脚本编写非常有用,尤其是在运行命令之前未打开项目时。如果您已打开一个项目,并且使用此选项运行命令,则此选项将覆盖已打开的项目。

字符串

--workbench-dir

AI Workbench 目录的路径。当您将 AI Workbench 安装在与默认目录不同的目录中时,请使用此选项。

字符串

~/.nvwb

activate#

概要#

1nvwb activate <context_name> [options]

描述#

激活由 context_name 指定的上下文(位置)。context_name 是必需的。有关更多信息,请参阅AI Workbench 位置

当您激活上下文时,AI Workbench 服务启动,并且您的容器运行时(Docker 或 Podman)也会启动。

激活上下文后,所有后续 CLI 命令默认使用该上下文,因此您无需指定 --context 选项

提示

在运行 activate 之前,请使用list contexts 查看现有上下文。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--external-access

在与用户共享链接后,允许访问在上下文中运行的应用程序。有关更多信息,请参阅共享您的工作应用程序

警告

您有责任实施适当的安全控制并管理对远程计算机的网络访问。

示例#

要激活本地上下文(位置),请运行以下代码。

1nvwb activate local

您应该看到类似于以下内容的输出。

1Connecting to local
2
3 Please wait until AI Workbench is started and ready.

此外,您的命令提示符会更改以添加上下文(位置)名称,类似于以下内容。

1workbench@computer:~$
2(nvwb:local) workbench@computer:~$

add package#

概要#

1nvwb add package [package-manager] [package-reference] [options]

描述#

将一个或多个软件包添加到当前打开的项目或指定的项目。有关更多信息,请参阅软件包

package-manager 是软件包管理器的名称,例如 aptpip,它应该添加指定的软件包。软件包管理器在项目的基本环境中配置。

package-reference 是要删除的软件包的名称,或软件包名称和版本信息。您可以为同一软件包管理器指定多个软件包,以空格分隔。

如果您未指定 package-managerpackage-reference,则会出现交互式提示,您可以键入并使用箭头键进行选择。

提示

在运行 add package 之前,请使用list packages 查看现有软件包。

选项#

此命令接受相关的全局选项

示例#

要添加软件包,例如 NumPy,请运行以下代码。

1nvwb add package pip numpy

您应该看到类似于以下内容的输出。

1Package Manager: pip
2
3  PACKAGE   | VERSION SPECIFICATION(S) | INSTALLED IN BASE
4------------|--------------------------|-------------------
5 jupyterlab | >3.0                     | false
6 numpy      |                          | false

attach#

概要#

1nvwb attach [options]

描述#

连接到当前打开的项目或指定项目的容器。当您需要在项目容器中或运行 AI Workbench 服务的宿主机上打开 shell 会话时,请使用此命令。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--host

连接到运行 AI Workbench 服务的宿主机。

build#

概要#

1nvwb build [options]

描述#

构建当前打开的项目或指定项目的容器,或停止构建。有关更多信息,请参阅AI Workbench 项目

提示

在运行 build 之前,请使用status 查看项目的状态。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--full-build

重新生成容器文件并强制执行完整构建。

--stop

停止当前容器构建。

示例#

要为当前项目重建容器,请运行以下代码。

1nvwb build --full-build

在构建运行时,您应该看到类似于以下内容的输出。

1 Building Environment ██████████████████████████████████████████████████ 28/28

当构建完成时,您应该看到类似于以下内容的输出。

1 Container build complete (22.047173156s)

clone#

概要#

1nvwb clone project [remoteURL] [options]

描述#

将现有的 Git 存储库克隆到当前打开的上下文(位置)或指定上下文中的 AI Workbench 项目中。有关更多信息,请参阅AI Workbench 中的 Git

remoteURL 是要克隆的现有存储库的 URL。如果您未指定 remoteURL,则会出现交互式提示,您可以键入并使用箭头键进行选择。

注意

在可以使用执行 Git 操作的 CLI 命令之前,您必须从 AI Workbench 连接到您的 Git 帐户。有关更多信息,请参阅connect integration连接到您的 Git 帐户和其他集成

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--projectPath

项目应克隆到的目录的绝对路径。如果未指定,则项目将被克隆到默认项目目录中。

字符串

示例#

要克隆项目,请运行以下代码。

1 nvwb clone project <url of repository>

您应该看到类似于以下内容的输出。

1 Project Clone complete (4.006585582s)
2
3Cloned project 'hello-world' (/home/workbench/nvidia-workbench/project-directory)
4
5 Container build complete (15.070521811s)

注意

克隆项目后,项目不会自动打开。要在您的新项目中工作,请close 关闭任何当前项目,然后 open 打开新项目。

close#

概要#

1nvwb close [options]

描述#

关闭当前上下文(位置)中当前打开的项目。有关更多信息,请参阅AI Workbench 项目

选项#

此命令接受相关的全局选项,以及以下附加选项。

注意

close 不支持全局选项 --context--project

选项

描述

类型

默认值

有效值

--force, -f

如果应用程序或项目容器正在运行,请先停止它们,然后再关闭项目。

示例#

要关闭项目,请运行以下代码。

1nvwb close

没有输出,但您的命令提示符会更改以删除项目名称,类似于以下内容。

注意

即使您关闭了项目,项目仍然是终端中的当前目录。

1(nvwb:local/hello-world) workbench@computer:~/nvidia-workbench/hello-world$
2(nvwb:local) workbench@computer:~/nvidia-workbench/hello-world$

commit#

概要#

1nvwb commit [options]

描述#

暂存并提交所有新的、修改的和删除的文件。有关更多信息,请参阅AI Workbench 中的 Git

使用 --message 指定日志消息。如果您未指定 --message,AI Workbench 会为您创建一个消息,您可以使用 Tab 键以交互方式编辑该消息。

注意

在可以使用执行 Git 操作的 CLI 命令之前,您必须从 AI Workbench 连接到您的 Git 帐户。有关更多信息,请参阅connect integration连接到您的 Git 帐户和其他集成

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--message, -m

描述要提交的更改的日志消息。消息限制为 50 个字符。

字符串

--overrideWarnings

覆盖任何警告和建议的修复措施。

示例#

要提交项目中的更改,请运行以下代码。

1nvwb commit --message "Important changes"

您应该看到类似于以下内容的输出。

1Successfully Staged and Committed all changes in project 'hello-world'

compose down#

概要#

1nvwb experimental compose down [options]

描述#

停止当前打开的项目或指定项目的正在运行的 compose 服务。有关更多信息,请参阅使用 Docker Compose 的多容器支持

警告

如果您使用 Docker 而不是 Podman 作为您的容器运行时,则仅支持 compose 命令。

提示

在运行 compose down 之前,请使用compose status 查看 compose 环境的状态。

选项#

此命令接受相关的全局选项

示例#

要停止正在运行的 compose 服务,请运行以下代码。

1nvwb experimental compose down

您应该看到类似于以下内容的输出。

1 Compose services are stopped

compose logs#

概要#

1nvwb experimental compose logs

描述#

获取当前打开项目的 compose 服务的日志。有关更多信息,请参阅使用 Docker Compose 的多容器支持

警告

如果您使用 Docker 而不是 Podman 作为您的容器运行时,则仅支持 compose 命令。

如果您调用 nvwb experimental compose logs,则输出将流式传输到终端窗口。

要将输出保存到文件,请运行以下代码。

1nvwb experimental compose logs > output.txt

选项#

此命令不接受任何选项。

compose status#

概要#

1nvwb experimental compose status

描述#

获取当前打开项目的 compose 服务的状态。有关更多信息,请参阅使用 Docker Compose 的多容器支持

警告

如果您使用 Docker 而不是 Podman 作为您的容器运行时,则仅支持 compose 命令。

此命令指示 compose 服务是正在启动、运行、停止还是已停止。

选项#

此命令不接受任何选项。

示例#

要获取 compose 服务的当前状态,请运行以下代码。

1nvwb experimental compose status

您应该看到类似于以下内容的输出。

1Compose status: services not running

compose up#

概要#

1nvwb experimental compose up [options]

描述#

启动由当前打开的项目或指定项目的根目录下的 compose.yaml 文件定义的 compose 服务。有关更多信息,请参阅使用 Docker Compose 的多容器支持

警告

如果您使用 Docker 而不是 Podman 作为您的容器运行时,则仅支持 compose 命令。

如果 compose 服务已在运行,则不会重新启动它们。如果您编辑了 compose.yaml 文件,请先调用 compose down,然后调用 compose up 以使用您的更改重新启动环境。

提示

在运行 compose up 之前,请使用compose status 查看 compose 环境的状态。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--profile

指定要启动的配置文件。您可以使用多个 --profile 实例来指定多个配置文件。有关更多信息,请参阅使用 Compose 的配置文件

示例#

要启动由当前打开项目的根目录下的 compose.yaml 文件定义的 compose 服务,请运行以下代码。

1nvwb experimental compose up

您应该看到类似于以下内容的输出。

1 Compose services are running

configure mounts#

概要#

1nvwb configure mounts [source1:target1] [source2:target2] [options]

描述#

配置当前打开的项目或指定项目的现有挂载。如果要创建新挂载,请改用 create mount。此命令会覆盖挂载的任何当前配置。有关更多信息,请参阅AI Workbench 挂载

警告

您不能在项目容器运行时运行此命令。在运行此命令之前,请使用statusstop 确保项目容器已停止。

指定 source:target,其中 source 是当前打开的上下文(位置)或指定上下文中要挂载到项目容器中的目录,target 是项目容器中的新目录。

您可以指定多个 source:target,以空格分隔。

如果您未指定 source:target,则会出现交互式提示,您可以键入并使用箭头键进行选择。

提示

在运行 configure mounts 之前,请使用list mounts 查看现有挂载。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--wide

在输出中包含所有可用的列。

configure secrets#

概要#

1nvwb configure secrets [variable1:value1] [variable2:value2] [options]

描述#

配置当前打开的项目或指定项目的现有密钥变量。如果要创建新的密钥变量,请改用 create secret。此命令会覆盖密钥变量的任何当前值。有关更多信息,请参阅密钥(敏感环境变量)

警告

您不能在项目容器运行时运行此命令。在运行此命令之前,请使用statusstop 确保项目容器已停止。

指定 variable:value,其中 variable 是密钥变量的名称,value 是密钥变量的新值。您可以指定多个 variable:value,以空格分隔。

如果您未指定 variable:value,则会出现交互式提示,您可以键入并使用箭头键进行选择。

提示

在运行 configure secrets 之前,请使用list secrets 查看现有密钥。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--wide

在输出中包含所有可用的列。

示例#

要设置名为 test1 的密钥变量的值,请运行以下代码。

1nvwb configure secrets test1:123456789 --wide

您应该看到类似于以下内容的输出。

注意

密钥变量的值将显示,但除了最后 3 位数字外,所有数字都将被隐藏。

11 secrets configured
2
3 VARIABLE | DESCRIPTION | CONFIGURED | VALUE
4----------|-------------|------------|-----------
5  test1   | Test var 1  | true       | ******789

connect integration#

概要#

1nvwb connect integration [integration name [token|-]]  [options]

描述#

连接集成,例如 GitHub 或 GitLab,并授权 AI Workbench 代表 AI Workbench 用户进行调用。有关更多信息,请参阅AI Workbench 集成

integration name 的有效值包括 NGCGithubGitlab 以及您创建的任何自定义集成。

  • 如果您未指定 integration name,则会出现交互式提示,您可以键入并使用箭头键进行选择。

  • 如果您仅指定 integration name,则会启动 OAuth2 身份验证工作流程,您需要登录到该集成。

  • 如果您指定 integration token,则该令牌将用于身份验证。

  • 如果您指定 integration -,则令牌将从 stdin 读取。

提示

在运行 connect integration 之前,请使用list integrations 查看现有集成。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--no-browser, -n

如果执行 OAuth2 登录以获取凭据,则不自动打开本地 Web 浏览器。

示例#

要连接到 GitHub,请运行以下代码。

1nvwb connect integration Github

您应该看到类似于以下内容的输出。

1First, copy your one-time code: ####-####
2
3Then, Open this URL in your browser: https://github.com/login/device
4
5     NAME  |  DESCRIPTION   |       CREDENTIALS       | CONNECTED
6-----------|----------------|-------------------------|-----------
7  NGC      | ngc.nvidia.com | container-registry      | false
8  Github   | Github.com     | git, container-registry | true
9  Gitlab   | Gitlab.com     | git                     | false

create app#

概要#

1nvwb create app [app-name] [app-type] [options]

描述#

在当前打开的项目或指定项目中创建一个应用程序。有关更多信息,请参阅AI Workbench 应用程序

警告

您不能在项目容器运行时运行此命令。在运行此命令之前,请使用statusstop 确保项目容器已停止。

指定 app-name 以在您的项目中为应用程序命名。

app-type 是应用程序的类型。使用 custom 将自定义应用程序添加到您的项目。当您将自定义应用程序添加到您的项目时,您必须指定运行应用程序所需的选项。

使用 vs-code jupyterlab 将内置应用程序类型添加到您的项目。当您将内置应用程序添加到您的项目时,您无需指定任何选项。

如果您未指定应用程序名称、应用程序类型或必需选项,则会出现交互式提示,您可以键入并使用箭头键进行选择。

提示

在运行 create app 之前,请使用list apps 查看现有应用程序。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--app-class

应用程序的类别,用于确定哪些可选配置选项可用。

字符串

process, webapp

--health-check-cmd

用于检查应用程序的运行状况或状态的 shell 命令。返回零表示应用程序正在运行且运行状况良好。返回非零值表示应用程序未运行或运行状况不佳。

字符串

--icon-url

应用程序的可选图标或图像链接。

字符串

--process-wait-until-finished

如果 --app-classprocess,则可用。如果 AI Workbench 桌面应用程序应等待应用程序完成,则为 True;如果桌面应用程序应让其在后台运行,则为 False。如果为 true,则桌面应用程序会在进程完成时通知您。CLI 始终等待。

布尔值

true

true, false

--start-cmd

用于启动应用程序的 shell 命令。不能是阻塞命令。

字符串

--stop-cmd

用于停止应用程序的 shell 命令。

字符串

--timeout-seconds

AI Workbench 等待 health_check_command 完成的秒数。

整数

60

大于 0 且小于 3600

--user-msg

应用程序运行时向用户显示的可选消息。如果 --app-classwebapp,您可以在消息中使用占位符字符串 {{URL}},它将在应用程序启动后填充。

字符串

--webapp-auto-launch

如果 --app-classwebapp,则可用。如果 AI Workbench 应自动为用户打开应用程序 URL,则为 True;否则为 False。

布尔值

true

true, false

--webapp-port

如果 --app-classwebapp,则可用。应用程序运行所在的端口。

字符串

--webapp-proxy-trim-prefix

如果 --app-classwebapp,则可用。如果 AI Workbench 反向代理应在将请求转发到应用程序之前删除特定于应用程序的 URL 前缀,则为 True;否则为 False。

布尔值

false

true, false

--webapp-url

用于访问 Web 应用程序的静态 URI。如果 --app-classwebapp,则必须指定 --webapp-url--webapp-url-cmd,但不能同时指定两者。

字符串

--webapp-url-cmd

用于获取 Web 应用程序 URI 的 shell 命令。此命令的输出被视为 URL。如果 --app-classwebapp,则必须指定 --webapp-url--webapp-url-cmd,但不能同时指定两者。

字符串

示例#

要在您的项目中创建新的内置 vs-code 类型应用程序,请运行以下代码。

1nvwb create app "test app" vs-code

您应该看到类似于以下内容的输出。

1     NAME    |    TYPE    | CLASS  | RUN STATE
2-------------|------------|--------|-------------
3  test app   | vs-code    | native |  Stopped
4  jupyterlab | jupyterlab | webapp |  Stopped

要在您的项目中创建新的自定义应用程序,请运行类似于以下代码的代码。

提示

您可以在 演练:添加自定义应用程序 中找到有关此示例的更多详细信息。

1nvwb create app simple-gradio custom --app-class=webapp --health-check-cmd="curl -f https://127.0.0.1:8080/" --start-cmd="cd /project/code && PROXY_PREFIX=$PROXY_PREFIX python3 app.py" --stop-cmd="pkill -f '^python3 app.py'" --webapp-port=8080 --webapp-url="https://127.0.0.1:8080/" --webapp-auto-launch

您应该看到类似于以下内容的输出。

1      NAME      |    TYPE    | CLASS  | RUN STATE
2----------------|------------|--------|-------------
3  simple-gradio | custom     | webapp |  Stopped
4  jupyterlab    | jupyterlab | webapp |  Stopped

create branch#

概要#

1 nvwb create branch [branch-name] [options]

描述#

在当前打开的项目或指定项目中创建并切换到新的 git 分支。有关更多信息,请参阅 AI Workbench 中的 Git

branch-name 是新分支的名称。

如果您未指定必需的选项,则会显示交互式提示,您可以键入并使用箭头键进行选择。

提示

使用 list branches 在运行 create branch 之前查看现有分支。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--carry

将当前分支中任何未提交或未跟踪的更改带到新分支。

示例#

要创建名为 feature-1 的新分支,请运行以下代码。

1nvwb create branch feature-1

您应该看到类似于以下内容的输出。

1   NAME    | BRANCH TYPE | REMOTE ALIAS | CURRENT BRANCH
2-----------|-------------|--------------|-----------------
3 feature-1 | LOCAL       |              | 4 main      | LOCAL       | origin       |

create context#

概要#

1nvwb create context [context_name] [hostname] [options]

描述#

创建一个新的上下文(位置)以运行 AI Workbench 项目。有关更多信息,请参阅 AI Workbench 位置

context_name 是上下文的名称。context_name 限制为 47 个字符,使用 [a-zA-Z0-9-_]。

hostname 是上下文的计算机的主机名或 IP 地址。如果新上下文与您正在运行 CLI 的计算机相同,请指定 localhost

如果您未指定必需的选项,则会显示交互式提示,您可以键入并使用箭头键进行选择。

提示

使用 list contexts 在运行 create context 之前查看现有上下文。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--accept-ssh-fingerprints

接受上下文(位置)的 SSH 指纹。

--brev-instance-name

为上下文(位置)配置指定的 Brev 实例。

字符串

--context-workbench-dir

Workbench 服务存储配置和内部数据的内部 workbench 目录。对于大多数安装,这是/home/<username>/.nvwb,这是默认目录。

字符串

--description-d

上下文(位置)的描述。

字符串

--ssh-key-path

连接到此上下文(位置)时要使用的 SSH 密钥的路径。对于 ssh-agent 持有的密钥,请提供匹配的公钥。

字符串

--ssh-port

连接到此上下文(位置)时要使用的目标 SSH 端口。

整数

22

--ssh-username

连接到此上下文(位置)时要使用的用户名。

字符串

create environment-variable#

概要#

1nvwb create environment-variable variable value [options]

描述#

在当前打开的项目或指定项目中创建环境变量。有关更多信息,请参阅 环境变量

警告

您不能在项目容器运行时运行此命令。在运行此命令之前,请使用statusstop 确保项目容器已停止。

variable 是环境变量的名称。variable 只能包含字母、数字和下划线。

value 是环境变量的值。

如果您未指定变量或值,则会显示交互式提示,您可以键入并使用箭头键进行选择。

提示

使用 list environment-variables 在运行 create environment-variable 之前查看现有环境变量。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--description

环境变量的描述。

字符串

示例#

要创建新的环境变量,请运行以下代码。

1nvwb create environment-variable MyVariable 123456 --description "a test variable"

您应该看到类似于以下内容的输出。

1   VARIABLE  | VALUE  |   DESCRIPTION
2-------------|--------|-----------------
3  MyVariable | 123456 | a test variable

create integration#

概要#

1nvwb create integration [options]

描述#

创建集成,例如 GitHub 或 GitLab,并授权 AI Workbench 代表 AI Workbench 用户进行调用。有关更多信息,请参阅 AI Workbench 集成

当您运行此命令时,会显示交互式提示,您可以键入并使用箭头键进行选择。如果您想在不使用交互式界面的情况下创建集成,请将集成的 JSON 配置文件添加到 ~/.nvwb/C:\Users\<username>\AppData\Local\NVIDIA Corporation\AI Workbench\

提示

使用 list integrations 在运行 create integration 之前查看现有集成。

选项#

此命令接受相关的全局选项

示例#

要创建集成,请运行以下代码。

1nvwb create integration

将显示交互式提示。完成集成创建后,您应该看到类似于以下内容的输出。

1     NAME  |  DESCRIPTION   |       CREDENTIALS       | CONNECTED
2-----------|----------------|-------------------------|-----------
3  NGC      | ngc.nvidia.com | container-registry      | false
4  Github   | Github.com     | git, container-registry | true
5  Gitlab   | Gitlab.com     | git                     | false

create mount#

概要#

1nvwb create mount [type] [target] [options]

描述#

为当前打开的项目或指定项目创建新的挂载。有关更多信息,请参阅 AI Workbench 挂载

此命令仅创建挂载的定义。要配置项目启动时挂载哪些主机目录,请使用 configure mounts

type 是挂载的类型。以下是有效值

  • PROJECT — 定义项目目录挂载到项目容器中的挂载。

  • HOST — 将项目所在计算机中的目录挂载到项目容器中。

  • VOLUME — 在项目容器中创建持久卷,用于存储在重建容器时不会擦除的数据。

  • TMP — 在项目容器中创建一个临时目录,每次项目启动时都会重置该目录。

警告

如果项目被删除或挂载被删除,则卷挂载中存储的任何数据也会被删除。

target 是项目容器中挂载数据的目标目录。每个挂载目标都是唯一的,并且必须是绝对路径(以“/”字符开头)。

如果您未指定必需的选项,则会显示交互式提示,您可以键入并使用箭头键进行选择。

提示

使用 list mounts 在运行 create mount 之前查看现有挂载。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--description

挂载的描述。

字符串

--options

挂载的其他选项。

字符串

create project#

概要#

1nvwb create project [name] [options]

描述#

在当前打开的上下文(位置)或指定上下文中创建新项目。有关更多信息,请参阅 AI Workbench 项目

name 是项目的唯一名称。name 限制为 47 个字符,使用 [a-zA-Z0-9-_]。

如果您未指定必需的选项,则会显示交互式提示,您可以键入并使用箭头键进行选择。

提示

使用 list projects 在运行 create project 之前查看现有项目。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--base-environment-id

基础环境 镜像的 ID。将 list bases--wide--output json 选项一起使用,以查看现有基础并获取所需基础的 ID。指定 --base-environment-id--base-url,但不能同时指定两者。

字符串

--base-url

自定义 基础环境 镜像的 URL。以 registry-name/image-or-repository-name:tag 格式指定 URL。即使对于 Docker 镜像,也要提供注册表。指定 --base-environment-id--base-url,但不能同时指定两者。

字符串

--description

项目的描述。

字符串

--projectPath

应在其中创建项目的目录的绝对路径。否则,项目将在默认目录中创建。

字符串

示例#

要创建新项目,请运行以下代码。

1nvwb create project "My Project 1" --description "Test project 1" --base-environment-id "eyJpbWFnZS..."

您应该看到类似于以下内容的输出。

1Created new project 'My-Project-1' (/home/workbench/nvidia-workbench/My-Project-1)
2
3 Container build complete (26.074698246s)

create secret#

概要#

1nvwb create secret [variable] [options]

描述#

为当前打开的项目或指定项目创建新的 secret 变量。有关更多信息,请参阅 Secret(敏感环境变量)

此命令仅创建 secret 变量的定义。要设置 secret 变量的值,请使用 configure secrets

警告

您不能在项目容器运行时运行此命令。在运行此命令之前,请使用statusstop 确保项目容器已停止。

variable 是 secret 变量的名称。variable 只能包含字母、数字和下划线。

如果您未指定 variable,则会显示交互式提示,您可以键入并使用箭头键进行选择。

提示

使用 list secrets 在运行 create secret 之前查看现有 secret。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--description

secret 变量的描述。

字符串

示例#

要创建名为 test2 的 secret 变量,请运行以下代码。

1nvwb create secret test2 --description "Test var 2"

您应该看到类似于以下内容的输出。

1  VARIABLE | DESCRIPTION | CONFIGURED
2-----------|-------------|------------
3  test1    | Test var 1  | true
4  test2    | Test var 2  | false

注意

要设置 test2 的值,请使用 configure secrets

create share-url#

概要#

1nvwb create share-url [app_name] [options]

描述#

创建一个 URL,您可以使用该 URL 共享对在远程上下文中运行的应用程序的访问权限。有关更多信息,请参阅 共享您的工作应用程序

app_name 是您要共享的应用程序的名称。如果您未指定 app_name,则会显示交互式提示,您可以键入并使用箭头键进行选择。

远程上下文必须已使用 --external-access 选项 激活,并且应用程序必须已 启动

提示

使用 list apps 在运行 create share-url 之前查看现有应用程序及其状态。

选项#

此命令接受相关的全局选项

注意

请勿将 --context 选项与此命令一起使用。

示例#

要创建 URL 以共享名为 test-app-1 的应用程序,请运行以下代码。

1nvwb create share-url test-app-1

您应该看到类似于以下内容的输出。

1Successfully generated unique sharable URL
2
3| Available at: https://address/share/ABC123

deactivate#

概要#

1nvwb deactivate [options]

描述#

停用当前打开的上下文(位置)或指定上下文。有关更多信息,请参阅 AI Workbench 位置

如果您未指定 --shutdown 选项,则上下文不再是您的终端会话的默认上下文,但容器运行时和 AI Workbench 服务仍保持运行。

如果您指定 --shutdown 选项,则 AI Workbench 服务也会停止。

提示

使用 list contexts 在运行 deactivate 之前查看现有上下文。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--force, -f

--force

即使项目应用程序仍在运行,也停用上下文。

--shutdown

停止当前打开的上下文(位置)或指定上下文的 workbench 服务、隧道和其他资源。

示例#

1nvwb deactivate

要停用当前上下文(位置),请运行以下代码。

1(nvwb:local) workbench@computer:~$
2workbench@computer:~$

delete app#

概要#

1nvwb delete app [app-name] [options]

描述#

从当前打开的项目或指定项目中删除应用程序。有关更多信息,请参阅 AI Workbench 应用程序

app-name 是要删除的应用程序的名称。

如果您未指定 app-name,则会显示交互式提示,您可以键入并使用箭头键进行选择。

提示

使用 list apps 在运行 delete app 之前查看现有应用程序。

选项#

此命令接受相关的全局选项

示例#

要从您的项目中删除名为 test app 的应用程序,请运行以下代码。

1nvwb delete app "test app"

输出是项目中剩余应用程序的表格。

delete branch#

概要#

1 nvwb delete branch [branch-name] [options]

描述#

删除当前打开的项目或指定项目中的本地分支。有关更多信息,请参阅 AI Workbench 中的 Git

branch-name 是要删除的分支的名称。

如果您未指定必需的选项,则会显示交互式提示,您可以键入并使用箭头键进行选择。

提示

使用 list branches 在运行 delete branch 之前查看现有分支和当前分支。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--force

删除具有未合并更改的分支。

示例#

要删除名为 feature-1 的分支,请运行以下代码。

1nvwb delete branch feature-1

您应该看到类似于以下内容的输出。

1   NAME    | BRANCH TYPE | REMOTE ALIAS | CURRENT BRANCH
2-----------|-------------|--------------|-----------------
3 main      | LOCAL       | origin       | 

delete context#

概要#

1nvwb delete context [context_name] [options]

描述#

删除有关现有上下文(位置)的信息。有关更多信息,请参阅 AI Workbench 位置

注意

此命令删除 AI Workbench 本地存储的有关上下文的信息。不会删除上下文本身的任何数据或信息。

context_name 是要删除的位置的名称。

如果您未指定 context_name,则会显示交互式提示,您可以键入并使用箭头键进行选择。

提示

使用 list contexts 在运行 delete context 之前查看现有上下文。

选项#

此命令接受相关的全局选项

delete environment-variable#

概要#

1nvwb delete environment-variable [variable] [options]

描述#

从当前打开的项目或指定项目中删除环境变量。有关更多信息,请参阅 环境变量

variable 是要删除的环境变量的名称。

如果您未指定 variable,则会显示交互式提示,您可以键入并使用箭头键进行选择。

提示

使用 list environment-variables 在运行 delete environment-variable 之前查看现有环境变量。

选项#

此命令接受相关的全局选项

示例#

要删除名为 MyVariable 的环境变量,请运行以下代码。

1 nvwb delete environment-variable MyVariable

输出是项目中剩余环境变量的表格。

delete integration#

概要#

1nvwb delete integration [integration name] [options]

描述#

删除集成,例如 GitHub 或 GitLab。有关更多信息,请参阅 AI Workbench 集成

integration name 是要删除的集成的名称。

如果您未指定 integration name,则会出现交互式提示,您可以键入并使用箭头键进行选择。

提示

使用 list integrations 在运行 delete integration 之前查看现有集成。

选项#

此命令接受相关的全局选项

示例#

要删除名为 Custom Integration 1 的集成,请运行以下代码。

1nvwb delete integration "Custom Integration 1"

输出是剩余集成的表格。

delete mount#

概要#

1nvwb delete mount [target] [options]

描述#

从当前打开的项目或指定项目中删除挂载。有关更多信息,请参阅 AI Workbench 挂载

警告

您不能在项目容器运行时运行此命令。在运行此命令之前,请使用statusstop 确保项目容器已停止。

target 是项目容器中挂载数据的目标目录。

警告

如果挂载被删除,则卷挂载中存储的任何数据也会被删除。

如果您未指定 target,则会显示交互式提示,您可以键入并使用箭头键进行选择。

提示

使用 list mounts 在运行 delete mount 之前查看现有挂载。

选项#

此命令接受相关的全局选项

delete project#

概要#

1nvwb delete project [project_name or project_path] [options]

描述#

从当前打开的上下文(位置)或指定上下文中删除项目。有关更多信息,请参阅 AI Workbench 项目

project_name 是要删除的项目的名称。

project_path 是项目的绝对路径。

注意

delete project 命令仅删除当前打开的上下文(位置)或指定上下文中项目的副本。此命令不会从包含该项目的任何 Git 服务器中删除该项目。

如果您未指定必需的选项,则会显示交互式提示,您可以键入并使用箭头键进行选择。

提示

使用 list projects 在运行 delete project 之前查看现有项目。

选项#

此命令接受相关的全局选项

示例#

要删除名为 hello-world 的项目,请运行以下代码。

1nvwb delete project hello-world

输出是剩余项目的表格。

delete secret#

概要#

1nvwb delete secret [variable] [options]

描述#

从当前打开的项目或指定项目中删除 secret 变量。有关更多信息,请参阅 Secret(敏感环境变量)

警告

您不能在项目容器运行时运行此命令。在运行此命令之前,请使用statusstop 确保项目容器已停止。

variable 是要删除的 secret 变量的名称。

如果您未指定 variable,则会显示交互式提示,您可以键入并使用箭头键进行选择。

提示

使用 list secrets 在运行 delete secret 之前查看现有 secret。

选项#

此命令接受相关的全局选项

示例#

要删除名为 test2 的 secret 变量,请运行以下代码。

1nvwb delete secret test2

输出是剩余 secret 变量的表格。

discard#

概要#

1 nvwb discard [file-1] [file-2]... [options]

描述#

放弃当前打开的项目或指定项目的当前分支中未提交或未跟踪的更改。有关更多信息,请参阅 AI Workbench 中的 Git

您可以指定项目存储库中的一个或多个文件,并且仅放弃这些更改。通过使用相对路径指定文件。

如果您未指定任何文件,则会放弃所有未提交和未跟踪的更改,并删除所有未跟踪的文件。

选项#

此命令接受相关的全局选项

示例#

要放弃当前分支中的所有更改,请运行以下代码。

1nvwb nvwb discard

您应该看到类似于以下内容的输出。

1Successfully discarded changes in project 'test-project-1'

disconnect integration#

概要#

1nvwb disconnect integration [integration name] [options]

描述#

断开集成,例如 GitHub 或 GitLab。有关更多信息,请参阅 AI Workbench 集成

integration name 的有效值包括 NGCGithubGitlab 以及您创建的任何自定义集成。如果您未指定 integration name,则会显示交互式提示,您可以键入并使用箭头键进行选择。

提示

使用 list integrations 在运行 disconnect integration 之前查看现有集成。

选项#

此命令接受相关的全局选项

示例#

要断开您的 GitHub 集成,请运行以下代码。

1nvwb disconnect integration Github

您应该看到类似于以下内容的输出。

1     NAME  |  DESCRIPTION   |       CREDENTIALS       | CONNECTED
2-----------|----------------|-------------------------|-----------
3  NGC      | ngc.nvidia.com | container-registry      | false
4  Github   | Github.com     | git, container-registry | false
5  Gitlab   | Gitlab.com     | git                     | false

fetch#

概要#

1nvwb fetch [options]

描述#

从您的远程 Git 存储库中获取更改。有关更多信息,请参阅 AI Workbench 中的 Git

注意

在可以使用执行 Git 操作的 CLI 命令之前,您必须从 AI Workbench 连接到您的 Git 帐户。有关更多信息,请参阅connect integration连接到您的 Git 帐户和其他集成

选项#

此命令接受相关的全局选项

示例#

要从您的远程 Git 存储库中获取更改,请运行以下代码。

1nvwb fetch

您应该看到类似于以下内容的输出。

1 Project fetch complete (3.009665582s)
2
3Successfully fetched project 'hello-world'

history#

概要#

1nvwb history [options]

描述#

显示当前打开的项目或指定项目的提交日志。有关更多信息,请参阅 AI Workbench 中的 Git

注意

在可以使用执行 Git 操作的 CLI 命令之前,您必须从 AI Workbench 连接到您的 Git 帐户。有关更多信息,请参阅connect integration连接到您的 Git 帐户和其他集成

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--number-n

输出中包含的最大提交数。

整数

示例#

要查看项目的最新提交,请运行以下代码。

1nvwb history --number=1

您应该看到类似于以下内容的输出。

1commit 17bd1938dc0a1a369618cc7ef76f0f084cb048e1
2Author: Name <email@example.com>
3Date: 2024-09-04 12:52:46 UTC
4
5My commit message: important changes

install#

概要#

请参阅 示例 部分。

描述#

在计算机上安装 AI Workbench 和依赖项。您从 CLI 外部调用 install 命令。有关更多信息,请参阅 安装、更新和卸载 AI Workbench

您必须以管理员权限运行此命令,并且可以在以下模式下运行该命令

  • 交互模式 — 不指定任何选项。安装发生时,系统会提示您输入所有选项。

  • 非交互模式 — 指定所有必需的选项。

如果您以 root 用户身份运行此命令为其他用户安装 AI Workbench,则必须指定 --uid--gid 选项。

安装完成后,重启您的 shell 会话,然后在您的终端中可以使用 nvwb 命令。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--noninteractive

以非交互模式安装 AI Workbench。非交互式安装的必需项。

--accept, -a

接受 NVIDIA AI Workbench 的最终用户许可协议。非交互式安装的必需项。

--drivers

安装 NVIDIA GPU 驱动程序。如果您要安装驱动程序,则为必需项。

--docker

使用 Docker 作为您的容器运行时--docker--podman 必须指定其中一个才能进行非交互式安装。

--podman

使用 Podman 作为您的容器运行时。选择 --docker--podman 之一。--docker--podman 必须指定其中一个才能进行非交互式安装。

--gid

AI Workbench 用户的组 ID。为您为其他用户安装 AI Workbench 时为必需项。

整数

--uid

AI Workbench 用户的用户 ID。为您为其他用户安装 AI Workbench 时为必需项。

整数

示例#

要在 macOS 或 Linux 上安装 AI Workbench,请运行以下代码。

1sudo -E  $HOME/.nvwb/bin/nvwb-cli install

要在 Windows 上安装 AI Workbench,请在 Powershell 或终端中运行以下代码。

1wsl -d NVIDIA-Workbench -u root -- /home/workbench/.nvwb/bin/nvwb-cli install --uid 1000 --gid 1000

list apps#

概要#

1nvwb list apps [options]

描述#

列出当前打开的项目或指定项目中可用的应用程序。有关更多信息,请参阅 AI Workbench 应用程序

选项#

此命令接受相关的全局选项

示例#

要列出当前项目中可用的应用程序,请运行以下代码。

1nvwb list apps

您应该看到类似于以下内容的输出。

1      NAME      |    TYPE    | CLASS  | RUN STATE
2----------------|------------|--------|-------------
3  simple-gradio | custom     | webapp |  Stopped
4  jupyterlab    | jupyterlab | webapp |  Stopped

list bases#

概要#

1nvwb list bases [options]

描述#

列出可用的基础环境。有关更多信息,请参阅 AI Workbench 项目的容器环境

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--wide

对于某些 list 子命令,并非所有数据都显示在输出中。使用 --wide 选项查看输出中的所有可用数据。如果输出太宽而无法在屏幕上显示,请包含 --output json 选项。

示例#

要查看可用的基础环境,请运行以下代码。

1nvwb list bases --wide --output json

您应该看到类似于以下内容的输出。

 1{
 2   "result": [
 3      {
 4         "Id": "eyJpbWFnZSI6Im52aWRpYS9haS13b3JrYmVuY...",
 5         "SchemaVersion": "v2",
 6         "Name": "Python Basic",
 7         "Description": "A Python Base with Jupyterlab",
 8         "ImageVersion": "1.0.2",
 9         "BuildTimestamp": "20231114175838",
10         "ContainerRegistry": "nvcr.io",
11         "ContainerImage": "nvidia/ai-workbench/python-basic",
12         "ContainerImageTag": "1.0.2",
13         "CudaVersion": "",
14         "Os": "linux",
15         "OsDistro": "ubuntu",
16         "OsDistroRelease": "22.04",
17         "ProgrammingLanguages": [
18            "python3"
19         ],
20
21         ... more data ...
22
23      }
24   ]
25}

list branches#

概要#

1nvwb list branches [options]

描述#

列出当前打开的项目或指定项目中可用的分支。有关更多信息,请参阅 AI Workbench 中的 Git

选项#

此命令接受相关的全局选项

示例#

要查看当前项目中可用的分支,请运行以下代码。

1nvwb list branches

您应该看到类似于以下内容的输出。

1   NAME    | BRANCH TYPE | REMOTE ALIAS | CURRENT BRANCH
2-----------|-------------|--------------|-----------------
3 feature-1 | LOCAL       |              | 4 main      | LOCAL       | origin       |

list built-in-apps#

概要#

1nvwb list built-in-apps [options]

描述#

列出内置应用程序。有关更多信息,请参阅 内置应用程序

选项#

此命令接受相关的全局选项

示例#

要列出内置应用程序,请运行以下代码。

1nvwb list built-in-apps

您应该看到类似于以下内容的输出。

1  BUILT IN APPLICATION | APPLICATION TYPE | APPLICATION CLASS
2-----------------------|------------------|-------------------
3  Jupyterlab           | jupyterlab       | webapp
4  Visual Studio Code   | vs-code          | native

list contexts#

概要#

1nvwb list contexts [options]

描述#

列出可用的上下文(位置)。有关更多信息,请参阅 AI Workbench 位置

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--wide

对于某些 list 子命令,并非所有数据都显示在输出中。使用 --wide 选项查看输出中的所有可用数据。如果输出太宽而无法在屏幕上显示,请包含 --output json 选项。

示例#

要列出可用的上下文(位置),请运行以下代码。

1nvwb list contexts

您应该看到类似于以下内容的输出。

1  NAME  |       DESCRIPTION  | HOSTNAME  |   STATUS    | EXTERNAL ACCESS
2--------|--------------------|-----------|------------ |-----------------
3  local | My Computer (name) | localhost | 🟢 Running  |  Not Enabled

list environment-variables#

概要#

1nvwb list environment-variables [options]

描述#

列出当前打开的项目或指定项目中定义的环境变量。有关更多信息,请参阅 环境变量

选项#

此命令接受相关的全局选项

示例#

要列出当前项目中的环境变量,请运行以下代码。

1nvwb list environment-variables

您应该看到类似于以下内容的输出。

1   VARIABLE  | VALUE  |   DESCRIPTION
2-------------|--------|-----------------
3  MyVariable | 123456 | a test variable

list integrations#

概要#

1nvwb list integrations [options]

描述#

列出可用的集成。有关更多信息,请参阅 AI Workbench 集成

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--wide

对于某些 list 子命令,并非所有数据都显示在输出中。使用 --wide 选项查看输出中的所有可用数据。如果输出太宽而无法在屏幕上显示,请包含 --output json 选项。

示例#

要列出可用的集成,请运行以下代码。

1nvwb list integrations

您应该看到类似于以下内容的输出。

1     NAME  |  DESCRIPTION   |       CREDENTIALS       | CONNECTED
2-----------|----------------|-------------------------|-----------
3  NGC      | ngc.nvidia.com | container-registry      | false
4  Github   | Github.com     | git, container-registry | true
5  Gitlab   | Gitlab.com     | git                     | false

list mounts#

概要#

1nvwb list mounts [options]

描述#

列出为当前打开的项目或指定项目定义的挂载点。有关更多信息,请参阅 AI Workbench 挂载点

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--wide

对于某些 list 子命令,并非所有数据都显示在输出中。使用 --wide 选项查看输出中的所有可用数据。如果输出太宽而无法在屏幕上显示,请包含 --output json 选项。

示例#

要查看当前项目中的挂载点,请运行以下代码。

1nvwb list mounts --wide

您应该看到类似于以下内容的输出。

1All mounts are configured
2
3   TYPE   |  TARGET   |    DESCRIPTION    | CONFIGURED |       SOURCE       | OPTIONS
4----------|-----------|-------------------|------------|--------------------|---------
5  PROJECT | /project/ | Project directory | true       | (ProjectDirectory) | rw

list packages#

概要#

1nvwb list packages [options]

描述#

列出当前打开的项目或指定项目中可用的软件包。有关更多信息,请参阅 软件包

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--package-manager, -m

筛选输出,仅显示由指定的软件包管理器管理的软件包。

字符串

apt, pip

示例#

要查看 pip 软件包管理器可用的软件包,请运行以下代码。

1nvwb list packages -m pip

您应该看到类似于以下内容的输出。

1Package Manager: pip
2
3   PACKAGE   | VERSION SPECIFICATION(S) | INSTALLED IN BASE
4-------------|--------------------------|-------------------
5  jupyterlab | >3.0                     | false
6  numpy      |                          | false

list projects#

概要#

1nvwb list projects [options]

描述#

列出当前打开的上下文(位置)或指定上下文中可用的项目。有关更多信息,请参阅 AI Workbench 项目

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--wide

对于某些 list 子命令,并非所有数据都显示在输出中。使用 --wide 选项查看输出中的所有可用数据。如果输出太宽而无法在屏幕上显示,请包含 --output json 选项。

示例#

要列出活动上下文中的项目,请运行以下代码。

1nvwb list projects

您应该看到类似于以下内容的输出。

1     NAME     |         DESCRIPTION          | CONTAINER   | APPS
2--------------|------------------------------|-------------|----------------
3  hello-world | A simple hello world project |  Stopped  |  jupyterlab

list resources#

概要#

1nvwb list resources [options]

描述#

列出当前打开的项目或指定项目请求的硬件资源。有关更多信息,请参阅 硬件

选项#

此命令接受相关的全局选项

示例#

要列出当前项目请求的硬件,请运行以下代码。

1nvwb list resources

您应该看到类似于以下内容的输出。

1GPUs Requesed: 4
2
3Shared Memory in MB: 0

list secrets#

概要#

1nvwb list secrets [options]

描述#

列出当前打开的项目或指定项目中的密钥。有关更多信息,请参阅 密钥(敏感环境变量)

提示

对于某些 list 命令,并非所有数据都显示在输出中。使用 --wide 选项查看输出中的所有可用数据。如果输出太宽而无法在屏幕上显示,请使用 --output json 选项。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--wide

在输出中包含所有可用的列。

示例#

要列出当前项目中的密钥,请运行以下代码。

1nvwb list secrets

您应该看到类似于以下内容的输出。

11 secrets(s) are unconfigured
2
3  VARIABLE | DESCRIPTION | CONFIGURED
4-----------|-------------|------------
5  test1    | Test var 1  | true
6  test2    | Test var 2  | false

merge#

概要#

1 nvwb merge [branch-name] [options]

描述#

将指定分支的新提交合并到当前打开的项目或指定项目中的当前分支。有关更多信息,请参阅 AI Workbench 中的 Git

branch-name 是要从中合并的分支的名称。您可以通过包含远程别名来指定远程分支,例如 origin/feature-1

merge 仅支持无冲突合并。如果发生合并冲突,合并将被取消,您必须手动或在 AI Workbench 桌面应用程序 中解决冲突。

如果您未指定必需的选项,则会显示交互式提示,您可以键入并使用箭头键进行选择。

提示

在运行 merge 之前,使用 list branches 查看现有分支和当前分支。

选项#

此命令接受相关的全局选项

示例#

要将 feature-1 分支合并到 main 分支,请在 main 分支为当前分支时运行以下代码。

1nvwb merge feature-1

您应该看到类似于以下内容的输出。

1Successfully merged branch 'feature-1' into current branch 'main'
2
3Current Branch Details:
4
5Name: main Branch Type: LOCAL Remote Alias: origin

open#

概要#

1nvwb open [project_name or project_path] [options]

描述#

在当前打开的上下文(位置)或指定上下文中打开一个项目。有关更多信息,请参阅 AI Workbench 项目

如果您未指定 project_name,则会显示一个交互式提示,您可以键入并使用箭头键进行选择。

如果您指定 project_path,则必须提供绝对路径。

打开项目后,所有后续 CLI 命令默认使用该项目,因此您无需指定 --project 选项

提示

在运行 open 之前,使用 list projects 查看现有项目。

选项#

此命令接受相关的全局选项

示例#

要在当前上下文(位置)中打开一个项目,请运行以下代码。

1nvwb open hello-world

没有输出,但您的命令提示符会更改为包含项目名称,类似于以下内容。

1(nvwb:local) workbench@computer:~$
2(nvwb:local/hello-world) workbench@computer:~/nvidia-workbench/hello-world$

publish#

概要#

1nvwb publish <remote-server-url> <namespace> <visibility> [options]

描述#

首次将当前打开的项目或指定项目推送到您的 Git 服务器。成功发布一次后,将来请使用 push。有关更多信息,请参阅 AI Workbench 中的 Git

remote-server-url 是 Git 服务器基本 URL,包括协议,例如 https://github.com

namespace 是 Git 服务器上创建仓库的命名空间。这可能是您的个人帐户名,或者您所属的组织或团队。

visibility 是 Git 服务器上仓库的可见性设置。有效值为 publicprivate。对于自托管 Git 服务器internal 也有效。

如果您未指定 remote-server-urlnamespace,则会显示一个交互式提示,您可以键入并使用箭头键进行选择。

注意

在可以使用执行 Git 操作的 CLI 命令之前,您必须从 AI Workbench 连接到您的 Git 帐户。有关更多信息,请参阅connect integration连接到您的 Git 帐户和其他集成

选项#

此命令接受相关的全局选项

示例#

要将您的项目发布到您的 Git 服务器,请运行以下代码。

1nvwb publish https://github.com <git namespace> private

您应该看到类似于以下内容的输出。

1Publishing project, please wait...
2
3 Project Push complete (4.011624462s)
4
5Successfully published project to https://github.com/namespace/hello-world.git

pull#

概要#

1nvwb pull [options]

描述#

将远程 Git 仓库中的更改拉取到当前打开的项目或指定项目中。有关更多信息,请参阅 AI Workbench 中的 Git

如果您的项目中有未提交的更改,您必须先 commit 更改,然后才能拉取。

pull 仅支持无冲突拉取。如果发生合并冲突,拉取将被取消,您必须手动或在 AI Workbench 桌面应用程序 中解决冲突。

注意

在可以使用执行 Git 操作的 CLI 命令之前,您必须从 AI Workbench 连接到您的 Git 帐户。有关更多信息,请参阅connect integration连接到您的 Git 帐户和其他集成

选项#

此命令接受相关的全局选项

示例#

要将远程 Git 仓库中的更改拉取到您的项目中,请运行以下代码。

1nvwb pull

您应该看到类似于以下内容的输出。

1 Project Pull complete (4.005346608s)
2
3Successfully pulled project 'hello-world'

push#

概要#

1nvwb push [options]

描述#

将更改从当前打开的项目或指定项目推送到您的远程 Git 仓库。首次推送更改时,请改用 publish。有关更多信息,请参阅 AI Workbench 中的 Git

注意

在可以使用执行 Git 操作的 CLI 命令之前,您必须从 AI Workbench 连接到您的 Git 帐户。有关更多信息,请参阅connect integration连接到您的 Git 帐户和其他集成

选项#

此命令接受相关的全局选项

示例#

要将项目更改推送到您的远程 Git 仓库,请运行以下代码。

1nvwb push

您应该看到类似于以下内容的输出。

1 Project Push complete (3.010268434s)
2
3Successfully Pushed project 'hello-world'

remove package#

概要#

1nvwb remove package [package-manager] [package-reference] [options]

描述#

从当前打开的项目或指定项目中删除一个或多个软件包。有关更多信息,请参阅 软件包

package-manager 是软件包管理器的名称,例如 aptpip,它应该删除指定的软件包。软件包管理器在项目的基础环境中配置。

package-reference 是要删除的软件包的名称,或软件包名称和版本信息。您可以为同一软件包管理器指定多个软件包,以空格分隔。

如果您未指定 package-managerpackage-reference,则会出现交互式提示,您可以键入并使用箭头键进行选择。

提示

在运行 remove package 之前,使用 list packages 查看现有软件包。

选项#

此命令接受相关的全局选项

示例#

要删除软件包,例如 NumPy,请运行以下代码。

1nvwb remove package pip numpy

您应该看到类似于以下内容的输出。

1 Remove package(s) complete (6.009000228s)

start#

概要#

1nvwb start [app_name] [options]

描述#

从当前打开的项目或指定项目启动应用程序。如果项目的容器未运行,则会自动启动。有关更多信息,请参阅 AI Workbench 应用程序

如果您未指定应用程序名称,则会显示一个交互式提示,您可以键入并使用箭头键进行选择。

如果应用程序是 Web 应用程序,例如 Jupyterlab,则应用程序会在您的默认 Web 浏览器中打开。

提示

在运行 start 之前,使用 list apps 查看现有应用程序。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--container

启动项目容器,但不启动任何应用程序。

--no-browser, -n

启动应用程序,但不打开 Web 浏览器。

--no-gpus, -g

启动应用程序时不使用 GPU。当您要启动需要 GPU 的应用程序,但您的计算机上没有 GPU 时,请使用此选项。

--timeout

应用程序启动并在发生错误之前变为可访问状态的等待秒数。

整数

5

示例#

要启动特定应用程序,例如 JupyterLab,请运行以下代码。

1nvwb start jupyterlab

您应该看到类似于以下内容的输出。

1  Container is running
2  jupyterlab is running
3
4App successfully started and available at:
5https://127.0.0.1:10000/projects/test-1/applications/jupyterlab/?token=<token>

要启动项目容器,但不启动任何应用程序,请运行以下代码。

1nvwb start --container

status#

概要#

1nvwb status [options]

描述#

获取当前打开的项目或指定项目的状态。信息包括环境、容器、应用程序和 Git 仓库的名称、路径、描述和状态。有关更多信息,请参阅 AI Workbench 项目

选项#

此命令接受相关的全局选项

示例#

要获取项目的状态,请运行以下代码。

1nvwb status

您应该看到类似于以下内容的输出。

1 Name: hello-world (/home/workbench/nvidia-workbench/hello-world)
2 Description: Test project
3 Environment: 🟢 No Build Required
4 Container:  Stopped
5 Applications:
6   jupyterlab:  Stopped
7 Local Repository: 1 🟡 Modified
8   Current Branch: main

stop#

概要#

1nvwb stop [app_name] [options]

描述#

停止当前打开的项目或指定项目中运行的应用程序。有关更多信息,请参阅 AI Workbench 应用程序

如果您未指定应用程序名称,则会显示一个交互式提示,您可以键入并使用箭头键进行选择。

如果您未指定应用程序名称,并且使用 --container 选项,则所有应用程序和容器都将停止。

在指定的应用程序停止后,如果没有其他应用程序正在运行,容器也会停止。如果其他应用程序仍在运行,容器将继续运行。要强制容器停止,即使其他应用程序仍在运行,请使用 --container 选项。

提示

在运行 stop 之前,使用 status 查看正在运行的应用程序。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--container

在停止任何应用程序后,也停止项目容器。

示例#

要停止特定应用程序,例如 JupyterLab,请运行以下代码。

1nvwb stop jupyterlab

要停止所有应用程序和容器,请运行以下代码。

1nvwb stop --container

support create-bundle#

概要#

1nvwb support create-bundle [archive_name.zip] [options]

描述#

创建一个 zip 文件,其中包含您的 AI Workbench 安装的日志文件、配置信息和系统状态。有关更多信息,请参阅 创建支持捆绑包以进行故障排除

如果您未指定 zip 文件的名称,则默认文件名为 ~/.nvwb/ai-workbench-support-bundle.zip

选项#

此命令接受相关的全局选项

示例#

要创建支持捆绑包,请运行以下代码。

1nvwb support create-bundle

您应该看到类似于以下内容的输出。

1Support bundle created at '/home/workbench/.nvwb/ai-workbench-support-bundle.zip'

要为不同的上下文(位置)创建支持捆绑包,请运行以下代码。

1nvwb support create-bundle --context <context name>

switch-branch#

概要#

1nvwb switch-branch [branch-name] [options]

描述#

切换到当前打开的项目或指定项目中的指定分支。有关更多信息,请参阅 AI Workbench 中的 Git

branch-name 是要切换到的现有分支的名称。要创建新分支,请参阅 create branch

如果您未指定分支名称,则会显示一个交互式提示,您可以键入并使用箭头键进行选择。

提示

在运行 switch-branch 之前,使用 list branches 查看现有分支。

选项#

此命令接受相关的全局选项

示例#

要切换到名为 feature-1 的现有分支,请运行以下代码。

1nvwb switch-branch feature-1

您应该看到类似于以下内容的输出。

1Current Branch Details:
2
3Name: feature-1 Branch Type: LOCAL

uninstall#

概要#

1nvwb uninstall [options]

描述#

从计算机卸载 AI Workbench 和托管依赖项。卸载完成后,将显示一条消息,指示是否需要执行任何其他步骤。有关更多信息,请参阅 安装、更新和卸载 AI Workbench

您必须以管理员权限运行此命令。

如果您以 root 用户身份运行此命令为其他用户卸载 AI Workbench,则必须指定 --uid--gid 选项。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--confirm

运行命令而不提示确认。

--gid

AI Workbench 用户的组 ID。为您为其他用户卸载 AI Workbench 时为必需项。

整数

20

--uid

AI Workbench 用户的用户 ID。为您为其他用户卸载 AI Workbench 时为必需项。

整数

502

示例#

要在 macOS 或 Linux 上卸载 AI Workbench,请运行以下代码。

1sudo -E $HOME/.nvwb/bin/nvwb-cli uninstall

要在 Windows 上卸载 AI Workbench,请在 Powershell 或终端中运行以下代码。

1wsl -d NVIDIA-Workbench -u root -- /home/workbench/.nvwb/bin/nvwb-cli uninstall --uid 1000 --gid 1000

update base#

概要#

1nvwb update base [options]

描述#

将当前打开的项目或指定项目的基础环境更新到最新版本。有关更多信息,请参阅 AI Workbench 项目的容器环境

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--yes, -y

接受更新而不提示。

示例#

要更新打开项目的基础环境,请运行以下代码。

1nvwb update base

如果您的项目基础环境已是最新版本,您应该看到类似于以下内容的输出。

1Project base environment is already at the latest tag.

update context#

概要#

1nvwb update context [context_name] [options]

描述#

更新上下文(位置)。有关更多信息,请参阅 AI Workbench 位置

警告

当上下文处于活动状态时,您无法运行此命令。使用带有 --shutdown 选项的 deactivate 以确保在运行此命令之前上下文已停止。

context_name 是要更新的上下文的名称。您无法更新上下文的名称。对于本地上下文,您只能更新描述。

如果您未指定必需的选项,则会显示交互式提示,您可以键入并使用箭头键进行选择。

提示

在运行 update context 之前,使用 list contexts 查看现有上下文。

选项#

此命令接受相关的全局选项,以及以下附加选项。

选项

描述

类型

默认值

有效值

--accept-ssh-fingerprints

接受上下文(位置)的 SSH 指纹。

--context-workbench-dir

Workbench 服务存储配置和内部数据的内部 workbench 目录。对于大多数安装,这是/home/<username>/.nvwb,这是默认目录。

字符串

--description-d

上下文(位置)的描述。

字符串

--hostname

上下文(位置)的主机名或 IP 地址。您无法通过将主机名设置为 localhost 将远程上下文更改为本地上下文。您无法通过将主机名设置为 localhost 以外的内容将本地上下文更改为远程上下文。

字符串

--proxy-port

流量代理的端口。该端口不能分配给现有上下文。

整数

1024 或更大

--service-port

Workbench 服务代理的端口。该端口不能分配给现有上下文。

整数

1024 或更大

--ssh-key-path

连接到此上下文(位置)时要使用的 SSH 密钥的路径。对于 ssh-agent 持有的密钥,请提供匹配的公钥。

字符串

--ssh-port

当您连接到此上下文(位置)时要使用的目标 SSH 端口。该端口不能分配给现有上下文。

整数

22

--ssh-username

连接到此上下文(位置)时要使用的用户名。

字符串

示例#

要更新本地上下文的描述,请运行以下代码。

1nvwb update context local --description "My Computer Work Laptop"

您应该看到类似于以下内容的输出。

 1 Name: local
 2 Description: My Computer Work Laptop
 3 Hostname: localhost
 4 Workbench Directory: /home/workbench/.nvwb
 5 SSH Key Path:
 6 SSH Username:
 7 SSH Port:
 8 SSH Fingerprint:
 9 Proxy Port: 10000
10 Service Port: 10001

update integration#

概要#

1nvwb update integration [options]

描述#

更新集成,例如 GitHub 或 GitLab。有关更多信息,请参阅 AI Workbench 集成

当您运行此命令时,会显示一个交互式提示,您可以键入并使用箭头键进行选择。如果您想在不使用交互式界面的情况下更新集成,请编辑集成的 JSON 配置文件,该文件位于 ~/.nvwb/C:\Users\<username>\AppData\Local\NVIDIA Corporation\AI Workbench\

提示

在运行 update integration 之前,使用 list integrations 查看现有集成。

选项#

此命令接受相关的全局选项

示例#

要更新集成,请运行以下代码。

1nvwb update integration

将显示一个交互式提示。完成集成更新后,您应该看到类似于以下内容的输出。

1     NAME  |  DESCRIPTION   |       CREDENTIALS       | CONNECTED
2-----------|----------------|-------------------------|-----------
3  NGC      | ngc.nvidia.com | container-registry      | false
4  Github   | Github.com     | git, container-registry | true
5  Gitlab   | Gitlab.com     | git                     | false

update resources#

概要#

1nvwb update resources [resource-type1:value1] [resource-type2:value2] [options]

描述#

更新当前打开的项目或指定项目请求的硬件资源。有关更多信息,请参阅 硬件

警告

您不能在项目容器运行时运行此命令。在运行此命令之前,请使用statusstop 确保项目容器已停止。

指定 resource-type:value,其中 resource-type 是请求的资源类型,value 是请求的资源的新值。resource-type 的有效值为 gpusshared-memory。您可以指定多个 resource-type:value,并用空格分隔。

如果您未指定 resource-type:value,则会显示一个交互式提示,您可以键入并使用箭头键进行选择。

提示

在运行 update resources 之前,使用 list resources 查看现有资源请求。

选项#

此命令接受相关的全局选项

示例#

要为您的项目请求 2 个 GPU,请运行以下代码。

1nvwb update resources gpus:2

您应该看到类似于以下内容的输出。

1Project resources updated
2
3GPUs Requesed: 2
4
5Shared Memory in MB: 0

update script#

概要#

1nvwb update script [script-name] [options]

描述#

编辑当前打开的项目或指定项目的构建脚本。有关更多信息,请参阅 脚本

script-namepreBuild.bashpreLanguage.bashpostBuild.bash 之一。

如果您没有指定 script-name,则会出现交互式提示,您可以输入并使用箭头键进行选择。

选项#

此命令接受相关的全局选项

示例#

要编辑项目的预构建脚本,请运行以下代码。

1nvwb update script preBuild.bash

编辑器将打开,您可以对文件进行更改,然后保存并关闭文件。

您应该看到类似于以下内容的输出。

1Successfully edited preBuild.bash

版本#

概要#

1nvwb version [options]

描述#

返回计算机上安装的 AI Workbench CLI 的版本。有关更多信息,请参阅发行说明

选项#

此命令接受相关的全局选项

示例#

要获取计算机上安装的 AI Workbench CLI 的版本,请运行以下代码。

1nvwb version --output json

您应该看到类似于以下内容的输出。

 1{
 2   "result": {
 3   "CLIVersion": "0.29.2",
 4   "Channel": "stable",
 5   "BuildTime": "Thu Aug 15 00:27:32 UTC 2024",
 6   "OS": "linux",
 7   "Arch": "amd64",
 8   "GolangVersion": "go1.21.11"
 9   }
10}