mlcommons / training

Reference implementations of MLPerf™ training benchmarks
https://mlcommons.org/en/groups/training
Apache License 2.0
1.57k stars 548 forks source link

Add MLCube implementation for llama2 #749

Open davidjurado opened 2 weeks ago

davidjurado commented 2 weeks ago

MLCube for Llama 2

MLCube™ GitHub repository. MLCube™ wiki.

Project setup

An important requirement is that you must have Docker installed.

# Create Python environment and install MLCube Docker runner 
virtualenv -p python3 ./env && source ./env/bin/activate && pip install mlcube-docker
# Fetch the implementation from GitHub
git clone https://github.com/mlcommons/training && cd ./training
git fetch origin pull/749/head:feature/mlcube_llama2 && git checkout feature/mlcube_llama2
cd ./llama2_70b_lora/mlcube

Inside the mlcube directory run the following command to check implemented tasks.

mlcube describe

Extra requirements

Install Rclone in your system, by following these instructions.

MLCommons hosts the model for download exclusively by MLCommons Members. You must first agree to the confidentiality notice.

When finishing the previous form, you will be redirected to a Drive folder containing a file called CLI Download Instructions, follow the instructions inside that file up to step: #3 Authenticate Rclone with Google Drive.

When finishing this step a configuration file for Rclone will contain the necessary data to download the dataset and models. To check where this file is located run the command:

 rclone config file

Default: ~/.config/rclone/rclone.conf

Finally copy that file inside the workspace folder that is located in the same path as this readme, it must have the name rclone.conf.

MLCube tasks

Download dataset.

mlcube run --task=download_data -Pdocker.build_strategy=always

Train.

mlcube run --task=train -Pdocker.build_strategy=always

Download demo dataset.

mlcube run --task=download_demo -Pdocker.build_strategy=always

Train demo.

mlcube run --task=demo -Pdocker.build_strategy=always

Execute the complete pipeline

You can execute the complete pipeline with one single command.

mlcube run --task=download_data,train -Pdocker.build_strategy=always
mlcube run --task=download_demo,demo -Pdocker.build_strategy=always
github-actions[bot] commented 2 weeks ago

MLCommons CLA bot All contributors have signed the MLCommons CLA ✍️ ✅