Skip to content

Commit 5dfc9fc

Browse files
committed
Merge branch 'ze-opt/ui' of https://github.com/opea-project/GenAIExamples into ze-opt/ui
2 parents 992cd24 + 7760e5a commit 5dfc9fc

File tree

96 files changed

+1208
-388
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

96 files changed

+1208
-388
lines changed

.github/workflows/_run-one-click.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ jobs:
115115
- name: Install dependencies
116116
run: |
117117
# Use flock to prevent apt conflicts when multiple instances run
118+
sudo rm -f /etc/apt/sources.list.d/helm-stable-debian.list || true
118119
sudo flock /var/lib/dpkg/lock-frontend apt update
119120
sudo flock /var/lib/dpkg/lock-frontend apt install -y python3-pip
120121

AudioQnA/Dockerfile.openEuler

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
# Copyright (C) 2025 Huawei Technologies Co., Ltd.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
ARG IMAGE_REPO=opea
5+
ARG BASE_TAG=latest
6+
FROM $IMAGE_REPO/comps-base:$BASE_TAG-openeuler
7+
8+
COPY ./audioqna.py $HOME/audioqna.py
9+
10+
ENTRYPOINT ["python", "audioqna.py"]

AudioQnA/docker_compose/amd/cpu/epyc/compose.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ services:
2626
https_proxy: ${https_proxy}
2727
restart: unless-stopped
2828
vllm-service:
29-
image: ${REGISTRY:-opea}/vllm:${TAG:-latest}
29+
image: public.ecr.aws/q9t5s3a7/vllm-cpu-release-repo:v0.10.1
3030
container_name: vllm-service
3131
ports:
3232
- ${LLM_SERVER_PORT:-3006}:80

AudioQnA/docker_compose/intel/cpu/xeon/compose.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ services:
2525
https_proxy: ${https_proxy}
2626
restart: unless-stopped
2727
vllm-service:
28-
image: ${REGISTRY:-opea}/vllm:${TAG:-latest}
28+
image: public.ecr.aws/q9t5s3a7/vllm-cpu-release-repo:v0.10.1
2929
container_name: vllm-service
3030
ports:
3131
- ${LLM_SERVER_PORT:-3006}:80

AudioQnA/docker_compose/intel/cpu/xeon/compose_multilang.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ services:
2929
# - ./pretrained_models/:/home/user/GPT-SoVITS/GPT_SoVITS/pretrained_models/
3030
restart: unless-stopped
3131
vllm-service:
32-
image: ${REGISTRY:-opea}/vllm:${TAG:-latest}
32+
image: public.ecr.aws/q9t5s3a7/vllm-cpu-release-repo:v0.10.1
3333
container_name: vllm-service
3434
ports:
3535
- ${LLM_SERVER_PORT:-3006}:80
Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
# Copyright (C) 2025 Huawei Technologies Co., Ltd.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
services:
5+
whisper-service:
6+
image: ${REGISTRY:-opea}/whisper:${TAG:-latest}-openeuler
7+
container_name: whisper-service
8+
ports:
9+
- ${WHISPER_SERVER_PORT:-7066}:7066
10+
ipc: host
11+
environment:
12+
no_proxy: ${no_proxy}
13+
http_proxy: ${http_proxy}
14+
https_proxy: ${https_proxy}
15+
restart: unless-stopped
16+
speecht5-service:
17+
image: ${REGISTRY:-opea}/speecht5:${TAG:-latest}-openeuler
18+
container_name: speecht5-service
19+
ports:
20+
- ${SPEECHT5_SERVER_PORT:-7055}:7055
21+
ipc: host
22+
environment:
23+
no_proxy: ${no_proxy}
24+
http_proxy: ${http_proxy}
25+
https_proxy: ${https_proxy}
26+
restart: unless-stopped
27+
vllm-service:
28+
image: openeuler/vllm-cpu:0.10.1-oe2403lts
29+
container_name: vllm-service
30+
ports:
31+
- ${LLM_SERVER_PORT:-3006}:80
32+
volumes:
33+
- "${MODEL_CACHE:-./data}:/root/.cache/huggingface/hub"
34+
shm_size: 128g
35+
environment:
36+
no_proxy: ${no_proxy}
37+
http_proxy: ${http_proxy}
38+
https_proxy: ${https_proxy}
39+
HF_TOKEN: ${HF_TOKEN}
40+
LLM_MODEL_ID: ${LLM_MODEL_ID}
41+
VLLM_TORCH_PROFILER_DIR: "/mnt"
42+
LLM_SERVER_PORT: ${LLM_SERVER_PORT}
43+
VLLM_CPU_OMP_THREADS_BIND: all
44+
VLLM_CPU_KVCACHE_SPACE: 30
45+
healthcheck:
46+
test: ["CMD-SHELL", "curl -f http://$host_ip:${LLM_SERVER_PORT}/health || exit 1"]
47+
interval: 10s
48+
timeout: 10s
49+
retries: 100
50+
command: --model ${LLM_MODEL_ID} --host 0.0.0.0 --port 80
51+
audioqna-xeon-backend-server:
52+
image: ${REGISTRY:-opea}/audioqna:${TAG:-latest}-openeuler
53+
container_name: audioqna-xeon-backend-server
54+
depends_on:
55+
- whisper-service
56+
- vllm-service
57+
- speecht5-service
58+
ports:
59+
- "3008:8888"
60+
environment:
61+
- no_proxy=${no_proxy}
62+
- https_proxy=${https_proxy}
63+
- http_proxy=${http_proxy}
64+
- MEGA_SERVICE_HOST_IP=${MEGA_SERVICE_HOST_IP}
65+
- WHISPER_SERVER_HOST_IP=${WHISPER_SERVER_HOST_IP}
66+
- WHISPER_SERVER_PORT=${WHISPER_SERVER_PORT}
67+
- LLM_SERVER_HOST_IP=${LLM_SERVER_HOST_IP}
68+
- LLM_SERVER_PORT=${LLM_SERVER_PORT}
69+
- LLM_MODEL_ID=${LLM_MODEL_ID}
70+
- SPEECHT5_SERVER_HOST_IP=${SPEECHT5_SERVER_HOST_IP}
71+
- SPEECHT5_SERVER_PORT=${SPEECHT5_SERVER_PORT}
72+
ipc: host
73+
restart: always
74+
audioqna-xeon-ui-server:
75+
image: ${REGISTRY:-opea}/audioqna-ui:${TAG:-latest}-openeuler
76+
container_name: audioqna-xeon-ui-server
77+
depends_on:
78+
- audioqna-xeon-backend-server
79+
ports:
80+
- "5173:5173"
81+
environment:
82+
- no_proxy=${no_proxy}
83+
- https_proxy=${https_proxy}
84+
- http_proxy=${http_proxy}
85+
- CHAT_URL=${BACKEND_SERVICE_ENDPOINT}
86+
ipc: host
87+
restart: always
88+
89+
networks:
90+
default:
91+
driver: bridge

AudioQnA/docker_compose/intel/hpu/gaudi/compose.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ services:
3535
- SYS_NICE
3636
restart: unless-stopped
3737
vllm-service:
38-
image: ${REGISTRY:-opea}/vllm-gaudi:${TAG:-latest}
38+
image: opea/vllm-gaudi:1.22.0
3939
container_name: vllm-gaudi-service
4040
ports:
4141
- ${LLM_SERVER_PORT:-3006}:80

AudioQnA/docker_image_build/build.yaml

Lines changed: 29 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,29 @@ services:
1313
context: ../
1414
dockerfile: ./Dockerfile
1515
image: ${REGISTRY:-opea}/audioqna:${TAG:-latest}
16+
audioqna-openeuler:
17+
build:
18+
args:
19+
IMAGE_REPO: ${REGISTRY}
20+
BASE_TAG: ${TAG}
21+
http_proxy: ${http_proxy}
22+
https_proxy: ${https_proxy}
23+
no_proxy: ${no_proxy}
24+
context: ../
25+
dockerfile: ./Dockerfile.openEuler
26+
image: ${REGISTRY:-opea}/audioqna:${TAG:-latest}-openeuler
1627
audioqna-ui:
1728
build:
1829
context: ../ui
1930
dockerfile: ./docker/Dockerfile
2031
extends: audioqna
2132
image: ${REGISTRY:-opea}/audioqna-ui:${TAG:-latest}
33+
audioqna-ui-openeuler:
34+
build:
35+
context: ../ui
36+
dockerfile: ./docker/Dockerfile.openEuler
37+
extends: audioqna
38+
image: ${REGISTRY:-opea}/audioqna-ui:${TAG:-latest}-openeuler
2239
audioqna-multilang:
2340
build:
2441
context: ../
@@ -37,6 +54,12 @@ services:
3754
dockerfile: comps/third_parties/whisper/src/Dockerfile
3855
extends: audioqna
3956
image: ${REGISTRY:-opea}/whisper:${TAG:-latest}
57+
whisper-openeuler:
58+
build:
59+
context: GenAIComps
60+
dockerfile: comps/third_parties/whisper/src/Dockerfile.openEuler
61+
extends: audioqna
62+
image: ${REGISTRY:-opea}/whisper:${TAG:-latest}-openeuler
4063
asr:
4164
build:
4265
context: GenAIComps
@@ -61,6 +84,12 @@ services:
6184
dockerfile: comps/third_parties/speecht5/src/Dockerfile
6285
extends: audioqna
6386
image: ${REGISTRY:-opea}/speecht5:${TAG:-latest}
87+
speecht5-openeuler:
88+
build:
89+
context: GenAIComps
90+
dockerfile: comps/third_parties/speecht5/src/Dockerfile.openEuler
91+
extends: audioqna
92+
image: ${REGISTRY:-opea}/speecht5:${TAG:-latest}-openeuler
6493
tts:
6594
build:
6695
context: GenAIComps
@@ -73,18 +102,6 @@ services:
73102
dockerfile: comps/third_parties/gpt-sovits/src/Dockerfile
74103
extends: audioqna
75104
image: ${REGISTRY:-opea}/gpt-sovits:${TAG:-latest}
76-
vllm:
77-
build:
78-
context: vllm
79-
dockerfile: docker/Dockerfile.cpu
80-
extends: audioqna
81-
image: ${REGISTRY:-opea}/vllm:${TAG:-latest}
82-
vllm-gaudi:
83-
build:
84-
context: vllm-fork
85-
dockerfile: Dockerfile.hpu
86-
extends: audioqna
87-
image: ${REGISTRY:-opea}/vllm-gaudi:${TAG:-latest}
88105
vllm-rocm:
89106
build:
90107
context: GenAIComps

AudioQnA/tests/test_compose_multilang_on_xeon.sh

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,8 @@ function build_docker_images() {
2525
docker build --no-cache -t ${REGISTRY}/comps-base:${TAG} --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f Dockerfile .
2626
popd && sleep 1s
2727

28-
git clone https://github.com/vllm-project/vllm.git
29-
cd ./vllm/
30-
VLLM_VER=v0.10.0
31-
echo "Check out vLLM tag ${VLLM_VER}"
32-
git checkout ${VLLM_VER} &> /dev/null && cd ../
33-
3428
echo "Build all the images with --no-cache, check docker_image_build.log for details..."
35-
service_list="audioqna-multilang audioqna-ui whisper gpt-sovits vllm"
29+
service_list="audioqna-multilang audioqna-ui whisper gpt-sovits"
3630
docker compose -f build.yaml build ${service_list} --no-cache > ${LOG_PATH}/docker_image_build.log
3731

3832
docker images && sleep 1s
@@ -41,6 +35,7 @@ function build_docker_images() {
4135
function start_services() {
4236
cd $WORKPATH/docker_compose/intel/cpu/xeon/
4337
export host_ip=${ip_address}
38+
export no_proxy="localhost,127.0.0.1,$ip_address"
4439
source set_env.sh
4540
# sed -i "s/backend_address/$ip_address/g" $WORKPATH/ui/svelte/.env
4641

AudioQnA/tests/test_compose_on_epyc.sh

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -27,20 +27,8 @@ function build_docker_images() {
2727
docker build --no-cache -t ${REGISTRY}/comps-base:${TAG} --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f Dockerfile .
2828
popd && sleep 1s
2929

30-
git clone https://github.com/vllm-project/vllm.git
31-
cd ./vllm/
32-
VLLM_VER=v0.10.0
33-
echo "Check out vLLM tag ${VLLM_VER}"
34-
git checkout ${VLLM_VER} &>/dev/null
35-
VLLM_REQ_FILE="requirements/cpu.txt"
36-
if ! grep -q "^transformers" "$VLLM_REQ_FILE"; then
37-
echo "Adding transformers<4.54.0 to $VLLM_REQ_FILE"
38-
echo "transformers<4.54.0" >>"$VLLM_REQ_FILE"
39-
fi
40-
cd ../
41-
4230
echo "Build all the images with --no-cache, check docker_image_build.log for details..."
43-
service_list="audioqna audioqna-ui whisper speecht5 vllm"
31+
service_list="audioqna audioqna-ui whisper speecht5"
4432
docker compose -f build.yaml build ${service_list} --no-cache >${LOG_PATH}/docker_image_build.log
4533

4634
docker images && sleep 1s
@@ -49,6 +37,7 @@ function build_docker_images() {
4937
function start_services() {
5038
cd $WORKPATH/docker_compose/amd/cpu/epyc/
5139
export host_ip=${ip_address}
40+
export no_proxy="localhost,127.0.0.1,$ip_address"
5241
source set_env.sh
5342
# sed -i "s/backend_address/$ip_address/g" $WORKPATH/ui/svelte/.env
5443

0 commit comments

Comments
 (0)