
AI Computer Vision 用户指南
如果要使用 Microsoft Windows 或 Ubuntu 上的 Docker 或 Red Hat Enterprise Linux 上的 Podman 部署自己的 Computer Vision 服务器,并将其与“Computer Vision”活动一起使用,请按照以下步骤操作。
安装 WSL
首先,必须在您的计算机上安装 WSL。
{distribution}
是要使用的 Linux 发行版:
wsl --install -d {distribution}
wsl --install -d {distribution}
安装 NVIDIA 驱动程序
要在 Windows 计算机上运行计算机视觉服务器,您必须从 NVIDIA 官方网站下载并在具有兼容GeForce或 NVIDIA RTX/Quadro 卡的系统上安装 NVIDIA Windows 11 显示驱动程序。
安装 Podman 和 NVIDIA 容器工具包
您可以通过运行以下脚本来安装 Podman 和 NVIDIA 容器工具包:
https://github.com/UiPath/Infrastructure/blob/main/ML/ml_prereq_all.sh
https://github.com/UiPath/Infrastructure/blob/main/ML/ml_prereq_all.sh
运行服务器
要运行计算机视觉服务器,您必须在 WSL Linux 终端中运行以下命令:
podman run -p 8501:5000 --hooks-dir=/usr/share/containers/oci/hooks.d/ \--security-opt=label=disable --device=nvidia.com/gpu=all controls_detection eula=accept
podman run -p 8501:5000 --hooks-dir=/usr/share/containers/oci/hooks.d/ \--security-opt=label=disable --device=nvidia.com/gpu=all controls_detection eula=accept
使服务器在网络上可用
8501
。
由于在 WSL 中运行的 Linux 实例具有自己的虚拟网络接口控制器,因此流向主机 IP 的流量不会直接重定向到 Linux 实例的 IP。 通过使用以下命令将主机 IP 的流量转发到 Linux 实例,可以绕过此问题:
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=8501 connectaddress=$wsl_ip connectport=8501
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=8501 connectaddress=$wsl_ip connectport=8501
可以使用以下命令找到 WSL IP:
wsl -d {distribution} hostname -I
wsl -d {distribution} hostname -I
自动启动服务器
{distribution}
是已安装的 Linux 分发版:
wsl -d {distribution} echo "starting...";
$wsl_ips = (wsl -d {distribution} hostname -I);
$host_ip = $wsl_ips.Split(" ")[0];
netsh interface portproxy add v4tov4 listenport=8501 listenaddress=0.0.0.0 connectport=8501 connectaddress=$host_ip;
wsl -d {distribution} -u root service docker start;
wsl -d {distribution} -u root docker run -p 8501:5000 --gpus all controls_detection eula=accept;
wsl -d {distribution} echo "starting...";
$wsl_ips = (wsl -d {distribution} hostname -I);
$host_ip = $wsl_ips.Split(" ")[0];
netsh interface portproxy add v4tov4 listenport=8501 listenaddress=0.0.0.0 connectport=8501 connectaddress=$host_ip;
wsl -d {distribution} -u root service docker start;
wsl -d {distribution} -u root docker run -p 8501:5000 --gpus all controls_detection eula=accept;
安装限制
此安装过程需要支持嵌套虚拟化的计算机。 目前,大多数 Cloud 虚拟机不支持 GPU 计算机的嵌套虚拟化。 总之,此安装流程最适合拥有带 GPU 的物理 Windows 服务器的客户。
下载 Computer Vision 服务器图像导出
保存销售代表在当前终端会话中提供给您的链接:
export CV_URL="LINK_FROM_SALES_REP"
export CV_URL="LINK_FROM_SALES_REP"
下载导出:
wget "$CV_URL" -O controls_detection.tar
wget "$CV_URL" -O controls_detection.tar
将图像加载到 Podman 中
运行以下命令:
podman load -i controls_detection.tar
podman load -i controls_detection.tar
启动服务器
运行以下命令:
podman run -p 8501:5000 --hooks-dir=/usr/share/containers/oci/hooks.d/ \--security-opt=label=disable --device=nvidia.com/gpu=all controls_detection eula=accept
podman run -p 8501:5000 --hooks-dir=/usr/share/containers/oci/hooks.d/ \--security-opt=label=disable --device=nvidia.com/gpu=all controls_detection eula=accept
升级 Computer Vision 模型
升级模型等同于安装模型的新版本。这是因为升级意味着更改模型本身及其二进制文件,这不可避免地会导致服务器停止工作。
如果要在完全相同的服务器计算机上执行升级,则预计会出现停机。为避免这种情况,您只需在另一台服务器计算机上安装新版本,并在安装完成后将流量切换到该计算机即可。
标准升级方案如下所示:
- 准备并宣布停机时间(如果适用)。
- 安装新型号以代替旧型号。
- 运行服务器。
如果您的环境使用多节点负载均衡器设置,则可以通过每次重新安装每个节点来完全避免停机。