Skip to content

Repository files navigation


zae-engine

[ English ] [ Korean ]

https://pypi.python.org/pypi/zae-engine/ Hits https://pepy.tech/project/zae-engine https://pepy.tech/project/zae-engine https://pepy.tech/project/zae-engine
https://pypi.python.org/pypi/zae-engine/
https://zae-park.github.io/zae-engine

Accelerate AI project !

zae-engine is a modular package that consolidates popular deep learning frameworks like PyTorch, TensorFlow, and Flax. It aims to standardize every step of AI projects, reduce repetitive code, and accelerate data science workflows. Additionally, it enhances code simplicity and flexibility, making it easier to manage and maintain complex deep learning projects.

Advantages over unstructured PyTorch

  • Improves code readability by organizing commonly used boilerplate code.
  • Reduces errors by abstracting away complex engineering tasks handled by zae-engine.
  • Decouples data science from advanced engineering with minimal code modifications (e.g., CPU, Apple Silicon, CUDA support, and multi-GPU transition).
  • Generalizes various implementations for greater flexibility.
  • Maintains all flexibility (similar to how LightningModules are still PyTorch modules) while removing repetitive boilerplate code.
  • Simplifies expansion with easy checkpoint saving, logging, and other extensions.
  • Integrates dozens of useful and effective models, layers, and tools.

Features

Feature Description Details
Data Provides Dataset for special formats (e.g., parquet for large-scale data processing) and CollateBase class for modular data preprocessing [README]
Loss Provides popular loss functions for angles, size, area, etc. [README]
Metrics Provides popular evaluation metrics for aggregation, signal, area, etc. [README]
Models Provides builders for various deep learning models, implementation of popular models, and dim_converter for model dimensionality conversion [README]
NN_night Provides various deep learning layers and blocks [README-blocks]
[README-layers]
Operation Provides post-processing and transformations based on algorithms [README]
Schedulers Provides modular learning rate management with SchedulerBase and popular learning rate schedulers [README]
Trainer Provides Trainer to manage training instances and add-on features for advanced engineering such as state management and distributed training [README]

Support Frameworks (WIP)

  • PyTorch
  • TensorFlow
  • Flax

zae-command

After installation, the zae command can be used in the terminal to access the following features:

  • zae hello: Verify successful installation
  • zae example: Create an example script file zae_example.py
  • zae tree: Print the supported classes and functions within the package

Installation

PIP

pip install zae-engine
# or
git+https://github.com/zae-park/zae-engine.git

Poetry

poetry add zae-engine
# or
git+https://github.com/zae-park/zae-engine.git

LICENSE

This project is licensed under the Apache License 2.0.

About

Boilerplate-free AI training framework with modular utilities

Topics

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages