waffle-hub


Namewaffle-hub JSON
Version 0.3.1 PyPI version JSON
download
home_pagehttps://github.com/snuailab/waffle_hub
SummaryWaffle hub
upload_time2024-01-22 02:17:08
maintainer
docs_urlNone
authorSNUAILAB
requires_python>=3.9
licenseGPL-3.0
keywords machine-learning deep-learning vision ml dl ai yolo ultralytics snuailab
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <div align="center">
  <p>
    <a href="http://snuailab.ai/">
        <img width="75%" src="https://raw.githubusercontent.com/snuailab/assets/main/waffle/icons/waffle_banner.png">
    </a>
  </p>
</div>

Waffle is a framework that lets you use lots of different deep learning tools through just one interface. When it comes to MLOps (machine learning operations), you need to be able to keep up with all the new ideas in deep learning as quickly as possible. But it's hard to do that if you have to write all the code yourself. That's why we started a project to bring together different tools into one framework.

Experience the power of multiple deep learning frameworks at your fingertips with Waffle's seamless integration, unlocking limitless possibilities for your machine learning projects.

# Prerequisites
We've tested Waffle on the following environments:
| OS | Python | PyTorch | Device | Backend | Pass |
|:---:|:---:|:---:|:---:|:---:|:---:|
| Ubuntu 20.04 | 3.9, 3.10 | 1.13.1 | CPU, GPU | All | [![Waffle Hub cpu test](https://github.com/snuailab/waffle_hub/actions/workflows/ci.yaml/badge.svg)](https://github.com/snuailab/waffle_hub/actions/workflows/ci.yaml) |
| Windows | 3.9, 3.10 | 1.13.1 | CPU, GPU | All | [![Waffle Hub cpu test](https://github.com/snuailab/waffle_hub/actions/workflows/ci.yaml/badge.svg)](https://github.com/snuailab/waffle_hub/actions/workflows/ci.yaml) |
| Ubuntu 20.04 | 3.9 | 1.13.1 | Multi GPU | Ultralytics |[![Waffle Hub multi-gpu(ddp) test on self-hosted runner](https://github.com/snuailab/waffle_hub/actions/workflows/ddp.yaml/badge.svg)](https://github.com/snuailab/waffle_hub/actions/workflows/ddp.yaml) |


We recommend using above environments for the best experience.

# Installation
1. Install pytorch and torchvision
    - [PyTorch and TorchVision](https://pytorch.org/get-started/locally/) (We recommend using 1.13.1)
2. Install Waffle Hub
    - `pip install -U waffle-hub`

# Example Usage
We provide both python module and CLI for Waffle Hub.

Following examples do the exact same thing.

## Python Module
```python
from waffle_hub.dataset import Dataset
dataset = Dataset.sample(
  name = "mnist_classification",
  task = "classification",
)
dataset.split(
  train_ratio = 0.8,
  val_ratio = 0.1,
  test_ratio = 0.1
)
export_dir = dataset.export("YOLO")

from waffle_hub.hub import Hub
hub = Hub.new(
  name = "my_classifier",
  task = "classification",
  model_type = "yolov8",
  model_size = "n",
  categories = dataset.get_category_names(),
)
hub.train(
  dataset = dataset,
  epochs = 30,
  batch_size = 64,
  image_size=64,
  device="cpu"
)
hub.inference(
  source=export_dir,
  draw=True,
  device="cpu"
)
```

## CLI
```bash
wd sample --name mnist_classification --task classification
wd split --name mnist_classification --train-ratio 0.8 --val-ratio 0.1 --test-ratio 0.1
wd export --name mnist_classification --data-type YOLO

wh new --name my_classifier --task classification --model-type yolov8 --model-size n --categories [1,2]
wh train --name my_classifier --dataset mnist_classification --epochs 30 --batch-size 64 --image-size 64 --device cpu
wh inference --name my_classifier --source datasets/mnist_classification/exports/YOLO --draw --device cpu
```

See our [documentation](https://snuailab.github.io/waffle/) for more information!

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/snuailab/waffle_hub",
    "name": "waffle-hub",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": "",
    "keywords": "machine-learning,deep-learning,vision,ML,DL,AI,YOLO,Ultralytics,SNUAILAB",
    "author": "SNUAILAB",
    "author_email": "huijae.lee@snuailab.ai",
    "download_url": "https://files.pythonhosted.org/packages/0c/f9/276a5f342ffdb636ca9a831ad0d7fe0c6c40059b3fc41efb5846bad27f0e/waffle_hub-0.3.1.tar.gz",
    "platform": null,
    "description": "<div align=\"center\">\n  <p>\n    <a href=\"http://snuailab.ai/\">\n        <img width=\"75%\" src=\"https://raw.githubusercontent.com/snuailab/assets/main/waffle/icons/waffle_banner.png\">\n    </a>\n  </p>\n</div>\n\nWaffle is a framework that lets you use lots of different deep learning tools through just one interface. When it comes to MLOps (machine learning operations), you need to be able to keep up with all the new ideas in deep learning as quickly as possible. But it's hard to do that if you have to write all the code yourself. That's why we started a project to bring together different tools into one framework.\n\nExperience the power of multiple deep learning frameworks at your fingertips with Waffle's seamless integration, unlocking limitless possibilities for your machine learning projects.\n\n# Prerequisites\nWe've tested Waffle on the following environments:\n| OS | Python | PyTorch | Device | Backend | Pass |\n|:---:|:---:|:---:|:---:|:---:|:---:|\n| Ubuntu 20.04 | 3.9, 3.10 | 1.13.1 | CPU, GPU | All | [![Waffle Hub cpu test](https://github.com/snuailab/waffle_hub/actions/workflows/ci.yaml/badge.svg)](https://github.com/snuailab/waffle_hub/actions/workflows/ci.yaml) |\n| Windows | 3.9, 3.10 | 1.13.1 | CPU, GPU | All | [![Waffle Hub cpu test](https://github.com/snuailab/waffle_hub/actions/workflows/ci.yaml/badge.svg)](https://github.com/snuailab/waffle_hub/actions/workflows/ci.yaml) |\n| Ubuntu 20.04 | 3.9 | 1.13.1 | Multi GPU | Ultralytics |[![Waffle Hub multi-gpu(ddp) test on self-hosted runner](https://github.com/snuailab/waffle_hub/actions/workflows/ddp.yaml/badge.svg)](https://github.com/snuailab/waffle_hub/actions/workflows/ddp.yaml) |\n\n\nWe recommend using above environments for the best experience.\n\n# Installation\n1. Install pytorch and torchvision\n    - [PyTorch and TorchVision](https://pytorch.org/get-started/locally/) (We recommend using 1.13.1)\n2. Install Waffle Hub\n    - `pip install -U waffle-hub`\n\n# Example Usage\nWe provide both python module and CLI for Waffle Hub.\n\nFollowing examples do the exact same thing.\n\n## Python Module\n```python\nfrom waffle_hub.dataset import Dataset\ndataset = Dataset.sample(\n  name = \"mnist_classification\",\n  task = \"classification\",\n)\ndataset.split(\n  train_ratio = 0.8,\n  val_ratio = 0.1,\n  test_ratio = 0.1\n)\nexport_dir = dataset.export(\"YOLO\")\n\nfrom waffle_hub.hub import Hub\nhub = Hub.new(\n  name = \"my_classifier\",\n  task = \"classification\",\n  model_type = \"yolov8\",\n  model_size = \"n\",\n  categories = dataset.get_category_names(),\n)\nhub.train(\n  dataset = dataset,\n  epochs = 30,\n  batch_size = 64,\n  image_size=64,\n  device=\"cpu\"\n)\nhub.inference(\n  source=export_dir,\n  draw=True,\n  device=\"cpu\"\n)\n```\n\n## CLI\n```bash\nwd sample --name mnist_classification --task classification\nwd split --name mnist_classification --train-ratio 0.8 --val-ratio 0.1 --test-ratio 0.1\nwd export --name mnist_classification --data-type YOLO\n\nwh new --name my_classifier --task classification --model-type yolov8 --model-size n --categories [1,2]\nwh train --name my_classifier --dataset mnist_classification --epochs 30 --batch-size 64 --image-size 64 --device cpu\nwh inference --name my_classifier --source datasets/mnist_classification/exports/YOLO --draw --device cpu\n```\n\nSee our [documentation](https://snuailab.github.io/waffle/) for more information!\n",
    "bugtrack_url": null,
    "license": "GPL-3.0",
    "summary": "Waffle hub",
    "version": "0.3.1",
    "project_urls": {
        "Bug Reports": "https://github.com/snuailab/waffle_hub/issues",
        "Homepage": "https://github.com/snuailab/waffle_hub",
        "Source": "https://github.com/snuailab/waffle_hub"
    },
    "split_keywords": [
        "machine-learning",
        "deep-learning",
        "vision",
        "ml",
        "dl",
        "ai",
        "yolo",
        "ultralytics",
        "snuailab"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "185a1299b89952a8397e20c4d777829e85c34ce06139078065e2fd38d2d81b30",
                "md5": "50410268b468da833389d7facb9ff64b",
                "sha256": "6ec8b312c6d1df389409faf11d474d4d65aa597c5516110f174625fa63ff8af8"
            },
            "downloads": -1,
            "filename": "waffle_hub-0.3.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "50410268b468da833389d7facb9ff64b",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 108973,
            "upload_time": "2024-01-22T02:17:05",
            "upload_time_iso_8601": "2024-01-22T02:17:05.279227Z",
            "url": "https://files.pythonhosted.org/packages/18/5a/1299b89952a8397e20c4d777829e85c34ce06139078065e2fd38d2d81b30/waffle_hub-0.3.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0cf9276a5f342ffdb636ca9a831ad0d7fe0c6c40059b3fc41efb5846bad27f0e",
                "md5": "ec5a204def9fbe215910f9daeba74c82",
                "sha256": "ae837f987b83abd912a2b9a8b680bc3cab24088f03bdc9d665e8d57d3404dee7"
            },
            "downloads": -1,
            "filename": "waffle_hub-0.3.1.tar.gz",
            "has_sig": false,
            "md5_digest": "ec5a204def9fbe215910f9daeba74c82",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 97013,
            "upload_time": "2024-01-22T02:17:08",
            "upload_time_iso_8601": "2024-01-22T02:17:08.014819Z",
            "url": "https://files.pythonhosted.org/packages/0c/f9/276a5f342ffdb636ca9a831ad0d7fe0c6c40059b3fc41efb5846bad27f0e/waffle_hub-0.3.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-01-22 02:17:08",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "snuailab",
    "github_project": "waffle_hub",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "waffle-hub"
}
        
Elapsed time: 0.29604s