跳转到内容
STAGING SERVER
DEVELOPMENT SERVER

pylon AI 入门#

本主题介绍如何为使用 pylon AI 功能设置开发环境。

为了使用 pylon AI,您必须安装以下组件:

  • pylon Software Suite
  • 用于 pylon AI 的 pylon 补充包
    本主题介绍了该补充包的安装方法。
  • 您还需要为您要使用的 vTools 获取相应的许可。有关如何获取和激活这些许可的信息,请参阅 vTool Licensing 主题。

用于 pylon AI 的 pylon 补充包提供了一个后端服务,允许 AI vTools 执行深度学习模型。该后端服务即为带有 Basler 附加组件的 NVIDIA Triton Inference Server,支持模型加密和许可管理。

以下是 Triton Inference Server 在开发环境中所在位置的概述:

AI 开发环境概述

安装 Triton Server 有两种方式:

  • 在本地计算机上
  • 在网络中的远程计算机上

如果您是独自开展项目,建议使用第一种方式;而当团队协作时,第二种方式则更为适用。

Basler 不提供实时的 Triton 服务器实例,也不建议将服务器作为公共互联网端点进行发布。您应始终将其视为开发环境的一部分,并采取相应的保护措施。

用于 pylon AI 的 pylon 补充包包含一个修改后的 Docker 镜像,以便为配合 pylon AI vTools 和 pylon AI Agent 使用准备 Triton Inference Server。它还包含设置与启动脚本、发行说明以及第三方许可证信息。

系统要求#

Ubuntu 和适用于 WSL 的 Ubuntu#

  • x86_64 CPU:最新的 Intel Core i5(或更高版本)或同等产品。
  • Memory:可用 RAM 至少 8 GB。建议可用 RAM 达到 16 GB 或更多。
  • 磁盘类型:建议使用 SSD。
  • 磁盘空间:安装至少需要 20 GB 的可用磁盘空间。模型仓库所需的空间取决于您计划部署的模型大小和数量。每个模型的大小可以从几兆字节到几吉字节不等。
  • CUDA 版本:12+
  • GPU 显卡:例如 NVIDIA RTX A5000、NVIDIA RTX A2000 笔记本电脑显卡。 GPU例如 NVIDIA Tesla T4 等。

信息

CPU足以运行Triton推理服务器。如果您需要更快的性能,请使用…… GPU 建议这样做。

Jetson 拥有喷气背包 6 的家庭#

  • 模块:所有NVIDIA Jetson
  • Memory:可用 RAM 至少 8 GB。建议可用 RAM 达到 16 GB 或更多。
  • 磁盘类型:建议使用 SSD。
  • 磁盘空间:安装至少需要 20 GB 的可用磁盘空间。模型仓库所需的空间取决于您计划部署的模型大小和数量。每个模型的大小可以从几兆字节到几吉字节不等。

前提条件#

信息

  • 安装过程中需要连接互联网。

  • 请确保本地计算机上的端口 8000、8001、8002 和 22350 没有被阻止。
    由于用户端可能出现的情况多种多样且复杂,Basler 无法提供通用解决方案。因此,潜在的访问问题必须由客户自行解决,并获得其 IT 部门的支持。

Ubuntu#

有关更多信息,请参阅在 Ubuntu 上安装 Docker 。

如果你的电脑配备了NVIDIA显卡GPU请参阅“安装 NVIDIA 驱动程序和 NVIDIA 容器工具包” 。

适用于 WSL 的 Ubuntu#

信息

不要安装任何Linux WSL 内部的显示驱动程序。驱动程序应该只直接安装在…… Windows 。

按照以下说明在 WSL 上安装 Ubuntu 操作系统。

按照以下说明在 WSL 上的 Ubuntu 中安装 Docker 。

Jetson 家庭版(JetPack 6.x)#

您的设备必须使用SDK 管理器进行刷机。需要 JetPack 6.x 版本。该版本已包含 Docker。

所有操作系统版本#

操作系统准备就绪后,请确保满足以下要求:

  • CodeMeter 运行时环境已安装。
    安装CodeMeter 运行时是以下部分的一部分pylon Software Suite 安装。
  • AI vTools 的许可证现已推出。
    欲了解更多信息,请访问Basler 网站。
  • Docker Engine 已安装。
    检查是否已安装 Docker Engine:

    docker --version
    
  • 为了GPU 使用方法:已安装 NVIDIA Container Toolkit。
    检查您是否已安装此工具包:

    nvidia-container-toolkit -version
    

    如果尚未安装,请阅读以下部分。

安装 NVIDIA 驱动程序和 NVIDIA Container Toolkit(GPU 使用所需)#

NVIDIA 容器工具包提供了所需的库和工具, GPU -加速计算。Triton推理服务器使用CUDA运行。 GPU加速操作,例如模型推理。NVIDIA Container Toolkit 版本应与 Triton 服务器和您要部署的模型所需的版本相匹配。

要查看您的 NVIDIA 驱动程序版本,请打开终端并输入以下命令:

nvidia-smi

如果尚未安装任何驱动程序或工具包,请按照此页面上的说明进行操作: https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html

请查看此页面,确保您的 NVIDIA 驱动程序与 NVIDIA 容器工具包和 Triton 推理服务器兼容: https://docs.nvidia.com/deeplearning/triton-inference-server/release-notes/rel-24-11.html#rel-24-11

安装 Triton Inference Server#

模型存储库作为安装的一部分在您的主目录中创建,例如 /home/username/pylon_ai/model_repository。您切勿更改它。

在线安装#

若要从适用于 pylon AI 的 pylon 补充包中安装 Triton Inference Server,请按照以下步骤操作:

  1. 切换到包含您从 Basler 网站下载的 pylon-supplementary-package-for-pylon-ai-*.tar.gz 压缩包的目录。
  2. 将适用于 pylon AI 的 pylon 补充包 tar.gz 压缩包解压到您选择的目录中(如果要解压到其他目录,请替换 ./pylon_ai_setup)。

    mkdir pylon_ai_setup && tar -xzvf ./pylon-supplementary-package-for-pylon-ai-*.tar.gz -C pylon_ai_setup
    
  3. 切换到您解压适用于 pylon AI 的 pylon 补充包的文件夹。

    cd pylon_ai_setup
    
  4. 使用 root 权限运行安装脚本。

    sudo chmod +x setup-pylon-ai-triton-inference-server.sh && sudo ./setup-pylon-ai-triton-inference-server.sh
    

离线安装#

如果无法连接互联网,请按照以下步骤操作。

  1. 在一台能联网的计算机上,访问 dockerhub 并下载 Basler Triton Server Docker 镜像。
    该镜像可通过此链接获取:https://hub.docker.com/repository/docker/basler/tritonserver/general
  2. 将镜像传输到您要安装 Triton Server 的计算机上。
    您可以使用以下命令执行步骤 1 和步骤 2。

    docker pull basler/tritonserver:[tagname]
    
    docker save basler/tritonserver:[tagname] | gzip > tritonserver.[tagname].tgz
    

    示例:

    docker image save basler/tritonserver:24.11-py3_1.3.0 | gzip > tritonserver.24.11-py3_1.3.0_rc4.tgz
    

  3. 切换到包含您从 Basler 网站下载的 pylon-supplementary-package-for-pylon-ai-*.tar.gz 压缩包的目录。

  4. 将适用于 pylon AI 的 pylon 补充包 tar.gz 压缩包解压到您选择的目录中(如果要解压到其他目录,请替换 ./pylon_ai_setup)。

    mkdir pylon_ai_setup && tar -xzvf ./pylon-supplementary-package-for-pylon-ai-*.tar.gz -C pylon_ai_setup
    
  5. 将保存的 .tar 文件复制到 pylon_ai_setup 文件夹中。

  6. 使用 root 权限运行安装脚本。

    sudo chmod +x setup-pylon-ai-triton-inference-server.sh && sudo ./setup-pylon-ai-triton-inference-server.sh
    

启动 Triton Inference Server#

本节详细介绍了启动 Inference Server 的三种不同方法。请牢记有关远程运行服务器和 vTools 的以下信息,选择最符合您需求的一种。

启动 Inference Server 时,服务器会期望模型存储库位于默认位置,即 /home/username/pylon_ai/model_repository。如果您不小心重命名或删除了该存储库,则必须通过重新安装服务器来重新创建它。

远程运行服务器和 vTools

如果您在远程计算机上运行 Triton Inference Server,同时又从其他位置运行 AI vTools 或 AI Agent,请注意以下重要的限制和注意事项:

  • 数据在发出推理请求的 vTools 与 Triton Inference Server 之间传输所需的时间可能会影响整体响应时间。
  • 高延迟会减慢推理过程,尤其是对于实时应用。
  • 有限的网络带宽会导致通信缓慢或不可靠,特别是在传输大量数据时。
  • 远程功能要求端口 8000、8001 和 8002 可访问。(这可能需要您的 IT 部门的支持,例如运行防火墙和代理检查。)

在需要时启动服务器#

如果您不想在计算机启动时将 Triton Inference Server 作为 Docker 容器启动,您可以使用以下 Shell 脚本在需要时启动 Triton Inference Server。

  1. 切换到您解压适用于 pylon AI 的 pylon 补充包的文件夹。
  2. 启动 Triton Inference Server。

    sudo chmod +x run-pylon-ai-triton-inference-server.sh && sudo ./run-pylon-ai-triton-inference-server.sh
    

在启动时运行服务器#

若要在启动计算机时自动启动 Triton Inference Server Docker 容器,或者在崩溃时自动重启,您可以通过带附加参数运行“run-pylon-ai-triton-inference-server.sh”Shell 脚本来创建符合您需求的 systemd 服务。

  1. 切换到您解压适用于 pylon AI 的 pylon 补充包的文件夹。
  2. 启动安装程序脚本。

    sudo chmod +x run-pylon-ai-triton-inference-server.sh && sudo ./run-pylon-ai-triton-inference-server.sh --service
    

将 Triton Inference Server 安装为服务后,您可以在需要时将其临时停止。请记住,设备重启后它将自动启动。

要临时停止负责运行 Triton Inference Server 的 systemd 服务,请打开终端(在任何目录中)并运行:

sudo systemctl stop tritonserver.service

如果要恢复该服务,必须通过运行以下命令将其启动:

sudo systemctl start tritonserver.service

如果您在使用该服务当前运行的服务器时遇到问题,可以通过运行以下命令进行重启:

sudo systemctl restart tritonserver.service

如果您想永久禁用该服务,可以通过运行以下命令来实现:

sudo systemctl disable tritonserver.service

许可#

您可以在此处或 pylon AI 的 pylon Supplementary Package 包含的许可证文件中找到许可证信息。

故障排除#

CodeMeter 在 pylon 安装期间进行配置,以便 Triton Inference Server 能够访问所需的许可证。

在极少数情况下,这可能会失败。如果发生这种情况,请将 CodeMeter 配置为网络服务器:

  1. 打开 CodeMeter Control Center 并点击右下角的 WebAdmin 按钮。
  2. 在 CodeMeter WebAdmin 中,导航至 Configuration > Server > Server Access。
  3. 在 Network Server 区域中,选择 Enable 并点击 Apply 确认。
  4. 返回 CodeMeter Control Center。
  5. 在 Process 菜单中,点击 Restart CodeMeter Service 以将 CodeMeter 作为网络服务器重新启动。

已知问题#

Jetson Orin 上的 ONNX 运行时错误

如果设备在低功耗模式下运行,在 Jetson Orin 设备上执行 run-pylon-ai-triton-inference-server.sh 命令时会出现运行时错误。不过,您尝试加载的模型仍会被加载。为防止此错误,请在 Jetson Orin 上配置更高的功耗模式。