Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Document] Add CI self-hosted workflow on CPU/Gaudi #270

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -191,6 +191,9 @@ The following are detailed guidelines for pretraining, finetuning and serving LL
### Web UI
* [Finetune and Deploy LLMs through Web UI](docs/web_ui.md)

### CI
* [CI self-hosted workflow on CPU/Gaudi](docs/ci.md)

## Disclaimer
To the extent that any public datasets are referenced by Intel or accessed using tools or code on this site those datasets are provided by the third party indicated as the data source. Intel does not create the data, or datasets, and does not warrant their accuracy or quality. By accessing the public dataset(s), or using a model trained on those datasets, you agree to the terms associated with those datasets and that your use complies with the applicable license.

Expand Down
Binary file added docs/assets/ci_cpu_success.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/assets/ci_gaudi_success.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
42 changes: 42 additions & 0 deletions docs/ci.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# CI self-hosted workflow on CPU/Gaudi

LLM-on-Ray introduces CI workflows with or without self-hosted runner, allowing developers to easily run for a specific PR including CPU and Gaudi. It can also be deployed to run automatically in self-hosted nodes.

## Description
The workflow starts from loading state file which stores the states of handled PRs. Then it will get all opened PRs from Github, to check if there is any PR new or has new commits. After getting the list of PRs which need to be checked, it will run with CPU or Gaudi(depends on setting `is_gaudi`) and post a running state to PR. When the tests are done, the result success or failed will be posted again to PR page. Meanwhile, local state file will be update.

## Sandbox project repo
[intel-sandbox/self-hosted-workflow](https://github.com/intel-sandbox/self-hosted-workflow)

## Setup Environment
Use `pip list` or `pip3 list` to make sure urllib3>=1.26 and requests>=2.25.

## How to use
Main script can be found at `llm-on-ray-ci/llm-on-ray-ci.py`.
There are two args, the first one is `is_gaudi`, which must be set to true or false, and it stands for running Guadi tests or CPU tests. The second one is 'pr_number', which is optional and it stands for whether specific a PR to run.


## Examples

### 1. Run PR#268 on Gaudi
```bash
python llm-on-ray-ci/llm-on-ray-ci.py true 268
```

If the result is good:

![ci_gaudi_success](./assets/ci_gaudi_success.png)


### 2. Run all PRs on CPU which need update
```bash
python llm-on-ray-ci/llm-on-ray-ci.py false
```

If the result is good:

![ci_cpu_success](./assets/ci_cpu_success.png)


## Whitelist for developer
Whitelist is located on `llm-on-ray-ci/author_whitelist.json`. Only on this list will the authors' PR be checked.
Loading