ColossalAI/examples
Edenzzzz f5c84af0b0
[Feature] Zigzag Ring attention (#5905)
* halfway

* fix cross-PP-stage position id length diff bug

* fix typo

* fix typo

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* unified cross entropy func for all shardformer models

* remove redundant lines

* add basic ring attn; debug cross entropy

* fwd bwd logic complete

* fwd bwd logic complete; add experimental triton rescale

* precision tests passed

* precision tests passed

* fix typos and remove misc files

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* add sp_mode to benchmark; fix varlen interface

* update softmax_lse shape by new interface

* change tester name

* remove buffer clone; support packed seq layout

* add varlen tests

* fix typo

* all tests passed

* add dkv_group; fix mask

* remove debug statements

---------

Co-authored-by: Edenzzzz <wtan45@wisc.edu>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-08-16 13:56:38 +08:00
..
community [pre-commit.ci] pre-commit autoupdate (#5572) 2024-07-01 17:16:41 +08:00
images [pre-commit.ci] pre-commit autoupdate (#5572) 2024-07-01 17:16:41 +08:00
inference [Feat] Distrifusion Acceleration Support for Diffusion Inference (#5895) 2024-07-30 10:43:26 +08:00
language [Feature] Zigzag Ring attention (#5905) 2024-08-16 13:56:38 +08:00
tutorial [Feature] Zigzag Ring attention (#5905) 2024-08-16 13:56:38 +08:00
README.md [doc] add GPU cloud playground (#5851) 2024-06-25 11:03:16 +08:00
__init__.py [example]add gpt2 benchmark example script. (#5295) 2024-03-04 16:18:13 +08:00

README.md

Colossal-AI Examples

Table of Contents

Overview

This folder provides several examples accelerated by Colossal-AI. Folders such as images and language include a wide range of deep learning tasks and applications. The community folder aim to create a collaborative platform for developers to contribute exotic features built on top of Colossal-AI. The tutorial folder is for everyone to quickly try out the different features in Colossal-AI.

You can find applications such as Chatbot, AIGC and Biomedicine in the Applications directory.

Folder Structure

└─ examples
  └─ images
      └─ vit
        └─ test_ci.sh
        └─ train.py
        └─ README.md
      └─ ...
  └─ ...

Invitation to open-source contribution

Referring to the successful attempts of BLOOM and Stable Diffusion, any and all developers and partners with computing powers, datasets, models are welcome to join and build the Colossal-AI community, making efforts towards the era of big AI models!

You may contact us or participate in the following ways:

  1. Leaving a Star to show your like and support. Thanks!
  2. Posting an issue, or submitting a PR on GitHub follow the guideline in Contributing.
  3. Join the Colossal-AI community on Slack, and WeChat(微信) to share your ideas.
  4. Send your official proposal to email contact@hpcaitech.com

Thanks so much to all of our amazing contributors!

Integrate Your Example With Testing

Regular checks are important to ensure that all examples run without apparent bugs and stay compatible with the latest API. Colossal-AI runs workflows to check for examples on a on-pull-request and weekly basis. When a new example is added or changed, the workflow will run the example to test whether it can run. Moreover, Colossal-AI will run testing for examples every week.

Therefore, it is essential for the example contributors to know how to integrate your example with the testing workflow. Simply, you can follow the steps below.

  1. Create a script called test_ci.sh in your example folder
  2. Configure your testing parameters such as number steps, batch size in test_ci.sh, e.t.c. Keep these parameters small such that each example only takes several minutes.
  3. Export your dataset path with the prefix /data and make sure you have a copy of the dataset in the /data/scratch/examples-data directory on the CI machine. Community contributors can contact us via slack to request for downloading the dataset on the CI machine.
  4. Implement the logic such as dependency setup and example execution

Community Dependency

We are happy to introduce the following nice community dependency repos that are powered by Colossal-AI: