deepdetect

jolibrain活跃维护

基于 C++ 的深度学习服务端与命令行工具,封装 Torch、TensorRT 等后端,通过 REST API 提供图像分类、目标检测、分割和以图搜图能力。

Deep Learning Server and CLI for Torch and TensorRT

v0.30.1发布于 2026-10-14 16:17 UTC2,551star544fork同步于 2026-11-10 11:43 UTC

怎么上手

由 README 提炼,执行前请确认
python -m pip install --extra-index-url https://www.deepdetect.com/download/wheels/simple deepdetect-cpu
硬件要求按 README 说明

README 未说明具体显存要求;提供 deepdetect-cpu 与 deepdetect-gpu 两种 wheel,GPU 版需 CUDA 环境,并在命令中加 --gpu。

需要 CUDA
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

DeepDetect 是深度学习训练与推理运行时,提供 CLI 和 REST 服务,帮你把模型工作流跑起来

基于 C++ 的深度学习服务端与命令行工具,封装 Torch、TensorRT 等后端,通过 REST API 提供图像分类、目标检测、分割和以图搜图能力。

核心能力

  • 用 deepdetect CLI 完成训练、推理与作业监控
  • 通过 REST API 创建服务并异步执行训练任务
  • 基于文件系统管理模型仓库,无需数据库
  • 覆盖图像检测分割、文本、表格、时序等数据类型
  • Torch 为主后端,TensorRT 可选加速推理

容易踩的坑

deepdetect-cpu 与 deepdetect-gpu 互斥,同一环境只能装一个;默认 YAML 示例需先替换数据集、权重和仓库路径;快速上手示例需另装 visdom 并在 8097 端口启动服务。

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

5 个版本v0.30.1
  1. v0.30.1DeepDetect v0.30.1最新正式版2026-10-14 · 2026-10-14 16:17 UTC

    Features

    • image reconstruction task support with pytorch workers (32e6a4a)
    • rt-detrv4 M and L size support (24e134c)
    • segmentation tiled inference (ceba2db)

    Bug Fixes

    • full data augmentation is default for rtdetrv4 (088a034)
    • resume with pytorch worker (ff9edb3)

    Docker images

    • CPU: docker pull docker.jolibrain.com/deepdetect_cpu:v0.30.1
    • GPU (CUDA): docker pull docker.jolibrain.com/deepdetect_gpu:v0.30.1
    • GPU (CUDA and TensorRT): docker pull docker.jolibrain.com/deepdetect_gpu_tensorrt:v0.30.1

    Python wheels

    • CPU: python -m pip install --extra-index-url https://www.deepdetect.com/download/wheels/simple deepdetect-cpu==0.30.1
    • GPU: python -m pip install --extra-index-url https://www.deepdetect.com/download/wheels/simple deepdetect-gpu==0.30.1

    Full changelog: https://github.com/jolibrain/deepdetect/compare/v0.30.0...v0.30.1

  2. v0.30.0DeepDetect v0.30.02026-08-26 · 2026-08-26 15:11 UTC
    查看更新说明

    Features

    • add external pytorch model import skill (3ec64fc)
    • add tensor-backed pytorch worker dataset adapter (f8c4ec9)
    • added vitpose eval losses (b27951b)
    • additions to pytorch backends to accomodate new detection models (02e43ea)
    • C++ data augmentation wired to input pull connnector (0d85ac4)
    • cli: repository cleansing override (fa0a840)
    • hardening of pytorch backend (622da53)
    • initial keypoint pose estimator input connector (687ac8b)
    • initial pytorch backend structure and messaging layers (c67555c)
    • input c++ connector to pytorch backend pull mode (aa6485f)
    • map equivalence between python worker and C++ implementations (7bc6cdb)
    • model flops estimate (3526835)
    • model flops estimate (d4f6148)
    • model: initial vitpose with hungarian for slot assignment (b703e02)
    • model: regular vitpose with per object keypoints (cec4791)
    • model: RT-DETRv4 for pytorch backend (086bacc)
    • per-class map in backend and python workers metrics (1b44cff)
    • sam2 pytorch worker, inference only (9d340ce)
    • sdk: initial python backend sdk (a4a17e6)
    • sdk: initial torch/torchvision python backend sdk example (bfd862c)
    • torch-only reference detector worker and updated documentation (a20f583)
    • training observability mechanism for agents (993145e)
    • vit patch_embed resampling from timm in vitpose (7c4eae3)
    • vitpose photometric augmentations (f2c30f0)
    • vitpose slot loss control and balancing (51eecb1)

    Bug Fixes

  3. v0.29.0DeepDetect v0.29.02026-06-25 · 2026-06-25 21:25 UTC
    查看更新说明

    This release introduces:

    • Removal of custom built libtorch, using pytorch wheels prebuilt libtorch instead -> much faster builds and upgrades
    • Full Python CLI with bindings to the C++
    • Ubuntu 24.04 is default docker and install OS

    Features

    • cli AGENTS.md file (ec0df96)
    • cli: data augmentation in yaml config file (29fdbc1)
    • cli: multiple test sets support (515a626)
    • cli: new options and config saving in target repository (0cd6dad)
    • cli: randomized test visuals (00e90aa)
    • deepdetect initial python library (71592c5)
    • initial python bindings cli (ae31702)
    • live terminal for python cli (76b96e1)
    • python deepdetect wheels (0e02d9a)

    Bug Fixes

    • beta2 param access (20066db)
    • cli: segmentation color overlays (96f0735)
    • cli: test progress line when polling is fast (8dfb34f)
    • db batches when shuffling (0d18a2a)
    • docker build gpu runtime (fb7743f)
    • feature extraction for any batch size (4e9e19b)
    • fp16 across all kernels in tests (d5a97f4)
    • get_libs.sh for docker validation (7f3f020)
    • readme badge (f3fcd4f)
    • remove pip upgrade from images (7bd03e9)
    • resize ratio in db bboxes (15608bd)
    • segmentation output and confidences for any batch size (088c1a6)
    • template_params storing full mllib object (cc5649a)
    • tensorrt version in docker build (b4cc8b1)
    • test_interval potential div 0 (0047793)
    • torch nograd duplicate (76086cf)
    • unknown pip package (2f36a7e)
    • use NoGradGuard around inference calls (4e33e1f)
    • wheels unit tests ([ca5ea22](
  4. v0.28.0DeepDetect v0.28.02026-06-12 · 2026-06-12 10:38 UTC
    查看更新说明

    Bug Fixes

    • build script (b54d425)
    • no torch dependency in tensorrt devel ci docker (f818339)
    • trt ci build cuda check (d91a262)
    • update to tox and python client checks (eef5a86)

    Docker images:

    • CPU version: docker pull docker.jolibrain.com/deepdetect_cpu:v0.28.0
    • GPU (CUDA only): docker pull docker.jolibrain.com/deepdetect_gpu:v0.28.0
    • GPU (CUDA and TensorRT): docker pull docker.jolibrain.com/deepdetect_gpu_tensorrt:v0.28.0
    • All images available from https://docker.jolibrain.com/, list images with curl -X GET https://docker.jolibrain.com/v2/_catalog
  5. v0.26.2DeepDetect v0.26.22025-07-19 · 2025-07-19 07:45 UTC
    查看更新说明

    Docker images:

    • CPU version: docker pull docker.jolibrain.com/deepdetect_cpu:v0.26.2
    • GPU (CUDA only): docker pull docker.jolibrain.com/deepdetect_gpu:v0.26.2
    • GPU (CUDA and Tensorrt) :docker pull docker.jolibrain.com/deepdetect_cpu_tensorrt:v0.26.2
    • GPU with torch backend: docker pull docker.jolibrain.com/deepdetect_gpu_torch:v0.26.2
    • All images available from https://docker.jolibrain.com/, list images with {"repositories":["colette_gpu","colette_gpu_server","colette_ui","cuda12.5.1-devel-ubuntu22.04-preinst-devel","deepdetect_cpu","deepdetect_cpu_torch","deepdetect_gpu","deepdetect_gpu_tensorrt","deepdetect_gpu_torch","filebrowser","gpustat_server","joligen_server","joligen_ui","jupyter_dd_notebook","platform_annotations_backend","platform_annotations_frontend","platform_data","platform_ui"]}

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    Deep Learning Server and CLI

    GitHub release (latest SemVer) GitHub Release Date GitHub commits since latest release

    DeepDetect is a deep learning runtime, command-line tool, and REST server for training and inference. The Python wheel embeds the DeepDetect runtime in the current Python environment and provides the deepdetect CLI for repeatable model workflows. The server remains available for long-running REST services, containerized serving, and integrations that need a dedicated process.

    DeepDetect focuses on practical model operations: create services, train models, run predictions, monitor jobs, and keep model repositories organized on the filesystem. It supports images, text, CSV/tabular data, time series, sparse/SVM-style data, object-detection boxes, and segmentation masks through a single API surface.

    Quickstart

    Install one wheel variant in a Python environment. deepdetect-cpu and deepdetect-gpu both provide import deepdetect, so they are mutually exclusive in the same environment.

    python -m pip install \
      --extra-index-url https://www.deepdetect.com/download/wheels/simple \
      deepdetect-cpu
    

    For a CUDA-enabled environment, install the GPU package instead:

    python -m pip install \
      --extra-index-url https://www.deepdetect.com/download/wheels/simple \
      deepdetect-gpu
    

    Inspect the packaged CLI profiles and command options:

    deepdetect inspect models
    deepdetect train yolox --help
    deepdetect infer segformer --help
    

    The first CLI profiles are:

    • yolox: object detection
    • segformer: semantic segmentation
    • torchvision-detector: managed PyTorch Faster R-CNN detection
    • external-pytorch-detector: external PyTorch detection worker entrypoint
    • external-pytorch-image: external Python-loaded image worker entrypoint

    YAML config files make runs repeatable. The default examples are starting points; replace dataset, weight, and repository paths before using them for a real run.

    deepdetect train yolox --config bindings/python/deepdetect/cli/yolox-default.yaml
    deepdetect infer yolox image.jpg --config bindings/python/deepdetect/cli/yolox-default.yaml
    deepdetect train external-pytorch-detector --config bindings/python/deepdetect/cli/external-pytorch-detector-default.yaml
    deepdetect train external-pytorch-image --config bindings/python/deepdetect/cli/external-pytorch-image-default.yaml
    

    The generic external-pytorch-image profile passes image-list paths to its worker. The worker owns image decoding, augmentation, batching, and any model-specific masking; it does not use the C++ tensor-pull dataloader.

    A minimal object-detection run can use the same tiny fixtures as the wheel tests. Start Visdom in a second terminal:

    python -m pip install visdom
    python -m visdom.server -port 8097
    

    Prepare the quickstart dataset and model repository:

    python bindings/python/scripts/prepare_cli_yolox_quickstart.py \
      --output /tmp/deepdetect-yolox-quickstart \
      --force
    

    Train a very small YOLOX run:

    deepdetect train yolox \
      --config /tmp/deepdetect-yolox-quickstart/yolox-quickstart.yaml \
      --terminal live
    

    Then run inference on the Sample image: path printed by the preparation script:

    deepdetect infer yolox <sample-image> \
      --config /tmp/deepdetect-yolox-quickstart/yolox-quickstart.yaml \
      --visualize \
      --output /tmp/deepdetect-yolox-quickstart/detections.png
    

    Use the deepdetect-gpu wheel and add --gpu to the train and infer commands to run this example on CUDA.

    See the CLI specification for training, inference, monitoring, config precedence, and output formats.

    Core Capabilities

    • Train and run inference from the deepdetect CLI or the REST API.
    • Create model services backed by local model repositories.
    • Run asynchronous training jobs and inspect their status.
    • Work with image classification, object detection, semantic segmentation, language models, tabular data, time series, and sparse data.
    • Use filesystem-based model storage without a database dependency.
    • Emit structured CLI events for automation and human-readable terminal output.
    • Use JSON request and response payloads for server integrations.
    • Generate prediction outputs such as classes, scores, bounding boxes, segmentation masks, and model-specific metrics.

    Backends and Model Support

    DeepDetect uses Torch as the primary backend for training and inference. TensorRT is available for optimized inference with exported or compatible models. Caffe-format protobufs and prototxt files may appear as compatibility or model-format details, but Caffe is not an active runtime backend.

    The CLI currently packages focused workflows for:

    • YOLOX object detection.
    • SegFormer semantic segmentation.

    The broader Torch API supports additional model and template families, including:

    • Image classification with TorchVision-style classifiers such as ResNet, VGG, DenseNet, MobileNet, ShuffleNet, and SqueezeNet.
    • Object detection with YOLOX, Faster R-CNN, and RetinaNet.
    • Semantic segmentation with SegFormer and segmentation services.
    • Language and traced models such as BERT and GPT-2.
    • Time series with recurrent, N-BEATS, transformer, and time-transformer templates.
    • Vision transformers such as ViT and Visformer.

    See the API reference for service parameters, connectors, templates, and request/response details.

    Deployment

    Use the Python wheel and CLI for local training, in-process inference, and automation-friendly workflows.

    Use the DeepDetect server when you need a long-running REST service, remote clients, asynchronous jobs behind an HTTP API, or a dedicated serving process. The REST API is documented in docs/api.md.

    Use Docker for containerized serving and reproducible service environments. See docs/docker.md.

    Build from source when you need a custom C++ build, server options, TensorRT support, or local development changes. Start with docs/source.md.

    Python Client

    The Python REST client talks to a running DeepDetect server. It is separate from the in-process Python wheel, which provides import deepdetect and the deepdetect CLI. Wheel build and packaging details are in bindings/python/README.md.

    Documentation

    Authors, License, and Reference

    DeepDetect is designed, implemented, and supported by Jolibrain with help from contributors.

    Authors are listed in AUTHORS. DeepDetect is distributed under the GNU Lesser General Public License v3.0; see COPYING.

    Project website: https://www.deepdetect.com/