Skip to content

DJL v0.10.0 Release

Compare
Choose a tag to compare
@roywei roywei released this 24 Feb 20:10

DJL v0.10.0 brings the new engines PaddlePaddle 2.0 and TFLite 2.4.1, updates PyTorch to 1.7.1, and introduces several new features:

Key Features

  • Supports PaddlePaddle 2.0 engine inference: now you can run prediction using models trained in PaddlePaddle.

  • Introduces the PaddlePaddle Model Zoo with new models. Please see examples for how to run them.

  • Upgrades TFLite engine to v2.4.1. You can convert TensorFlow SavedModel to TFLite using this converter.

  • Introduces DJL Central to easily browse and view models available in DJL’s ModelZoo.

  • Introduces generic Bert Model in DJL (#105)

  • Upgrades PyTorch to 1.7.1

Enhancement

  • Enables listing input and output classes in ModelZoo lookup (#624)
  • Improves PyTorch performance by using PyTorch index over engine agnostic solution (#638)
  • Introduces various fixes and improvements for MultiThreadedBenchmark (#617)
  • Makes the default engine deterministic when multiple engines are in dependencies(#603)
  • Adds norm operator (similar to numpy.linalg.norm.html) (#579)
  • Refactors the DJL Trackers to use builder patterns (#562)
  • Adds the NDArray stopGradient and scaleGradient functions (#548)
  • Model Serving now supports scaling up and down (#510)

Documentation and examples

  • Introduces DJL 101 Video Series on DJL Youtube Channel
  • Adds the documentation for Applications (#673)
  • Adds an introduction for Engines (#660)
  • Adds documents for DJL community and forums (#646)
  • Adds documents on community leaders (#572)
  • Adds more purpose to the block tutorial and miscellaneous docs (#607)
  • Adds a DJL Paddle OCR Example (#568)
  • Adds a TensorFlow amazon review Jupyter notebook example

Breaking change

  • Renames DJL-Easy to DJL-Zero (#519)
  • Makes RNN operators generic across engines (#554)
  • Renames CheckpointsTrainingListener to SaveModelTrainingListener (#573)
  • Makes Initialization optional in training (#533)
  • Makes SoftmaxCrossEntropyLoss's fromLogit flag mean inputs are un-normalized (#639)
  • Refactors the Vocabulary builder API
  • Refactors the SymbolBlock with AbstractSymbolBlock (#491)

Bug Fixes

  • Fixes the benchmark rss value #656
  • Fixes the recurrent block memory leak and the output shape calculation (#556)
  • Fixes the NDArray slice size (#550)
  • Fixes #493: verify-java plugin charset bug (#496)
  • Fixes #484: support arbitrary URL scheme for repository
  • Fixes AbstractBlock inputNames and the inputShapes mismatch bug

Known issues

  • The training tests fail on GPU and Windows CPU if 3 engines(MXNet, PyTorch, TensorFlow) are loaded and run together

Contributors

This release is thanks to the following contributors: