Repolode
deepjavalibrary

deepjavalibrary/djl

面向 Java 开发者的深度学习框架,与底层引擎无关,可直接用 Java 构建、训练和部署模型。

Star
4,860
Fork
762
未关闭 Issue
236
最近提交
5天前

这是什么?

Deep Java Library(DJL)是一个面向 Java 的高层深度学习框架。它把 PyTorch、TensorFlow、MXNet、ONNX Runtime 等引擎封装在统一的 Java API 之后,开发者无需单独掌握 Python 技术栈即可使用模型。

DJL 的使用方式与普通 Java 库一致,可以直接在主流 IDE 和构建工具中使用。它提供模型库用于加载预训练模型,覆盖目标检测等任务;同时内置神经网络模块、MNIST 等数据集以及训练配置接口,支持直接在 Java 中训练模型。框架还会根据硬件配置自动选择 CPU 或 GPU。

由于引擎被抽象隔离,项目不必绑定某一个后端,之后也可以切换引擎。它主要面向希望在现有 Java 应用中加入机器学习推理或训练能力的开发者。

核心功能

  • 01引擎无关的统一 API,支持 PyTorch、TensorFlow、MXNet 和 ONNX Runtime。
  • 02预训练模型库,可按应用场景和网络结构加载模型。
  • 03内置神经网络模块和数据集,支持在 Java 中训练。
  • 04根据硬件配置自动选择 CPU 或 GPU。
  • 05基于 Gradle 构建,可在常见 Java IDE 中使用。

适用场景

  • 在现有 Java 后端服务中加入图像分类或目标检测能力。
  • 在 JVM 应用中运行预训练的 ONNX 或 PyTorch 模型进行推理。
  • 团队不便使用 Python 时,用 Java 训练小型神经网络。
  • 通过 Java 原生代码学习深度学习基础概念。

快速上手

  1. 1

    阅读文档中的快速入门指南

  2. 2

    在 Linux 或 macOS 上从源码构建项目

    ./gradlew build
  3. 3

    在 Windows 上从源码构建项目

    gradlew build

使用前须知

  • 从源码构建需要 Gradle 工具链和 Java 开发环境。
  • 根据所选的后端引擎,可能需要额外配置原生库。

标签

常见问题

djl 是什么?
面向 Java 开发者的深度学习框架,与底层引擎无关,可直接用 Java 构建、训练和部署模型。 Deep Java Library(DJL)是一个面向 Java 的高层深度学习框架。它把 PyTorch、TensorFlow、MXNet、ONNX Runtime 等引擎封装在统一的 Java API 之后,开发者无需单独掌握 Python 技术栈即可使用模型。
djl 可以免费使用吗?用的什么许可证?
djl 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
djl 还在维护吗?
活跃维护中。djl 最近一次提交是在 2026年11月2日。
djl 适合用来做什么?
在现有 Java 后端服务中加入图像分类或目标检测能力。 在 JVM 应用中运行预训练的 ONNX 或 PyTorch 模型进行推理。 团队不便使用 Python 时,用 Java 训练小型神经网络。 通过 Java 原生代码学习深度学习基础概念。
djl 怎么安装和运行?
阅读文档中的快速入门指南 在 Linux 或 macOS 上从源码构建项目: ./gradlew build 在 Windows 上从源码构建项目: gradlew build
在哪里获取 djl?
源代码和安装说明在 GitHub 上:https://github.com/deepjavalibrary/djl

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目