TensorFlow Models CircularNet 部署实战:克隆 waste_identification_ml 仓库并初始化推理客户端环境
TensorFlow Models CircularNet 部署实战克隆 waste_identification_ml 仓库并初始化推理客户端环境【免费下载链接】modelsModels and examples built with TensorFlow项目地址: https://gitcode.com/GitHub_Trending/mode/models本文以 TensorFlow Models 仓库中waste_identification_mlCircularNet 垃圾识别项目的官方部署文档为骨架完整讲解 CircularNet 部署流程的第一步在云端 GPU 实例或 NVIDIA 边缘设备上克隆仓库、进入部署目录并执行依赖安装脚本。读完后你将能够独立完成环境初始化并理解requirements.sh脚本内部的每一步行为及其与后续 Triton 推理服务启动步骤的衔接关系。部署目标与两条环境路线在克隆仓库之前需要先明确 CircularNet 部署的整体形态。根据部署入口文档 circularnet-docs/content/deploy-cn/_index.mdCircularNet 可以部署在任意云厂商或推荐的边缘设备上但官方文档给出的标准路线是在Google Cloud 或 NVIDIA 设备上创建并运行一个Triton 推理服务器。该服务器的设计目标是高效处理图片或视频输入将输入拆分为帧并对每一帧执行模型预测。官方提供两条前置环境路线详见 before-you-begin.md克隆仓库的操作在两种终端环境下完全一致路线终端关键配置Google CloudVM 实例的 SSH-in-browser 窗口挂载 1 块 NVIDIA T4 GPU 的 Compute Engine 实例机器类型 n1-standard-88 vCPU、30 GB 内存镜像选择“Deep Learning on Linux预装 CUDA 11.3 的 Debian 11 Python 3.10”启动盘 300 GB 平衡持久盘防火墙放行 HTTP/HTTPSNVIDIA 边缘设备设备终端参考如 NVIDIA Jetson 的开发者指南完成基础配置确保设备联网以完成依赖包下载两条路线的唯一区别在于你打开的是“SSH-in-browser 窗口”还是“设备终端”后文所有命令均可直接复用。克隆仓库并安装依赖官方四步法以下命令来自官方文档 clone-repo.md在 SSH-in-browser 窗口或边缘设备终端中依次执行第 1 步安装 Gitsudo apt-get install git第 2 步克隆包含 CircularNet 的 TensorFlow Models 仓库git clone --depth 1 https://github.com/tensorflow/models.git这里使用--depth 1浅克隆只拉取最新一次提交而不包含完整历史。CircularNet 项目位于该仓库的official/projects/waste_identification_ml子目录下浅克隆能显著减少一次性的网络下载量与磁盘占用——对于 300 GB 启动盘的云端 VM 或容量更小的 Jetson 设备都是一个实用的选择。第 3 步进入waste_identification_ml项目的 client 目录cd models/official/projects/waste_identification_ml/Deploy/detr_cloud_deployment/client/注意路径中的实际目录名为Deploy大写 D与detr_cloud_deployment与仓库结构一一对应该目录下当前包含推理客户端的全部脚本。第 4 步运行依赖安装脚本sh requirements.sh第 5 步返回根目录官方文档以cd\表示回退操作即返回用户主目录/仓库根目录。完成后环境初始化结束下一步即启动 Triton 推理服务器官方文档将其指引至 start-server.md。深入 requirements.sh环境初始化脚本到底做了什么sh requirements.sh这一行命令背后是一个位于 client/requirements.sh 的完整环境编排脚本。结合源码可以逐段确认它的实际行为Shell 自检与回退执行脚本开头检查BASH_VERSION若非在 bash 下执行则exec /bin/bash $0 $重新拉起自身。这正是文档可以放心使用sh requirements.sh的原因——即使被 dash/sh 启动脚本也会自动切换到 bash 运行依赖 bash 语法的逻辑不会失效。系统依赖准备执行sudo apt-get update -y随后检查docker命令是否存在未安装时通过官方安装脚本安装 Docker已安装则跳过。Docker 是后续运行 Triton 推理服务器的载体见后文。Python 虚拟环境安装python3-venv与python3-pip用python3.10 -m venv myenv创建虚拟环境myenv并激活。这与前置条件中“Deep Learning VM with CUDA 11.3、Debian 11、Python 3.10”的镜像要求直接对应。安装 Python 依赖执行pip install -r requirements.txt按 client/requirements.txt 的清单安装客户端所需的全部包。仓库存在性兜底若当前目录不存在models目录脚本会再次执行git clone --depth 1克隆仓库否则跳过。这是一个容错分支——正常情况下你在第 2 步已经克隆过仓库此分支不会触发。清理现场脚本末尾deactivate退出虚拟环境并打印 “Environment setup is complete.” 作为完成信号。requirements.txt 依赖清单解析从依赖版本可以看出客户端的完整能力面以下版本号以仓库当前 requirements.txt 为准推理通信tritonclient[all]2.65.0—— Triton 官方客户端库是 client 目录中推理脚本与推理服务器通信的基础图像处理与目标跟踪opencv-python4.13.0.92、scikit-image0.25.2、pillow12.0.0、supervision0.26.1、trackpy0.7、cuml-cu1225.12.*—— 覆盖图片/视频读帧、检测框后处理与跨帧跟踪GPU 加速栈cupy-cuda12x[cuda_dlls]、cupy-cuda12x[ctk]、cuml-cu12RAPIDS cuML并通过--extra-index-url https://pypi.nvidia.com指定 NVIDIA 的 PyPI 索引以获取 CUDA 相关包云端数据链路google-cloud-bigquery3.40.1、pandas-gbq0.33.0、google-cloud-storage3.9.0、google-auth—— 对应客户端将推理结果写入 BigQuery、从 Cloud Storage 读取数据的能力与前置条件中需启用 BigQuery API、Cloud Storage API 相互印证基础工具natsort、absl-py、pandas、scikit-learn、webcolors、ffmpeg-python视频帧处理。如果pip install阶段失败优先排查三点Python 版本是否为 3.10脚本硬编码了python3.10、网络能否访问 NVIDIA 的 extra index、以及 CUDA 11.3 镜像是否安装成功。与下一步“启动服务器”的衔接克隆与环境初始化完成后整个部署链路就走到了服务端环节。官方文档 start-server.md 指引你进入同级目录的server/并执行bash triton_inference_server.sh。为了说明为何requirements.sh中要预先安装 Docker 与 screen可以结合 server/triton_inference_server.sh 的实现确认其职责链清理旧的model_repository目录并从 Cloud Storage 下载、解压最新 CircularNet 模型包脚本中以关联数组定义模型名与下载地址其中模型标签为CircularNet_Segmentation_Model_v1实际下载的压缩包为CircularNet_model_v2.zip检测并安装screen通过screen -dmS server创建一个名为server的分离会话在其中以--gpus all启动 Triton 官方容器nvcr.io/nvidia/tritonserver:25.05-py3映射8000gRPC 推理端口、8001HTTP、8002指标三个端口并将模型仓库挂载到容器的/models。也就是说clone-repo这一步准备的 Docker 运行时、Python 3.10 虚拟环境与 Triton 客户端依赖分别服务于“服务器容器化运行”与“客户端发起推理”两个后续环节。服务器就绪后客户端脚本会利用tritonclient向8000端口发送图片帧进行推理具体操作见官方文档 start-client.md。完成自检清单执行完克隆与依赖安装后建议按以下依据逐项确认环境就绪仓库结构完整models/official/projects/waste_identification_ml/Deploy/detr_cloud_deployment/下同时存在client/与server/两个子目录且client/中能看到requirements.sh、requirements.txt、run_images.sh、triton_server_inference.py、inference_pipeline.py等文件依赖安装成功requirements.sh运行结束时输出 “Environment setup is complete.”且当前目录生成了myenv虚拟环境目录Docker 可用docker --version能正常返回版本信息这是下一步启动 Triton 容器的前提进入下一步返回仓库根目录后按 start-server.md 启动服务器并在screen -r server会话中确认模型显示READY状态。需要再次强调的适用前提上述流程面向仓库当前版本对应的环境Python 3.10 CUDA 11.3 Triton 25.05-py3 容器官方部署文档明确提示“部署 CircularNet 模型需要具备管理基础设施、执行命令、以及在云端或边缘设备上建立连接设置与权限的技术能力”。如果在 Jetson 等边缘设备上执行还需确认系统架构与 NVIDIA 索引中的包版本匹配这是云端 T4 路线之外的唯一差异点。【免费下载链接】modelsModels and examples built with TensorFlow项目地址: https://gitcode.com/GitHub_Trending/mode/models创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
