From 5d302d75013537497186bc1ddb4f221c98632c80 Mon Sep 17 00:00:00 2001 From: Liang Lv Date: Tue, 24 Dec 2024 10:43:35 +0800 Subject: [PATCH 01/26] Update code and README for GenAIComps refactor (#1281) Signed-off-by: lvliang-intel --- .../docker_compose/amd/gpu/rocm/README.md | 2 +- .../docker_compose/intel/cpu/xeon/README.md | 2 +- .../docker_compose/intel/hpu/gaudi/README.md | 2 +- AudioQnA/docker_image_build/build.yaml | 2 +- .../docker_compose/intel/cpu/xeon/README.md | 2 +- .../docker_compose/intel/hpu/gaudi/README.md | 2 +- AvatarChatbot/docker_image_build/build.yaml | 2 +- ChatQnA/docker_compose/amd/gpu/rocm/README.md | 2 +- .../docker_compose/intel/cpu/aipc/README.md | 2 +- .../docker_compose/intel/cpu/xeon/README.md | 2 +- .../intel/cpu/xeon/README_pinecone.md | 2 +- .../intel/cpu/xeon/README_qdrant.md | 2 +- .../docker_compose/intel/hpu/gaudi/README.md | 2 +- ChatQnA/docker_compose/nvidia/gpu/README.md | 2 +- ChatQnA/docker_image_build/build.yaml | 12 +- CodeGen/docker_compose/amd/gpu/rocm/README.md | 2 +- .../docker_compose/intel/cpu/xeon/README.md | 2 +- .../docker_compose/intel/hpu/gaudi/README.md | 2 +- CodeGen/docker_image_build/build.yaml | 2 +- .../docker_compose/amd/gpu/rocm/README.md | 2 +- .../docker_compose/intel/cpu/xeon/README.md | 4 +- .../docker_compose/intel/hpu/gaudi/README.md | 4 +- CodeTrans/docker_image_build/build.yaml | 4 +- .../docker_compose/intel/cpu/xeon/README.md | 4 +- .../docker_compose/intel/hpu/gaudi/README.md | 4 +- .../docker_image_build/build.yaml | 4 +- FaqGen/docker_compose/amd/gpu/rocm/README.md | 2 +- GraphRAG/docker_image_build/build.yaml | 2 +- .../docker_compose/amd/gpu/rocm/README.md | 4 +- .../docker_compose/intel/cpu/xeon/README.md | 4 +- .../docker_compose/intel/hpu/gaudi/README.md | 4 +- MultimodalQnA/docker_image_build/build.yaml | 4 +- .../docker_compose/intel/cpu/xeon/README.md | 6 +- .../docker_image_build/build.yaml | 6 +- .../docker_compose/intel/cpu/xeon/README.md | 6 +- .../docker_compose/intel/hpu/gaudi/README.md | 6 +- SearchQnA/docker_image_build/build.yaml | 6 +- .../docker_compose/intel/cpu/xeon/README.md | 4 +- .../docker_compose/intel/hpu/gaudi/README.md | 4 +- Translation/docker_image_build/build.yaml | 4 +- .../docker_compose/intel/cpu/xeon/README.md | 2 +- VideoQnA/docker_image_build/build.yaml | 2 +- .../docker_compose/amd/gpu/rocm/README.md | 2 +- .../docker_compose/intel/cpu/xeon/README.md | 2 +- .../docker_compose/intel/hpu/gaudi/README.md | 2 +- VisualQnA/docker_image_build/build.yaml | 2 +- docker_images_list.md | 138 +++++++++--------- 47 files changed, 142 insertions(+), 144 deletions(-) diff --git a/AudioQnA/docker_compose/amd/gpu/rocm/README.md b/AudioQnA/docker_compose/amd/gpu/rocm/README.md index 3ae8cc8a38..3f8fe90822 100644 --- a/AudioQnA/docker_compose/amd/gpu/rocm/README.md +++ b/AudioQnA/docker_compose/amd/gpu/rocm/README.md @@ -24,7 +24,7 @@ docker build -t opea/asr:latest --build-arg https_proxy=$https_proxy --build-arg ### 3. Build LLM Image ```bash -docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` Note: diff --git a/AudioQnA/docker_compose/intel/cpu/xeon/README.md b/AudioQnA/docker_compose/intel/cpu/xeon/README.md index 4f375464de..5dbc649b22 100644 --- a/AudioQnA/docker_compose/intel/cpu/xeon/README.md +++ b/AudioQnA/docker_compose/intel/cpu/xeon/README.md @@ -23,7 +23,7 @@ docker build -t opea/asr:latest --build-arg https_proxy=$https_proxy --build-arg ### 3. Build LLM Image ```bash -docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` ### 4. Build TTS Image diff --git a/AudioQnA/docker_compose/intel/hpu/gaudi/README.md b/AudioQnA/docker_compose/intel/hpu/gaudi/README.md index 7f08fe5ade..3e6b16b798 100644 --- a/AudioQnA/docker_compose/intel/hpu/gaudi/README.md +++ b/AudioQnA/docker_compose/intel/hpu/gaudi/README.md @@ -23,7 +23,7 @@ docker build -t opea/asr:latest --build-arg https_proxy=$https_proxy --build-arg ### 3. Build LLM Image ```bash -docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` ### 4. Build TTS Image diff --git a/AudioQnA/docker_image_build/build.yaml b/AudioQnA/docker_image_build/build.yaml index d030d78d01..d11b8fb4a3 100644 --- a/AudioQnA/docker_image_build/build.yaml +++ b/AudioQnA/docker_image_build/build.yaml @@ -44,7 +44,7 @@ services: llm-tgi: build: context: GenAIComps - dockerfile: comps/llms/text-generation/tgi/Dockerfile + dockerfile: comps/llms/src/text-generation/Dockerfile extends: audioqna image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} speecht5-gaudi: diff --git a/AvatarChatbot/docker_compose/intel/cpu/xeon/README.md b/AvatarChatbot/docker_compose/intel/cpu/xeon/README.md index f0b36c94bb..299ea1b171 100644 --- a/AvatarChatbot/docker_compose/intel/cpu/xeon/README.md +++ b/AvatarChatbot/docker_compose/intel/cpu/xeon/README.md @@ -23,7 +23,7 @@ docker build -t opea/asr:latest --build-arg https_proxy=$https_proxy --build-arg ### 3. Build LLM Image ```bash -docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` ### 4. Build TTS Image diff --git a/AvatarChatbot/docker_compose/intel/hpu/gaudi/README.md b/AvatarChatbot/docker_compose/intel/hpu/gaudi/README.md index b35726f63d..e4e0bdd5e4 100644 --- a/AvatarChatbot/docker_compose/intel/hpu/gaudi/README.md +++ b/AvatarChatbot/docker_compose/intel/hpu/gaudi/README.md @@ -23,7 +23,7 @@ docker build -t opea/asr:latest --build-arg https_proxy=$https_proxy --build-arg ### 3. Build LLM Image ```bash -docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` ### 4. Build TTS Image diff --git a/AvatarChatbot/docker_image_build/build.yaml b/AvatarChatbot/docker_image_build/build.yaml index 23ba3d429b..246fe9f156 100644 --- a/AvatarChatbot/docker_image_build/build.yaml +++ b/AvatarChatbot/docker_image_build/build.yaml @@ -32,7 +32,7 @@ services: llm-tgi: build: context: GenAIComps - dockerfile: comps/llms/text-generation/tgi/Dockerfile + dockerfile: comps/llms/src/text-generation/Dockerfile extends: avatarchatbot image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} speecht5-gaudi: diff --git a/ChatQnA/docker_compose/amd/gpu/rocm/README.md b/ChatQnA/docker_compose/amd/gpu/rocm/README.md index 9ef30d2a16..dd95c65633 100644 --- a/ChatQnA/docker_compose/amd/gpu/rocm/README.md +++ b/ChatQnA/docker_compose/amd/gpu/rocm/README.md @@ -138,7 +138,7 @@ cd ../../../.. ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/nginx/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . ``` Then run the command `docker images`, you will have the following 5 Docker Images: diff --git a/ChatQnA/docker_compose/intel/cpu/aipc/README.md b/ChatQnA/docker_compose/intel/cpu/aipc/README.md index a438103e7a..d8e05e4bca 100644 --- a/ChatQnA/docker_compose/intel/cpu/aipc/README.md +++ b/ChatQnA/docker_compose/intel/cpu/aipc/README.md @@ -55,7 +55,7 @@ docker build --no-cache -t opea/chatqna-ui:latest --build-arg https_proxy=$https ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/nginx/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . ``` Then run the command `docker images`, you will have the following 6 Docker Images: diff --git a/ChatQnA/docker_compose/intel/cpu/xeon/README.md b/ChatQnA/docker_compose/intel/cpu/xeon/README.md index 6eb03c4149..4431ad026c 100644 --- a/ChatQnA/docker_compose/intel/cpu/xeon/README.md +++ b/ChatQnA/docker_compose/intel/cpu/xeon/README.md @@ -161,7 +161,7 @@ docker build --no-cache -t opea/chatqna-conversation-ui:latest --build-arg https ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/nginx/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . ``` Then run the command `docker images`, you will have the following 5 Docker Images: diff --git a/ChatQnA/docker_compose/intel/cpu/xeon/README_pinecone.md b/ChatQnA/docker_compose/intel/cpu/xeon/README_pinecone.md index 1fddfff22a..0b35b15255 100644 --- a/ChatQnA/docker_compose/intel/cpu/xeon/README_pinecone.md +++ b/ChatQnA/docker_compose/intel/cpu/xeon/README_pinecone.md @@ -164,7 +164,7 @@ docker build --no-cache -t opea/chatqna-conversation-ui:latest --build-arg https ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/nginx/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . ``` Then run the command `docker images`, you will have the following 5 Docker Images: diff --git a/ChatQnA/docker_compose/intel/cpu/xeon/README_qdrant.md b/ChatQnA/docker_compose/intel/cpu/xeon/README_qdrant.md index 2f9fa1b822..6fa88b667c 100644 --- a/ChatQnA/docker_compose/intel/cpu/xeon/README_qdrant.md +++ b/ChatQnA/docker_compose/intel/cpu/xeon/README_qdrant.md @@ -122,7 +122,7 @@ cd ../../../.. ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/nginx/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . ``` Then run the command `docker images`, you will have the following 5 Docker Images: diff --git a/ChatQnA/docker_compose/intel/hpu/gaudi/README.md b/ChatQnA/docker_compose/intel/hpu/gaudi/README.md index 162c0f0385..c1e11deb17 100644 --- a/ChatQnA/docker_compose/intel/hpu/gaudi/README.md +++ b/ChatQnA/docker_compose/intel/hpu/gaudi/README.md @@ -151,7 +151,7 @@ docker build --no-cache -t opea/chatqna-conversation-ui:latest --build-arg https ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/nginx/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . ``` Then run the command `docker images`, you will have the following 5 Docker Images: diff --git a/ChatQnA/docker_compose/nvidia/gpu/README.md b/ChatQnA/docker_compose/nvidia/gpu/README.md index 92b7a26e79..499115ffa1 100644 --- a/ChatQnA/docker_compose/nvidia/gpu/README.md +++ b/ChatQnA/docker_compose/nvidia/gpu/README.md @@ -148,7 +148,7 @@ cd ../../.. ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/nginx/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . ``` Then run the command `docker images`, you will have the following 5 Docker Images: diff --git a/ChatQnA/docker_image_build/build.yaml b/ChatQnA/docker_image_build/build.yaml index a8fa36bc3b..521e00b45d 100644 --- a/ChatQnA/docker_image_build/build.yaml +++ b/ChatQnA/docker_image_build/build.yaml @@ -44,7 +44,7 @@ services: embedding-tei: build: context: GenAIComps - dockerfile: comps/embeddings/tei/langchain/Dockerfile + dockerfile: comps/embeddings/src/Dockerfile extends: chatqna image: ${REGISTRY:-opea}/embedding-tei:${TAG:-latest} retriever-redis: @@ -68,25 +68,25 @@ services: reranking-tei: build: context: GenAIComps - dockerfile: comps/reranks/tei/Dockerfile + dockerfile: comps/reranks/src/Dockerfile extends: chatqna image: ${REGISTRY:-opea}/reranking-tei:${TAG:-latest} llm-tgi: build: context: GenAIComps - dockerfile: comps/llms/text-generation/tgi/Dockerfile + dockerfile: comps/llms/src/text-generation/Dockerfile extends: chatqna image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} llm-ollama: build: context: GenAIComps - dockerfile: comps/llms/text-generation/ollama/langchain/Dockerfile + dockerfile: comps/llms/src/text-generation/Dockerfile extends: chatqna image: ${REGISTRY:-opea}/llm-ollama:${TAG:-latest} llm-vllm: build: context: GenAIComps - dockerfile: comps/llms/text-generation/vllm/langchain/Dockerfile + dockerfile: comps/llms/src/text-generation/Dockerfile extends: chatqna image: ${REGISTRY:-opea}/llm-vllm:${TAG:-latest} dataprep-redis: @@ -128,6 +128,6 @@ services: nginx: build: context: GenAIComps - dockerfile: comps/nginx/Dockerfile + dockerfile: comps/3rd_parties/nginx/deployment/docker/Dockerfile extends: chatqna image: ${REGISTRY:-opea}/nginx:${TAG:-latest} diff --git a/CodeGen/docker_compose/amd/gpu/rocm/README.md b/CodeGen/docker_compose/amd/gpu/rocm/README.md index dd01fdd0de..46e24f16aa 100644 --- a/CodeGen/docker_compose/amd/gpu/rocm/README.md +++ b/CodeGen/docker_compose/amd/gpu/rocm/README.md @@ -10,7 +10,7 @@ git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps ### Build Docker image -docker build -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` ### Build the MegaService Docker Image diff --git a/CodeGen/docker_compose/intel/cpu/xeon/README.md b/CodeGen/docker_compose/intel/cpu/xeon/README.md index 5332d719a3..d44adc91d7 100644 --- a/CodeGen/docker_compose/intel/cpu/xeon/README.md +++ b/CodeGen/docker_compose/intel/cpu/xeon/README.md @@ -19,7 +19,7 @@ Should the Docker image you seek not yet be available on Docker Hub, you can bui ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps -docker build -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` ### 2. Build the MegaService Docker Image diff --git a/CodeGen/docker_compose/intel/hpu/gaudi/README.md b/CodeGen/docker_compose/intel/hpu/gaudi/README.md index 31cfad2929..ad68359258 100644 --- a/CodeGen/docker_compose/intel/hpu/gaudi/README.md +++ b/CodeGen/docker_compose/intel/hpu/gaudi/README.md @@ -11,7 +11,7 @@ First of all, you need to build the Docker images locally. This step can be igno ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps -docker build -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` ### 2. Build the MegaService Docker Image diff --git a/CodeGen/docker_image_build/build.yaml b/CodeGen/docker_image_build/build.yaml index 1f8a7f949c..9af65d7772 100644 --- a/CodeGen/docker_image_build/build.yaml +++ b/CodeGen/docker_image_build/build.yaml @@ -26,6 +26,6 @@ services: llm-tgi: build: context: GenAIComps - dockerfile: comps/llms/text-generation/tgi/Dockerfile + dockerfile: comps/llms/src/text-generation/Dockerfile extends: codegen image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} diff --git a/CodeTrans/docker_compose/amd/gpu/rocm/README.md b/CodeTrans/docker_compose/amd/gpu/rocm/README.md index fafe837b40..38954284eb 100644 --- a/CodeTrans/docker_compose/amd/gpu/rocm/README.md +++ b/CodeTrans/docker_compose/amd/gpu/rocm/README.md @@ -10,7 +10,7 @@ git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps ### Build Docker image -docker build -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` ### Build the MegaService Docker Image diff --git a/CodeTrans/docker_compose/intel/cpu/xeon/README.md b/CodeTrans/docker_compose/intel/cpu/xeon/README.md index 15f6414f04..7a73a343a4 100755 --- a/CodeTrans/docker_compose/intel/cpu/xeon/README.md +++ b/CodeTrans/docker_compose/intel/cpu/xeon/README.md @@ -19,7 +19,7 @@ First of all, you need to build Docker Images locally and install the python pac ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps -docker build -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` ### 2. Build MegaService Docker Image @@ -41,7 +41,7 @@ docker build -t opea/codetrans-ui:latest --build-arg https_proxy=$https_proxy -- ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/nginx/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . ``` Then run the command `docker images`, you will have the following Docker Images: diff --git a/CodeTrans/docker_compose/intel/hpu/gaudi/README.md b/CodeTrans/docker_compose/intel/hpu/gaudi/README.md index 04858bc235..0d148506fd 100755 --- a/CodeTrans/docker_compose/intel/hpu/gaudi/README.md +++ b/CodeTrans/docker_compose/intel/hpu/gaudi/README.md @@ -11,7 +11,7 @@ First of all, you need to build Docker Images locally and install the python pac ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps -docker build -t opea/llm-tgi:latest --no-cache --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build -t opea/llm-tgi:latest --no-cache --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` ### 2. Build MegaService Docker Image @@ -33,7 +33,7 @@ docker build -t opea/codetrans-ui:latest --build-arg https_proxy=$https_proxy -- ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/nginx/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . ``` Then run the command `docker images`, you will have the following Docker Images: diff --git a/CodeTrans/docker_image_build/build.yaml b/CodeTrans/docker_image_build/build.yaml index b8421e0248..566f396e3c 100644 --- a/CodeTrans/docker_image_build/build.yaml +++ b/CodeTrans/docker_image_build/build.yaml @@ -20,12 +20,12 @@ services: llm-tgi: build: context: GenAIComps - dockerfile: comps/llms/text-generation/tgi/Dockerfile + dockerfile: comps/llms/src/text-generation/Dockerfile extends: codetrans image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} nginx: build: context: GenAIComps - dockerfile: comps/nginx/Dockerfile + dockerfile: comps/3rd_parties/nginx/deployment/docker/Dockerfile extends: codetrans image: ${REGISTRY:-opea}/nginx:${TAG:-latest} diff --git a/DocIndexRetriever/docker_compose/intel/cpu/xeon/README.md b/DocIndexRetriever/docker_compose/intel/cpu/xeon/README.md index 3ad27345cb..6952a8c709 100644 --- a/DocIndexRetriever/docker_compose/intel/cpu/xeon/README.md +++ b/DocIndexRetriever/docker_compose/intel/cpu/xeon/README.md @@ -9,7 +9,7 @@ DocRetriever are the most widely adopted use case for leveraging the different m ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps - docker build -t opea/embedding-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/tei/langchain/Dockerfile . + docker build -t opea/embedding-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/src/Dockerfile . ``` - Retriever Vector store Image @@ -21,7 +21,7 @@ DocRetriever are the most widely adopted use case for leveraging the different m - Rerank TEI Image ```bash - docker build -t opea/reranking-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/reranks/tei/Dockerfile . + docker build -t opea/reranking-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/reranks/src/Dockerfile . ``` - Dataprep Image diff --git a/DocIndexRetriever/docker_compose/intel/hpu/gaudi/README.md b/DocIndexRetriever/docker_compose/intel/hpu/gaudi/README.md index 6799aa5007..a83eede159 100644 --- a/DocIndexRetriever/docker_compose/intel/hpu/gaudi/README.md +++ b/DocIndexRetriever/docker_compose/intel/hpu/gaudi/README.md @@ -9,7 +9,7 @@ DocRetriever are the most widely adopted use case for leveraging the different m ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps - docker build -t opea/embedding-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/tei/langchain/Dockerfile . + docker build -t opea/embedding-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/src/Dockerfile . ``` - Retriever Vector store Image @@ -21,7 +21,7 @@ DocRetriever are the most widely adopted use case for leveraging the different m - Rerank TEI Image ```bash - docker build -t opea/reranking-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/reranks/tei/Dockerfile . + docker build -t opea/reranking-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/reranks/src/Dockerfile . ``` - Dataprep Image diff --git a/DocIndexRetriever/docker_image_build/build.yaml b/DocIndexRetriever/docker_image_build/build.yaml index 3ed44fa24a..6d9a5932c3 100644 --- a/DocIndexRetriever/docker_image_build/build.yaml +++ b/DocIndexRetriever/docker_image_build/build.yaml @@ -14,7 +14,7 @@ services: embedding-tei: build: context: GenAIComps - dockerfile: comps/embeddings/tei/langchain/Dockerfile + dockerfile: comps/embeddings/src/Dockerfile extends: doc-index-retriever image: ${REGISTRY:-opea}/embedding-tei:${TAG:-latest} retriever-redis: @@ -26,7 +26,7 @@ services: reranking-tei: build: context: GenAIComps - dockerfile: comps/reranks/tei/Dockerfile + dockerfile: comps/reranks/src/Dockerfile extends: doc-index-retriever image: ${REGISTRY:-opea}/reranking-tei:${TAG:-latest} dataprep-redis: diff --git a/FaqGen/docker_compose/amd/gpu/rocm/README.md b/FaqGen/docker_compose/amd/gpu/rocm/README.md index 206cd778c5..49b99666f0 100644 --- a/FaqGen/docker_compose/amd/gpu/rocm/README.md +++ b/FaqGen/docker_compose/amd/gpu/rocm/README.md @@ -10,7 +10,7 @@ git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps ### Build Docker image -docker build -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` ## 🚀 Start Microservices and MegaService diff --git a/GraphRAG/docker_image_build/build.yaml b/GraphRAG/docker_image_build/build.yaml index b6ecb51531..06802b7a62 100644 --- a/GraphRAG/docker_image_build/build.yaml +++ b/GraphRAG/docker_image_build/build.yaml @@ -36,7 +36,7 @@ services: https_proxy: ${https_proxy} no_proxy: ${no_proxy} context: GenAIComps - dockerfile: comps/nginx/Dockerfile + dockerfile: comps/3rd_parties/nginx/deployment/docker/Dockerfile image: ${REGISTRY:-opea}/nginx:${TAG:-latest} graphrag-ui: build: diff --git a/MultimodalQnA/docker_compose/amd/gpu/rocm/README.md b/MultimodalQnA/docker_compose/amd/gpu/rocm/README.md index 19354637d8..58ecec485d 100644 --- a/MultimodalQnA/docker_compose/amd/gpu/rocm/README.md +++ b/MultimodalQnA/docker_compose/amd/gpu/rocm/README.md @@ -25,13 +25,13 @@ Build embedding-multimodal-bridgetower docker image ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps -docker build --no-cache -t opea/embedding-multimodal-bridgetower:latest --build-arg EMBEDDER_PORT=$EMBEDDER_PORT --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/multimodal/bridgetower/Dockerfile . +docker build --no-cache -t opea/embedding-multimodal-bridgetower:latest --build-arg EMBEDDER_PORT=$EMBEDDER_PORT --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/src/integrations/dependency/bridgetower/Dockerfile . ``` Build embedding-multimodal microservice image ```bash -docker build --no-cache -t opea/embedding-multimodal:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/multimodal/multimodal_langchain/Dockerfile . +docker build --no-cache -t opea/embedding-multimodal:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/src/Dockerfile . ``` ### 2. Build LVM Images diff --git a/MultimodalQnA/docker_compose/intel/cpu/xeon/README.md b/MultimodalQnA/docker_compose/intel/cpu/xeon/README.md index e68538e06d..282fa3eccb 100644 --- a/MultimodalQnA/docker_compose/intel/cpu/xeon/README.md +++ b/MultimodalQnA/docker_compose/intel/cpu/xeon/README.md @@ -112,13 +112,13 @@ Build embedding-multimodal-bridgetower docker image ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps -docker build --no-cache -t opea/embedding-multimodal-bridgetower:latest --build-arg EMBEDDER_PORT=$EMBEDDER_PORT --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/multimodal/bridgetower/Dockerfile . +docker build --no-cache -t opea/embedding-multimodal-bridgetower:latest --build-arg EMBEDDER_PORT=$EMBEDDER_PORT --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/native/multimodal/bridgetower/dependency/Dockerfile . ``` Build embedding-multimodal microservice image ```bash -docker build --no-cache -t opea/embedding-multimodal:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/multimodal/multimodal_langchain/Dockerfile . +docker build --no-cache -t opea/embedding-multimodal:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/native/multimodal/bridgetower/wrapper/Dockerfile . ``` ### 2. Build retriever-multimodal-redis Image diff --git a/MultimodalQnA/docker_compose/intel/hpu/gaudi/README.md b/MultimodalQnA/docker_compose/intel/hpu/gaudi/README.md index b8c5e3bcd2..e6efb18ac3 100644 --- a/MultimodalQnA/docker_compose/intel/hpu/gaudi/README.md +++ b/MultimodalQnA/docker_compose/intel/hpu/gaudi/README.md @@ -63,13 +63,13 @@ Build embedding-multimodal-bridgetower docker image ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps -docker build --no-cache -t opea/embedding-multimodal-bridgetower:latest --build-arg EMBEDDER_PORT=$EMBEDDER_PORT --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/multimodal/bridgetower/Dockerfile . +docker build --no-cache -t opea/embedding-multimodal-bridgetower:latest --build-arg EMBEDDER_PORT=$EMBEDDER_PORT --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/native/multimodal/bridgetower/dependency/Dockerfile . ``` Build embedding-multimodal microservice image ```bash -docker build --no-cache -t opea/embedding-multimodal:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/multimodal/multimodal_langchain/Dockerfile . +docker build --no-cache -t opea/embedding-multimodal:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/native/multimodal/bridgetower/wrapper/Dockerfile . ``` ### 2. Build retriever-multimodal-redis Image diff --git a/MultimodalQnA/docker_image_build/build.yaml b/MultimodalQnA/docker_image_build/build.yaml index efb2f656d8..d63e30f382 100644 --- a/MultimodalQnA/docker_image_build/build.yaml +++ b/MultimodalQnA/docker_image_build/build.yaml @@ -20,13 +20,13 @@ services: embedding-multimodal-bridgetower: build: context: GenAIComps - dockerfile: comps/embeddings/multimodal/bridgetower/Dockerfile + dockerfile: comps/embeddings/native/multimodal/bridgetower/dependency/Dockerfile extends: multimodalqna image: ${REGISTRY:-opea}/embedding-multimodal-bridgetower:${TAG:-latest} embedding-multimodal: build: context: GenAIComps - dockerfile: comps/embeddings/multimodal/multimodal_langchain/Dockerfile + dockerfile: comps/embeddings/native/multimodal/bridgetower/wrapper/Dockerfile extends: multimodalqna image: ${REGISTRY:-opea}/embedding-multimodal:${TAG:-latest} retriever-redis: diff --git a/ProductivitySuite/docker_compose/intel/cpu/xeon/README.md b/ProductivitySuite/docker_compose/intel/cpu/xeon/README.md index bb9239abfd..9cc589c3c4 100644 --- a/ProductivitySuite/docker_compose/intel/cpu/xeon/README.md +++ b/ProductivitySuite/docker_compose/intel/cpu/xeon/README.md @@ -13,7 +13,7 @@ First of all, you need to build Docker Images locally and install the python pac ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps -docker build --no-cache -t opea/embedding-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/tei/langchain/Dockerfile . +docker build --no-cache -t opea/embedding-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/src/Dockerfile . ``` ### 2. Build Retriever Image @@ -25,7 +25,7 @@ docker build --no-cache -t opea/retriever-redis:latest --build-arg https_proxy=$ ### 3. Build Rerank Image ```bash -docker build --no-cache -t opea/reranking-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/reranks/tei/Dockerfile . +docker build --no-cache -t opea/reranking-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/reranks/src/Dockerfile . ``` ### 4. Build LLM Image @@ -33,7 +33,7 @@ docker build --no-cache -t opea/reranking-tei:latest --build-arg https_proxy=$ht #### Use TGI as backend ```bash -docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` ### 5. Build Dataprep Image diff --git a/ProductivitySuite/docker_image_build/build.yaml b/ProductivitySuite/docker_image_build/build.yaml index 2f75b848f5..c63e8819c1 100644 --- a/ProductivitySuite/docker_image_build/build.yaml +++ b/ProductivitySuite/docker_image_build/build.yaml @@ -14,7 +14,7 @@ services: embedding-tei: build: context: GenAIComps - dockerfile: comps/embeddings/tei/langchain/Dockerfile + dockerfile: comps/embeddings/src/Dockerfile extends: chatqna image: ${REGISTRY:-opea}/embedding-tei:${TAG:-latest} retriever-redis: @@ -26,13 +26,13 @@ services: reranking-tei: build: context: GenAIComps - dockerfile: comps/reranks/tei/Dockerfile + dockerfile: comps/reranks/src/Dockerfile extends: chatqna image: ${REGISTRY:-opea}/reranking-tei:${TAG:-latest} llm-tgi: build: context: GenAIComps - dockerfile: comps/llms/text-generation/tgi/Dockerfile + dockerfile: comps/llms/src/text-generation/Dockerfile extends: chatqna image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} dataprep-redis: diff --git a/SearchQnA/docker_compose/intel/cpu/xeon/README.md b/SearchQnA/docker_compose/intel/cpu/xeon/README.md index 5dbd774646..c2c148656a 100644 --- a/SearchQnA/docker_compose/intel/cpu/xeon/README.md +++ b/SearchQnA/docker_compose/intel/cpu/xeon/README.md @@ -9,7 +9,7 @@ This document outlines the deployment process for a SearchQnA application utiliz ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps -docker build --no-cache -t opea/embedding-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/tei/langchain/Dockerfile . +docker build --no-cache -t opea/embedding-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/src/Dockerfile . ``` ### 2. Build Retriever Image @@ -21,13 +21,13 @@ docker build --no-cache -t opea/web-retriever-chroma:latest --build-arg https_pr ### 3. Build Rerank Image ```bash -docker build --no-cache -t opea/reranking-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/reranks/tei/Dockerfile . +docker build --no-cache -t opea/reranking-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/reranks/src/Dockerfile . ``` ### 4. Build LLM Image ```bash -docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` ### 5. Build MegaService Docker Image diff --git a/SearchQnA/docker_compose/intel/hpu/gaudi/README.md b/SearchQnA/docker_compose/intel/hpu/gaudi/README.md index 8777e77863..49ecd42726 100644 --- a/SearchQnA/docker_compose/intel/hpu/gaudi/README.md +++ b/SearchQnA/docker_compose/intel/hpu/gaudi/README.md @@ -11,7 +11,7 @@ First of all, you need to build Docker Images locally. This step can be ignored ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps -docker build --no-cache -t opea/embedding-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/tei/langchain/Dockerfile . +docker build --no-cache -t opea/embedding-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/src/Dockerfile . ``` ### 2. Build Retriever Image @@ -23,13 +23,13 @@ docker build --no-cache -t opea/web-retriever-chroma:latest --build-arg https_pr ### 3. Build Rerank Image ```bash -docker build --no-cache -t opea/reranking-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/reranks/tei/Dockerfile . +docker build --no-cache -t opea/reranking-tei:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/reranks/src/Dockerfile . ``` ### 4. Build LLM Image ```bash -docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` ### 5. Build MegaService Docker Image diff --git a/SearchQnA/docker_image_build/build.yaml b/SearchQnA/docker_image_build/build.yaml index 7d8629e8f6..c2f42cdce5 100644 --- a/SearchQnA/docker_image_build/build.yaml +++ b/SearchQnA/docker_image_build/build.yaml @@ -20,7 +20,7 @@ services: embedding-tei: build: context: GenAIComps - dockerfile: comps/embeddings/tei/langchain/Dockerfile + dockerfile: comps/embeddings/src/Dockerfile extends: searchqna image: ${REGISTRY:-opea}/embedding-tei:${TAG:-latest} web-retriever-chroma: @@ -32,12 +32,12 @@ services: reranking-tei: build: context: GenAIComps - dockerfile: comps/reranks/tei/Dockerfile + dockerfile: comps/reranks/src/Dockerfile extends: searchqna image: ${REGISTRY:-opea}/reranking-tei:${TAG:-latest} llm-tgi: build: context: GenAIComps - dockerfile: comps/llms/text-generation/tgi/Dockerfile + dockerfile: comps/llms/src/text-generation/Dockerfile extends: searchqna image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} diff --git a/Translation/docker_compose/intel/cpu/xeon/README.md b/Translation/docker_compose/intel/cpu/xeon/README.md index 651b209507..7a3b5930b2 100644 --- a/Translation/docker_compose/intel/cpu/xeon/README.md +++ b/Translation/docker_compose/intel/cpu/xeon/README.md @@ -34,7 +34,7 @@ Follow the instructions below to build the docker images from source. ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps -docker build -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` ### 2. Build MegaService Docker Image @@ -60,7 +60,7 @@ docker build -t opea/translation-ui:latest --build-arg https_proxy=$https_proxy ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/nginx/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . ``` Then run the command `docker images`, you will have the following Docker Images: diff --git a/Translation/docker_compose/intel/hpu/gaudi/README.md b/Translation/docker_compose/intel/hpu/gaudi/README.md index 23d7acf12f..1d711bc006 100644 --- a/Translation/docker_compose/intel/hpu/gaudi/README.md +++ b/Translation/docker_compose/intel/hpu/gaudi/README.md @@ -26,7 +26,7 @@ Follow the instructions below to build the docker images from source. ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps -docker build -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/text-generation/tgi/Dockerfile . +docker build -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` ### 2. Build MegaService Docker Image @@ -52,7 +52,7 @@ docker build -t opea/translation-ui:latest --build-arg https_proxy=$https_proxy ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/nginx/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . ``` Then run the command `docker images`, you will have the following four Docker Images: diff --git a/Translation/docker_image_build/build.yaml b/Translation/docker_image_build/build.yaml index 2230a8657d..553e873b41 100644 --- a/Translation/docker_image_build/build.yaml +++ b/Translation/docker_image_build/build.yaml @@ -20,12 +20,12 @@ services: llm-tgi: build: context: GenAIComps - dockerfile: comps/llms/text-generation/tgi/Dockerfile + dockerfile: comps/llms/src/text-generation/Dockerfile extends: translation image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} nginx: build: context: GenAIComps - dockerfile: comps/nginx/Dockerfile + dockerfile: comps/3rd_parties/nginx/deployment/docker/Dockerfile extends: translation image: ${REGISTRY:-opea}/nginx:${TAG:-latest} diff --git a/VideoQnA/docker_compose/intel/cpu/xeon/README.md b/VideoQnA/docker_compose/intel/cpu/xeon/README.md index 25aa8b132f..77d3177655 100644 --- a/VideoQnA/docker_compose/intel/cpu/xeon/README.md +++ b/VideoQnA/docker_compose/intel/cpu/xeon/README.md @@ -53,7 +53,7 @@ First of all, you need to build Docker Images locally and install the python pac ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps -docker build -t opea/embedding-multimodal-clip:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/multimodal_clip/Dockerfile . +docker build -t opea/embedding-multimodal-clip:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/native/multimodal/clip/Dockerfile . ``` ### 2. Build Retriever Image diff --git a/VideoQnA/docker_image_build/build.yaml b/VideoQnA/docker_image_build/build.yaml index b8c15138d4..b54261ab53 100644 --- a/VideoQnA/docker_image_build/build.yaml +++ b/VideoQnA/docker_image_build/build.yaml @@ -26,7 +26,7 @@ services: embedding-multimodal-clip: build: context: GenAIComps - dockerfile: comps/embeddings/multimodal_clip/Dockerfile + dockerfile: comps/embeddings/native/multimodal/clip/Dockerfile extends: videoqna image: ${REGISTRY:-opea}/embedding-multimodal-clip:${TAG:-latest} retriever-vdms: diff --git a/VisualQnA/docker_compose/amd/gpu/rocm/README.md b/VisualQnA/docker_compose/amd/gpu/rocm/README.md index 5cda5db6f5..0567990640 100644 --- a/VisualQnA/docker_compose/amd/gpu/rocm/README.md +++ b/VisualQnA/docker_compose/amd/gpu/rocm/README.md @@ -12,7 +12,7 @@ First of all, you need to build Docker Images locally and install the python pac git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps docker build --no-cache -t opea/lvm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/lvms/tgi-llava/Dockerfile . -docker build --no-cache -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/nginx/Dockerfile . +docker build --no-cache -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . ``` ### 2. Build MegaService Docker Image diff --git a/VisualQnA/docker_compose/intel/cpu/xeon/README.md b/VisualQnA/docker_compose/intel/cpu/xeon/README.md index eb1ef817b0..57e27056e3 100644 --- a/VisualQnA/docker_compose/intel/cpu/xeon/README.md +++ b/VisualQnA/docker_compose/intel/cpu/xeon/README.md @@ -42,7 +42,7 @@ First of all, you need to build Docker Images locally and install the python pac git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps docker build --no-cache -t opea/lvm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/lvms/tgi-llava/Dockerfile . -docker build --no-cache -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/nginx/Dockerfile . +docker build --no-cache -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . ``` ### 2. Build MegaService Docker Image diff --git a/VisualQnA/docker_compose/intel/hpu/gaudi/README.md b/VisualQnA/docker_compose/intel/hpu/gaudi/README.md index abb341f283..b72378297c 100644 --- a/VisualQnA/docker_compose/intel/hpu/gaudi/README.md +++ b/VisualQnA/docker_compose/intel/hpu/gaudi/README.md @@ -12,7 +12,7 @@ First of all, you need to build Docker Images locally. This step can be ignored git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps docker build --no-cache -t opea/lvm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/lvms/tgi-llava/Dockerfile . -docker build --no-cache -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/nginx/Dockerfile . +docker build --no-cache -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . ``` ### 2. Pull TGI Gaudi Image diff --git a/VisualQnA/docker_image_build/build.yaml b/VisualQnA/docker_image_build/build.yaml index a2787342a2..d1e09764ae 100644 --- a/VisualQnA/docker_image_build/build.yaml +++ b/VisualQnA/docker_image_build/build.yaml @@ -26,6 +26,6 @@ services: nginx: build: context: GenAIComps - dockerfile: comps/nginx/Dockerfile + dockerfile: comps/3rd_parties/nginx/deployment/docker/Dockerfile extends: visualqna image: ${REGISTRY:-opea}/nginx:${TAG:-latest} diff --git a/docker_images_list.md b/docker_images_list.md index eefddde1c1..71bf495fda 100644 --- a/docker_images_list.md +++ b/docker_images_list.md @@ -40,73 +40,71 @@ Take ChatQnA for example. ChatQnA is a chatbot application service based on the ## Microservice images -| Microservice Images | Dockerfile | Description | -| ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [opea/agent-langchain](https://hub.docker.com/r/opea/comps-agent-langchain) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/agent/langchain/Dockerfile) | The docker image exposed the OPEA agent microservice for GenAI application use | -| [opea/asr](https://hub.docker.com/r/opea/asr) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/asr/whisper/Dockerfile) | The docker image exposed the OPEA Audio-Speech-Recognition microservice for GenAI application use | -| [opea/chathistory-mongo-server](https://hub.docker.com/r/opea/chathistory-mongo-server) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/chathistory/mongo/Dockerfile) | The docker image exposes OPEA Chat History microservice which based on MongoDB database, designed to allow user to store, retrieve and manage chat conversations | -| [opea/dataprep-milvus](https://hub.docker.com/r/opea/dataprep-milvus) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/milvus/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on milvus vectordb for GenAI application use | -| [opea/dataprep-multimodal-vdms](https://hub.docker.com/r/opea/dataprep-multimodal-vdms) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/vdms/multimodal_langchain/Dockerfile) | This docker image exposes an OPEA dataprep microservice based on a multi-modal VDMS for use by GenAI applications. | -| [opea/dataprep-multimodal-redis](https://hub.docker.com/r/opea/dataprep-multimodal-redis) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/redis/langchain/Dockerfile) | This docker image exposes an OPEA dataprep microservice based on a multi-modal redis for use by GenAI applications. | -| [opea/dataprep-on-ray-redis](https://hub.docker.com/r/opea/dataprep-on-ray-redis) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/redis/langchain_ray/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on redis vectordb and optimized ray for GenAI application use | -| [opea/dataprep-pgvector](https://hub.docker.com/r/opea/dataprep-pgvector) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/pgvector/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on pgvector vectordb for GenAI application use | -| [opea/dataprep-pinecone](https://hub.docker.com/r/opea/dataprep-pinecone) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/pinecone/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on pincone vectordb for GenAI application use | -| [opea/dataprep-qdrant](https://hub.docker.com/r/opea/dataprep-qdrant) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/qdrant/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on qdrant vectordb for GenAI application use | -| [opea/dataprep-redis](https://hub.docker.com/r/opea/dataprep-redis) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/redis/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on redis vectordb Langchain framework for GenAI application use | -| [opea/dataprep-redis-llama-index](https://hub.docker.com/r/opea/dataprep-redis-llama-index) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/redis/llama_index/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on redis vectordb LlamaIndex framework for GenAI application use | -| [opea/dataprep-vdms](https://hub.docker.com/r/opea/dataprep-vdms) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/vdms/langchain/Dockerfile) | This docker image exposes an OPEA dataprep microservice based on VDMS vectordb for use by GenAI applications. | -| [opea/embedding-langchain-mosec](https://hub.docker.com/r/opea/embedding-langchain-mosec) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/mosec/langchain/Dockerfile) | The docker image exposed the OPEA mosec embedding microservice base on Langchain framework for GenAI application use | -| [opea/embedding-langchain-mosec-endpoint](https://hub.docker.com/r/opea/embedding-langchain-mosec-endpoint) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/mosec/langchain/dependency/Dockerfile) | The docker image exposed the OPEA mosec embedding endpoint microservice base on Langchain framework for GenAI application use | -| [opea/embedding-multimodal-clip](https://hub.docker.com/r/opea/embedding-multimodal-clip) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/multimodal_clip/Dockerfile) | The docker image exposes OPEA multimodal CLIP-based embedded microservices for use by GenAI applications | -| [opea/embedding-multimodal](https://hub.docker.com/r/opea/embedding-multimodal) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/multimodal/multimodal_langchain/Dockerfile) | The docker image exposes OPEA multimodal embedded microservices for use by GenAI applications | -| [opea/embedding-multimodal-bridgetower](https://hub.docker.com/r/opea/embedding-multimodal-bridgetower) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/multimodal/bridgetower/Dockerfile) | The docker image exposes OPEA multimodal embedded microservices based on bridgetower for use by GenAI applications | -| [opea/embedding-multimodal-bridgetower-gaudi](https://hub.docker.com/r/opea/embedding-multimodal-bridgetower-gaudi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/multimodal/bridgetower/Dockerfile.intel_hpu) | The docker image exposes OPEA multimodal embedded microservices based on bridgetower for use by GenAI applications on the Gaudi | -| [opea/embedding-tei](https://hub.docker.com/r/opea/embedding-tei) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/tei/langchain/Dockerfile) | The docker image exposed the OPEA embedding microservice upon tei docker image for GenAI application use | -| [opea/embedding-tei-llama-index](https://hub.docker.com/r/opea/embedding-tei-llama-index) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/tei/llama_index/Dockerfile) | The docker image exposed the OPEA embedding microservice upon tei docker image base on LlamaIndex framework for GenAI application use | -| [opea/feedbackmanagement](https://hub.docker.com/r/opea/feedbackmanagement) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/feedback_management/mongo/Dockerfile) | The docker image exposes that the OPEA feedback management microservice uses a MongoDB database for GenAI applications. | -| [opea/finetuning](https://hub.docker.com/r/opea/finetuning) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/finetuning/Dockerfile) | The docker image exposed the OPEA Fine-tuning microservice for GenAI application use | -| [opea/finetuning-gaudi](https://hub.docker.com/r/opea/finetuning-gaudi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/finetuning/Dockerfile.intel_hpu) | The docker image exposed the OPEA Fine-tuning microservice for GenAI application use on the Gaudi | -| [opea/gmcrouter](https://hub.docker.com/r/opea/gmcrouter) | [Link](https://github.com/opea-project/GenAIInfra/blob/main/microservices-connector/Dockerfile.manager) | The docker image served as one of key parts of the OPEA GenAI Microservice Connector(GMC) to route the traffic among the microservices defined in GMC | -| [opea/gmcmanager](https://hub.docker.com/r/opea/gmcmanager) | [Link](https://github.com/opea-project/GenAIInfra/blob/main/microservices-connector/Dockerfile.router) | The docker image served as one of key parts of the OPEA GenAI Microservice Connector(GMC) to be controller manager to handle GMC CRD | -| [opea/guardrails-tgi](https://hub.docker.com/r/opea/guardrails-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/guardrails/llama_guard/langchain/Dockerfile) | The docker image exposed the OPEA guardrail microservice to provide content review for GenAI application use | -| [opea/guardrails-toxicity-detection](https://hub.docker.com/r/opea/guardrails-toxicity-detection) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/guardrails/toxicity_detection/Dockerfile) | The docker image exposed the OPEA guardrail microservice to provide toxicity detection for GenAI application use | -| [opea/guardrails-pii-detection](https://hub.docker.com/r/opea/guardrails-pii-detection) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/guardrails/pii_detection/Dockerfile) | The docker image exposed the OPEA guardrail microservice to provide PII detection for GenAI application use | -| [opea/llm-docsum-tgi](https://hub.docker.com/r/opea/llm-docsum-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/summarization/tgi/langchain/Dockerfile) | This docker image is designed to build a document summarization microservice using the HuggingFace Text Generation Inference(TGI) framework. The microservice accepts document input and generates a document summary. | -| [opea/llm-faqgen-tgi](https://hub.docker.com/r/opea/llm-faqgen-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/faq-generation/tgi/langchain/Dockerfile) | This docker image is designed to build a frequently asked questions microservice using the HuggingFace Text Generation Inference(TGI) framework. The microservice accepts document input and generates a FAQ. | -| [opea/llm-native](https://hub.docker.com/r/opea/llm-native) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/text-generation/native/langchain/Dockerfile) | The docker image exposed the OPEA LLM microservice based on native for GenAI application use | -| [opea/llm-ollama](https://hub.docker.com/r/opea/llm-ollama) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/text-generation/ollama/langchain/Dockerfile) | The docker image exposed the OPEA LLM microservice based on ollama for GenAI application use | -| [opea/llm-tgi](https://hub.docker.com/r/opea/llm-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/text-generation/tgi/Dockerfile) | The docker image exposed the OPEA LLM microservice upon TGI docker image for GenAI application use | -| [opea/llm-vllm](https://hub.docker.com/r/opea/llm-vllm) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/text-generation/vllm/langchain/Dockerfile) | The docker image exposed the OPEA LLM microservice upon vLLM docker image for GenAI application use | -| [opea/llm-vllm-llamaindex](https://hub.docker.com/r/opea/llm-vllm-llamaindex) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/text-generation/vllm/llama_index/Dockerfile) | This docker image exposes OPEA LLM microservices to the llamaindex framework's vLLM Docker image for use by GenAI applications | -| [opea/llava-gaudi](https://hub.docker.com/r/opea/llava-hpu) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/llava/dependency/Dockerfile.intel_hpu) | The docker image exposed the OPEA microservice running LLaVA as a large visual model (LVM) service for GenAI application use on the Gaudi | -| [opea/lvm-tgi](https://hub.docker.com/r/opea/lvm-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/tgi-llava/Dockerfile) | This docker image is designed to build a large visual model (LVM) microservice using the HuggingFace Text Generation Inference(TGI) framework. The microservice accepts document input and generates a answer to question. | -| [opea/lvm-llava](https://hub.docker.com/r/opea/lvm-llava) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/llava/dependency/Dockerfile) | The docker image exposed the OPEA microservice running LLaVA as a large visual model (LVM) server for GenAI application use | -| [opea/lvm-llava-svc](https://hub.docker.com/r/opea/lvm-llava-svc) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/llava/Dockerfile) | The docker image exposed the OPEA microservice running LLaVA as a large visual model (LVM) service for GenAI application use | -| [opea/lvm-video-llama](https://hub.docker.com/r/opea/lvm-video-llama) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/video-llama/Dockerfile) | The docker image exposed the OPEA microservice running Video-Llama as a large visual model (LVM) for GenAI application use | -| [opea/nginx](https://hub.docker.com/r/opea/nginx) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/nginx/Dockerfile) | The docker image exposed the OPEA nginx microservice for GenAI application use | -| [opea/promptregistry-mongo-server](https://hub.docker.com/r/opea/promptregistry-mongo-server) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/prompt_registry/mongo/Dockerfile) | The docker image exposes the OPEA Prompt Registry microservices which based on MongoDB database, designed to store and retrieve user's preferred prompts | -| [opea/reranking-videoqna](https://hub.docker.com/r/opea/reranking-videoqna) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/videoqna/Dockerfile) | The docker image exposed the OPEA reranking microservice for reranking the results of VideoQnA use casesfor GenAI application use | -| [opea/reranking-fastrag](https://hub.docker.com/r/opea/reranking-fastrag) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/fastrag/Dockerfile) | The docker image exposed the OPEA reranking microservice base on fastrag for GenAI application use | -| [opea/reranking-langchain-mosec](https://hub.docker.com/r/opea/reranking-langchain-mosec) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/mosec/langchain/Dockerfile) | The docker image exposed the OPEA mosec reranking microservice base on Langchain framework for GenAI application use | -| [opea/reranking-langchain-mosec-endpoint](https://hub.docker.com/r/opea/reranking-langchain-mosec-endpoint) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/mosec/langchain/dependency/Dockerfile) | The docker image exposed the OPEA mosec reranking endpoint microservice base on Langchain framework for GenAI application use | -| [opea/reranking-tei](https://hub.docker.com/r/opea/reranking-tei) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/tei/Dockerfile) | The docker image exposed the OPEA reranking microservice based on tei docker image for GenAI application use | -| [opea/retriever-milvus](https://hub.docker.com/r/opea/retriever-milvus) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/milvus/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on milvus vectordb for GenAI application use | -| [opea/retriever-pathway](https://hub.docker.com/r/opea/retriever-pathway) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/pathway/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice with pathway for GenAI application use | -| [opea/retriever-pgvector](https://hub.docker.com/r/opea/retriever-pgvector) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/pgvector/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on pgvector vectordb for GenAI application use | -| [opea/retriever-pinecone](https://hub.docker.com/r/opea/retriever-pinecone) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/pinecone/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on pinecone vectordb for GenAI application use | -| [opea/retriever-qdrant](https://hub.docker.com/r/opea/retriever-qdrant) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/qdrant/haystack/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on qdrant vectordb for GenAI application use | -| [opea/retriever-redis](https://hub.docker.com/r/opea/retriever-redis) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/redis/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on redis vectordb for GenAI application use | -| [opea/retriever-redis-llamaindex](https://hub.docker.com/r/opea/retriever-redis-llamaindex) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/redis/llama_index/Dockerfile) | The docker image exposed the OPEA retriever service based on LlamaIndex for GenAI application use | -| [opea/retriever-vdms](https://hub.docker.com/r/opea/retriever-vdms) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/vdms/langchain/Dockerfile) | The docker image exposed the OPEA retriever service based on Visual Data Management System for GenAI application use | -| [opea/speecht5](https://hub.docker.com/r/opea/speecht5) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/tts/speecht5/dependency/Dockerfile) | The docker image exposed the OPEA SpeechT5 service for GenAI application use | -| [opea/speecht5-gaudi](https://hub.docker.com/r/opea/speecht5-gaudi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/tts/speecht5/dependency/Dockerfile.intel_hpu) | The docker image exposed the OPEA SpeechT5 service on Gaudi2 for GenAI application use | -| [opea/tei-gaudi](https://hub.docker.com/r/opea/tei-gaudi/tags) | [Link](https://github.com/huggingface/tei-gaudi/blob/habana-main/Dockerfile-hpu) | The docker image powered by HuggingFace Text Embedding Inference (TEI) on Gaudi2 for deploying and serving Embedding Models | -| [opea/vectorstore-pathway](https://hub.docker.com/r/opea/vectorstore-pathway) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/vectorstores/pathway/Dockerfile) | The docker image exposed the OPEA Vectorstores microservice with Pathway for GenAI application use | -| [opea/video-llama-lvm-server](https://hub.docker.com/r/opea/video-llama-lvm-server) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/video-llama/dependency/Dockerfile) | The docker image exposed the OPEA microservice running Video-Llama as a large visual model (LVM) server for GenAI application use | -| [opea/tts](https://hub.docker.com/r/opea/tts) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/tts/speecht5/Dockerfile) | The docker image exposed the OPEA Text-To-Speech microservice for GenAI application use | -| [opea/vllm](https://hub.docker.com/r/opea/vllm) | [Link](https://github.com/vllm-project/vllm/blob/main/Dockerfile.cpu) | The docker image powered by vllm-project for deploying and serving vllm Models | -| [opea/vllm-gaudi]() | [Link](https://github.com/HabanaAI/vllm-fork/blob/habana_main/Dockerfile.hpu) | The docker image powered by vllm-fork for deploying and serving vllm-gaudi Models | -| [opea/vllm-openvino](https://hub.docker.com/r/opea/vllm-openvino) | [Link](https://github.com/vllm-project/vllm/blob/main/Dockerfile.openvino) | The docker image powered by vllm-project for deploying and serving vllm Models of the Openvino Framework | -| [opea/web-retriever-chroma](https://hub.docker.com/r/opea/web-retriever-chroma) | [Link](https://github.com/opea-project/GenAIComps/tree/main/comps/web_retrievers/chroma/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on chroma vectordb for GenAI application use | -| [opea/whisper](https://hub.docker.com/r/opea/whisper) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/asr/whisper/dependency/Dockerfile) | The docker image exposed the OPEA Whisper service for GenAI application use | -| [opea/whisper-gaudi](https://hub.docker.com/r/opea/whisper-gaudi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/asr/whisper/dependency/Dockerfile.intel_hpu) | The docker image exposed the OPEA Whisper service on Gaudi2 for GenAI application use | +| Microservice Images | Dockerfile | Description | +| ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [opea/agent-langchain](https://hub.docker.com/r/opea/comps-agent-langchain) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/agent/langchain/Dockerfile) | The docker image exposed the OPEA agent microservice for GenAI application use | +| [opea/asr](https://hub.docker.com/r/opea/asr) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/asr/whisper/Dockerfile) | The docker image exposed the OPEA Audio-Speech-Recognition microservice for GenAI application use | +| [opea/chathistory-mongo-server](https://hub.docker.com/r/opea/chathistory-mongo-server) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/chathistory/mongo/Dockerfile) | The docker image exposes OPEA Chat History microservice which based on MongoDB database, designed to allow user to store, retrieve and manage chat conversations | +| [opea/dataprep-milvus](https://hub.docker.com/r/opea/dataprep-milvus) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/milvus/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on milvus vectordb for GenAI application use | +| [opea/dataprep-multimodal-vdms](https://hub.docker.com/r/opea/dataprep-multimodal-vdms) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/vdms/multimodal_langchain/Dockerfile) | This docker image exposes an OPEA dataprep microservice based on a multi-modal VDMS for use by GenAI applications. | +| [opea/dataprep-multimodal-redis](https://hub.docker.com/r/opea/dataprep-multimodal-redis) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/redis/langchain/Dockerfile) | This docker image exposes an OPEA dataprep microservice based on a multi-modal redis for use by GenAI applications. | +| [opea/dataprep-on-ray-redis](https://hub.docker.com/r/opea/dataprep-on-ray-redis) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/redis/langchain_ray/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on redis vectordb and optimized ray for GenAI application use | +| [opea/dataprep-pgvector](https://hub.docker.com/r/opea/dataprep-pgvector) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/pgvector/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on pgvector vectordb for GenAI application use | +| [opea/dataprep-pinecone](https://hub.docker.com/r/opea/dataprep-pinecone) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/pinecone/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on pincone vectordb for GenAI application use | +| [opea/dataprep-qdrant](https://hub.docker.com/r/opea/dataprep-qdrant) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/qdrant/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on qdrant vectordb for GenAI application use | +| [opea/dataprep-redis](https://hub.docker.com/r/opea/dataprep-redis) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/redis/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on redis vectordb Langchain framework for GenAI application use | +| [opea/dataprep-redis-llama-index](https://hub.docker.com/r/opea/dataprep-redis-llama-index) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/redis/llama_index/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on redis vectordb LlamaIndex framework for GenAI application use | +| [opea/dataprep-vdms](https://hub.docker.com/r/opea/dataprep-vdms) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/vdms/langchain/Dockerfile) | This docker image exposes an OPEA dataprep microservice based on VDMS vectordb for use by GenAI applications. | +| [opea/embedding-langchain-mosec](https://hub.docker.com/r/opea/embedding-langchain-mosec) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/3rd_parties/nginx/deployment/docker/Dockerfile) | The docker image exposed the OPEA mosec embedding microservice base on Langchain framework for GenAI application use | +| [opea/embedding-langchain-mosec-endpoint](https://hub.docker.com/r/opea/embedding-langchain-mosec-endpoint) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/3rd_parties/mosec/deployment/docker/Dockerfile) | The docker image exposed the OPEA mosec embedding endpoint microservice base on Langchain framework for GenAI application use | +| [opea/embedding-multimodal-clip](https://hub.docker.com/r/opea/embedding-multimodal-clip) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/native/multimodal/clip/Dockerfile) | The docker image exposes OPEA multimodal CLIP-based embedded microservices for use by GenAI applications | +| [opea/embedding-multimodal](https://hub.docker.com/r/opea/embedding-multimodal) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/native/multimodal/bridgetower/wrapper/Dockerfile) | The docker image exposes OPEA multimodal embedded microservices for use by GenAI applications | +| [opea/embedding-multimodal-bridgetower](https://hub.docker.com/r/opea/embedding-multimodal-bridgetower) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/native/multimodal/bridgetower/dependency/Dockerfile) | The docker image exposes OPEA multimodal embedded microservices based on bridgetower for use by GenAI applications | +| [opea/embedding-multimodal-bridgetower-gaudi](https://hub.docker.com/r/opea/embedding-multimodal-bridgetower-gaudi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/native/multimodal/bridgetower/dependency/Dockerfile.intel_hpu) | The docker image exposes OPEA multimodal embedded microservices based on bridgetower for use by GenAI applications on the Gaudi | +| [opea/embedding-tei](https://hub.docker.com/r/opea/embedding-tei) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/src/Dockerfile) | The docker image exposed the OPEA embedding microservice upon tei docker image for GenAI application use | +| [opea/feedbackmanagement](https://hub.docker.com/r/opea/feedbackmanagement) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/feedback_management/mongo/Dockerfile) | The docker image exposes that the OPEA feedback management microservice uses a MongoDB database for GenAI applications. | +| [opea/finetuning](https://hub.docker.com/r/opea/finetuning) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/finetuning/Dockerfile) | The docker image exposed the OPEA Fine-tuning microservice for GenAI application use | +| [opea/finetuning-gaudi](https://hub.docker.com/r/opea/finetuning-gaudi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/finetuning/Dockerfile.intel_hpu) | The docker image exposed the OPEA Fine-tuning microservice for GenAI application use on the Gaudi | +| [opea/gmcrouter](https://hub.docker.com/r/opea/gmcrouter) | [Link](https://github.com/opea-project/GenAIInfra/blob/main/microservices-connector/Dockerfile.manager) | The docker image served as one of key parts of the OPEA GenAI Microservice Connector(GMC) to route the traffic among the microservices defined in GMC | +| [opea/gmcmanager](https://hub.docker.com/r/opea/gmcmanager) | [Link](https://github.com/opea-project/GenAIInfra/blob/main/microservices-connector/Dockerfile.router) | The docker image served as one of key parts of the OPEA GenAI Microservice Connector(GMC) to be controller manager to handle GMC CRD | +| [opea/guardrails-tgi](https://hub.docker.com/r/opea/guardrails-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/guardrails/llama_guard/langchain/Dockerfile) | The docker image exposed the OPEA guardrail microservice to provide content review for GenAI application use | +| [opea/guardrails-toxicity-detection](https://hub.docker.com/r/opea/guardrails-toxicity-detection) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/guardrails/toxicity_detection/Dockerfile) | The docker image exposed the OPEA guardrail microservice to provide toxicity detection for GenAI application use | +| [opea/guardrails-pii-detection](https://hub.docker.com/r/opea/guardrails-pii-detection) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/guardrails/pii_detection/Dockerfile) | The docker image exposed the OPEA guardrail microservice to provide PII detection for GenAI application use | +| [opea/llm-docsum-tgi](https://hub.docker.com/r/opea/llm-docsum-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/summarization/tgi/langchain/Dockerfile) | This docker image is designed to build a document summarization microservice using the HuggingFace Text Generation Inference(TGI) framework. The microservice accepts document input and generates a document summary. | +| [opea/llm-faqgen-tgi](https://hub.docker.com/r/opea/llm-faqgen-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/faq-generation/tgi/langchain/Dockerfile) | This docker image is designed to build a frequently asked questions microservice using the HuggingFace Text Generation Inference(TGI) framework. The microservice accepts document input and generates a FAQ. | +| [opea/llm-native](https://hub.docker.com/r/opea/llm-native) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/src/text-generation/Dockerfile) | The docker image exposed the OPEA LLM microservice based on native for GenAI application use | +| [opea/llm-ollama](https://hub.docker.com/r/opea/llm-ollama) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/src/text-generation/Dockerfile) | The docker image exposed the OPEA LLM microservice based on ollama for GenAI application use | +| [opea/llm-tgi](https://hub.docker.com/r/opea/llm-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/src/text-generation/Dockerfile) | The docker image exposed the OPEA LLM microservice upon TGI docker image for GenAI application use | +| [opea/llm-vllm](https://hub.docker.com/r/opea/llm-vllm) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/src/text-generation/Dockerfile) | The docker image exposed the OPEA LLM microservice upon vLLM docker image for GenAI application use | +| [opea/llava-gaudi](https://hub.docker.com/r/opea/llava-hpu) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/llava/dependency/Dockerfile.intel_hpu) | The docker image exposed the OPEA microservice running LLaVA as a large visual model (LVM) service for GenAI application use on the Gaudi | +| [opea/lvm-tgi](https://hub.docker.com/r/opea/lvm-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/tgi-llava/Dockerfile) | This docker image is designed to build a large visual model (LVM) microservice using the HuggingFace Text Generation Inference(TGI) framework. The microservice accepts document input and generates a answer to question. | +| [opea/lvm-llava](https://hub.docker.com/r/opea/lvm-llava) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/llava/dependency/Dockerfile) | The docker image exposed the OPEA microservice running LLaVA as a large visual model (LVM) server for GenAI application use | +| [opea/lvm-llava-svc](https://hub.docker.com/r/opea/lvm-llava-svc) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/llava/Dockerfile) | The docker image exposed the OPEA microservice running LLaVA as a large visual model (LVM) service for GenAI application use | +| [opea/lvm-video-llama](https://hub.docker.com/r/opea/lvm-video-llama) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/video-llama/Dockerfile) | The docker image exposed the OPEA microservice running Video-Llama as a large visual model (LVM) for GenAI application use | +| [opea/nginx](https://hub.docker.com/r/opea/nginx) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/3rd_parties/nginx/deployment/docker/Dockerfile) | The docker image exposed the OPEA nginx microservice for GenAI application use | +| [opea/promptregistry-mongo-server](https://hub.docker.com/r/opea/promptregistry-mongo-server) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/prompt_registry/mongo/Dockerfile) | The docker image exposes the OPEA Prompt Registry microservices which based on MongoDB database, designed to store and retrieve user's preferred prompts | +| [opea/reranking-videoqna](https://hub.docker.com/r/opea/reranking-videoqna) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/videoqna/Dockerfile) | The docker image exposed the OPEA reranking microservice for reranking the results of VideoQnA use casesfor GenAI application use | +| [opea/reranking-fastrag](https://hub.docker.com/r/opea/reranking-fastrag) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/src/Dockerfile) | The docker image exposed the OPEA reranking microservice base on fastrag for GenAI application use | +| [opea/reranking-langchain-mosec](https://hub.docker.com/r/opea/reranking-langchain-mosec) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/src/Dockerfile) | The docker image exposed the OPEA mosec reranking microservice base on Langchain framework for GenAI application use | +| [opea/reranking-langchain-mosec-endpoint](https://hub.docker.com/r/opea/reranking-langchain-mosec-endpoint) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/src/Dockerfile) | The docker image exposed the OPEA mosec reranking endpoint microservice base on Langchain framework for GenAI application use | +| [opea/reranking-tei](https://hub.docker.com/r/opea/reranking-tei) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/src/Dockerfile) | The docker image exposed the OPEA reranking microservice based on tei docker image for GenAI application use | +| [opea/retriever-milvus](https://hub.docker.com/r/opea/retriever-milvus) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/milvus/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on milvus vectordb for GenAI application use | +| [opea/retriever-pathway](https://hub.docker.com/r/opea/retriever-pathway) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/pathway/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice with pathway for GenAI application use | +| [opea/retriever-pgvector](https://hub.docker.com/r/opea/retriever-pgvector) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/pgvector/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on pgvector vectordb for GenAI application use | +| [opea/retriever-pinecone](https://hub.docker.com/r/opea/retriever-pinecone) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/pinecone/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on pinecone vectordb for GenAI application use | +| [opea/retriever-qdrant](https://hub.docker.com/r/opea/retriever-qdrant) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/qdrant/haystack/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on qdrant vectordb for GenAI application use | +| [opea/retriever-redis](https://hub.docker.com/r/opea/retriever-redis) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/redis/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on redis vectordb for GenAI application use | +| [opea/retriever-redis-llamaindex](https://hub.docker.com/r/opea/retriever-redis-llamaindex) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/redis/llama_index/Dockerfile) | The docker image exposed the OPEA retriever service based on LlamaIndex for GenAI application use | +| [opea/retriever-vdms](https://hub.docker.com/r/opea/retriever-vdms) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/vdms/langchain/Dockerfile) | The docker image exposed the OPEA retriever service based on Visual Data Management System for GenAI application use | +| [opea/speecht5](https://hub.docker.com/r/opea/speecht5) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/tts/speecht5/dependency/Dockerfile) | The docker image exposed the OPEA SpeechT5 service for GenAI application use | +| [opea/speecht5-gaudi](https://hub.docker.com/r/opea/speecht5-gaudi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/tts/speecht5/dependency/Dockerfile.intel_hpu) | The docker image exposed the OPEA SpeechT5 service on Gaudi2 for GenAI application use | +| [opea/tei-gaudi](https://hub.docker.com/r/opea/tei-gaudi/tags) | [Link](https://github.com/huggingface/tei-gaudi/blob/habana-main/Dockerfile-hpu) | The docker image powered by HuggingFace Text Embedding Inference (TEI) on Gaudi2 for deploying and serving Embedding Models | +| [opea/vectorstore-pathway](https://hub.docker.com/r/opea/vectorstore-pathway) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/vectorstores/pathway/Dockerfile) | The docker image exposed the OPEA Vectorstores microservice with Pathway for GenAI application use | +| [opea/video-llama-lvm-server](https://hub.docker.com/r/opea/video-llama-lvm-server) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/video-llama/dependency/Dockerfile) | The docker image exposed the OPEA microservice running Video-Llama as a large visual model (LVM) server for GenAI application use | +| [opea/tts](https://hub.docker.com/r/opea/tts) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/tts/speecht5/Dockerfile) | The docker image exposed the OPEA Text-To-Speech microservice for GenAI application use | +| [opea/vllm](https://hub.docker.com/r/opea/vllm) | [Link](https://github.com/vllm-project/vllm/blob/main/Dockerfile.cpu) | The docker image powered by vllm-project for deploying and serving vllm Models | +| [opea/vllm-gaudi]() | [Link](https://github.com/HabanaAI/vllm-fork/blob/habana_main/Dockerfile.hpu) | The docker image powered by vllm-fork for deploying and serving vllm-gaudi Models | +| [opea/vllm-openvino](https://hub.docker.com/r/opea/vllm-openvino) | [Link](https://github.com/vllm-project/vllm/blob/main/Dockerfile.openvino) | The docker image powered by vllm-project for deploying and serving vllm Models of the Openvino Framework | +| [opea/web-retriever-chroma](https://hub.docker.com/r/opea/web-retriever-chroma) | [Link](https://github.com/opea-project/GenAIComps/tree/main/comps/web_retrievers/chroma/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on chroma vectordb for GenAI application use | +| [opea/whisper](https://hub.docker.com/r/opea/whisper) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/asr/whisper/dependency/Dockerfile) | The docker image exposed the OPEA Whisper service for GenAI application use | +| [opea/whisper-gaudi](https://hub.docker.com/r/opea/whisper-gaudi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/asr/whisper/dependency/Dockerfile.intel_hpu) | The docker image exposed the OPEA Whisper service on Gaudi2 for GenAI application use | From 1a80dcf4d10ce6e02fd8e7788b7fda0af83fc2cd Mon Sep 17 00:00:00 2001 From: chensuyue Date: Tue, 24 Dec 2024 11:41:45 +0800 Subject: [PATCH 02/26] for test only based on refactor_comps branch Signed-off-by: chensuyue --- .github/workflows/_run-docker-compose.yml | 1 + .github/workflows/pr-docker-compose-e2e.yml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/_run-docker-compose.yml b/.github/workflows/_run-docker-compose.yml index 60bf70dcb8..355d612e4b 100644 --- a/.github/workflows/_run-docker-compose.yml +++ b/.github/workflows/_run-docker-compose.yml @@ -123,6 +123,7 @@ jobs: SERVING_TOKEN: ${{ secrets.SERVING_TOKEN }} IMAGE_REPO: ${{ inputs.registry }} IMAGE_TAG: ${{ inputs.tag }} + opea_branch: "refactor_comps" example: ${{ inputs.example }} hardware: ${{ inputs.hardware }} test_case: ${{ matrix.test_case }} diff --git a/.github/workflows/pr-docker-compose-e2e.yml b/.github/workflows/pr-docker-compose-e2e.yml index 687ae047a3..c52677f31e 100644 --- a/.github/workflows/pr-docker-compose-e2e.yml +++ b/.github/workflows/pr-docker-compose-e2e.yml @@ -4,7 +4,7 @@ name: E2E test with docker compose on: - pull_request_target: + pull_request: branches: ["main", "*rc"] types: [opened, reopened, ready_for_review, synchronize] # added `ready_for_review` since draft is skipped paths: From bac73f4e1a36761e944602fe8fe41afcc3da0eae Mon Sep 17 00:00:00 2001 From: chensuyue Date: Wed, 25 Dec 2024 10:38:07 +0800 Subject: [PATCH 03/26] for test only Signed-off-by: chensuyue --- .github/workflows/pr-docker-compose-e2e.yml | 2 +- .github/workflows/pr-dockerfile-path-and-build-yaml-scan.yml | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/pr-docker-compose-e2e.yml b/.github/workflows/pr-docker-compose-e2e.yml index c52677f31e..95f0e59205 100644 --- a/.github/workflows/pr-docker-compose-e2e.yml +++ b/.github/workflows/pr-docker-compose-e2e.yml @@ -5,7 +5,7 @@ name: E2E test with docker compose on: pull_request: - branches: ["main", "*rc"] + branches: ["main", "*rc", "genaicomps_refactor"] types: [opened, reopened, ready_for_review, synchronize] # added `ready_for_review` since draft is skipped paths: - "**/Dockerfile**" diff --git a/.github/workflows/pr-dockerfile-path-and-build-yaml-scan.yml b/.github/workflows/pr-dockerfile-path-and-build-yaml-scan.yml index ededdba43c..541ac9b07d 100644 --- a/.github/workflows/pr-dockerfile-path-and-build-yaml-scan.yml +++ b/.github/workflows/pr-dockerfile-path-and-build-yaml-scan.yml @@ -22,6 +22,7 @@ jobs: run: | cd .. git clone https://github.com/opea-project/GenAIComps.git + git checkout refactor_comps - name: Check for Missing Dockerfile Paths in GenAIComps run: | From 744f7c9519a65e706c2cfa2df756bac0a6db4dee Mon Sep 17 00:00:00 2001 From: Xinyao Wang Date: Wed, 25 Dec 2024 15:45:17 +0800 Subject: [PATCH 04/26] fix ChatQnA Signed-off-by: Xinyao Wang --- ChatQnA/docker_image_build/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ChatQnA/docker_image_build/build.yaml b/ChatQnA/docker_image_build/build.yaml index 521e00b45d..439c12fd68 100644 --- a/ChatQnA/docker_image_build/build.yaml +++ b/ChatQnA/docker_image_build/build.yaml @@ -128,6 +128,6 @@ services: nginx: build: context: GenAIComps - dockerfile: comps/3rd_parties/nginx/deployment/docker/Dockerfile + dockerfile: comps/3rd_parties/nginx/src/Dockerfile extends: chatqna image: ${REGISTRY:-opea}/nginx:${TAG:-latest} From 3146d5d69d3c2bbdb7193b231c666b7c1919e579 Mon Sep 17 00:00:00 2001 From: Letong Han <106566639+letonghan@users.noreply.github.com> Date: Thu, 26 Dec 2024 09:45:50 +0800 Subject: [PATCH 05/26] Fix Translation and VideoQnA CI issues (#1293) Signed-off-by: letonghan --- .../docker_compose/intel/cpu/xeon/compose.yaml | 12 ++++++++++-- .../docker_compose/intel/hpu/gaudi/compose.yaml | 11 +++++++++-- Translation/docker_image_build/build.yaml | 2 +- Translation/tests/test_compose_on_xeon.sh | 3 ++- Translation/ui/svelte/.env | 2 +- VideoQnA/docker_image_build/build.yaml | 2 +- VideoQnA/tests/test_compose_on_xeon.sh | 2 +- 7 files changed, 25 insertions(+), 9 deletions(-) diff --git a/Translation/docker_compose/intel/cpu/xeon/compose.yaml b/Translation/docker_compose/intel/cpu/xeon/compose.yaml index 39ea18d460..459c891440 100644 --- a/Translation/docker_compose/intel/cpu/xeon/compose.yaml +++ b/Translation/docker_compose/intel/cpu/xeon/compose.yaml @@ -14,6 +14,12 @@ services: HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} HF_HUB_DISABLE_PROGRESS_BARS: 1 HF_HUB_ENABLE_HF_TRANSFER: 0 + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:8008/health || exit 1"] + interval: 10s + timeout: 10s + retries: 100 volumes: - "./data:/data" shm_size: 1g @@ -22,7 +28,8 @@ services: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: llm-tgi-server depends_on: - - tgi-service + tgi-service: + condition: service_healthy ports: - "9000:9000" ipc: host @@ -30,7 +37,8 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_MODEL_ID: ${LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} HF_HUB_DISABLE_PROGRESS_BARS: 1 HF_HUB_ENABLE_HF_TRANSFER: 0 diff --git a/Translation/docker_compose/intel/hpu/gaudi/compose.yaml b/Translation/docker_compose/intel/hpu/gaudi/compose.yaml index eabae13217..a22d1ad046 100644 --- a/Translation/docker_compose/intel/hpu/gaudi/compose.yaml +++ b/Translation/docker_compose/intel/hpu/gaudi/compose.yaml @@ -20,6 +20,11 @@ services: LIMIT_HPU_GRAPH: true USE_FLASH_ATTENTION: true FLASH_ATTENTION_RECOMPUTE: true + healthcheck: + test: ["CMD-SHELL", "sleep 500 && exit 0"] + interval: 1s + timeout: 505s + retries: 1 runtime: habana cap_add: - SYS_NICE @@ -31,7 +36,8 @@ services: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: llm-tgi-gaudi-server depends_on: - - tgi-service + tgi-service: + condition: service_healthy ports: - "9000:9000" ipc: host @@ -39,7 +45,8 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_MODEL_ID: ${LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} HF_HUB_DISABLE_PROGRESS_BARS: 1 HF_HUB_ENABLE_HF_TRANSFER: 0 diff --git a/Translation/docker_image_build/build.yaml b/Translation/docker_image_build/build.yaml index 553e873b41..3f84f7a3a8 100644 --- a/Translation/docker_image_build/build.yaml +++ b/Translation/docker_image_build/build.yaml @@ -26,6 +26,6 @@ services: nginx: build: context: GenAIComps - dockerfile: comps/3rd_parties/nginx/deployment/docker/Dockerfile + dockerfile: comps/3rd_parties/nginx/src/Dockerfile extends: translation image: ${REGISTRY:-opea}/nginx:${TAG:-latest} diff --git a/Translation/tests/test_compose_on_xeon.sh b/Translation/tests/test_compose_on_xeon.sh index bfefd88dd4..325d5eb2f2 100644 --- a/Translation/tests/test_compose_on_xeon.sh +++ b/Translation/tests/test_compose_on_xeon.sh @@ -41,6 +41,7 @@ function start_services() { export BACKEND_SERVICE_NAME=translation export BACKEND_SERVICE_IP=${ip_address} export BACKEND_SERVICE_PORT=8888 + export host_ip=${ip_address} sed -i "s/backend_address/$ip_address/g" $WORKPATH/ui/svelte/.env @@ -167,7 +168,7 @@ function main() { validate_microservices validate_megaservice - validate_frontend + # validate_frontend stop_docker echo y | docker system prune diff --git a/Translation/ui/svelte/.env b/Translation/ui/svelte/.env index fdb106b4b3..aa21ff7095 100644 --- a/Translation/ui/svelte/.env +++ b/Translation/ui/svelte/.env @@ -1 +1 @@ -BASE_URL = 'http://10.7.5.135:8888/v1/translation' +BASE_URL = 'http://backend_address:8888/v1/translation' diff --git a/VideoQnA/docker_image_build/build.yaml b/VideoQnA/docker_image_build/build.yaml index b54261ab53..ef6af2aa7a 100644 --- a/VideoQnA/docker_image_build/build.yaml +++ b/VideoQnA/docker_image_build/build.yaml @@ -26,7 +26,7 @@ services: embedding-multimodal-clip: build: context: GenAIComps - dockerfile: comps/embeddings/native/multimodal/clip/Dockerfile + dockerfile: comps/embeddings/src/integrations/dependency/clip/Dockerfile extends: videoqna image: ${REGISTRY:-opea}/embedding-multimodal-clip:${TAG:-latest} retriever-vdms: diff --git a/VideoQnA/tests/test_compose_on_xeon.sh b/VideoQnA/tests/test_compose_on_xeon.sh index 07e856bb59..081b144077 100755 --- a/VideoQnA/tests/test_compose_on_xeon.sh +++ b/VideoQnA/tests/test_compose_on_xeon.sh @@ -248,4 +248,4 @@ function main() { } -main +# main From be4e9ad00030ebe066d05829515ca5d865592d32 Mon Sep 17 00:00:00 2001 From: Letong Han <106566639+letonghan@users.noreply.github.com> Date: Thu, 26 Dec 2024 13:37:40 +0800 Subject: [PATCH 06/26] Fix VisualQnA CI issues caused by Comps refactor (#1292) Signed-off-by: letonghan --- VisualQnA/docker_compose/intel/cpu/xeon/compose.yaml | 9 ++++++++- VisualQnA/docker_image_build/build.yaml | 2 +- VisualQnA/tests/test_compose_on_xeon.sh | 3 ++- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/VisualQnA/docker_compose/intel/cpu/xeon/compose.yaml b/VisualQnA/docker_compose/intel/cpu/xeon/compose.yaml index 33b5e189b1..cf10d047e6 100644 --- a/VisualQnA/docker_compose/intel/cpu/xeon/compose.yaml +++ b/VisualQnA/docker_compose/intel/cpu/xeon/compose.yaml @@ -16,12 +16,19 @@ services: https_proxy: ${https_proxy} HF_HUB_DISABLE_PROGRESS_BARS: 1 HF_HUB_ENABLE_HF_TRANSFER: 0 + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:8399/health || exit 1"] + interval: 10s + timeout: 10s + retries: 60 command: --model-id ${LVM_MODEL_ID} --max-input-length 4096 --max-total-tokens 8192 --cuda-graphs 0 lvm-tgi: image: ${REGISTRY:-opea}/lvm-tgi:${TAG:-latest} container_name: lvm-tgi-xeon-server depends_on: - - llava-tgi-service + llava-tgi-service: + condition: service_healthy ports: - "9399:9399" ipc: host diff --git a/VisualQnA/docker_image_build/build.yaml b/VisualQnA/docker_image_build/build.yaml index d1e09764ae..f6b5e9e2c0 100644 --- a/VisualQnA/docker_image_build/build.yaml +++ b/VisualQnA/docker_image_build/build.yaml @@ -26,6 +26,6 @@ services: nginx: build: context: GenAIComps - dockerfile: comps/3rd_parties/nginx/deployment/docker/Dockerfile + dockerfile: comps/3rd_parties/nginx/src/Dockerfile extends: visualqna image: ${REGISTRY:-opea}/nginx:${TAG:-latest} diff --git a/VisualQnA/tests/test_compose_on_xeon.sh b/VisualQnA/tests/test_compose_on_xeon.sh index 2aefea28a7..1b1aee86c9 100644 --- a/VisualQnA/tests/test_compose_on_xeon.sh +++ b/VisualQnA/tests/test_compose_on_xeon.sh @@ -41,6 +41,7 @@ function start_services() { export BACKEND_SERVICE_IP=${ip_address} export BACKEND_SERVICE_PORT=8888 export NGINX_PORT=80 + export host_ip=${ip_address} sed -i "s/backend_address/$ip_address/g" $WORKPATH/ui/svelte/.env @@ -48,7 +49,7 @@ function start_services() { docker compose up -d > ${LOG_PATH}/start_services_with_compose.log n=0 - until [[ "$n" -ge 100 ]]; do + until [[ "$n" -ge 200 ]]; do docker logs lvm-tgi-xeon-server > ${LOG_PATH}/lvm_tgi_service_start.log if grep -q Connected ${LOG_PATH}/lvm_tgi_service_start.log; then break From fb51d9f2eda6c0cd737da1e58d102231e754f809 Mon Sep 17 00:00:00 2001 From: XinyaoWa Date: Thu, 26 Dec 2024 13:49:02 +0800 Subject: [PATCH 07/26] AudioQnA fix (#1290) Signed-off-by: Xinyao Wang Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: chen, suyue --- AudioQnA/audioqna.py | 10 +++++++++ .../docker_compose/amd/gpu/rocm/compose.yaml | 12 +++++++++-- .../intel/cpu/xeon/compose.yaml | 12 +++++++++-- .../intel/hpu/gaudi/compose.yaml | 11 ++++++++-- AudioQnA/tests/test_compose_on_gaudi.sh | 21 ++----------------- AudioQnA/tests/test_compose_on_rocm.sh | 11 ++-------- AudioQnA/tests/test_compose_on_xeon.sh | 11 ++-------- 7 files changed, 45 insertions(+), 43 deletions(-) diff --git a/AudioQnA/audioqna.py b/AudioQnA/audioqna.py index 8e2e68fbe8..276f583c29 100644 --- a/AudioQnA/audioqna.py +++ b/AudioQnA/audioqna.py @@ -18,10 +18,20 @@ TTS_SERVICE_PORT = int(os.getenv("TTS_SERVICE_PORT", 9088)) +def align_inputs(self, inputs, cur_node, runtime_graph, llm_parameters_dict, **kwargs): + if self.services[cur_node].service_type == ServiceType.TTS: + new_inputs = {} + new_inputs["text"] = inputs["choices"][0]["text"] + return new_inputs + else: + return inputs + + class AudioQnAService: def __init__(self, host="0.0.0.0", port=8000): self.host = host self.port = port + ServiceOrchestrator.align_inputs = align_inputs self.megaservice = ServiceOrchestrator() self.endpoint = str(MegaServiceEndpoint.AUDIO_QNA) diff --git a/AudioQnA/docker_compose/amd/gpu/rocm/compose.yaml b/AudioQnA/docker_compose/amd/gpu/rocm/compose.yaml index 651fd5464b..e80615916e 100644 --- a/AudioQnA/docker_compose/amd/gpu/rocm/compose.yaml +++ b/AudioQnA/docker_compose/amd/gpu/rocm/compose.yaml @@ -59,6 +59,12 @@ services: HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} HF_HUB_DISABLE_PROGRESS_BARS: 1 HF_HUB_ENABLE_HF_TRANSFER: 0 + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:3006/health || exit 1"] + interval: 10s + timeout: 10s + retries: 100 command: --model-id ${LLM_MODEL_ID} cap_add: - SYS_PTRACE @@ -71,7 +77,8 @@ services: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: llm-tgi-server depends_on: - - tgi-service + tgi-service: + condition: service_healthy ports: - "3007:9000" ipc: host @@ -79,7 +86,8 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_MODEL_ID: ${LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} restart: unless-stopped audioqna-backend-server: diff --git a/AudioQnA/docker_compose/intel/cpu/xeon/compose.yaml b/AudioQnA/docker_compose/intel/cpu/xeon/compose.yaml index 1309797204..9806800d7e 100644 --- a/AudioQnA/docker_compose/intel/cpu/xeon/compose.yaml +++ b/AudioQnA/docker_compose/intel/cpu/xeon/compose.yaml @@ -53,12 +53,19 @@ services: http_proxy: ${http_proxy} https_proxy: ${https_proxy} HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:3006/health || exit 1"] + interval: 10s + timeout: 10s + retries: 100 command: --model-id ${LLM_MODEL_ID} --cuda-graphs 0 llm: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: llm-tgi-server depends_on: - - tgi-service + tgi-service: + condition: service_healthy ports: - "3007:9000" ipc: host @@ -66,7 +73,8 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_MODEL_ID: ${LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} restart: unless-stopped audioqna-xeon-backend-server: diff --git a/AudioQnA/docker_compose/intel/hpu/gaudi/compose.yaml b/AudioQnA/docker_compose/intel/hpu/gaudi/compose.yaml index adab48aa3f..1bf84f4170 100644 --- a/AudioQnA/docker_compose/intel/hpu/gaudi/compose.yaml +++ b/AudioQnA/docker_compose/intel/hpu/gaudi/compose.yaml @@ -74,12 +74,18 @@ services: cap_add: - SYS_NICE ipc: host + healthcheck: + test: ["CMD-SHELL", "sleep 500 && exit 0"] + interval: 1s + timeout: 505s + retries: 1 command: --model-id ${LLM_MODEL_ID} --max-input-length 1024 --max-total-tokens 2048 llm: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: llm-tgi-gaudi-server depends_on: - - tgi-service + tgi-service: + condition: service_healthy ports: - "3007:9000" ipc: host @@ -87,7 +93,8 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_MODEL_ID: ${LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} restart: unless-stopped audioqna-gaudi-backend-server: diff --git a/AudioQnA/tests/test_compose_on_gaudi.sh b/AudioQnA/tests/test_compose_on_gaudi.sh index 326a8616a6..0e13588173 100644 --- a/AudioQnA/tests/test_compose_on_gaudi.sh +++ b/AudioQnA/tests/test_compose_on_gaudi.sh @@ -40,6 +40,7 @@ function start_services() { export ASR_SERVICE_HOST_IP=${ip_address} export TTS_SERVICE_HOST_IP=${ip_address} export LLM_SERVICE_HOST_IP=${ip_address} + export host_ip=${ip_address} export ASR_SERVICE_PORT=3001 export TTS_SERVICE_PORT=3002 @@ -49,25 +50,7 @@ function start_services() { # Start Docker Containers docker compose up -d > ${LOG_PATH}/start_services_with_compose.log - n=0 - until [[ "$n" -ge 100 ]]; do - docker logs tgi-gaudi-server > $LOG_PATH/tgi_service_start.log - if grep -q Connected $LOG_PATH/tgi_service_start.log; then - break - fi - sleep 5s - n=$((n+1)) - done - - n=0 - until [[ "$n" -ge 100 ]]; do - docker logs whisper-service > $LOG_PATH/whisper_service_start.log - if grep -q "Uvicorn server setup on port" $LOG_PATH/whisper_service_start.log; then - break - fi - sleep 5s - n=$((n+1)) - done + sleep 20s } diff --git a/AudioQnA/tests/test_compose_on_rocm.sh b/AudioQnA/tests/test_compose_on_rocm.sh index 86a1484728..99916670a1 100644 --- a/AudioQnA/tests/test_compose_on_rocm.sh +++ b/AudioQnA/tests/test_compose_on_rocm.sh @@ -40,6 +40,7 @@ function start_services() { export ASR_SERVICE_HOST_IP=${ip_address} export TTS_SERVICE_HOST_IP=${ip_address} export LLM_SERVICE_HOST_IP=${ip_address} + export host_ip=${ip_address} export ASR_SERVICE_PORT=3001 export TTS_SERVICE_PORT=3002 @@ -49,15 +50,7 @@ function start_services() { # Start Docker Containers docker compose up -d > ${LOG_PATH}/start_services_with_compose.log - n=0 - until [[ "$n" -ge 100 ]]; do - docker logs tgi-service > $LOG_PATH/tgi_service_start.log - if grep -q Connected $LOG_PATH/tgi_service_start.log; then - break - fi - sleep 5s - n=$((n+1)) - done + sleep 20s } function validate_megaservice() { result=$(http_proxy="" curl http://${ip_address}:3008/v1/audioqna -XPOST -d '{"audio": "UklGRigAAABXQVZFZm10IBIAAAABAAEARKwAAIhYAQACABAAAABkYXRhAgAAAAEA", "max_tokens":64}' -H 'Content-Type: application/json') diff --git a/AudioQnA/tests/test_compose_on_xeon.sh b/AudioQnA/tests/test_compose_on_xeon.sh index d3be292a3b..2f285e30fc 100644 --- a/AudioQnA/tests/test_compose_on_xeon.sh +++ b/AudioQnA/tests/test_compose_on_xeon.sh @@ -39,6 +39,7 @@ function start_services() { export ASR_SERVICE_HOST_IP=${ip_address} export TTS_SERVICE_HOST_IP=${ip_address} export LLM_SERVICE_HOST_IP=${ip_address} + export host_ip=${ip_address} export ASR_SERVICE_PORT=3001 export TTS_SERVICE_PORT=3002 @@ -48,15 +49,7 @@ function start_services() { # Start Docker Containers docker compose up -d > ${LOG_PATH}/start_services_with_compose.log - n=0 - until [[ "$n" -ge 100 ]]; do - docker logs tgi-service > $LOG_PATH/tgi_service_start.log - if grep -q Connected $LOG_PATH/tgi_service_start.log; then - break - fi - sleep 5s - n=$((n+1)) - done + sleep 20s } From 40be38f68bb117cdf8d72df0f9c74250e1d49d4c Mon Sep 17 00:00:00 2001 From: XinyaoWa Date: Thu, 26 Dec 2024 14:07:00 +0800 Subject: [PATCH 08/26] AudioQnA GPU (#1297) Signed-off-by: Xinyao Wang --- AudioQnA/tests/test_compose_on_rocm.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AudioQnA/tests/test_compose_on_rocm.sh b/AudioQnA/tests/test_compose_on_rocm.sh index 99916670a1..6ae91c09b2 100644 --- a/AudioQnA/tests/test_compose_on_rocm.sh +++ b/AudioQnA/tests/test_compose_on_rocm.sh @@ -2,7 +2,7 @@ # Copyright (C) 2024 Advanced Micro Devices, Inc. # SPDX-License-Identifier: Apache-2.0 -set -ex +set -xe IMAGE_REPO=${IMAGE_REPO:-"opea"} IMAGE_TAG=${IMAGE_TAG:-"latest"} echo "REGISTRY=IMAGE_REPO=${IMAGE_REPO}" From 6c053654d7c1e1508d69f277d03786ab5e594ede Mon Sep 17 00:00:00 2001 From: XinyaoWa Date: Thu, 26 Dec 2024 14:21:41 +0800 Subject: [PATCH 09/26] AvatarChatbot - refactor UT (#1294) Signed-off-by: Xinyao Wang Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- AvatarChatbot/avatarchatbot.py | 10 ++++++++++ .../docker_compose/intel/cpu/xeon/compose.yaml | 12 ++++++++++-- .../docker_compose/intel/hpu/gaudi/compose.yaml | 13 ++++++++++--- AvatarChatbot/tests/test_compose_on_gaudi.sh | 14 ++------------ AvatarChatbot/tests/test_compose_on_xeon.sh | 11 +---------- 5 files changed, 33 insertions(+), 27 deletions(-) diff --git a/AvatarChatbot/avatarchatbot.py b/AvatarChatbot/avatarchatbot.py index 54bd0d29af..e1c8910469 100644 --- a/AvatarChatbot/avatarchatbot.py +++ b/AvatarChatbot/avatarchatbot.py @@ -21,6 +21,15 @@ ANIMATION_SERVICE_PORT = int(os.getenv("ANIMATION_SERVICE_PORT", 9066)) +def align_inputs(self, inputs, cur_node, runtime_graph, llm_parameters_dict, **kwargs): + if self.services[cur_node].service_type == ServiceType.TTS: + new_inputs = {} + new_inputs["text"] = inputs["choices"][0]["text"] + return new_inputs + else: + return inputs + + def check_env_vars(env_var_list): for var in env_var_list: if os.getenv(var) is None: @@ -33,6 +42,7 @@ class AvatarChatbotService: def __init__(self, host="0.0.0.0", port=8000): self.host = host self.port = port + ServiceOrchestrator.align_inputs = align_inputs self.megaservice = ServiceOrchestrator() self.endpoint = str(MegaServiceEndpoint.AVATAR_CHATBOT) diff --git a/AvatarChatbot/docker_compose/intel/cpu/xeon/compose.yaml b/AvatarChatbot/docker_compose/intel/cpu/xeon/compose.yaml index 2496b11e87..6657dffe15 100644 --- a/AvatarChatbot/docker_compose/intel/cpu/xeon/compose.yaml +++ b/AvatarChatbot/docker_compose/intel/cpu/xeon/compose.yaml @@ -54,12 +54,19 @@ services: http_proxy: ${http_proxy} https_proxy: ${https_proxy} HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:3006/health || exit 1"] + interval: 10s + timeout: 10s + retries: 100 command: --model-id ${LLM_MODEL_ID} --cuda-graphs 0 llm: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: llm-tgi-server depends_on: - - tgi-service + tgi-service: + condition: service_healthy ports: - "3007:9000" ipc: host @@ -67,7 +74,8 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_MODEL_ID: ${LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} restart: unless-stopped wav2lip-service: diff --git a/AvatarChatbot/docker_compose/intel/hpu/gaudi/compose.yaml b/AvatarChatbot/docker_compose/intel/hpu/gaudi/compose.yaml index 2003bb4a99..c6af250b8d 100644 --- a/AvatarChatbot/docker_compose/intel/hpu/gaudi/compose.yaml +++ b/AvatarChatbot/docker_compose/intel/hpu/gaudi/compose.yaml @@ -77,12 +77,18 @@ services: cap_add: - SYS_NICE ipc: host - command: --model-id ${LLM_MODEL_ID} --max-input-length 128 --max-total-tokens 256 + healthcheck: + test: ["CMD-SHELL", "sleep 500 && exit 0"] + interval: 1s + timeout: 505s + retries: 1 + command: --model-id ${LLM_MODEL_ID} --max-input-length 1024 --max-total-tokens 2048 llm: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: llm-tgi-gaudi-server depends_on: - - tgi-service + tgi-service: + condition: service_healthy ports: - "3007:9000" ipc: host @@ -90,7 +96,8 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_MODEL_ID: ${LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} restart: unless-stopped wav2lip-service: diff --git a/AvatarChatbot/tests/test_compose_on_gaudi.sh b/AvatarChatbot/tests/test_compose_on_gaudi.sh index aab0e3b68b..ae6f8ba2c1 100755 --- a/AvatarChatbot/tests/test_compose_on_gaudi.sh +++ b/AvatarChatbot/tests/test_compose_on_gaudi.sh @@ -75,19 +75,9 @@ function start_services() { # Start Docker Containers docker compose up -d > ${LOG_PATH}/start_services_with_compose.log - - n=0 - until [[ "$n" -ge 100 ]]; do - docker logs tgi-gaudi-server > $LOG_PATH/tgi_service_start.log - if grep -q Connected $LOG_PATH/tgi_service_start.log; then - break - fi - sleep 5s - n=$((n+1)) - done - + sleep 20s echo "All services are up and running" - sleep 5s + } diff --git a/AvatarChatbot/tests/test_compose_on_xeon.sh b/AvatarChatbot/tests/test_compose_on_xeon.sh index 2bed682cfd..cfeee3b12f 100755 --- a/AvatarChatbot/tests/test_compose_on_xeon.sh +++ b/AvatarChatbot/tests/test_compose_on_xeon.sh @@ -75,17 +75,8 @@ function start_services() { # Start Docker Containers docker compose up -d - n=0 - until [[ "$n" -ge 100 ]]; do - docker logs tgi-service > $LOG_PATH/tgi_service_start.log - if grep -q Connected $LOG_PATH/tgi_service_start.log; then - break - fi - sleep 5s - n=$((n+1)) - done + sleep 20s echo "All services are up and running" - sleep 5s } From 9ab66319ef4177fd77bbda12fa82e81c2505e04d Mon Sep 17 00:00:00 2001 From: XinyaoWa Date: Thu, 26 Dec 2024 15:06:38 +0800 Subject: [PATCH 10/26] AvatarChatbot gaudi refactor ut (#1300) Signed-off-by: Xinyao Wang --- AvatarChatbot/tests/test_compose_on_gaudi.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/AvatarChatbot/tests/test_compose_on_gaudi.sh b/AvatarChatbot/tests/test_compose_on_gaudi.sh index ae6f8ba2c1..5d0ec92f8b 100755 --- a/AvatarChatbot/tests/test_compose_on_gaudi.sh +++ b/AvatarChatbot/tests/test_compose_on_gaudi.sh @@ -75,7 +75,7 @@ function start_services() { # Start Docker Containers docker compose up -d > ${LOG_PATH}/start_services_with_compose.log - sleep 20s + sleep 60s echo "All services are up and running" } From 575c974df316848c747421374c29bd44c4ef943c Mon Sep 17 00:00:00 2001 From: XinyaoWa Date: Thu, 26 Dec 2024 15:30:06 +0800 Subject: [PATCH 11/26] chatqna rocm ut trigger (#1302) Signed-off-by: Xinyao Wang --- ChatQnA/tests/test_compose_on_rocm.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ChatQnA/tests/test_compose_on_rocm.sh b/ChatQnA/tests/test_compose_on_rocm.sh index 9075134342..9744731d24 100644 --- a/ChatQnA/tests/test_compose_on_rocm.sh +++ b/ChatQnA/tests/test_compose_on_rocm.sh @@ -76,6 +76,8 @@ function start_services() { sleep 1s n=$((n+1)) done + + echo "all containers start!" } function validate_service() { From 885173a455143793ed9e86df5091c87619e35cfd Mon Sep 17 00:00:00 2001 From: chensuyue Date: Fri, 27 Dec 2024 09:40:49 +0800 Subject: [PATCH 12/26] for test only Signed-off-by: chensuyue --- .github/workflows/pr-dockerfile-path-and-build-yaml-scan.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pr-dockerfile-path-and-build-yaml-scan.yml b/.github/workflows/pr-dockerfile-path-and-build-yaml-scan.yml index 541ac9b07d..4ee9a71172 100644 --- a/.github/workflows/pr-dockerfile-path-and-build-yaml-scan.yml +++ b/.github/workflows/pr-dockerfile-path-and-build-yaml-scan.yml @@ -22,7 +22,7 @@ jobs: run: | cd .. git clone https://github.com/opea-project/GenAIComps.git - git checkout refactor_comps + cd GenAIComps && git checkout refactor_comps - name: Check for Missing Dockerfile Paths in GenAIComps run: | From 9efbc91774a65cac19c129cccd3e8ffcf5c46719 Mon Sep 17 00:00:00 2001 From: Liang Lv Date: Sun, 29 Dec 2024 10:11:15 +0800 Subject: [PATCH 13/26] Update dockerfile for GraphRAG (#1318) Signed-off-by: lvliang-intel --- GraphRAG/docker_image_build/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GraphRAG/docker_image_build/build.yaml b/GraphRAG/docker_image_build/build.yaml index 06802b7a62..d0363ffc98 100644 --- a/GraphRAG/docker_image_build/build.yaml +++ b/GraphRAG/docker_image_build/build.yaml @@ -36,7 +36,7 @@ services: https_proxy: ${https_proxy} no_proxy: ${no_proxy} context: GenAIComps - dockerfile: comps/3rd_parties/nginx/deployment/docker/Dockerfile + dockerfile: comps/3rd_parties/nginx/src/Dockerfile image: ${REGISTRY:-opea}/nginx:${TAG:-latest} graphrag-ui: build: From 73b3f50737be60f25db9f4b49da18a51b88b4196 Mon Sep 17 00:00:00 2001 From: Liang Lv Date: Sun, 29 Dec 2024 10:11:35 +0800 Subject: [PATCH 14/26] Update CodeGen for GenAIComps Refactor (#1308) Signed-off-by: lvliang-intel Co-authored-by: WenjiaoYue --- .../docker_compose/amd/gpu/rocm/compose.yaml | 12 ++++++++-- .../intel/cpu/xeon/compose.yaml | 12 ++++++++-- .../intel/hpu/gaudi/compose.yaml | 11 +++++++-- CodeGen/tests/test_compose_on_gaudi.sh | 1 + CodeGen/tests/test_compose_on_rocm.sh | 1 + CodeGen/tests/test_compose_on_xeon.sh | 1 + CodeGen/ui/svelte/src/routes/+page.svelte | 23 +++++++++---------- 7 files changed, 43 insertions(+), 18 deletions(-) diff --git a/CodeGen/docker_compose/amd/gpu/rocm/compose.yaml b/CodeGen/docker_compose/amd/gpu/rocm/compose.yaml index cf7d2369c4..55abc832ba 100644 --- a/CodeGen/docker_compose/amd/gpu/rocm/compose.yaml +++ b/CodeGen/docker_compose/amd/gpu/rocm/compose.yaml @@ -15,6 +15,12 @@ services: https_proxy: ${https_proxy} HUGGING_FACE_HUB_TOKEN: ${CODEGEN_HUGGINGFACEHUB_API_TOKEN} HUGGINGFACEHUB_API_TOKEN: ${CODEGEN_HUGGINGFACEHUB_API_TOKEN} + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:${CODEGEN_TGI_SERVICE_PORT:-8028}/health || exit 1"] + interval: 10s + timeout: 10s + retries: 100 shm_size: 1g devices: - /dev/kfd:/dev/kfd @@ -31,7 +37,8 @@ services: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: codegen-llm-server depends_on: - - codegen-tgi-service + codegen-tgi-service: + condition: service_healthy ports: - "${CODEGEN_LLM_SERVICE_PORT:-9000}:9000" ipc: host @@ -39,7 +46,8 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: "http://codegen-tgi-service" + LLM_ENDPOINT: "http://codegen-tgi-service" + LLM_MODEL_ID: ${CODEGEN_LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${CODEGEN_HUGGINGFACEHUB_API_TOKEN} restart: unless-stopped codegen-backend-server: diff --git a/CodeGen/docker_compose/intel/cpu/xeon/compose.yaml b/CodeGen/docker_compose/intel/cpu/xeon/compose.yaml index 64b74db71f..96226fe21e 100644 --- a/CodeGen/docker_compose/intel/cpu/xeon/compose.yaml +++ b/CodeGen/docker_compose/intel/cpu/xeon/compose.yaml @@ -15,12 +15,19 @@ services: http_proxy: ${http_proxy} https_proxy: ${https_proxy} HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:8028/health || exit 1"] + interval: 10s + timeout: 10s + retries: 100 command: --model-id ${LLM_MODEL_ID} --cuda-graphs 0 llm: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: llm-tgi-server depends_on: - - tgi-service + tgi-service: + condition: service_healthy ports: - "9000:9000" ipc: host @@ -28,7 +35,8 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_MODEL_ID: ${LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} restart: unless-stopped codegen-xeon-backend-server: diff --git a/CodeGen/docker_compose/intel/hpu/gaudi/compose.yaml b/CodeGen/docker_compose/intel/hpu/gaudi/compose.yaml index 92b70b099c..7f7e71295a 100644 --- a/CodeGen/docker_compose/intel/hpu/gaudi/compose.yaml +++ b/CodeGen/docker_compose/intel/hpu/gaudi/compose.yaml @@ -20,6 +20,11 @@ services: LIMIT_HPU_GRAPH: true USE_FLASH_ATTENTION: true FLASH_ATTENTION_RECOMPUTE: true + healthcheck: + test: ["CMD-SHELL", "sleep 500 && exit 0"] + interval: 1s + timeout: 505s + retries: 1 runtime: habana cap_add: - SYS_NICE @@ -29,7 +34,8 @@ services: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: llm-tgi-gaudi-server depends_on: - - tgi-service + tgi-service: + condition: service_healthy ports: - "9000:9000" ipc: host @@ -37,7 +43,8 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_MODEL_ID: ${LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} restart: unless-stopped codegen-gaudi-backend-server: diff --git a/CodeGen/tests/test_compose_on_gaudi.sh b/CodeGen/tests/test_compose_on_gaudi.sh index bd0e36688f..8e06a904d3 100644 --- a/CodeGen/tests/test_compose_on_gaudi.sh +++ b/CodeGen/tests/test_compose_on_gaudi.sh @@ -34,6 +34,7 @@ function start_services() { export MEGA_SERVICE_HOST_IP=${ip_address} export LLM_SERVICE_HOST_IP=${ip_address} export BACKEND_SERVICE_ENDPOINT="http://${ip_address}:7778/v1/codegen" + export host_ip=${ip_address} sed -i "s/backend_address/$ip_address/g" $WORKPATH/ui/svelte/.env diff --git a/CodeGen/tests/test_compose_on_rocm.sh b/CodeGen/tests/test_compose_on_rocm.sh index 7f37669e59..a09a368b6a 100644 --- a/CodeGen/tests/test_compose_on_rocm.sh +++ b/CodeGen/tests/test_compose_on_rocm.sh @@ -39,6 +39,7 @@ function start_services() { export CODEGEN_BACKEND_SERVICE_PORT=7778 export CODEGEN_BACKEND_SERVICE_URL="http://${ip_address}:${CODEGEN_BACKEND_SERVICE_PORT}/v1/codegen" export CODEGEN_UI_SERVICE_PORT=5173 + export host_ip=${ip_address} sed -i "s/backend_address/$ip_address/g" $WORKPATH/ui/svelte/.env diff --git a/CodeGen/tests/test_compose_on_xeon.sh b/CodeGen/tests/test_compose_on_xeon.sh index 637cc00f50..e95052497e 100644 --- a/CodeGen/tests/test_compose_on_xeon.sh +++ b/CodeGen/tests/test_compose_on_xeon.sh @@ -35,6 +35,7 @@ function start_services() { export MEGA_SERVICE_HOST_IP=${ip_address} export LLM_SERVICE_HOST_IP=${ip_address} export BACKEND_SERVICE_ENDPOINT="http://${ip_address}:7778/v1/codegen" + export host_ip=${ip_address} sed -i "s/backend_address/$ip_address/g" $WORKPATH/ui/svelte/.env diff --git a/CodeGen/ui/svelte/src/routes/+page.svelte b/CodeGen/ui/svelte/src/routes/+page.svelte index ff18c58171..0e7d43beaf 100644 --- a/CodeGen/ui/svelte/src/routes/+page.svelte +++ b/CodeGen/ui/svelte/src/routes/+page.svelte @@ -34,22 +34,21 @@ const eventSource = await fetchTextStream(query); eventSource.addEventListener("message", (e: any) => { - let Msg = e.data; - console.log("Msg", Msg); + let res = e.data; - if (Msg.startsWith("b")) { - const trimmedData = Msg.slice(2, -1); - if (trimmedData.includes("'''")) { - deleteFlag = true; - } else if (deleteFlag && trimmedData.includes("\\n")) { - deleteFlag = false; - } else if (trimmedData !== "" && !deleteFlag) { - code_output += trimmedData.replace(/\\n/g, "\n"); - } - } else if (Msg === "[DONE]") { + if (res === "[DONE]") { deleteFlag = false; loading = false; query = ''; + } else { + let Msg = JSON.parse(res).choices[0].text; + if (Msg.includes("'''")) { + deleteFlag = true; + } else if (deleteFlag && Msg.includes("\\n")) { + deleteFlag = false; + } else if (Msg !== "" && !deleteFlag) { + code_output += Msg.replace(/\\n/g, "\n"); + } } }); eventSource.stream(); From e046807a5036302257b8a4d124636c4a71eb086e Mon Sep 17 00:00:00 2001 From: chensuyue Date: Sun, 29 Dec 2024 23:01:27 +0800 Subject: [PATCH 15/26] for test only, need to revert before merge Signed-off-by: chensuyue --- .github/workflows/pr-manifest-e2e.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/pr-manifest-e2e.yml b/.github/workflows/pr-manifest-e2e.yml index 7a9d2379b5..aadf7f5d08 100644 --- a/.github/workflows/pr-manifest-e2e.yml +++ b/.github/workflows/pr-manifest-e2e.yml @@ -4,7 +4,7 @@ name: E2E test with manifests on: - pull_request_target: + pull_request: branches: ["main", "*rc"] types: [opened, reopened, ready_for_review, synchronize] # added `ready_for_review` since draft is skipped paths: @@ -39,4 +39,5 @@ jobs: example: ${{ matrix.example }} tag: ${{ github.event.pull_request.head.sha }} test_k8s: true + opea_branch: "refactor_comps" secrets: inherit From 3411a0935ba68d483663c83e29f513f8aa010891 Mon Sep 17 00:00:00 2001 From: Letong Han <106566639+letonghan@users.noreply.github.com> Date: Mon, 30 Dec 2024 16:21:55 +0800 Subject: [PATCH 16/26] Fix SearchQnA and ProductivitySuite CI Issues (#1295) Signed-off-by: letonghan --- .../intel/cpu/xeon/compose.yaml | 84 ++++++++++++------- .../docker_image_build/build.yaml | 4 +- .../tests/test_compose_on_xeon.sh | 22 +++-- .../intel/cpu/xeon/compose.yaml | 40 +++++++-- .../intel/hpu/gaudi/compose.yaml | 43 ++++++++-- SearchQnA/searchqna.py | 16 +++- SearchQnA/tests/test_compose_on_gaudi.sh | 20 ++--- SearchQnA/tests/test_compose_on_xeon.sh | 25 +++--- SearchQnA/ui/svelte/src/routes/+page.svelte | 53 +++++------- SearchQnA/ui/svelte/tests/searchQnA.spec.ts | 2 +- 10 files changed, 197 insertions(+), 112 deletions(-) diff --git a/ProductivitySuite/docker_compose/intel/cpu/xeon/compose.yaml b/ProductivitySuite/docker_compose/intel/cpu/xeon/compose.yaml index 4bda722234..f0cb2dd420 100644 --- a/ProductivitySuite/docker_compose/intel/cpu/xeon/compose.yaml +++ b/ProductivitySuite/docker_compose/intel/cpu/xeon/compose.yaml @@ -20,7 +20,7 @@ services: depends_on: - redis-vector-db ports: - - "6007:6007" + - "6007:5000" environment: no_proxy: ${no_proxy} http_proxy: ${http_proxy} @@ -28,10 +28,13 @@ services: REDIS_URL: ${REDIS_URL} REDIS_HOST: redis-vector-db INDEX_NAME: ${INDEX_NAME} - TEI_ENDPOINT: ${TEI_EMBEDDING_ENDPOINT} + TEI_EMBEDDING_ENDPOINT: ${TEI_EMBEDDING_ENDPOINT} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + DATAPREP_TYPE: ${DATAPREP_TYPE} + LOGFLAG: ${LOGFLAG} tei-embedding-service: image: ghcr.io/huggingface/text-embeddings-inference:cpu-1.5 + entrypoint: /bin/sh -c "apt-get update && apt-get install -y curl && text-embeddings-router --json-output --model-id ${EMBEDDING_MODEL_ID} --auto-truncate" container_name: tei-embedding-server ports: - "6006:80" @@ -42,12 +45,18 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - command: --model-id ${EMBEDDING_MODEL_ID} --auto-truncate + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:6006/health || exit 1"] + interval: 10s + timeout: 10s + retries: 60 embedding: image: ${REGISTRY:-opea}/embedding-tei:${TAG:-latest} container_name: embedding-tei-server depends_on: - - tei-embedding-service + tei-embedding-service: + condition: service_healthy ports: - "6000:6000" ipc: host @@ -56,9 +65,8 @@ services: http_proxy: ${http_proxy} https_proxy: ${https_proxy} TEI_EMBEDDING_ENDPOINT: ${TEI_EMBEDDING_ENDPOINT} - LANGCHAIN_API_KEY: ${LANGCHAIN_API_KEY} - LANGCHAIN_TRACING_V2: ${LANGCHAIN_TRACING_V2} - LANGCHAIN_PROJECT: "opea-embedding-service" + HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + LOGFLAG: ${LOGFLAG} restart: unless-stopped retriever: image: ${REGISTRY:-opea}/retriever-redis:${TAG:-latest} @@ -77,9 +85,12 @@ services: INDEX_NAME: ${INDEX_NAME} TEI_EMBEDDING_ENDPOINT: ${TEI_EMBEDDING_ENDPOINT} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + RETRIEVER_TYPE: ${RETRIEVER_TYPE} + LOGFLAG: ${LOGFLAG} restart: unless-stopped tei-reranking-service: image: ghcr.io/huggingface/text-embeddings-inference:cpu-1.5 + entrypoint: /bin/sh -c "apt-get update && apt-get install -y curl && text-embeddings-router --json-output --model-id ${RERANK_MODEL_ID} --auto-truncate" container_name: tei-reranking-server ports: - "8808:80" @@ -93,12 +104,18 @@ services: HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} HF_HUB_DISABLE_PROGRESS_BARS: 1 HF_HUB_ENABLE_HF_TRANSFER: 0 - command: --model-id ${RERANK_MODEL_ID} --auto-truncate + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:8808/health || exit 1"] + interval: 10s + timeout: 10s + retries: 60 reranking: image: ${REGISTRY:-opea}/reranking-tei:${TAG:-latest} container_name: reranking-tei-xeon-server depends_on: - - tei-reranking-service + tei-reranking-service: + condition: service_healthy ports: - "8000:8000" ipc: host @@ -106,13 +123,12 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} + RERANK_TYPE: ${RERANK_TYPE} TEI_RERANKING_ENDPOINT: ${TEI_RERANKING_ENDPOINT} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} HF_HUB_DISABLE_PROGRESS_BARS: 1 HF_HUB_ENABLE_HF_TRANSFER: 0 - LANGCHAIN_API_KEY: ${LANGCHAIN_API_KEY} - LANGCHAIN_TRACING_V2: ${LANGCHAIN_TRACING_V2} - LANGCHAIN_PROJECT: "opea-reranking-service" + LOGFLAG: ${LOGFLAG} restart: unless-stopped tgi_service: image: ghcr.io/huggingface/text-generation-inference:2.4.0-intel-cpu @@ -129,12 +145,19 @@ services: HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} HF_HUB_DISABLE_PROGRESS_BARS: 1 HF_HUB_ENABLE_HF_TRANSFER: 0 + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:9009/health || exit 1"] + interval: 10s + timeout: 10s + retries: 100 command: --model-id ${LLM_MODEL_ID} --cuda-graphs 0 llm: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: llm-tgi-server depends_on: - - tgi_service + tgi_service: + condition: service_healthy ports: - "9000:9000" ipc: host @@ -142,13 +165,12 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT_CHATQNA} + LLM_ENDPOINT: ${TGI_LLM_ENDPOINT_CHATQNA} + LLM_MODEL_ID: ${LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} HF_HUB_DISABLE_PROGRESS_BARS: 1 HF_HUB_ENABLE_HF_TRANSFER: 0 - LANGCHAIN_API_KEY: ${LANGCHAIN_API_KEY} - LANGCHAIN_TRACING_V2: ${LANGCHAIN_TRACING_V2} - LANGCHAIN_PROJECT: "opea-llm-service" + LOGFLAG: ${LOGFLAG} restart: unless-stopped chatqna-xeon-backend-server: image: ${REGISTRY:-opea}/chatqna:${TAG:-latest} @@ -194,12 +216,19 @@ services: http_proxy: ${http_proxy} https_proxy: ${https_proxy} HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:8028/health || exit 1"] + interval: 10s + timeout: 10s + retries: 30 command: --model-id ${LLM_MODEL_ID_CODEGEN} llm_codegen: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: llm-tgi-server-codegen depends_on: - - tgi_service_codegen + tgi_service_codegen: + condition: service_healthy ports: - "9001:9000" ipc: host @@ -207,11 +236,10 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT_CODEGEN} + LLM_ENDPOINT: ${TGI_LLM_ENDPOINT_CODEGEN} + LLM_MODEL_ID: ${LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} - LANGCHAIN_API_KEY: ${LANGCHAIN_API_KEY} - LANGCHAIN_TRACING_V2: ${LANGCHAIN_TRACING_V2} - LANGCHAIN_PROJECT: "opea-llm-service" + LOGFLAG: ${LOGFLAG} restart: unless-stopped codegen-xeon-backend-server: image: ${REGISTRY:-opea}/codegen:${TAG:-latest} @@ -227,6 +255,7 @@ services: MEGA_SERVICE_HOST_IP: ${MEGA_SERVICE_HOST_IP} LLM_SERVICE_HOST_IP: ${LLM_SERVICE_HOST_IP_CODEGEN} LLM_SERVICE_PORT: ${LLM_SERVICE_HOST_PORT_CODEGEN} + LOGFLAG: ${LOGFLAG} ipc: host restart: always llm_faqgen: @@ -243,9 +272,6 @@ services: https_proxy: ${https_proxy} TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT_FAQGEN} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} - LANGCHAIN_API_KEY: ${LANGCHAIN_API_KEY} - LANGCHAIN_TRACING_V2: ${LANGCHAIN_TRACING_V2} - LANGCHAIN_PROJECT: "opea-llm-service" restart: unless-stopped faqgen-xeon-backend-server: image: ${REGISTRY:-opea}/faqgen:${TAG:-latest} @@ -262,6 +288,7 @@ services: MEGA_SERVICE_HOST_IP: ${MEGA_SERVICE_HOST_IP} LLM_SERVICE_PORT: ${LLM_SERVICE_HOST_PORT_FAQGEN} LLM_SERVICE_HOST_IP: ${LLM_SERVICE_HOST_IP_FAQGEN} + LOGFLAG: ${LOGFLAG} ipc: host restart: always llm_docsum_server: @@ -278,9 +305,6 @@ services: https_proxy: ${https_proxy} TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT_DOCSUM} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} - LANGCHAIN_API_KEY: ${LANGCHAIN_API_KEY} - LANGCHAIN_TRACING_V2: ${LANGCHAIN_TRACING_V2} - LANGCHAIN_PROJECT: "opea-llm-service" restart: unless-stopped docsum-xeon-backend-server: image: ${REGISTRY:-opea}/docsum:${TAG:-latest} @@ -297,6 +321,7 @@ services: LLM_SERVICE_PORT: ${LLM_SERVICE_HOST_PORT_DOCSUM} MEGA_SERVICE_HOST_IP: ${MEGA_SERVICE_HOST_IP} LLM_SERVICE_HOST_IP: ${LLM_SERVICE_HOST_IP_DOCSUM} + LOGFLAG: ${LOGFLAG} ipc: host restart: always mongo: @@ -323,6 +348,7 @@ services: MONGO_HOST: ${MONGO_HOST} MONGO_PORT: ${MONGO_PORT} COLLECTION_NAME: ${COLLECTION_NAME} + LOGFLAG: ${LOGFLAG} restart: unless-stopped promptregistry-mongo: @@ -338,6 +364,7 @@ services: MONGO_HOST: ${MONGO_HOST} MONGO_PORT: ${MONGO_PORT} COLLECTION_NAME: ${PROMPT_COLLECTION_NAME} + LOGFLAG: ${LOGFLAG} restart: unless-stopped keycloak: image: quay.io/keycloak/keycloak:25.0.2 @@ -371,6 +398,7 @@ services: - APP_PROMPT_SERVICE_GET_ENDPOINT=${PROMPT_SERVICE_GET_ENDPOINT} - APP_PROMPT_SERVICE_CREATE_ENDPOINT=${PROMPT_SERVICE_CREATE_ENDPOINT} - APP_KEYCLOAK_SERVICE_ENDPOINT=${KEYCLOAK_SERVICE_ENDPOINT} + - LOGFLAG=${LOGFLAG} ipc: host restart: always networks: diff --git a/ProductivitySuite/docker_image_build/build.yaml b/ProductivitySuite/docker_image_build/build.yaml index c63e8819c1..bfb90e2bb7 100644 --- a/ProductivitySuite/docker_image_build/build.yaml +++ b/ProductivitySuite/docker_image_build/build.yaml @@ -20,7 +20,7 @@ services: retriever-redis: build: context: GenAIComps - dockerfile: comps/retrievers/redis/langchain/Dockerfile + dockerfile: comps/retrievers/src/Dockerfile extends: chatqna image: ${REGISTRY:-opea}/retriever-redis:${TAG:-latest} reranking-tei: @@ -38,7 +38,7 @@ services: dataprep-redis: build: context: GenAIComps - dockerfile: comps/dataprep/redis/langchain/Dockerfile + dockerfile: comps/dataprep/src/Dockerfile extends: chatqna image: ${REGISTRY:-opea}/dataprep-redis:${TAG:-latest} promptregistry-mongo-server: diff --git a/ProductivitySuite/tests/test_compose_on_xeon.sh b/ProductivitySuite/tests/test_compose_on_xeon.sh index e0e2453c7f..683aff3b5f 100755 --- a/ProductivitySuite/tests/test_compose_on_xeon.sh +++ b/ProductivitySuite/tests/test_compose_on_xeon.sh @@ -30,9 +30,12 @@ function start_services() { cd $WORKPATH/docker_compose/intel/cpu/xeon/ export EMBEDDING_MODEL_ID="BAAI/bge-base-en-v1.5" + export RERANK_TYPE="tei" export RERANK_MODEL_ID="BAAI/bge-reranker-base" export LLM_MODEL_ID="Intel/neural-chat-7b-v3-3" export LLM_MODEL_ID_CODEGEN="Intel/neural-chat-7b-v3-3" + export DATAPREP_TYPE="redis" + export RETRIEVER_TYPE="redis" export TEI_EMBEDDING_ENDPOINT="http://${ip_address}:6006" export TEI_RERANKING_ENDPOINT="http://${ip_address}:8808" export TGI_LLM_ENDPOINT="http://${ip_address}:9009" @@ -58,8 +61,8 @@ function start_services() { export DATAPREP_DELETE_FILE_ENDPOINT="http://${ip_address}:6009/v1/dataprep/delete_file" export BACKEND_SERVICE_ENDPOINT_CODEGEN="http://${ip_address}:7778/v1/codegen" export BACKEND_SERVICE_ENDPOINT_DOCSUM="http://${ip_address}:8890/v1/docsum" - export DATAPREP_SERVICE_ENDPOINT="http://${ip_address}:6007/v1/dataprep" - export DATAPREP_GET_FILE_ENDPOINT="http://${ip_address}:6008/v1/dataprep/get_file" + export DATAPREP_SERVICE_ENDPOINT="http://${ip_address}:6007/v1/dataprep/ingest" + export DATAPREP_GET_FILE_ENDPOINT="http://${ip_address}:6008/v1/dataprep/get" export CHAT_HISTORY_CREATE_ENDPOINT="http://${ip_address}:6012/v1/chathistory/create" export CHAT_HISTORY_CREATE_ENDPOINT="http://${ip_address}:6012/v1/chathistory/create" export CHAT_HISTORY_DELETE_ENDPOINT="http://${ip_address}:6012/v1/chathistory/delete" @@ -78,6 +81,7 @@ function start_services() { export EMBEDDING_SERVER_PORT=6006 export LLM_SERVER_PORT=9009 export PROMPT_COLLECTION_NAME="prompt" + export host_ip=${ip_address} # Start Docker Containers docker compose up -d > ${LOG_PATH}/start_services_with_compose.log @@ -101,6 +105,8 @@ function start_services() { sleep 5s n=$((n+1)) done + + sleep 10s } function validate_service() { @@ -162,38 +168,38 @@ function validate_microservices() { # embedding microservice validate_service \ "${ip_address}:6000/v1/embeddings" \ - '"text":"What is Deep Learning?","embedding":[' \ + '"embedding":[' \ "embedding-microservice" \ "embedding-tei-server" \ - '{"text":"What is Deep Learning?"}' + '{"input":"What is Deep Learning?"}' sleep 1m # retrieval can't curl as expected, try to wait for more time # test /v1/dataprep upload file echo "Deep learning is a subset of machine learning that utilizes neural networks with multiple layers to analyze various levels of abstract data representations. It enables computers to identify patterns and make decisions with minimal human intervention by learning from large amounts of data." > $LOG_PATH/dataprep_file.txt validate_service \ - "http://${ip_address}:6007/v1/dataprep" \ + "http://${ip_address}:6007/v1/dataprep/ingest" \ "Data preparation succeeded" \ "dataprep_upload_file" \ "dataprep-redis-server" # test /v1/dataprep upload link validate_service \ - "http://${ip_address}:6007/v1/dataprep" \ + "http://${ip_address}:6007/v1/dataprep/ingest" \ "Data preparation succeeded" \ "dataprep_upload_link" \ "dataprep-redis-server" # test /v1/dataprep/get_file validate_service \ - "http://${ip_address}:6007/v1/dataprep/get_file" \ + "http://${ip_address}:6007/v1/dataprep/get" \ '{"name":' \ "dataprep_get" \ "dataprep-redis-server" # test /v1/dataprep/delete_file validate_service \ - "http://${ip_address}:6007/v1/dataprep/delete_file" \ + "http://${ip_address}:6007/v1/dataprep/delete" \ '{"status":true}' \ "dataprep_del" \ "dataprep-redis-server" diff --git a/SearchQnA/docker_compose/intel/cpu/xeon/compose.yaml b/SearchQnA/docker_compose/intel/cpu/xeon/compose.yaml index 53be5846e3..e3c1cb11f1 100644 --- a/SearchQnA/docker_compose/intel/cpu/xeon/compose.yaml +++ b/SearchQnA/docker_compose/intel/cpu/xeon/compose.yaml @@ -4,6 +4,7 @@ services: tei-embedding-service: image: ghcr.io/huggingface/text-embeddings-inference:cpu-1.5 + entrypoint: /bin/sh -c "apt-get update && apt-get install -y curl && text-embeddings-router --json-output --model-id ${EMBEDDING_MODEL_ID} --auto-truncate" container_name: tei-embedding-server ports: - "3001:80" @@ -14,12 +15,18 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - command: --model-id ${EMBEDDING_MODEL_ID} --auto-truncate + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:3001/health || exit 1"] + interval: 10s + timeout: 10s + retries: 60 embedding: image: ${REGISTRY:-opea}/embedding-tei:${TAG:-latest} container_name: embedding-tei-server depends_on: - - tei-embedding-service + tei-embedding-service: + condition: service_healthy ports: - "3002:6000" ipc: host @@ -29,6 +36,7 @@ services: https_proxy: ${https_proxy} TEI_EMBEDDING_ENDPOINT: ${TEI_EMBEDDING_ENDPOINT} HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + LOGFLAG: ${LOGFLAG} restart: unless-stopped web-retriever: image: ${REGISTRY:-opea}/web-retriever-chroma:${TAG:-latest} @@ -43,9 +51,11 @@ services: TEI_EMBEDDING_ENDPOINT: ${TEI_EMBEDDING_ENDPOINT} GOOGLE_API_KEY: ${GOOGLE_API_KEY} GOOGLE_CSE_ID: ${GOOGLE_CSE_ID} + LOGFLAG: ${LOGFLAG} restart: unless-stopped tei-reranking-service: image: ghcr.io/huggingface/text-embeddings-inference:cpu-1.5 + entrypoint: /bin/sh -c "apt-get update && apt-get install -y curl && text-embeddings-router --json-output --model-id ${RERANK_MODEL_ID} --auto-truncate" container_name: tei-reranking-server ports: - "3004:80" @@ -56,12 +66,18 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - command: --model-id ${RERANK_MODEL_ID} --auto-truncate + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:3004/health || exit 1"] + interval: 10s + timeout: 10s + retries: 60 reranking: image: ${REGISTRY:-opea}/reranking-tei:${TAG:-latest} container_name: reranking-tei-xeon-server depends_on: - - tei-reranking-service + tei-reranking-service: + condition: service_healthy ports: - "3005:8000" ipc: host @@ -69,8 +85,10 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} + RERANK_TYPE: ${RERANK_TYPE} TEI_RERANKING_ENDPOINT: ${TEI_RERANKING_ENDPOINT} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + LOGFLAG: ${LOGFLAG} restart: unless-stopped tgi-service: image: ghcr.io/huggingface/text-generation-inference:2.4.0-intel-cpu @@ -85,12 +103,19 @@ services: http_proxy: ${http_proxy} https_proxy: ${https_proxy} HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:3006/health || exit 1"] + interval: 10s + timeout: 10s + retries: 100 command: --model-id ${LLM_MODEL_ID} --cuda-graphs 0 llm: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: llm-tgi-server depends_on: - - tgi-service + tgi-service: + condition: service_healthy ports: - "3007:9000" ipc: host @@ -98,8 +123,10 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_MODEL_ID: ${LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + LOGFLAG: ${LOGFLAG} restart: unless-stopped searchqna-xeon-backend-server: image: ${REGISTRY:-opea}/searchqna:${TAG:-latest} @@ -127,6 +154,7 @@ services: - WEB_RETRIEVER_SERVICE_PORT=${WEB_RETRIEVER_SERVICE_PORT} - RERANK_SERVICE_PORT=${RERANK_SERVICE_PORT} - LLM_SERVICE_PORT=${LLM_SERVICE_PORT} + - LOGFLAG=${LOGFLAG} ipc: host restart: always searchqna-xeon-ui-server: diff --git a/SearchQnA/docker_compose/intel/hpu/gaudi/compose.yaml b/SearchQnA/docker_compose/intel/hpu/gaudi/compose.yaml index 118a964663..a8ede9146d 100644 --- a/SearchQnA/docker_compose/intel/hpu/gaudi/compose.yaml +++ b/SearchQnA/docker_compose/intel/hpu/gaudi/compose.yaml @@ -4,6 +4,7 @@ services: tei-embedding-service: image: ghcr.io/huggingface/tei-gaudi:1.5.0 + entrypoint: /bin/sh -c "apt-get update && apt-get install -y curl && text-embeddings-router --json-output --model-id ${EMBEDDING_MODEL_ID} --auto-truncate" container_name: tei-embedding-gaudi-server ports: - "3001:80" @@ -22,12 +23,18 @@ services: MAX_WARMUP_SEQUENCE_LENGTH: 512 INIT_HCCL_ON_ACQUIRE: 0 ENABLE_EXPERIMENTAL_FLAGS: true - command: --model-id ${EMBEDDING_MODEL_ID} --auto-truncate + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:3001/health || exit 1"] + interval: 10s + timeout: 10s + retries: 60 embedding: image: ${REGISTRY:-opea}/embedding-tei:${TAG:-latest} - container_name: embedding-tei-server + container_name: embedding-tei-gaudi-server depends_on: - - tei-embedding-service + tei-embedding-service: + condition: service_healthy ports: - "3002:6000" ipc: host @@ -36,6 +43,8 @@ services: http_proxy: ${http_proxy} https_proxy: ${https_proxy} TEI_EMBEDDING_ENDPOINT: ${TEI_EMBEDDING_ENDPOINT} + HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + LOGFLAG: ${LOGFLAG} restart: unless-stopped web-retriever: image: ${REGISTRY:-opea}/web-retriever-chroma:${TAG:-latest} @@ -53,6 +62,7 @@ services: restart: unless-stopped tei-reranking-service: image: ghcr.io/huggingface/text-embeddings-inference:cpu-1.5 + entrypoint: /bin/sh -c "apt-get update && apt-get install -y curl && text-embeddings-router --json-output --model-id ${RERANK_MODEL_ID} --auto-truncate" container_name: tei-reranking-server ports: - "3004:80" @@ -63,12 +73,18 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - command: --model-id ${RERANK_MODEL_ID} --auto-truncate + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:3004/health || exit 1"] + interval: 10s + timeout: 10s + retries: 60 reranking: image: ${REGISTRY:-opea}/reranking-tei:${TAG:-latest} - container_name: reranking-tei-xeon-server + container_name: reranking-tei-gaudi-server depends_on: - - tei-reranking-service + tei-reranking-service: + condition: service_healthy ports: - "3005:8000" ipc: host @@ -76,8 +92,10 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} + RERANK_TYPE: ${RERANK_TYPE} TEI_RERANKING_ENDPOINT: ${TEI_RERANKING_ENDPOINT} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + LOGFLAG: ${LOGFLAG} restart: unless-stopped tgi-service: image: ghcr.io/huggingface/tgi-gaudi:2.0.6 @@ -99,6 +117,11 @@ services: LIMIT_HPU_GRAPH: true USE_FLASH_ATTENTION: true FLASH_ATTENTION_RECOMPUTE: true + healthcheck: + test: ["CMD-SHELL", "sleep 800 && exit 0"] + interval: 1s + timeout: 805s + retries: 1 runtime: habana cap_add: - SYS_NICE @@ -108,7 +131,8 @@ services: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: llm-tgi-gaudi-server depends_on: - - tgi-service + tgi-service: + condition: service_healthy ports: - "3007:9000" ipc: host @@ -116,10 +140,12 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_MODEL_ID: ${LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} HF_HUB_DISABLE_PROGRESS_BARS: 1 HF_HUB_ENABLE_HF_TRANSFER: 0 + LOGFLAG: ${LOGFLAG} restart: unless-stopped searchqna-gaudi-backend-server: image: ${REGISTRY:-opea}/searchqna:${TAG:-latest} @@ -147,6 +173,7 @@ services: - WEB_RETRIEVER_SERVICE_PORT=${WEB_RETRIEVER_SERVICE_PORT} - RERANK_SERVICE_PORT=${RERANK_SERVICE_PORT} - LLM_SERVICE_PORT=${LLM_SERVICE_PORT} + - LOGFLAG=${LOGFLAG} ipc: host restart: always searchqna-gaudi-ui-server: diff --git a/SearchQnA/searchqna.py b/SearchQnA/searchqna.py index 318aae3a5e..21c7bf019c 100644 --- a/SearchQnA/searchqna.py +++ b/SearchQnA/searchqna.py @@ -27,10 +27,21 @@ LLM_SERVICE_PORT = int(os.getenv("LLM_SERVICE_PORT", 9000)) +def align_outputs(self, data, cur_node, inputs, runtime_graph, llm_parameters_dict, **kwargs): + next_data = {} + if self.services[cur_node].service_type == ServiceType.EMBEDDING: + next_data = {"text": inputs["input"], "embedding": data["data"][0]["embedding"], "k": 1} + return next_data + + else: + return data + + class SearchQnAService: def __init__(self, host="0.0.0.0", port=8000): self.host = host self.port = port + ServiceOrchestrator.align_outputs = align_outputs self.megaservice = ServiceOrchestrator() self.endpoint = str(MegaServiceEndpoint.SEARCH_QNA) @@ -88,7 +99,7 @@ async def handle_request(self, request: Request): streaming=stream_opt, ) result_dict, runtime_graph = await self.megaservice.schedule( - initial_inputs={"text": prompt}, llm_parameters=parameters + initial_inputs={"input": prompt}, llm_parameters=parameters ) for node, response in result_dict.items(): # Here it suppose the last microservice in the megaservice is LLM. @@ -99,7 +110,8 @@ async def handle_request(self, request: Request): ): return response last_node = runtime_graph.all_leaves()[-1] - response = result_dict[last_node]["text"] + print(f"================= result: {result_dict[last_node]}") + response = result_dict[last_node]["choices"][0]["text"] choices = [] usage = UsageInfo() choices.append( diff --git a/SearchQnA/tests/test_compose_on_gaudi.sh b/SearchQnA/tests/test_compose_on_gaudi.sh index 123c983dbf..c023db7957 100644 --- a/SearchQnA/tests/test_compose_on_gaudi.sh +++ b/SearchQnA/tests/test_compose_on_gaudi.sh @@ -38,6 +38,7 @@ function start_services() { export EMBEDDING_MODEL_ID=BAAI/bge-base-en-v1.5 export TEI_EMBEDDING_ENDPOINT=http://$ip_address:3001 export RERANK_MODEL_ID=BAAI/bge-reranker-base + export RERANK_TYPE="tei" export TEI_RERANKING_ENDPOINT=http://$ip_address:3004 export TGI_LLM_ENDPOINT=http://$ip_address:3006 @@ -54,34 +55,29 @@ function start_services() { export RERANK_SERVICE_PORT=3005 export LLM_SERVICE_PORT=3007 export BACKEND_SERVICE_ENDPOINT="http://${ip_address}:3008/v1/searchqna" + export host_ip=${ip_address} + export LOGFLAG=true sed -i "s/backend_address/$ip_address/g" $WORKPATH/ui/svelte/.env # Start Docker Containers docker compose up -d > ${LOG_PATH}/start_services_with_compose.log - n=0 - until [[ "$n" -ge 100 ]]; do - docker logs tgi-gaudi-server > $LOG_PATH/tgi_service_start.log - if grep -q Connected $LOG_PATH/tgi_service_start.log; then - break - fi - sleep 5s - n=$((n+1)) - done + + sleep 10s } function validate_megaservice() { - result=$(http_proxy="" curl http://${ip_address}:3008/v1/searchqna -XPOST -d '{"messages": "What is black myth wukong?", "stream": "False"}' -H 'Content-Type: application/json') + result=$(curl http://${ip_address}:3008/v1/searchqna -X POST -d '{"messages": "What is the capital of China?", "stream": "False"}' -H 'Content-Type: application/json') echo $result docker logs web-retriever-chroma-server > ${LOG_PATH}/web-retriever-chroma-server.log docker logs searchqna-gaudi-backend-server > ${LOG_PATH}/searchqna-gaudi-backend-server.log docker logs tei-embedding-gaudi-server > ${LOG_PATH}/tei-embedding-gaudi-server.log - docker logs embedding-tei-server > ${LOG_PATH}/embedding-tei-server.log + docker logs embedding-tei-gaudi-server > ${LOG_PATH}/embedding-tei-gaudi-server.log - if [[ $result == *"the"* ]]; then + if [[ $result == *"capital"* ]]; then echo "Result correct." else echo "Result wrong." diff --git a/SearchQnA/tests/test_compose_on_xeon.sh b/SearchQnA/tests/test_compose_on_xeon.sh index b407c9ba2d..d6c55978c8 100644 --- a/SearchQnA/tests/test_compose_on_xeon.sh +++ b/SearchQnA/tests/test_compose_on_xeon.sh @@ -36,6 +36,7 @@ function start_services() { export EMBEDDING_MODEL_ID=BAAI/bge-base-en-v1.5 export TEI_EMBEDDING_ENDPOINT=http://$ip_address:3001 export RERANK_MODEL_ID=BAAI/bge-reranker-base + export RERANK_TYPE="tei" export TEI_RERANKING_ENDPOINT=http://$ip_address:3004 export TGI_LLM_ENDPOINT=http://$ip_address:3006 @@ -52,35 +53,29 @@ function start_services() { export RERANK_SERVICE_PORT=3005 export LLM_SERVICE_PORT=3007 export BACKEND_SERVICE_ENDPOINT="http://${ip_address}:3008/v1/searchqna" + export host_ip=${ip_address} + export LOGFLAG=true sed -i "s/backend_address/$ip_address/g" $WORKPATH/ui/svelte/.env # Start Docker Containers docker compose up -d > ${LOG_PATH}/start_services_with_compose.log - n=0 - until [[ "$n" -ge 100 ]]; do - docker logs tgi-service > $LOG_PATH/tgi_service_start.log - if grep -q Connected $LOG_PATH/tgi_service_start.log; then - break - fi - sleep 5s - n=$((n+1)) - done + + sleep 10s } function validate_megaservice() { - result=$(http_proxy="" curl http://${ip_address}:3008/v1/searchqna -XPOST -d '{"messages": "What is black myth wukong?", "stream": "False"}' -H 'Content-Type: application/json') + result=$(curl http://${ip_address}:3008/v1/searchqna -X POST -d '{"messages": "What is the capital of China?", "stream": "False"}' -H 'Content-Type: application/json') echo $result - if [[ $result == *"the"* ]]; then - docker logs web-retriever-chroma-server - docker logs searchqna-xeon-backend-server + docker logs web-retriever-chroma-server > ${LOG_PATH}/web_retriever.log + docker logs searchqna-xeon-backend-server > ${LOG_PATH}/searchqna_backend.log + + if [[ $result == *"capital"* ]]; then echo "Result correct." else - docker logs web-retriever-chroma-server - docker logs searchqna-xeon-backend-server echo "Result wrong." exit 1 fi diff --git a/SearchQnA/ui/svelte/src/routes/+page.svelte b/SearchQnA/ui/svelte/src/routes/+page.svelte index dae0b5e19e..74bdfb8200 100644 --- a/SearchQnA/ui/svelte/src/routes/+page.svelte +++ b/SearchQnA/ui/svelte/src/routes/+page.svelte @@ -92,37 +92,9 @@ ); eventSource.addEventListener("message", (e: any) => { - let Msg = e.data; - if (Msg.startsWith("b")) { - let trimmedData = Msg.slice(2, -1); + let res = e.data; - if (/\\x[\dA-Fa-f]{2}/.test(trimmedData)) { - trimmedData = decodeEscapedBytes(trimmedData); - } else if (/\\u[\dA-Fa-f]{4}/.test(trimmedData)) { - trimmedData = decodeUnicode(trimmedData); - } - - if (trimmedData !== "") { - trimmedData = trimmedData.replace(/\\n/g, "\n"); - } - if (chatMessages[chatMessages.length - 1].role == MessageRole.User) { - - chatMessages = [ - ...chatMessages, - { - role: MessageRole.Assistant, - type: MessageType.Text, - content: trimmedData, - time: getCurrentTimeStamp(), - }, - ]; - console.log("? chatMessages", chatMessages); - } else { - let content = chatMessages[chatMessages.length - 1].content as string; - chatMessages[chatMessages.length - 1].content = content + trimmedData; - } - scrollToBottom(scrollToDiv); - } else if (Msg === "[DONE]") { + if (res === "[DONE]") { let startTime = chatMessages[chatMessages.length - 1].time; loading = false; @@ -133,6 +105,27 @@ chatMessages[chatMessages.length - 1].time = totalTime; } storeMessages(); + } else { + let Msg = JSON.parse(res).choices[0].text; + if (Msg !== "") { + if (chatMessages[chatMessages.length - 1].role == MessageRole.User) { + chatMessages = [ + ...chatMessages, + { + role: MessageRole.Assistant, + type: MessageType.Text, + content: Msg, + time: getCurrentTimeStamp(), + }, + ]; + console.log("? chatMessages", chatMessages); + } else { + let content = chatMessages[chatMessages.length - 1] + .content as string; + chatMessages[chatMessages.length - 1].content = content + Msg; + } + scrollToBottom(scrollToDiv); + } } }); eventSource.stream(); diff --git a/SearchQnA/ui/svelte/tests/searchQnA.spec.ts b/SearchQnA/ui/svelte/tests/searchQnA.spec.ts index 8a1f46cf12..29396cd61a 100644 --- a/SearchQnA/ui/svelte/tests/searchQnA.spec.ts +++ b/SearchQnA/ui/svelte/tests/searchQnA.spec.ts @@ -9,7 +9,7 @@ test.beforeEach(async ({ page }) => { }); // Constants definition -const CHAT_ITEMS = ["What is black myth wukong?"]; +const CHAT_ITEMS = ["What is the capital of China?"]; // Helper function: Enter message to chat async function enterMessageToChat(page: Page, message: string) { From b813ea489d169d1fea680eb8802b12cf2fcb6b4c Mon Sep 17 00:00:00 2001 From: chensuyue Date: Tue, 31 Dec 2024 11:17:42 +0800 Subject: [PATCH 17/26] Revert "for test only, need to revert before merge" This reverts commit e046807a5036302257b8a4d124636c4a71eb086e. --- .github/workflows/pr-manifest-e2e.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/pr-manifest-e2e.yml b/.github/workflows/pr-manifest-e2e.yml index aadf7f5d08..7a9d2379b5 100644 --- a/.github/workflows/pr-manifest-e2e.yml +++ b/.github/workflows/pr-manifest-e2e.yml @@ -4,7 +4,7 @@ name: E2E test with manifests on: - pull_request: + pull_request_target: branches: ["main", "*rc"] types: [opened, reopened, ready_for_review, synchronize] # added `ready_for_review` since draft is skipped paths: @@ -39,5 +39,4 @@ jobs: example: ${{ matrix.example }} tag: ${{ github.event.pull_request.head.sha }} test_k8s: true - opea_branch: "refactor_comps" secrets: inherit From 56a7227ff110716ad782bdd971bee456bdcaff65 Mon Sep 17 00:00:00 2001 From: ZePan110 Date: Tue, 31 Dec 2024 23:52:05 +0800 Subject: [PATCH 18/26] Fix CodeTrans. Signed-off-by: ZePan110 --- CodeTrans/docker_image_build/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CodeTrans/docker_image_build/build.yaml b/CodeTrans/docker_image_build/build.yaml index 566f396e3c..3f3ec36a0d 100644 --- a/CodeTrans/docker_image_build/build.yaml +++ b/CodeTrans/docker_image_build/build.yaml @@ -26,6 +26,6 @@ services: nginx: build: context: GenAIComps - dockerfile: comps/3rd_parties/nginx/deployment/docker/Dockerfile + dockerfile: comps/3rd_parties/nginx/src/Dockerfile extends: codetrans image: ${REGISTRY:-opea}/nginx:${TAG:-latest} From a1f026ff3ec9872a733ff823b33aa94814c8a2b5 Mon Sep 17 00:00:00 2001 From: ZePan110 Date: Tue, 31 Dec 2024 23:54:17 +0800 Subject: [PATCH 19/26] Fix MultimodalQnA Signed-off-by: ZePan110 --- MultimodalQnA/docker_image_build/build.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/MultimodalQnA/docker_image_build/build.yaml b/MultimodalQnA/docker_image_build/build.yaml index d63e30f382..b752db245e 100644 --- a/MultimodalQnA/docker_image_build/build.yaml +++ b/MultimodalQnA/docker_image_build/build.yaml @@ -62,12 +62,12 @@ services: whisper: build: context: GenAIComps - dockerfile: comps/asr/whisper/dependency/Dockerfile + dockerfile: comps/asr/src/integrations/dependency/whisper/Dockerfile extends: multimodalqna image: ${REGISTRY:-opea}/whisper:${TAG:-latest} asr: build: context: GenAIComps - dockerfile: comps/asr/whisper/Dockerfile + dockerfile: comps/asr/src/Dockerfile extends: multimodalqna image: ${REGISTRY:-opea}/asr:${TAG:-latest} From ae444b1ad4fd6f1b71f3c71c6ff1a91c3f6ef1a5 Mon Sep 17 00:00:00 2001 From: ZePan110 Date: Tue, 31 Dec 2024 23:55:37 +0800 Subject: [PATCH 20/26] Fix AvatarChatbot Signed-off-by: ZePan110 --- AvatarChatbot/docker_image_build/build.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/AvatarChatbot/docker_image_build/build.yaml b/AvatarChatbot/docker_image_build/build.yaml index 246fe9f156..aa072cddcd 100644 --- a/AvatarChatbot/docker_image_build/build.yaml +++ b/AvatarChatbot/docker_image_build/build.yaml @@ -14,19 +14,19 @@ services: whisper-gaudi: build: context: GenAIComps - dockerfile: comps/asr/whisper/dependency/Dockerfile.intel_hpu + dockerfile: comps/asr/src/integrations/dependency/whisper/Dockerfile.intel_hpu extends: avatarchatbot image: ${REGISTRY:-opea}/whisper-gaudi:${TAG:-latest} whisper: build: context: GenAIComps - dockerfile: comps/asr/whisper/dependency/Dockerfile + dockerfile: comps/asr/src/integrations/dependency/whisper/Dockerfile extends: avatarchatbot image: ${REGISTRY:-opea}/whisper:${TAG:-latest} asr: build: context: GenAIComps - dockerfile: comps/asr/whisper/Dockerfile + dockerfile: comps/asr/src/Dockerfile extends: avatarchatbot image: ${REGISTRY:-opea}/asr:${TAG:-latest} llm-tgi: @@ -38,19 +38,19 @@ services: speecht5-gaudi: build: context: GenAIComps - dockerfile: comps/tts/speecht5/dependency/Dockerfile.intel_hpu + dockerfile: comps/tts/src/integrations/dependency/speecht5/Dockerfile.intel_hpu extends: avatarchatbot image: ${REGISTRY:-opea}/speecht5-gaudi:${TAG:-latest} speecht5: build: context: GenAIComps - dockerfile: comps/tts/speecht5/dependency/Dockerfile + dockerfile: comps/tts/src/integrations/dependency/speecht5/Dockerfile extends: avatarchatbot image: ${REGISTRY:-opea}/speecht5:${TAG:-latest} tts: build: context: GenAIComps - dockerfile: comps/tts/speecht5/Dockerfile + dockerfile: comps/tts/src/Dockerfile extends: avatarchatbot image: ${REGISTRY:-opea}/tts:${TAG:-latest} wav2lip-gaudi: From 0962d3a8f8897b350cb166b8ac4750b9cfd82123 Mon Sep 17 00:00:00 2001 From: ZePan110 Date: Tue, 31 Dec 2024 23:58:00 +0800 Subject: [PATCH 21/26] Fix Dockerfile path errors Signed-off-by: ZePan110 --- AudioQnA/docker_image_build/build.yaml | 12 ++++++------ DocSum/docker_image_build/build.yaml | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/AudioQnA/docker_image_build/build.yaml b/AudioQnA/docker_image_build/build.yaml index d11b8fb4a3..b64c1309d1 100644 --- a/AudioQnA/docker_image_build/build.yaml +++ b/AudioQnA/docker_image_build/build.yaml @@ -26,19 +26,19 @@ services: whisper-gaudi: build: context: GenAIComps - dockerfile: comps/asr/whisper/dependency/Dockerfile.intel_hpu + dockerfile: comps/asr/src/integrations/dependency/whisper/Dockerfile.intel_hpu extends: audioqna image: ${REGISTRY:-opea}/whisper-gaudi:${TAG:-latest} whisper: build: context: GenAIComps - dockerfile: comps/asr/whisper/dependency/Dockerfile + dockerfile: comps/asr/src/integrations/dependency/whisper/Dockerfile extends: audioqna image: ${REGISTRY:-opea}/whisper:${TAG:-latest} asr: build: context: GenAIComps - dockerfile: comps/asr/whisper/Dockerfile + dockerfile: comps/asr/src/Dockerfile extends: audioqna image: ${REGISTRY:-opea}/asr:${TAG:-latest} llm-tgi: @@ -50,19 +50,19 @@ services: speecht5-gaudi: build: context: GenAIComps - dockerfile: comps/tts/speecht5/dependency/Dockerfile.intel_hpu + dockerfile: comps/tts/src/integrations/dependency/speecht5/Dockerfile.intel_hpu extends: audioqna image: ${REGISTRY:-opea}/speecht5-gaudi:${TAG:-latest} speecht5: build: context: GenAIComps - dockerfile: comps/tts/speecht5/dependency/Dockerfile + dockerfile: comps/tts/src/integrations/dependency/speecht5/Dockerfile extends: audioqna image: ${REGISTRY:-opea}/speecht5:${TAG:-latest} tts: build: context: GenAIComps - dockerfile: comps/tts/speecht5/Dockerfile + dockerfile: comps/tts/src/Dockerfile extends: audioqna image: ${REGISTRY:-opea}/tts:${TAG:-latest} gpt-sovits: diff --git a/DocSum/docker_image_build/build.yaml b/DocSum/docker_image_build/build.yaml index da777ebb7a..6ad1b25cb9 100644 --- a/DocSum/docker_image_build/build.yaml +++ b/DocSum/docker_image_build/build.yaml @@ -38,7 +38,7 @@ services: http_proxy: ${http_proxy} https_proxy: ${https_proxy} context: GenAIComps - dockerfile: comps/asr/whisper/dependency/Dockerfile + dockerfile: comps/asr/src/integrations/dependency/whisper/Dockerfile extends: docsum image: ${REGISTRY:-opea}/whisper:${TAG:-latest} dataprep-multimedia2text: From d694b0d19f5b57f14c33331d6765a8f40694ba4e Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Wed, 1 Jan 2025 03:17:30 +0000 Subject: [PATCH 22/26] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- AvatarChatbot/docker_compose/intel/hpu/gaudi/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/AvatarChatbot/docker_compose/intel/hpu/gaudi/README.md b/AvatarChatbot/docker_compose/intel/hpu/gaudi/README.md index d18ab7bf30..ec654be63d 100644 --- a/AvatarChatbot/docker_compose/intel/hpu/gaudi/README.md +++ b/AvatarChatbot/docker_compose/intel/hpu/gaudi/README.md @@ -22,6 +22,7 @@ docker build -t opea/whisper-gaudi:latest --build-arg https_proxy=$https_proxy - ```bash docker build --no-cache -t opea/llm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/llms/src/text-generation/Dockerfile . ``` + Intel Xeon optimized image hosted in huggingface repo will be used for TGI service: ghcr.io/huggingface/tgi-gaudi:2.0.6 (https://github.com/huggingface/tgi-gaudi) ### 4. Build TTS Image From f57ba212a12dc273ede349f16a4ab9ace2a186c0 Mon Sep 17 00:00:00 2001 From: "chen, suyue" Date: Wed, 1 Jan 2025 19:05:52 +0800 Subject: [PATCH 23/26] Dockerfile path fix error and keep unify (#1327) Signed-off-by: chensuyue --- .../workflows/pr-check-duplicated-image.yml | 2 +- ...pr-dockerfile-path-and-build-yaml-scan.yml | 2 +- .github/workflows/pr-link-path-scan.yml | 2 +- ChatQnA/docker_compose/amd/gpu/rocm/README.md | 2 +- .../docker_compose/intel/cpu/aipc/README.md | 2 +- .../docker_compose/intel/cpu/xeon/README.md | 2 +- .../intel/cpu/xeon/README_pinecone.md | 2 +- .../intel/cpu/xeon/README_qdrant.md | 2 +- .../docker_compose/intel/hpu/gaudi/README.md | 2 +- ChatQnA/docker_compose/nvidia/gpu/README.md | 2 +- .../docker_compose/intel/cpu/xeon/README.md | 2 +- .../docker_compose/intel/hpu/gaudi/README.md | 2 +- .../docker_compose/intel/cpu/xeon/README.md | 4 +- .../docker_compose/intel/hpu/gaudi/README.md | 4 +- MultimodalQnA/docker_image_build/build.yaml | 4 +- .../docker_image_build/build.yaml | 4 +- .../docker_compose/intel/cpu/xeon/README.md | 2 +- .../docker_compose/intel/hpu/gaudi/README.md | 2 +- .../docker_compose/intel/cpu/xeon/README.md | 4 +- VideoQnA/docker_image_build/build.yaml | 2 +- .../docker_compose/amd/gpu/rocm/README.md | 2 +- .../docker_compose/intel/cpu/xeon/README.md | 2 +- .../docker_compose/intel/hpu/gaudi/README.md | 2 +- docker_images_list.md | 136 +++++++++--------- 24 files changed, 96 insertions(+), 96 deletions(-) diff --git a/.github/workflows/pr-check-duplicated-image.yml b/.github/workflows/pr-check-duplicated-image.yml index 0cdba415a2..834336606c 100644 --- a/.github/workflows/pr-check-duplicated-image.yml +++ b/.github/workflows/pr-check-duplicated-image.yml @@ -5,7 +5,7 @@ name: Check Duplicated Images on: pull_request: - branches: [main] + branches: [main, genaicomps_refactor] types: [opened, reopened, ready_for_review, synchronize] paths: - "**/docker_image_build/*.yaml" diff --git a/.github/workflows/pr-dockerfile-path-and-build-yaml-scan.yml b/.github/workflows/pr-dockerfile-path-and-build-yaml-scan.yml index 4ee9a71172..78d3df3424 100644 --- a/.github/workflows/pr-dockerfile-path-and-build-yaml-scan.yml +++ b/.github/workflows/pr-dockerfile-path-and-build-yaml-scan.yml @@ -5,7 +5,7 @@ name: Compose file and dockerfile path checking on: pull_request: - branches: [main] + branches: [main, genaicomps_refactor] types: [opened, reopened, ready_for_review, synchronize] jobs: diff --git a/.github/workflows/pr-link-path-scan.yml b/.github/workflows/pr-link-path-scan.yml index 77bf0d293f..8a01d15662 100644 --- a/.github/workflows/pr-link-path-scan.yml +++ b/.github/workflows/pr-link-path-scan.yml @@ -5,7 +5,7 @@ name: Check hyperlinks and relative path validity on: pull_request: - branches: [main] + branches: [main, genaicomps_refactor] types: [opened, reopened, ready_for_review, synchronize] jobs: diff --git a/ChatQnA/docker_compose/amd/gpu/rocm/README.md b/ChatQnA/docker_compose/amd/gpu/rocm/README.md index dd95c65633..61de8a3f83 100644 --- a/ChatQnA/docker_compose/amd/gpu/rocm/README.md +++ b/ChatQnA/docker_compose/amd/gpu/rocm/README.md @@ -138,7 +138,7 @@ cd ../../../.. ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/src/Dockerfile . ``` Then run the command `docker images`, you will have the following 5 Docker Images: diff --git a/ChatQnA/docker_compose/intel/cpu/aipc/README.md b/ChatQnA/docker_compose/intel/cpu/aipc/README.md index d8e05e4bca..bb7f09dacc 100644 --- a/ChatQnA/docker_compose/intel/cpu/aipc/README.md +++ b/ChatQnA/docker_compose/intel/cpu/aipc/README.md @@ -55,7 +55,7 @@ docker build --no-cache -t opea/chatqna-ui:latest --build-arg https_proxy=$https ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/src/Dockerfile . ``` Then run the command `docker images`, you will have the following 6 Docker Images: diff --git a/ChatQnA/docker_compose/intel/cpu/xeon/README.md b/ChatQnA/docker_compose/intel/cpu/xeon/README.md index 4431ad026c..63218c9694 100644 --- a/ChatQnA/docker_compose/intel/cpu/xeon/README.md +++ b/ChatQnA/docker_compose/intel/cpu/xeon/README.md @@ -161,7 +161,7 @@ docker build --no-cache -t opea/chatqna-conversation-ui:latest --build-arg https ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/src/Dockerfile . ``` Then run the command `docker images`, you will have the following 5 Docker Images: diff --git a/ChatQnA/docker_compose/intel/cpu/xeon/README_pinecone.md b/ChatQnA/docker_compose/intel/cpu/xeon/README_pinecone.md index 0b35b15255..5a91bae089 100644 --- a/ChatQnA/docker_compose/intel/cpu/xeon/README_pinecone.md +++ b/ChatQnA/docker_compose/intel/cpu/xeon/README_pinecone.md @@ -164,7 +164,7 @@ docker build --no-cache -t opea/chatqna-conversation-ui:latest --build-arg https ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/src/Dockerfile . ``` Then run the command `docker images`, you will have the following 5 Docker Images: diff --git a/ChatQnA/docker_compose/intel/cpu/xeon/README_qdrant.md b/ChatQnA/docker_compose/intel/cpu/xeon/README_qdrant.md index 6fa88b667c..3426353d90 100644 --- a/ChatQnA/docker_compose/intel/cpu/xeon/README_qdrant.md +++ b/ChatQnA/docker_compose/intel/cpu/xeon/README_qdrant.md @@ -122,7 +122,7 @@ cd ../../../.. ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/src/Dockerfile . ``` Then run the command `docker images`, you will have the following 5 Docker Images: diff --git a/ChatQnA/docker_compose/intel/hpu/gaudi/README.md b/ChatQnA/docker_compose/intel/hpu/gaudi/README.md index c1e11deb17..62e0b60329 100644 --- a/ChatQnA/docker_compose/intel/hpu/gaudi/README.md +++ b/ChatQnA/docker_compose/intel/hpu/gaudi/README.md @@ -151,7 +151,7 @@ docker build --no-cache -t opea/chatqna-conversation-ui:latest --build-arg https ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/src/Dockerfile . ``` Then run the command `docker images`, you will have the following 5 Docker Images: diff --git a/ChatQnA/docker_compose/nvidia/gpu/README.md b/ChatQnA/docker_compose/nvidia/gpu/README.md index 499115ffa1..2129766bfa 100644 --- a/ChatQnA/docker_compose/nvidia/gpu/README.md +++ b/ChatQnA/docker_compose/nvidia/gpu/README.md @@ -148,7 +148,7 @@ cd ../../.. ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/src/Dockerfile . ``` Then run the command `docker images`, you will have the following 5 Docker Images: diff --git a/CodeTrans/docker_compose/intel/cpu/xeon/README.md b/CodeTrans/docker_compose/intel/cpu/xeon/README.md index 7a73a343a4..c574740e3d 100755 --- a/CodeTrans/docker_compose/intel/cpu/xeon/README.md +++ b/CodeTrans/docker_compose/intel/cpu/xeon/README.md @@ -41,7 +41,7 @@ docker build -t opea/codetrans-ui:latest --build-arg https_proxy=$https_proxy -- ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/src/Dockerfile . ``` Then run the command `docker images`, you will have the following Docker Images: diff --git a/CodeTrans/docker_compose/intel/hpu/gaudi/README.md b/CodeTrans/docker_compose/intel/hpu/gaudi/README.md index 0d148506fd..c0ca35fcf6 100755 --- a/CodeTrans/docker_compose/intel/hpu/gaudi/README.md +++ b/CodeTrans/docker_compose/intel/hpu/gaudi/README.md @@ -33,7 +33,7 @@ docker build -t opea/codetrans-ui:latest --build-arg https_proxy=$https_proxy -- ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/src/Dockerfile . ``` Then run the command `docker images`, you will have the following Docker Images: diff --git a/MultimodalQnA/docker_compose/intel/cpu/xeon/README.md b/MultimodalQnA/docker_compose/intel/cpu/xeon/README.md index 2be536a1e9..dd6b5ab0ca 100644 --- a/MultimodalQnA/docker_compose/intel/cpu/xeon/README.md +++ b/MultimodalQnA/docker_compose/intel/cpu/xeon/README.md @@ -112,13 +112,13 @@ Build embedding-multimodal-bridgetower docker image ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps -docker build --no-cache -t opea/embedding-multimodal-bridgetower:latest --build-arg EMBEDDER_PORT=$EMBEDDER_PORT --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/native/multimodal/bridgetower/dependency/Dockerfile . +docker build --no-cache -t opea/embedding-multimodal-bridgetower:latest --build-arg EMBEDDER_PORT=$EMBEDDER_PORT --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/src/integrations/dependency/bridgetower/Dockerfile . ``` Build embedding-multimodal microservice image ```bash -docker build --no-cache -t opea/embedding-multimodal:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/native/multimodal/bridgetower/wrapper/Dockerfile . +docker build --no-cache -t opea/embedding-multimodal:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/src/Dockerfile . ``` ### 2. Build retriever-multimodal-redis Image diff --git a/MultimodalQnA/docker_compose/intel/hpu/gaudi/README.md b/MultimodalQnA/docker_compose/intel/hpu/gaudi/README.md index 8dce0e0fef..538052356a 100644 --- a/MultimodalQnA/docker_compose/intel/hpu/gaudi/README.md +++ b/MultimodalQnA/docker_compose/intel/hpu/gaudi/README.md @@ -63,13 +63,13 @@ Build embedding-multimodal-bridgetower docker image ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps -docker build --no-cache -t opea/embedding-multimodal-bridgetower:latest --build-arg EMBEDDER_PORT=$EMBEDDER_PORT --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/native/multimodal/bridgetower/dependency/Dockerfile . +docker build --no-cache -t opea/embedding-multimodal-bridgetower:latest --build-arg EMBEDDER_PORT=$EMBEDDER_PORT --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/src/integrations/dependency/bridgetower/Dockerfile . ``` Build embedding-multimodal microservice image ```bash -docker build --no-cache -t opea/embedding-multimodal:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/native/multimodal/bridgetower/wrapper/Dockerfile . +docker build --no-cache -t opea/embedding-multimodal:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/src/Dockerfile . ``` ### 2. Build retriever-multimodal-redis Image diff --git a/MultimodalQnA/docker_image_build/build.yaml b/MultimodalQnA/docker_image_build/build.yaml index b752db245e..2a5d3b0f75 100644 --- a/MultimodalQnA/docker_image_build/build.yaml +++ b/MultimodalQnA/docker_image_build/build.yaml @@ -20,13 +20,13 @@ services: embedding-multimodal-bridgetower: build: context: GenAIComps - dockerfile: comps/embeddings/native/multimodal/bridgetower/dependency/Dockerfile + dockerfile: comps/embeddings/src/integrations/dependency/bridgetower/Dockerfile extends: multimodalqna image: ${REGISTRY:-opea}/embedding-multimodal-bridgetower:${TAG:-latest} embedding-multimodal: build: context: GenAIComps - dockerfile: comps/embeddings/native/multimodal/bridgetower/wrapper/Dockerfile + dockerfile: comps/embeddings/src/Dockerfile extends: multimodalqna image: ${REGISTRY:-opea}/embedding-multimodal:${TAG:-latest} retriever-redis: diff --git a/ProductivitySuite/docker_image_build/build.yaml b/ProductivitySuite/docker_image_build/build.yaml index bfb90e2bb7..c63e8819c1 100644 --- a/ProductivitySuite/docker_image_build/build.yaml +++ b/ProductivitySuite/docker_image_build/build.yaml @@ -20,7 +20,7 @@ services: retriever-redis: build: context: GenAIComps - dockerfile: comps/retrievers/src/Dockerfile + dockerfile: comps/retrievers/redis/langchain/Dockerfile extends: chatqna image: ${REGISTRY:-opea}/retriever-redis:${TAG:-latest} reranking-tei: @@ -38,7 +38,7 @@ services: dataprep-redis: build: context: GenAIComps - dockerfile: comps/dataprep/src/Dockerfile + dockerfile: comps/dataprep/redis/langchain/Dockerfile extends: chatqna image: ${REGISTRY:-opea}/dataprep-redis:${TAG:-latest} promptregistry-mongo-server: diff --git a/Translation/docker_compose/intel/cpu/xeon/README.md b/Translation/docker_compose/intel/cpu/xeon/README.md index 7a3b5930b2..f5f26bbea7 100644 --- a/Translation/docker_compose/intel/cpu/xeon/README.md +++ b/Translation/docker_compose/intel/cpu/xeon/README.md @@ -60,7 +60,7 @@ docker build -t opea/translation-ui:latest --build-arg https_proxy=$https_proxy ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/src/Dockerfile . ``` Then run the command `docker images`, you will have the following Docker Images: diff --git a/Translation/docker_compose/intel/hpu/gaudi/README.md b/Translation/docker_compose/intel/hpu/gaudi/README.md index 1d711bc006..d99fee7fc6 100644 --- a/Translation/docker_compose/intel/hpu/gaudi/README.md +++ b/Translation/docker_compose/intel/hpu/gaudi/README.md @@ -52,7 +52,7 @@ docker build -t opea/translation-ui:latest --build-arg https_proxy=$https_proxy ```bash cd GenAIComps -docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . +docker build -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/src/Dockerfile . ``` Then run the command `docker images`, you will have the following four Docker Images: diff --git a/VideoQnA/docker_compose/intel/cpu/xeon/README.md b/VideoQnA/docker_compose/intel/cpu/xeon/README.md index 77d3177655..d5a29df731 100644 --- a/VideoQnA/docker_compose/intel/cpu/xeon/README.md +++ b/VideoQnA/docker_compose/intel/cpu/xeon/README.md @@ -53,7 +53,7 @@ First of all, you need to build Docker Images locally and install the python pac ```bash git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps -docker build -t opea/embedding-multimodal-clip:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/native/multimodal/clip/Dockerfile . +docker build -t opea/embedding-multimodal-clip:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/embeddings/src/integrations/dependency/clip/Dockerfile . ``` ### 2. Build Retriever Image @@ -65,7 +65,7 @@ docker build -t opea/retriever-vdms:latest --build-arg https_proxy=$https_proxy ### 3. Build Rerank Image ```bash -docker build -t opea/reranking-videoqna:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/reranks/videoqna/Dockerfile . +docker build -t opea/reranking-videoqna:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/reranks/src/Dockerfile . ``` ### 4. Build LVM Image (Xeon) diff --git a/VideoQnA/docker_image_build/build.yaml b/VideoQnA/docker_image_build/build.yaml index ef6af2aa7a..9b9e5e02e6 100644 --- a/VideoQnA/docker_image_build/build.yaml +++ b/VideoQnA/docker_image_build/build.yaml @@ -38,7 +38,7 @@ services: reranking-videoqna: build: context: GenAIComps - dockerfile: comps/reranks/videoqna/Dockerfile + dockerfile: comps/reranks/src/Dockerfile extends: videoqna image: ${REGISTRY:-opea}/reranking-videoqna:${TAG:-latest} video-llama-lvm-server: diff --git a/VisualQnA/docker_compose/amd/gpu/rocm/README.md b/VisualQnA/docker_compose/amd/gpu/rocm/README.md index 0567990640..9039d5326f 100644 --- a/VisualQnA/docker_compose/amd/gpu/rocm/README.md +++ b/VisualQnA/docker_compose/amd/gpu/rocm/README.md @@ -12,7 +12,7 @@ First of all, you need to build Docker Images locally and install the python pac git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps docker build --no-cache -t opea/lvm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/lvms/tgi-llava/Dockerfile . -docker build --no-cache -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . +docker build --no-cache -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/src/Dockerfile . ``` ### 2. Build MegaService Docker Image diff --git a/VisualQnA/docker_compose/intel/cpu/xeon/README.md b/VisualQnA/docker_compose/intel/cpu/xeon/README.md index 57e27056e3..74e37860c9 100644 --- a/VisualQnA/docker_compose/intel/cpu/xeon/README.md +++ b/VisualQnA/docker_compose/intel/cpu/xeon/README.md @@ -42,7 +42,7 @@ First of all, you need to build Docker Images locally and install the python pac git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps docker build --no-cache -t opea/lvm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/lvms/tgi-llava/Dockerfile . -docker build --no-cache -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . +docker build --no-cache -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/src/Dockerfile . ``` ### 2. Build MegaService Docker Image diff --git a/VisualQnA/docker_compose/intel/hpu/gaudi/README.md b/VisualQnA/docker_compose/intel/hpu/gaudi/README.md index b72378297c..86fa1161d2 100644 --- a/VisualQnA/docker_compose/intel/hpu/gaudi/README.md +++ b/VisualQnA/docker_compose/intel/hpu/gaudi/README.md @@ -12,7 +12,7 @@ First of all, you need to build Docker Images locally. This step can be ignored git clone https://github.com/opea-project/GenAIComps.git cd GenAIComps docker build --no-cache -t opea/lvm-tgi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/lvms/tgi-llava/Dockerfile . -docker build --no-cache -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/deployment/docker/Dockerfile . +docker build --no-cache -t opea/nginx:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/3rd_parties/nginx/src/Dockerfile . ``` ### 2. Pull TGI Gaudi Image diff --git a/docker_images_list.md b/docker_images_list.md index 71bf495fda..dd50d929e9 100644 --- a/docker_images_list.md +++ b/docker_images_list.md @@ -40,71 +40,71 @@ Take ChatQnA for example. ChatQnA is a chatbot application service based on the ## Microservice images -| Microservice Images | Dockerfile | Description | -| ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [opea/agent-langchain](https://hub.docker.com/r/opea/comps-agent-langchain) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/agent/langchain/Dockerfile) | The docker image exposed the OPEA agent microservice for GenAI application use | -| [opea/asr](https://hub.docker.com/r/opea/asr) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/asr/whisper/Dockerfile) | The docker image exposed the OPEA Audio-Speech-Recognition microservice for GenAI application use | -| [opea/chathistory-mongo-server](https://hub.docker.com/r/opea/chathistory-mongo-server) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/chathistory/mongo/Dockerfile) | The docker image exposes OPEA Chat History microservice which based on MongoDB database, designed to allow user to store, retrieve and manage chat conversations | -| [opea/dataprep-milvus](https://hub.docker.com/r/opea/dataprep-milvus) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/milvus/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on milvus vectordb for GenAI application use | -| [opea/dataprep-multimodal-vdms](https://hub.docker.com/r/opea/dataprep-multimodal-vdms) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/vdms/multimodal_langchain/Dockerfile) | This docker image exposes an OPEA dataprep microservice based on a multi-modal VDMS for use by GenAI applications. | -| [opea/dataprep-multimodal-redis](https://hub.docker.com/r/opea/dataprep-multimodal-redis) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/redis/langchain/Dockerfile) | This docker image exposes an OPEA dataprep microservice based on a multi-modal redis for use by GenAI applications. | -| [opea/dataprep-on-ray-redis](https://hub.docker.com/r/opea/dataprep-on-ray-redis) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/redis/langchain_ray/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on redis vectordb and optimized ray for GenAI application use | -| [opea/dataprep-pgvector](https://hub.docker.com/r/opea/dataprep-pgvector) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/pgvector/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on pgvector vectordb for GenAI application use | -| [opea/dataprep-pinecone](https://hub.docker.com/r/opea/dataprep-pinecone) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/pinecone/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on pincone vectordb for GenAI application use | -| [opea/dataprep-qdrant](https://hub.docker.com/r/opea/dataprep-qdrant) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/qdrant/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on qdrant vectordb for GenAI application use | -| [opea/dataprep-redis](https://hub.docker.com/r/opea/dataprep-redis) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/redis/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on redis vectordb Langchain framework for GenAI application use | -| [opea/dataprep-redis-llama-index](https://hub.docker.com/r/opea/dataprep-redis-llama-index) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/redis/llama_index/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on redis vectordb LlamaIndex framework for GenAI application use | -| [opea/dataprep-vdms](https://hub.docker.com/r/opea/dataprep-vdms) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/vdms/langchain/Dockerfile) | This docker image exposes an OPEA dataprep microservice based on VDMS vectordb for use by GenAI applications. | -| [opea/embedding-langchain-mosec](https://hub.docker.com/r/opea/embedding-langchain-mosec) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/3rd_parties/nginx/deployment/docker/Dockerfile) | The docker image exposed the OPEA mosec embedding microservice base on Langchain framework for GenAI application use | -| [opea/embedding-langchain-mosec-endpoint](https://hub.docker.com/r/opea/embedding-langchain-mosec-endpoint) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/3rd_parties/mosec/deployment/docker/Dockerfile) | The docker image exposed the OPEA mosec embedding endpoint microservice base on Langchain framework for GenAI application use | -| [opea/embedding-multimodal-clip](https://hub.docker.com/r/opea/embedding-multimodal-clip) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/native/multimodal/clip/Dockerfile) | The docker image exposes OPEA multimodal CLIP-based embedded microservices for use by GenAI applications | -| [opea/embedding-multimodal](https://hub.docker.com/r/opea/embedding-multimodal) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/native/multimodal/bridgetower/wrapper/Dockerfile) | The docker image exposes OPEA multimodal embedded microservices for use by GenAI applications | -| [opea/embedding-multimodal-bridgetower](https://hub.docker.com/r/opea/embedding-multimodal-bridgetower) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/native/multimodal/bridgetower/dependency/Dockerfile) | The docker image exposes OPEA multimodal embedded microservices based on bridgetower for use by GenAI applications | -| [opea/embedding-multimodal-bridgetower-gaudi](https://hub.docker.com/r/opea/embedding-multimodal-bridgetower-gaudi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/native/multimodal/bridgetower/dependency/Dockerfile.intel_hpu) | The docker image exposes OPEA multimodal embedded microservices based on bridgetower for use by GenAI applications on the Gaudi | -| [opea/embedding-tei](https://hub.docker.com/r/opea/embedding-tei) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/src/Dockerfile) | The docker image exposed the OPEA embedding microservice upon tei docker image for GenAI application use | -| [opea/feedbackmanagement](https://hub.docker.com/r/opea/feedbackmanagement) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/feedback_management/mongo/Dockerfile) | The docker image exposes that the OPEA feedback management microservice uses a MongoDB database for GenAI applications. | -| [opea/finetuning](https://hub.docker.com/r/opea/finetuning) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/finetuning/Dockerfile) | The docker image exposed the OPEA Fine-tuning microservice for GenAI application use | -| [opea/finetuning-gaudi](https://hub.docker.com/r/opea/finetuning-gaudi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/finetuning/Dockerfile.intel_hpu) | The docker image exposed the OPEA Fine-tuning microservice for GenAI application use on the Gaudi | -| [opea/gmcrouter](https://hub.docker.com/r/opea/gmcrouter) | [Link](https://github.com/opea-project/GenAIInfra/blob/main/microservices-connector/Dockerfile.manager) | The docker image served as one of key parts of the OPEA GenAI Microservice Connector(GMC) to route the traffic among the microservices defined in GMC | -| [opea/gmcmanager](https://hub.docker.com/r/opea/gmcmanager) | [Link](https://github.com/opea-project/GenAIInfra/blob/main/microservices-connector/Dockerfile.router) | The docker image served as one of key parts of the OPEA GenAI Microservice Connector(GMC) to be controller manager to handle GMC CRD | -| [opea/guardrails-tgi](https://hub.docker.com/r/opea/guardrails-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/guardrails/llama_guard/langchain/Dockerfile) | The docker image exposed the OPEA guardrail microservice to provide content review for GenAI application use | -| [opea/guardrails-toxicity-detection](https://hub.docker.com/r/opea/guardrails-toxicity-detection) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/guardrails/toxicity_detection/Dockerfile) | The docker image exposed the OPEA guardrail microservice to provide toxicity detection for GenAI application use | -| [opea/guardrails-pii-detection](https://hub.docker.com/r/opea/guardrails-pii-detection) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/guardrails/pii_detection/Dockerfile) | The docker image exposed the OPEA guardrail microservice to provide PII detection for GenAI application use | -| [opea/llm-docsum-tgi](https://hub.docker.com/r/opea/llm-docsum-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/summarization/tgi/langchain/Dockerfile) | This docker image is designed to build a document summarization microservice using the HuggingFace Text Generation Inference(TGI) framework. The microservice accepts document input and generates a document summary. | -| [opea/llm-faqgen-tgi](https://hub.docker.com/r/opea/llm-faqgen-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/faq-generation/tgi/langchain/Dockerfile) | This docker image is designed to build a frequently asked questions microservice using the HuggingFace Text Generation Inference(TGI) framework. The microservice accepts document input and generates a FAQ. | -| [opea/llm-native](https://hub.docker.com/r/opea/llm-native) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/src/text-generation/Dockerfile) | The docker image exposed the OPEA LLM microservice based on native for GenAI application use | -| [opea/llm-ollama](https://hub.docker.com/r/opea/llm-ollama) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/src/text-generation/Dockerfile) | The docker image exposed the OPEA LLM microservice based on ollama for GenAI application use | -| [opea/llm-tgi](https://hub.docker.com/r/opea/llm-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/src/text-generation/Dockerfile) | The docker image exposed the OPEA LLM microservice upon TGI docker image for GenAI application use | -| [opea/llm-vllm](https://hub.docker.com/r/opea/llm-vllm) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/src/text-generation/Dockerfile) | The docker image exposed the OPEA LLM microservice upon vLLM docker image for GenAI application use | -| [opea/llava-gaudi](https://hub.docker.com/r/opea/llava-hpu) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/llava/dependency/Dockerfile.intel_hpu) | The docker image exposed the OPEA microservice running LLaVA as a large visual model (LVM) service for GenAI application use on the Gaudi | -| [opea/lvm-tgi](https://hub.docker.com/r/opea/lvm-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/tgi-llava/Dockerfile) | This docker image is designed to build a large visual model (LVM) microservice using the HuggingFace Text Generation Inference(TGI) framework. The microservice accepts document input and generates a answer to question. | -| [opea/lvm-llava](https://hub.docker.com/r/opea/lvm-llava) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/llava/dependency/Dockerfile) | The docker image exposed the OPEA microservice running LLaVA as a large visual model (LVM) server for GenAI application use | -| [opea/lvm-llava-svc](https://hub.docker.com/r/opea/lvm-llava-svc) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/llava/Dockerfile) | The docker image exposed the OPEA microservice running LLaVA as a large visual model (LVM) service for GenAI application use | -| [opea/lvm-video-llama](https://hub.docker.com/r/opea/lvm-video-llama) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/video-llama/Dockerfile) | The docker image exposed the OPEA microservice running Video-Llama as a large visual model (LVM) for GenAI application use | -| [opea/nginx](https://hub.docker.com/r/opea/nginx) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/3rd_parties/nginx/deployment/docker/Dockerfile) | The docker image exposed the OPEA nginx microservice for GenAI application use | -| [opea/promptregistry-mongo-server](https://hub.docker.com/r/opea/promptregistry-mongo-server) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/prompt_registry/mongo/Dockerfile) | The docker image exposes the OPEA Prompt Registry microservices which based on MongoDB database, designed to store and retrieve user's preferred prompts | -| [opea/reranking-videoqna](https://hub.docker.com/r/opea/reranking-videoqna) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/videoqna/Dockerfile) | The docker image exposed the OPEA reranking microservice for reranking the results of VideoQnA use casesfor GenAI application use | -| [opea/reranking-fastrag](https://hub.docker.com/r/opea/reranking-fastrag) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/src/Dockerfile) | The docker image exposed the OPEA reranking microservice base on fastrag for GenAI application use | -| [opea/reranking-langchain-mosec](https://hub.docker.com/r/opea/reranking-langchain-mosec) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/src/Dockerfile) | The docker image exposed the OPEA mosec reranking microservice base on Langchain framework for GenAI application use | -| [opea/reranking-langchain-mosec-endpoint](https://hub.docker.com/r/opea/reranking-langchain-mosec-endpoint) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/src/Dockerfile) | The docker image exposed the OPEA mosec reranking endpoint microservice base on Langchain framework for GenAI application use | -| [opea/reranking-tei](https://hub.docker.com/r/opea/reranking-tei) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/src/Dockerfile) | The docker image exposed the OPEA reranking microservice based on tei docker image for GenAI application use | -| [opea/retriever-milvus](https://hub.docker.com/r/opea/retriever-milvus) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/milvus/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on milvus vectordb for GenAI application use | -| [opea/retriever-pathway](https://hub.docker.com/r/opea/retriever-pathway) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/pathway/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice with pathway for GenAI application use | -| [opea/retriever-pgvector](https://hub.docker.com/r/opea/retriever-pgvector) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/pgvector/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on pgvector vectordb for GenAI application use | -| [opea/retriever-pinecone](https://hub.docker.com/r/opea/retriever-pinecone) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/pinecone/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on pinecone vectordb for GenAI application use | -| [opea/retriever-qdrant](https://hub.docker.com/r/opea/retriever-qdrant) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/qdrant/haystack/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on qdrant vectordb for GenAI application use | -| [opea/retriever-redis](https://hub.docker.com/r/opea/retriever-redis) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/redis/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on redis vectordb for GenAI application use | -| [opea/retriever-redis-llamaindex](https://hub.docker.com/r/opea/retriever-redis-llamaindex) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/redis/llama_index/Dockerfile) | The docker image exposed the OPEA retriever service based on LlamaIndex for GenAI application use | -| [opea/retriever-vdms](https://hub.docker.com/r/opea/retriever-vdms) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/vdms/langchain/Dockerfile) | The docker image exposed the OPEA retriever service based on Visual Data Management System for GenAI application use | -| [opea/speecht5](https://hub.docker.com/r/opea/speecht5) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/tts/speecht5/dependency/Dockerfile) | The docker image exposed the OPEA SpeechT5 service for GenAI application use | -| [opea/speecht5-gaudi](https://hub.docker.com/r/opea/speecht5-gaudi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/tts/speecht5/dependency/Dockerfile.intel_hpu) | The docker image exposed the OPEA SpeechT5 service on Gaudi2 for GenAI application use | -| [opea/tei-gaudi](https://hub.docker.com/r/opea/tei-gaudi/tags) | [Link](https://github.com/huggingface/tei-gaudi/blob/habana-main/Dockerfile-hpu) | The docker image powered by HuggingFace Text Embedding Inference (TEI) on Gaudi2 for deploying and serving Embedding Models | -| [opea/vectorstore-pathway](https://hub.docker.com/r/opea/vectorstore-pathway) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/vectorstores/pathway/Dockerfile) | The docker image exposed the OPEA Vectorstores microservice with Pathway for GenAI application use | -| [opea/video-llama-lvm-server](https://hub.docker.com/r/opea/video-llama-lvm-server) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/video-llama/dependency/Dockerfile) | The docker image exposed the OPEA microservice running Video-Llama as a large visual model (LVM) server for GenAI application use | -| [opea/tts](https://hub.docker.com/r/opea/tts) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/tts/speecht5/Dockerfile) | The docker image exposed the OPEA Text-To-Speech microservice for GenAI application use | -| [opea/vllm](https://hub.docker.com/r/opea/vllm) | [Link](https://github.com/vllm-project/vllm/blob/main/Dockerfile.cpu) | The docker image powered by vllm-project for deploying and serving vllm Models | -| [opea/vllm-gaudi]() | [Link](https://github.com/HabanaAI/vllm-fork/blob/habana_main/Dockerfile.hpu) | The docker image powered by vllm-fork for deploying and serving vllm-gaudi Models | -| [opea/vllm-openvino](https://hub.docker.com/r/opea/vllm-openvino) | [Link](https://github.com/vllm-project/vllm/blob/main/Dockerfile.openvino) | The docker image powered by vllm-project for deploying and serving vllm Models of the Openvino Framework | -| [opea/web-retriever-chroma](https://hub.docker.com/r/opea/web-retriever-chroma) | [Link](https://github.com/opea-project/GenAIComps/tree/main/comps/web_retrievers/chroma/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on chroma vectordb for GenAI application use | -| [opea/whisper](https://hub.docker.com/r/opea/whisper) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/asr/whisper/dependency/Dockerfile) | The docker image exposed the OPEA Whisper service for GenAI application use | -| [opea/whisper-gaudi](https://hub.docker.com/r/opea/whisper-gaudi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/asr/whisper/dependency/Dockerfile.intel_hpu) | The docker image exposed the OPEA Whisper service on Gaudi2 for GenAI application use | +| Microservice Images | Dockerfile | Description | +| ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| [opea/agent-langchain](https://hub.docker.com/r/opea/comps-agent-langchain) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/agent/langchain/Dockerfile) | The docker image exposed the OPEA agent microservice for GenAI application use | +| [opea/asr](https://hub.docker.com/r/opea/asr) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/asr/whisper/Dockerfile) | The docker image exposed the OPEA Audio-Speech-Recognition microservice for GenAI application use | +| [opea/chathistory-mongo-server](https://hub.docker.com/r/opea/chathistory-mongo-server) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/chathistory/mongo/Dockerfile) | The docker image exposes OPEA Chat History microservice which based on MongoDB database, designed to allow user to store, retrieve and manage chat conversations | +| [opea/dataprep-milvus](https://hub.docker.com/r/opea/dataprep-milvus) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/milvus/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on milvus vectordb for GenAI application use | +| [opea/dataprep-multimodal-vdms](https://hub.docker.com/r/opea/dataprep-multimodal-vdms) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/vdms/multimodal_langchain/Dockerfile) | This docker image exposes an OPEA dataprep microservice based on a multi-modal VDMS for use by GenAI applications. | +| [opea/dataprep-multimodal-redis](https://hub.docker.com/r/opea/dataprep-multimodal-redis) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/redis/langchain/Dockerfile) | This docker image exposes an OPEA dataprep microservice based on a multi-modal redis for use by GenAI applications. | +| [opea/dataprep-on-ray-redis](https://hub.docker.com/r/opea/dataprep-on-ray-redis) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/redis/langchain_ray/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on redis vectordb and optimized ray for GenAI application use | +| [opea/dataprep-pgvector](https://hub.docker.com/r/opea/dataprep-pgvector) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/pgvector/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on pgvector vectordb for GenAI application use | +| [opea/dataprep-pinecone](https://hub.docker.com/r/opea/dataprep-pinecone) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/pinecone/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on pincone vectordb for GenAI application use | +| [opea/dataprep-qdrant](https://hub.docker.com/r/opea/dataprep-qdrant) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/qdrant/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on qdrant vectordb for GenAI application use | +| [opea/dataprep-redis](https://hub.docker.com/r/opea/dataprep-redis) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/redis/langchain/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on redis vectordb Langchain framework for GenAI application use | +| [opea/dataprep-redis-llama-index](https://hub.docker.com/r/opea/dataprep-redis-llama-index) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/redis/llama_index/Dockerfile) | The docker image exposed the OPEA dataprep microservice based on redis vectordb LlamaIndex framework for GenAI application use | +| [opea/dataprep-vdms](https://hub.docker.com/r/opea/dataprep-vdms) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/dataprep/vdms/langchain/Dockerfile) | This docker image exposes an OPEA dataprep microservice based on VDMS vectordb for use by GenAI applications. | +| [opea/embedding-langchain-mosec](https://hub.docker.com/r/opea/embedding-langchain-mosec) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/3rd_parties/nginx/src/Dockerfile) | The docker image exposed the OPEA mosec embedding microservice base on Langchain framework for GenAI application use | +| [opea/embedding-langchain-mosec-endpoint](https://hub.docker.com/r/opea/embedding-langchain-mosec-endpoint) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/3rd_parties/mosec/deployment/docker/Dockerfile) | The docker image exposed the OPEA mosec embedding endpoint microservice base on Langchain framework for GenAI application use | +| [opea/embedding-multimodal-clip](https://hub.docker.com/r/opea/embedding-multimodal-clip) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/src/integrations/dependency/clip/Dockerfile) | The docker image exposes OPEA multimodal CLIP-based embedded microservices for use by GenAI applications | +| [opea/embedding-multimodal](https://hub.docker.com/r/opea/embedding-multimodal) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/src/Dockerfile) | The docker image exposes OPEA multimodal embedded microservices for use by GenAI applications | +| [opea/embedding-multimodal-bridgetower](https://hub.docker.com/r/opea/embedding-multimodal-bridgetower) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/src/integrations/dependency/bridgetower/Dockerfile) | The docker image exposes OPEA multimodal embedded microservices based on bridgetower for use by GenAI applications | +| [opea/embedding-multimodal-bridgetower-gaudi](https://hub.docker.com/r/opea/embedding-multimodal-bridgetower-gaudi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/src/integrations/dependency/bridgetower/Dockerfile.intel_hpu) | The docker image exposes OPEA multimodal embedded microservices based on bridgetower for use by GenAI applications on the Gaudi | +| [opea/embedding-tei](https://hub.docker.com/r/opea/embedding-tei) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/embeddings/src/Dockerfile) | The docker image exposed the OPEA embedding microservice upon tei docker image for GenAI application use | +| [opea/feedbackmanagement](https://hub.docker.com/r/opea/feedbackmanagement) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/feedback_management/mongo/Dockerfile) | The docker image exposes that the OPEA feedback management microservice uses a MongoDB database for GenAI applications. | +| [opea/finetuning](https://hub.docker.com/r/opea/finetuning) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/finetuning/Dockerfile) | The docker image exposed the OPEA Fine-tuning microservice for GenAI application use | +| [opea/finetuning-gaudi](https://hub.docker.com/r/opea/finetuning-gaudi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/finetuning/Dockerfile.intel_hpu) | The docker image exposed the OPEA Fine-tuning microservice for GenAI application use on the Gaudi | +| [opea/gmcrouter](https://hub.docker.com/r/opea/gmcrouter) | [Link](https://github.com/opea-project/GenAIInfra/blob/main/microservices-connector/Dockerfile.manager) | The docker image served as one of key parts of the OPEA GenAI Microservice Connector(GMC) to route the traffic among the microservices defined in GMC | +| [opea/gmcmanager](https://hub.docker.com/r/opea/gmcmanager) | [Link](https://github.com/opea-project/GenAIInfra/blob/main/microservices-connector/Dockerfile.router) | The docker image served as one of key parts of the OPEA GenAI Microservice Connector(GMC) to be controller manager to handle GMC CRD | +| [opea/guardrails-tgi](https://hub.docker.com/r/opea/guardrails-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/guardrails/llama_guard/langchain/Dockerfile) | The docker image exposed the OPEA guardrail microservice to provide content review for GenAI application use | +| [opea/guardrails-toxicity-detection](https://hub.docker.com/r/opea/guardrails-toxicity-detection) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/guardrails/toxicity_detection/Dockerfile) | The docker image exposed the OPEA guardrail microservice to provide toxicity detection for GenAI application use | +| [opea/guardrails-pii-detection](https://hub.docker.com/r/opea/guardrails-pii-detection) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/guardrails/pii_detection/Dockerfile) | The docker image exposed the OPEA guardrail microservice to provide PII detection for GenAI application use | +| [opea/llm-docsum-tgi](https://hub.docker.com/r/opea/llm-docsum-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/summarization/tgi/langchain/Dockerfile) | This docker image is designed to build a document summarization microservice using the HuggingFace Text Generation Inference(TGI) framework. The microservice accepts document input and generates a document summary. | +| [opea/llm-faqgen-tgi](https://hub.docker.com/r/opea/llm-faqgen-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/faq-generation/tgi/langchain/Dockerfile) | This docker image is designed to build a frequently asked questions microservice using the HuggingFace Text Generation Inference(TGI) framework. The microservice accepts document input and generates a FAQ. | +| [opea/llm-native](https://hub.docker.com/r/opea/llm-native) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/src/text-generation/Dockerfile) | The docker image exposed the OPEA LLM microservice based on native for GenAI application use | +| [opea/llm-ollama](https://hub.docker.com/r/opea/llm-ollama) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/src/text-generation/Dockerfile) | The docker image exposed the OPEA LLM microservice based on ollama for GenAI application use | +| [opea/llm-tgi](https://hub.docker.com/r/opea/llm-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/src/text-generation/Dockerfile) | The docker image exposed the OPEA LLM microservice upon TGI docker image for GenAI application use | +| [opea/llm-vllm](https://hub.docker.com/r/opea/llm-vllm) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/llms/src/text-generation/Dockerfile) | The docker image exposed the OPEA LLM microservice upon vLLM docker image for GenAI application use | +| [opea/llava-gaudi](https://hub.docker.com/r/opea/llava-hpu) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/llava/dependency/Dockerfile.intel_hpu) | The docker image exposed the OPEA microservice running LLaVA as a large visual model (LVM) service for GenAI application use on the Gaudi | +| [opea/lvm-tgi](https://hub.docker.com/r/opea/lvm-tgi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/tgi-llava/Dockerfile) | This docker image is designed to build a large visual model (LVM) microservice using the HuggingFace Text Generation Inference(TGI) framework. The microservice accepts document input and generates a answer to question. | +| [opea/lvm-llava](https://hub.docker.com/r/opea/lvm-llava) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/llava/dependency/Dockerfile) | The docker image exposed the OPEA microservice running LLaVA as a large visual model (LVM) server for GenAI application use | +| [opea/lvm-llava-svc](https://hub.docker.com/r/opea/lvm-llava-svc) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/llava/Dockerfile) | The docker image exposed the OPEA microservice running LLaVA as a large visual model (LVM) service for GenAI application use | +| [opea/lvm-video-llama](https://hub.docker.com/r/opea/lvm-video-llama) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/video-llama/Dockerfile) | The docker image exposed the OPEA microservice running Video-Llama as a large visual model (LVM) for GenAI application use | +| [opea/nginx](https://hub.docker.com/r/opea/nginx) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/3rd_parties/nginx/src/Dockerfile) | The docker image exposed the OPEA nginx microservice for GenAI application use | +| [opea/promptregistry-mongo-server](https://hub.docker.com/r/opea/promptregistry-mongo-server) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/prompt_registry/mongo/Dockerfile) | The docker image exposes the OPEA Prompt Registry microservices which based on MongoDB database, designed to store and retrieve user's preferred prompts | +| [opea/reranking-videoqna](https://hub.docker.com/r/opea/reranking-videoqna) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/src/Dockerfile) | The docker image exposed the OPEA reranking microservice for reranking the results of VideoQnA use casesfor GenAI application use | +| [opea/reranking-fastrag](https://hub.docker.com/r/opea/reranking-fastrag) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/src/Dockerfile) | The docker image exposed the OPEA reranking microservice base on fastrag for GenAI application use | +| [opea/reranking-langchain-mosec](https://hub.docker.com/r/opea/reranking-langchain-mosec) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/src/Dockerfile) | The docker image exposed the OPEA mosec reranking microservice base on Langchain framework for GenAI application use | +| [opea/reranking-langchain-mosec-endpoint](https://hub.docker.com/r/opea/reranking-langchain-mosec-endpoint) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/src/Dockerfile) | The docker image exposed the OPEA mosec reranking endpoint microservice base on Langchain framework for GenAI application use | +| [opea/reranking-tei](https://hub.docker.com/r/opea/reranking-tei) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/reranks/src/Dockerfile) | The docker image exposed the OPEA reranking microservice based on tei docker image for GenAI application use | +| [opea/retriever-milvus](https://hub.docker.com/r/opea/retriever-milvus) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/milvus/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on milvus vectordb for GenAI application use | +| [opea/retriever-pathway](https://hub.docker.com/r/opea/retriever-pathway) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/pathway/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice with pathway for GenAI application use | +| [opea/retriever-pgvector](https://hub.docker.com/r/opea/retriever-pgvector) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/pgvector/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on pgvector vectordb for GenAI application use | +| [opea/retriever-pinecone](https://hub.docker.com/r/opea/retriever-pinecone) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/pinecone/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on pinecone vectordb for GenAI application use | +| [opea/retriever-qdrant](https://hub.docker.com/r/opea/retriever-qdrant) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/qdrant/haystack/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on qdrant vectordb for GenAI application use | +| [opea/retriever-redis](https://hub.docker.com/r/opea/retriever-redis) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/redis/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on redis vectordb for GenAI application use | +| [opea/retriever-redis-llamaindex](https://hub.docker.com/r/opea/retriever-redis-llamaindex) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/redis/llama_index/Dockerfile) | The docker image exposed the OPEA retriever service based on LlamaIndex for GenAI application use | +| [opea/retriever-vdms](https://hub.docker.com/r/opea/retriever-vdms) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/retrievers/vdms/langchain/Dockerfile) | The docker image exposed the OPEA retriever service based on Visual Data Management System for GenAI application use | +| [opea/speecht5](https://hub.docker.com/r/opea/speecht5) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/tts/speecht5/dependency/Dockerfile) | The docker image exposed the OPEA SpeechT5 service for GenAI application use | +| [opea/speecht5-gaudi](https://hub.docker.com/r/opea/speecht5-gaudi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/tts/speecht5/dependency/Dockerfile.intel_hpu) | The docker image exposed the OPEA SpeechT5 service on Gaudi2 for GenAI application use | +| [opea/tei-gaudi](https://hub.docker.com/r/opea/tei-gaudi/tags) | [Link](https://github.com/huggingface/tei-gaudi/blob/habana-main/Dockerfile-hpu) | The docker image powered by HuggingFace Text Embedding Inference (TEI) on Gaudi2 for deploying and serving Embedding Models | +| [opea/vectorstore-pathway](https://hub.docker.com/r/opea/vectorstore-pathway) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/vectorstores/pathway/Dockerfile) | The docker image exposed the OPEA Vectorstores microservice with Pathway for GenAI application use | +| [opea/video-llama-lvm-server](https://hub.docker.com/r/opea/video-llama-lvm-server) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/lvms/video-llama/dependency/Dockerfile) | The docker image exposed the OPEA microservice running Video-Llama as a large visual model (LVM) server for GenAI application use | +| [opea/tts](https://hub.docker.com/r/opea/tts) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/tts/speecht5/Dockerfile) | The docker image exposed the OPEA Text-To-Speech microservice for GenAI application use | +| [opea/vllm](https://hub.docker.com/r/opea/vllm) | [Link](https://github.com/vllm-project/vllm/blob/main/Dockerfile.cpu) | The docker image powered by vllm-project for deploying and serving vllm Models | +| [opea/vllm-gaudi]() | [Link](https://github.com/HabanaAI/vllm-fork/blob/habana_main/Dockerfile.hpu) | The docker image powered by vllm-fork for deploying and serving vllm-gaudi Models | +| [opea/vllm-openvino](https://hub.docker.com/r/opea/vllm-openvino) | [Link](https://github.com/vllm-project/vllm/blob/main/Dockerfile.openvino) | The docker image powered by vllm-project for deploying and serving vllm Models of the Openvino Framework | +| [opea/web-retriever-chroma](https://hub.docker.com/r/opea/web-retriever-chroma) | [Link](https://github.com/opea-project/GenAIComps/tree/main/comps/web_retrievers/chroma/langchain/Dockerfile) | The docker image exposed the OPEA retrieval microservice based on chroma vectordb for GenAI application use | +| [opea/whisper](https://hub.docker.com/r/opea/whisper) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/asr/whisper/dependency/Dockerfile) | The docker image exposed the OPEA Whisper service for GenAI application use | +| [opea/whisper-gaudi](https://hub.docker.com/r/opea/whisper-gaudi) | [Link](https://github.com/opea-project/GenAIComps/blob/main/comps/asr/whisper/dependency/Dockerfile.intel_hpu) | The docker image exposed the OPEA Whisper service on Gaudi2 for GenAI application use | From 1b061f510e4143480249f183c5c93bee6007cbaa Mon Sep 17 00:00:00 2001 From: Liang Lv Date: Thu, 2 Jan 2025 09:32:12 +0800 Subject: [PATCH 24/26] Update DocIndexRetriever for GenAIComps refactor (#1317) Signed-off-by: lvliang-intel --- .../intel/cpu/xeon/compose.yaml | 29 +++++++++++++++---- .../cpu/xeon/compose_without_rerank.yaml | 20 +++++++++---- .../intel/hpu/gaudi/compose.yaml | 24 ++++++++++++--- DocIndexRetriever/retrieval_tool.py | 19 ++++++++++++ .../tests/test_compose_on_gaudi.sh | 3 ++ .../tests/test_compose_on_xeon.sh | 3 ++ .../test_compose_without_rerank_on_xeon.sh | 2 ++ 7 files changed, 86 insertions(+), 14 deletions(-) diff --git a/DocIndexRetriever/docker_compose/intel/cpu/xeon/compose.yaml b/DocIndexRetriever/docker_compose/intel/cpu/xeon/compose.yaml index 9fe1ed9621..fdd9856031 100644 --- a/DocIndexRetriever/docker_compose/intel/cpu/xeon/compose.yaml +++ b/DocIndexRetriever/docker_compose/intel/cpu/xeon/compose.yaml @@ -28,8 +28,10 @@ services: INDEX_NAME: ${INDEX_NAME} TEI_ENDPOINT: ${TEI_EMBEDDING_ENDPOINT} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + LOGFLAG: ${LOGFLAG} tei-embedding-service: image: ghcr.io/huggingface/text-embeddings-inference:cpu-1.5 + entrypoint: /bin/sh -c "apt-get update && apt-get install -y curl && text-embeddings-router --json-output --model-id ${EMBEDDING_MODEL_ID} --auto-truncate" container_name: tei-embedding-server ports: - "6006:80" @@ -41,7 +43,12 @@ services: http_proxy: ${http_proxy} https_proxy: ${https_proxy} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} - command: --model-id ${EMBEDDING_MODEL_ID} --auto-truncate + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:6006/health || exit 1"] + interval: 10s + timeout: 10s + retries: 60 embedding: image: ${REGISTRY:-opea}/embedding-tei:${TAG:-latest} container_name: embedding-tei-server @@ -49,13 +56,15 @@ services: - "6000:6000" ipc: host depends_on: - - tei-embedding-service + tei-embedding-service: + condition: service_healthy environment: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} TEI_EMBEDDING_ENDPOINT: ${TEI_EMBEDDING_ENDPOINT} + LOGFLAG: ${LOGFLAG} restart: unless-stopped retriever: image: ${REGISTRY:-opea}/retriever-redis:${TAG:-latest} @@ -73,9 +82,11 @@ services: INDEX_NAME: ${INDEX_NAME} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} TEI_EMBEDDING_ENDPOINT: ${TEI_EMBEDDING_ENDPOINT} + LOGFLAG: ${LOGFLAG} restart: unless-stopped tei-reranking-service: image: ghcr.io/huggingface/text-embeddings-inference:cpu-1.5 + entrypoint: /bin/sh -c "apt-get update && apt-get install -y curl && text-embeddings-router --json-output --model-id ${RERANK_MODEL_ID} --auto-truncate" container_name: tei-reranking-server ports: - "8808:80" @@ -89,12 +100,18 @@ services: HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} HF_HUB_DISABLE_PROGRESS_BARS: 1 HF_HUB_ENABLE_HF_TRANSFER: 0 - command: --model-id ${RERANK_MODEL_ID} --auto-truncate + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:8808/health || exit 1"] + interval: 10s + timeout: 10s + retries: 60 reranking: image: ${REGISTRY:-opea}/reranking-tei:${TAG:-latest} container_name: reranking-tei-xeon-server depends_on: - - tei-reranking-service + tei-reranking-service: + condition: service_healthy ports: - "8000:8000" ipc: host @@ -102,10 +119,12 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} + RERANK_TYPE: ${RERANK_TYPE} TEI_RERANKING_ENDPOINT: ${TEI_RERANKING_ENDPOINT} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} HF_HUB_DISABLE_PROGRESS_BARS: 1 HF_HUB_ENABLE_HF_TRANSFER: 0 + LOGFLAG: ${LOGFLAG} restart: unless-stopped doc-index-retriever-server: image: ${REGISTRY:-opea}/doc-index-retriever:${TAG:-latest} diff --git a/DocIndexRetriever/docker_compose/intel/cpu/xeon/compose_without_rerank.yaml b/DocIndexRetriever/docker_compose/intel/cpu/xeon/compose_without_rerank.yaml index 986fcb41af..41390262ec 100644 --- a/DocIndexRetriever/docker_compose/intel/cpu/xeon/compose_without_rerank.yaml +++ b/DocIndexRetriever/docker_compose/intel/cpu/xeon/compose_without_rerank.yaml @@ -26,22 +26,29 @@ services: REDIS_URL: redis://redis-vector-db:6379 REDIS_HOST: redis-vector-db INDEX_NAME: ${INDEX_NAME:-rag-redis} - TEI_EMBEDDING_ENDPOINT: http://tei-embedding-service:80 + TEI_ENDPOINT: http://tei-embedding-service:80 HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + LOGFLAG: ${LOGFLAG} tei-embedding-service: image: ghcr.io/huggingface/text-embeddings-inference:cpu-1.5 + entrypoint: /bin/sh -c "apt-get update && apt-get install -y curl && text-embeddings-router --json-output --model-id ${EMBEDDING_MODEL_ID} --auto-truncate" container_name: tei-embedding-server ports: - "6006:80" volumes: - - "/home/ligang/models:/data" + - "/mnt/models:/data" shm_size: 1g environment: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} - command: --model-id ${EMBEDDING_MODEL_ID} --auto-truncate + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:6006/health || exit 1"] + interval: 10s + timeout: 10s + retries: 60 embedding: image: ${REGISTRY:-opea}/embedding-tei:${TAG:-latest} container_name: embedding-tei-server @@ -49,13 +56,15 @@ services: - "6000:6000" ipc: host depends_on: - - tei-embedding-service + tei-embedding-service: + condition: service_healthy environment: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} TEI_EMBEDDING_ENDPOINT: http://tei-embedding-service:80 + LOGFLAG: ${LOGFLAG} restart: unless-stopped retriever: image: ${REGISTRY:-opea}/retriever-redis:${TAG:-latest} @@ -73,6 +82,7 @@ services: INDEX_NAME: ${INDEX_NAME:-rag-redis} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} TEI_EMBEDDING_ENDPOINT: http://tei-embedding-service:80 + LOGFLAG: ${LOGFLAG} restart: unless-stopped doc-index-retriever-server: image: ${REGISTRY:-opea}/doc-index-retriever:${TAG:-latest} diff --git a/DocIndexRetriever/docker_compose/intel/hpu/gaudi/compose.yaml b/DocIndexRetriever/docker_compose/intel/hpu/gaudi/compose.yaml index cc63afc678..25903e5f25 100644 --- a/DocIndexRetriever/docker_compose/intel/hpu/gaudi/compose.yaml +++ b/DocIndexRetriever/docker_compose/intel/hpu/gaudi/compose.yaml @@ -29,6 +29,7 @@ services: HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} tei-embedding-service: image: ghcr.io/huggingface/tei-gaudi:1.5.0 + entrypoint: /bin/sh -c "apt-get update && apt-get install -y curl && text-embeddings-router --json-output --model-id ${EMBEDDING_MODEL_ID} --auto-truncate" container_name: tei-embedding-gaudi-server ports: - "8090:80" @@ -47,7 +48,12 @@ services: MAX_WARMUP_SEQUENCE_LENGTH: 512 INIT_HCCL_ON_ACQUIRE: 0 ENABLE_EXPERIMENTAL_FLAGS: true - command: --model-id ${EMBEDDING_MODEL_ID} --auto-truncate + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:8090/health || exit 1"] + interval: 10s + timeout: 10s + retries: 60 embedding: image: ${REGISTRY:-opea}/embedding-tei:${TAG:-latest} container_name: embedding-tei-server @@ -55,12 +61,14 @@ services: - "6000:6000" ipc: host depends_on: - - tei-embedding-service + tei-embedding-service: + condition: service_healthy environment: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} TEI_EMBEDDING_ENDPOINT: ${TEI_EMBEDDING_ENDPOINT} + HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} LOGFLAG: ${LOGFLAG} restart: unless-stopped retriever: @@ -81,6 +89,7 @@ services: restart: unless-stopped tei-reranking-service: image: ghcr.io/huggingface/text-embeddings-inference:cpu-1.5 + entrypoint: /bin/sh -c "apt-get update && apt-get install -y curl && text-embeddings-router --json-output --model-id ${RERANK_MODEL_ID} --auto-truncate" container_name: tei-reranking-gaudi-server ports: - "8808:80" @@ -94,12 +103,18 @@ services: HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} HF_HUB_DISABLE_PROGRESS_BARS: 1 HF_HUB_ENABLE_HF_TRANSFER: 0 - command: --model-id ${RERANK_MODEL_ID} --auto-truncate + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:8808/health || exit 1"] + interval: 10s + timeout: 10s + retries: 60 reranking: image: ${REGISTRY:-opea}/reranking-tei:${TAG:-latest} container_name: reranking-tei-gaudi-server depends_on: - - tei-reranking-service + tei-reranking-service: + condition: service_healthy ports: - "8000:8000" ipc: host @@ -107,6 +122,7 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} + RERANK_TYPE: ${RERANK_TYPE} TEI_RERANKING_ENDPOINT: ${TEI_RERANKING_ENDPOINT} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} HF_HUB_DISABLE_PROGRESS_BARS: 1 diff --git a/DocIndexRetriever/retrieval_tool.py b/DocIndexRetriever/retrieval_tool.py index 3c3d8a5571..b627f45537 100644 --- a/DocIndexRetriever/retrieval_tool.py +++ b/DocIndexRetriever/retrieval_tool.py @@ -21,10 +21,29 @@ RERANK_SERVICE_PORT = os.getenv("RERANK_SERVICE_PORT", 8000) +def align_inputs(self, inputs, cur_node, runtime_graph, llm_parameters_dict, **kwargs): + if self.services[cur_node].service_type == ServiceType.EMBEDDING: + inputs["input"] = inputs["text"] + del inputs["text"] + return inputs + + +def align_outputs(self, data, cur_node, inputs, runtime_graph, llm_parameters_dict, **kwargs): + next_data = {} + if self.services[cur_node].service_type == ServiceType.EMBEDDING: + next_data = {"text": inputs["input"], "embedding": [item["embedding"] for item in data["data"]]} + else: + next_data = data + + return next_data + + class RetrievalToolService: def __init__(self, host="0.0.0.0", port=8000): self.host = host self.port = port + ServiceOrchestrator.align_inputs = align_inputs + ServiceOrchestrator.align_outputs = align_outputs self.megaservice = ServiceOrchestrator() self.endpoint = str(MegaServiceEndpoint.RETRIEVALTOOL) diff --git a/DocIndexRetriever/tests/test_compose_on_gaudi.sh b/DocIndexRetriever/tests/test_compose_on_gaudi.sh index a23d00013a..7207b9ffab 100644 --- a/DocIndexRetriever/tests/test_compose_on_gaudi.sh +++ b/DocIndexRetriever/tests/test_compose_on_gaudi.sh @@ -46,6 +46,9 @@ function start_services() { export RETRIEVER_SERVICE_HOST_IP=${ip_address} export RERANK_SERVICE_HOST_IP=${ip_address} export LLM_SERVICE_HOST_IP=${ip_address} + export host_ip=${ip_address} + export RERANK_TYPE="tei" + export LOGFLAG=true # Start Docker Containers docker compose up -d diff --git a/DocIndexRetriever/tests/test_compose_on_xeon.sh b/DocIndexRetriever/tests/test_compose_on_xeon.sh index 72dc61b706..ae3ba17d5a 100644 --- a/DocIndexRetriever/tests/test_compose_on_xeon.sh +++ b/DocIndexRetriever/tests/test_compose_on_xeon.sh @@ -47,6 +47,9 @@ function start_services() { export RETRIEVER_SERVICE_HOST_IP=${ip_address} export RERANK_SERVICE_HOST_IP=${ip_address} export LLM_SERVICE_HOST_IP=${ip_address} + export host_ip=${ip_address} + export RERANK_TYPE="tei" + export LOGFLAG=true # Start Docker Containers docker compose up -d diff --git a/DocIndexRetriever/tests/test_compose_without_rerank_on_xeon.sh b/DocIndexRetriever/tests/test_compose_without_rerank_on_xeon.sh index a9ab2db799..fd3634f58d 100644 --- a/DocIndexRetriever/tests/test_compose_without_rerank_on_xeon.sh +++ b/DocIndexRetriever/tests/test_compose_without_rerank_on_xeon.sh @@ -42,6 +42,8 @@ function start_services() { export MEGA_SERVICE_HOST_IP=${ip_address} export EMBEDDING_SERVICE_HOST_IP=${ip_address} export RETRIEVER_SERVICE_HOST_IP=${ip_address} + export host_ip=${ip_address} + export LOGFLAG=true # Start Docker Containers docker compose -f compose_without_rerank.yaml up -d From 51f6a12ea84e5a0236cb1407c9047fcf7710e9eb Mon Sep 17 00:00:00 2001 From: Liang Lv Date: Thu, 2 Jan 2025 09:33:26 +0800 Subject: [PATCH 25/26] Update CodeTrans for GenAIComps Refactor (#1309) Signed-off-by: lvliang-intel Co-authored-by: WenjiaoYue --- .../docker_compose/amd/gpu/rocm/compose.yaml | 12 +++++- .../intel/cpu/xeon/compose.yaml | 12 +++++- .../intel/hpu/gaudi/compose.yaml | 11 +++++- CodeTrans/tests/test_compose_on_gaudi.sh | 1 + CodeTrans/tests/test_compose_on_rocm.sh | 1 + CodeTrans/tests/test_compose_on_xeon.sh | 1 + CodeTrans/ui/svelte/src/routes/+page.svelte | 39 ++++++++++--------- 7 files changed, 55 insertions(+), 22 deletions(-) diff --git a/CodeTrans/docker_compose/amd/gpu/rocm/compose.yaml b/CodeTrans/docker_compose/amd/gpu/rocm/compose.yaml index cfad48a4d6..e58041f808 100644 --- a/CodeTrans/docker_compose/amd/gpu/rocm/compose.yaml +++ b/CodeTrans/docker_compose/amd/gpu/rocm/compose.yaml @@ -17,6 +17,12 @@ services: TGI_LLM_ENDPOINT: ${CODETRANS_TGI_LLM_ENDPOINT} HUGGING_FACE_HUB_TOKEN: ${CODEGEN_HUGGINGFACEHUB_API_TOKEN} HUGGINGFACEHUB_API_TOKEN: ${CODEGEN_HUGGINGFACEHUB_API_TOKEN} + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:8008/health || exit 1"] + interval: 10s + timeout: 10s + retries: 100 devices: - /dev/kfd:/dev/kfd - /dev/dri/:/dev/dri/ @@ -31,6 +37,9 @@ services: codetrans-llm-server: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: codetrans-llm-server + depends_on: + codetrans-tgi-service: + condition: service_healthy ports: - "${CODETRANS_LLM_SERVICE_PORT:-9000}:9000" ipc: host @@ -38,7 +47,8 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: "http://codetrans-tgi-service" + LLM_ENDPOINT: "http://codetrans-tgi-service" + LLM_MODEL_ID: ${CODETRANS_LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${CODETRANS_HUGGINGFACEHUB_API_TOKEN} restart: unless-stopped codetrans-backend-server: diff --git a/CodeTrans/docker_compose/intel/cpu/xeon/compose.yaml b/CodeTrans/docker_compose/intel/cpu/xeon/compose.yaml index 16c05cf363..896243786e 100644 --- a/CodeTrans/docker_compose/intel/cpu/xeon/compose.yaml +++ b/CodeTrans/docker_compose/intel/cpu/xeon/compose.yaml @@ -15,10 +15,19 @@ services: http_proxy: ${http_proxy} https_proxy: ${https_proxy} HF_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + host_ip: ${host_ip} + healthcheck: + test: ["CMD-SHELL", "curl -f http://$host_ip:8008/health || exit 1"] + interval: 10s + timeout: 10s + retries: 100 command: --model-id ${LLM_MODEL_ID} --cuda-graphs 0 llm: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: llm-tgi-server + depends_on: + tgi-service: + condition: service_healthy ports: - "9000:9000" ipc: host @@ -26,7 +35,8 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_MODEL_ID: ${LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} restart: unless-stopped codetrans-xeon-backend-server: diff --git a/CodeTrans/docker_compose/intel/hpu/gaudi/compose.yaml b/CodeTrans/docker_compose/intel/hpu/gaudi/compose.yaml index 2f87d10c24..c1c6c4c537 100644 --- a/CodeTrans/docker_compose/intel/hpu/gaudi/compose.yaml +++ b/CodeTrans/docker_compose/intel/hpu/gaudi/compose.yaml @@ -20,6 +20,11 @@ services: LIMIT_HPU_GRAPH: true USE_FLASH_ATTENTION: true FLASH_ATTENTION_RECOMPUTE: true + healthcheck: + test: ["CMD-SHELL", "sleep 500 && exit 0"] + interval: 1s + timeout: 505s + retries: 1 runtime: habana cap_add: - SYS_NICE @@ -28,6 +33,9 @@ services: llm: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} container_name: llm-tgi-gaudi-server + depends_on: + tgi-service: + condition: service_healthy ports: - "9000:9000" ipc: host @@ -35,7 +43,8 @@ services: no_proxy: ${no_proxy} http_proxy: ${http_proxy} https_proxy: ${https_proxy} - TGI_LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_ENDPOINT: ${TGI_LLM_ENDPOINT} + LLM_MODEL_ID: ${LLM_MODEL_ID} HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} restart: unless-stopped codetrans-gaudi-backend-server: diff --git a/CodeTrans/tests/test_compose_on_gaudi.sh b/CodeTrans/tests/test_compose_on_gaudi.sh index 5625e2276d..ecab66c6f2 100644 --- a/CodeTrans/tests/test_compose_on_gaudi.sh +++ b/CodeTrans/tests/test_compose_on_gaudi.sh @@ -43,6 +43,7 @@ function start_services() { export BACKEND_SERVICE_IP=${ip_address} export BACKEND_SERVICE_PORT=7777 export NGINX_PORT=80 + export host_ip=${ip_address} sed -i "s/backend_address/$ip_address/g" $WORKPATH/ui/svelte/.env diff --git a/CodeTrans/tests/test_compose_on_rocm.sh b/CodeTrans/tests/test_compose_on_rocm.sh index 14ed64a7e4..322e9174c0 100644 --- a/CodeTrans/tests/test_compose_on_rocm.sh +++ b/CodeTrans/tests/test_compose_on_rocm.sh @@ -45,6 +45,7 @@ function start_services() { export CODETRANS_BACKEND_SERVICE_PORT=7777 export CODETRANS_NGINX_PORT=8088 export CODETRANS_BACKEND_SERVICE_URL="http://${ip_address}:${CODETRANS_BACKEND_SERVICE_PORT}/v1/codetrans" + export host_ip=${ip_address} sed -i "s/backend_address/$ip_address/g" $WORKPATH/ui/svelte/.env diff --git a/CodeTrans/tests/test_compose_on_xeon.sh b/CodeTrans/tests/test_compose_on_xeon.sh index ea3985422c..1d883dfdbc 100644 --- a/CodeTrans/tests/test_compose_on_xeon.sh +++ b/CodeTrans/tests/test_compose_on_xeon.sh @@ -42,6 +42,7 @@ function start_services() { export BACKEND_SERVICE_IP=${ip_address} export BACKEND_SERVICE_PORT=7777 export NGINX_PORT=80 + export host_ip=${ip_address} sed -i "s/backend_address/$ip_address/g" $WORKPATH/ui/svelte/.env diff --git a/CodeTrans/ui/svelte/src/routes/+page.svelte b/CodeTrans/ui/svelte/src/routes/+page.svelte index 46918c9457..fd6be39310 100644 --- a/CodeTrans/ui/svelte/src/routes/+page.svelte +++ b/CodeTrans/ui/svelte/src/routes/+page.svelte @@ -47,16 +47,16 @@ const languagesTag = { // 'TypeScript': typescript, - 'Python': python, - 'C': c, - 'C++': cpp, + Python: python, + C: c, + "C++": cpp, // 'C#': csharp, - 'Go': go, - 'Java': java, - 'JavaScript': javascript, + Go: go, + Java: java, + JavaScript: javascript, // 'Swift': swift, // 'Ruby': ruby, - 'Rust': rust, + Rust: rust, // 'PHP': php, // 'Kotlin': kotlin, // 'Objective-C': objectivec, @@ -103,21 +103,20 @@ const eventSource = await fetchTextStream(input, langFrom, langTo); eventSource.addEventListener("message", (e: any) => { - let Msg = e.data; - console.log('Msg', Msg); + let res = e.data; - if (Msg.startsWith("b")) { - const trimmedData = Msg.slice(2, -1); - if (trimmedData.includes("'''")) { + if (res === "[DONE]") { + deleteFlag = false; + loading = false; + } else { + let Msg = JSON.parse(res).choices[0].text; + if (Msg.includes("'''")) { deleteFlag = true; - } else if (deleteFlag && trimmedData.includes("\\n")) { + } else if (deleteFlag && Msg.includes("\\n")) { deleteFlag = false; - } else if (trimmedData !== "" && !deleteFlag) { - output += trimmedData.replace(/\\n/g, "\n"); + } else if (Msg !== "" && !deleteFlag) { + output += Msg.replace(/\\n/g, "\n"); } - } else if (Msg === "[DONE]") { - deleteFlag = false; - loading = false; } }); eventSource.stream(); @@ -202,7 +201,9 @@ data-testid="code-output" > {#if output !== ""} -
+