Add CI workflow to push NeuronX TGI docker images #858
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Optimum neuron / Test TGI on INF2 | |
on: | |
push: | |
branches: [ main ] | |
paths: | |
- "setup.py" | |
- "optimum/**.py" | |
- "text-generation-inference/**" | |
- ".github/workflows/test_inf2_tgi.yml" | |
pull_request: | |
branches: [ main ] | |
paths: | |
- "setup.py" | |
- "optimum/**.py" | |
- "text-generation-inference/**" | |
- ".github/workflows/test_inf2_tgi.yml" | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
jobs: | |
do-the-job: | |
name: Run TGI tests | |
runs-on: | |
group: aws-inf2-8xlarge | |
steps: | |
- name: Install Neuron runtime | |
run: | | |
. /etc/os-release | |
sudo tee /etc/apt/sources.list.d/neuron.list > /dev/null <<EOF | |
deb https://apt.repos.neuron.amazonaws.com ${VERSION_CODENAME} main | |
EOF | |
wget -qO - https://apt.repos.neuron.amazonaws.com/GPG-PUB-KEY-AMAZON-AWS-NEURON.PUB | sudo apt-key add - | |
sudo apt-get update -y | |
sudo apt-get install aws-neuronx-tools=2.19.0.0 aws-neuronx-runtime-lib=2.22.14.0-6e27b8d5b aws-neuronx-collectives=2.22.26.0-17a033bc8 -y | |
export PATH=/opt/aws/neuron/bin:$PATH | |
- name: Checkout | |
uses: actions/checkout@v2 | |
- name: Install python and create venv | |
run: | | |
sudo apt install python3-venv python3-dev -y | |
python3 -m venv aws_neuron_venv_pytorch | |
source aws_neuron_venv_pytorch/bin/activate | |
python -m pip install -U pip | |
python -m pip config set global.extra-index-url https://pip.repos.neuron.amazonaws.com | |
- name: Install integration tests prerequisites | |
run: | | |
source aws_neuron_venv_pytorch/bin/activate | |
python -m pip install -r text-generation-inference/tests/requirements.txt | |
- name: Run TGI server python tests | |
run: | | |
# gawk is required when invoking the Makefile targets | |
sudo apt install gawk -y | |
source aws_neuron_venv_pytorch/bin/activate | |
HF_TOKEN=${{ secrets.HF_TOKEN_OPTIMUM_NEURON_CI }} make tgi_test | |
- name: Build docker image | |
shell: bash | |
run: | | |
source aws_neuron_venv_pytorch/bin/activate | |
make neuronx-tgi | |
- name: Run TGI docker tests | |
shell: bash | |
run: | | |
source aws_neuron_venv_pytorch/bin/activate | |
HF_TOKEN=${{ secrets.HF_TOKEN_OPTIMUM_NEURON_CI }} python -m pytest -sv text-generation-inference/tests -k integration |