Skip to content

Commit

Permalink
Merge branch 'main' into qg/safety
Browse files Browse the repository at this point in the history
  • Loading branch information
ashahba authored Aug 13, 2024
2 parents fcda592 + f36629a commit edc3f1e
Show file tree
Hide file tree
Showing 109 changed files with 2,310 additions and 884 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ jobs:
merged_commit=$(git log -1 --format='%H')
changed_files="$(git diff --name-only ${base_commit} ${merged_commit} | \
grep 'comps/' | grep -vE '*.md|*.txt|comps/cores')" || true
grep 'comps/' | grep -vE '*.md|comps/cores')" || true
services=$(printf '%s\n' "${changed_files[@]}" | cut -d'/' -f2 | grep -vE '*.py' | sort -u) || true
run_matrix="{\"include\":["
for service in ${services}; do
Expand Down
10 changes: 9 additions & 1 deletion .github/workflows/docker/compose/llms-compose.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# SPDX-License-Identifier: Apache-2.0

# this file should be run in the root of the repo
# images used by GenAIExamples: llm-tgi,llm-ollama,llm-docsum-tgi,llm-faqgen-tgi,llm-vllm,llm-vllm-ray
# images used by GenAIExamples: llm-tgi,llm-ollama,llm-docsum-tgi,llm-faqgen-tgi,llm-vllm,llm-vllm-hpu,llm-vllm-ray,llm-vllm-ray-hpu
services:
llm-tgi:
build:
Expand All @@ -24,7 +24,15 @@ services:
build:
dockerfile: comps/llms/text-generation/vllm/docker/Dockerfile.microservice
image: ${REGISTRY}opea/llm-vllm:${TAG:-latest}
llm-vllm-hpu:
build:
dockerfile: comps/llms/text-generation/vllm/docker/Dockerfile.hpu
image: ${REGISTRY}opea/llm-vllm-hpu:${TAG:-latest}
llm-vllm-ray:
build:
dockerfile: comps/llms/text-generation/vllm-ray/docker/Dockerfile.microservice
image: ${REGISTRY}opea/llm-vllm-ray:${TAG:-latest}
llm-vllm-ray-hpu:
build:
dockerfile: comps/llms/text-generation/vllm-ray/docker/Dockerfile.vllmray
image: ${REGISTRY}opea/llm-vllm-ray-hpu:${TAG:-latest}
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ on:
branches: [main]
types: [opened, reopened, ready_for_review, synchronize] # added `ready_for_review` since draft is skipped
paths:
- .github/workflows/megaservice-test.yml
- .github/workflows/mix-megaservice-test.yml
- comps/cores/**
- requirements.txt
- setup.py
Expand Down
File renamed without changes.
117 changes: 117 additions & 0 deletions .github/workflows/pr-dockerfile-path-scan.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
# Copyright (C) 2024 Intel Corporation
# SPDX-License-Identifier: Apache-2.0

name: File Change Warning

on:
pull_request:
branches: [main]
types: [opened, reopened, ready_for_review, synchronize]

# If there is a new commit, the previous jobs will be canceled
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:
Dockerfile-path-change-detection-in-GenAIComps:
runs-on: ubuntu-latest
steps:
- name: Clean Up Working Directory
run: sudo rm -rf ${{github.workspace}}/*

- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Check for changed Dockerfile paths in yaml
run: |
set -xe
shopt -s globstar
cd ${{github.workspace}}
is_use="FALSE"
used_files=""
merged_commit=$(git log -1 --format='%H')
changed_files="$(git diff --name-status --diff-filter=DR ${{ github.event.pull_request.base.sha }} ${merged_commit} -- '**/Dockerfile**' | cut -f2)"
if [ -n "$changed_files" ]; then
for file in $changed_files; do
if grep -q "$file" .github/workflows/docker/compose/*.yaml; then
is_use="TRUE"
used_files+="$file "
fi
done
fi
if [[ "$is_use" == "TRUE" ]]; then
echo "Warning: Changed Dockerfile paths:"
echo "$used_files"
echo "Please modify the corresponding yaml in GenAIComps/.github/workflows/docker/compose and ask [email protected] for final confirmation."
exit 1
fi
- name: Check for changed Dockerfile paths in readme
run: |
set -xe
shopt -s globstar
cd ${{github.workspace}}
is_use="FALSE"
used_files=""
merged_commit=$(git log -1 --format='%H')
changed_files="$(git diff --name-status --diff-filter=DR ${{ github.event.pull_request.base.sha }} ${merged_commit} -- '**/Dockerfile**' | cut -f2)"
if [ -n "$changed_files" ]; then
for file in $changed_files; do
if grep -q "$file" ./**/*.md; then
is_use="TRUE"
used_files+="$file "
fi
done
fi
if [[ "$is_use" == "TRUE" ]]; then
echo "Warning: Changed Dockerfile paths:"
echo "$used_files"
echo "Please modify the corresponding README in GenAIComps and ask [email protected] for final confirmation."
exit 1
fi
Dockerfile-path-change-detection-in-GenAIExamples:
runs-on: ubuntu-latest
steps:
- name: Clean Up Working Directory
run: sudo rm -rf ${{github.workspace}}/*

- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Clone repo GenAIExamples
run: |
cd ..
git clone https://github.com/opea-project/GenAIExamples
- name: Check for changed Dockerfile paths
run: |
set -xe
shopt -s globstar
cd ${{github.workspace}}
is_use="FALSE"
used_files=""
merged_commit=$(git log -1 --format='%H')
changed_files="$(git diff --name-status --diff-filter=DR ${{ github.event.pull_request.base.sha }} ${merged_commit} -- '**/Dockerfile' | cut -f2)"
if [ -n "$changed_files" ]; then
for file in $changed_files; do
if grep -q "$file" ../GenAIExamples/**/*.md; then
is_use="TRUE"
used_files+="$file "
fi
done
fi
if [[ "$is_use" == "TRUE" ]]; then
echo "Warning: Changed Dockerfile paths:"
echo "$used_files"
echo "Please modify the corresponding README in GenAIExamples repo and ask [email protected] for final confirmation."
exit 1
fi
72 changes: 72 additions & 0 deletions .github/workflows/pr-examples-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
# Copyright (C) 2024 Intel Corporation
# SPDX-License-Identifier: Apache-2.0

name: Example-test

on:
pull_request_target:
branches: [main]
types: [opened, reopened, ready_for_review, synchronize] # added `ready_for_review` since draft is skipped
paths:
- .github/workflows/pr-examples-test.yml
- comps/cores/**
- comps/embeddings/langchain/**
- comps/retrievers/langchain/redis/**
- comps/reranks/tei/**
- comps/llms/text-generation/tgi/**
- comps/dataprep/redis/langchain/**
- requirements.txt

# If there is a new commit, the previous jobs will be canceled
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:
example-test:
runs-on: gaudi-01-3
steps:
- name: Clean Up Working Directory
run: |
sudo rm -rf ${{github.workspace}}/* || true
echo y | docker system prune
docker rmi $(docker images --filter reference="*/*:comps" -q) || true
- name: Checkout out Repo
uses: actions/checkout@v4
with:
ref: "refs/pull/${{ github.event.number }}/merge"

- name: Run ChatQnA
env:
HUGGINGFACEHUB_API_TOKEN: ${{ secrets.HUGGINGFACEHUB_API_TOKEN }}
run: |
git clone https://github.com/opea-project/GenAIExamples.git
cd ${{ github.workspace }}/GenAIExamples/ChatQnA/docker/gaudi
sed -i "s#:latest#:comps#g" compose.yaml
cat compose.yaml
cd ${{ github.workspace }}/GenAIExamples/ChatQnA/tests
GenAIComps_dir=${{github.workspace}}
sed -i '/GenAIComps.git/d' test_chatqna_on_gaudi.sh
sed -i "s#cd GenAIComps#cd ${GenAIComps_dir}#g" test_chatqna_on_gaudi.sh
sed -i "s#docker build -t#docker build --no-cache -q -t#g" test_chatqna_on_gaudi.sh
sed -i "s#:latest#:comps#g" test_chatqna_on_gaudi.sh
cat test_chatqna_on_gaudi.sh
echo "Run test..."
timeout 50m bash test_chatqna_on_gaudi.sh
- name: Clean up container
if: cancelled() || failure()
run: |
cd ${{ github.workspace }}/GenAIExamples/ChatQnA/docker/gaudi
docker compose stop && docker compose rm -f
docker system prune -f
- name: Publish pipeline artifact
if: ${{ !cancelled() }}
uses: actions/upload-artifact@v4
with:
name: "Examples-Test-Logs"
path: ${{ github.workspace }}/GenAIExamples/ChatQnA/tests/*.log
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,7 @@ on:
- comps/**
- tests/**
- "!**.md"
- "!**.txt"
- .github/workflows/microservice-test.yml
- .github/workflows/pr-microservice-test.yml

# If there is a new commit, the previous jobs will be canceled
concurrency:
Expand All @@ -21,7 +20,7 @@ concurrency:

jobs:
job1:
uses: ./.github/workflows/reuse-get-test-matrix.yml
uses: ./.github/workflows/_get-test-matrix.yml

Microservice-test:
needs: job1
Expand All @@ -31,7 +30,10 @@ jobs:
continue-on-error: true
steps:
- name: Clean Up Working Directory
run: sudo rm -rf ${{github.workspace}}/*
run: |
sudo rm -rf ${{github.workspace}}/*
docker system prune -f
docker rmi $(docker images --filter reference="*/*:comps" -q) || true
- name: Checkout out Repo
uses: actions/checkout@v4
Expand All @@ -43,6 +45,7 @@ jobs:
HF_TOKEN: ${{ secrets.HF_TOKEN }}
GOOGLE_API_KEY: ${{ secrets.GOOGLE_API_KEY }}
GOOGLE_CSE_ID: ${{ secrets.GOOGLE_CSE_ID }}
PINECONE_KEY: ${{ secrets.PINECONE_KEY }}
service_path: ${{ matrix.service }}
hardware: ${{ matrix.hardware }}
run: |
Expand All @@ -56,7 +59,7 @@ jobs:
run: |
cid=$(docker ps -aq --filter "name=test-comps-*")
if [[ ! -z "$cid" ]]; then docker stop $cid && docker rm $cid && sleep 1s; fi
echo y | docker system prune --all
docker system prune -f
- name: Publish pipeline artifact
if: ${{ !cancelled() }}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ on:
- comps/**
- "!**.md"
- "!**.txt"
- .github/workflows/image-build-on-push.yml
- .github/workflows/push-image-build.yml

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}-on-push
Expand Down
32 changes: 0 additions & 32 deletions .github/workflows/reuse-image-build.yml

This file was deleted.

File renamed without changes.
Loading

0 comments on commit edc3f1e

Please sign in to comment.