From 2c48bc80c73285388ef333852f1893f465dd499f Mon Sep 17 00:00:00 2001 From: Huiling Bao Date: Mon, 9 Sep 2024 22:37:17 +0800 Subject: [PATCH 001/145] Add Megaservice support for MMRAG VideoRAGQnA usecase (#603) * add videoragqna gateway Signed-off-by: BaoHuiling * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * add test script for gateway Signed-off-by: BaoHuiling * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * rm ip Signed-off-by: BaoHuiling * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fix exist bug Signed-off-by: BaoHuiling * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Signed-off-by: BaoHuiling Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: kevinintel --- comps/__init__.py | 1 + comps/cores/mega/constants.py | 1 + comps/cores/mega/gateway.py | 49 ++++++++++++ .../multimodal_clip/embeddings_clip.py | 3 +- .../langchain/vdms/retriever_vdms.py | 2 +- .../retrievers/langchain/vdms/vdms_config.py | 2 +- ...ce_orchestrator_with_videoragqnagateway.py | 80 +++++++++++++++++++ 7 files changed, 135 insertions(+), 3 deletions(-) create mode 100644 tests/cores/mega/test_service_orchestrator_with_videoragqnagateway.py diff --git a/comps/__init__.py b/comps/__init__.py index 85c8456c03..a828cc642d 100644 --- a/comps/__init__.py +++ b/comps/__init__.py @@ -45,6 +45,7 @@ AudioQnAGateway, RetrievalToolGateway, FaqGenGateway, + VideoRAGQnAGateway, VisualQnAGateway, MultimodalRAGWithVideosGateway, ) diff --git a/comps/cores/mega/constants.py b/comps/cores/mega/constants.py index b95a56b081..a23fdaf558 100644 --- a/comps/cores/mega/constants.py +++ b/comps/cores/mega/constants.py @@ -38,6 +38,7 @@ class MegaServiceEndpoint(Enum): CHAT_QNA = "/v1/chatqna" AUDIO_QNA = "/v1/audioqna" VISUAL_QNA = "/v1/visualqna" + VIDEO_RAG_QNA = "/v1/videoragqna" CODE_GEN = "/v1/codegen" CODE_TRANS = "/v1/codetrans" DOC_SUMMARY = "/v1/docsum" diff --git a/comps/cores/mega/gateway.py b/comps/cores/mega/gateway.py index 97f169c426..2958a245f5 100644 --- a/comps/cores/mega/gateway.py +++ b/comps/cores/mega/gateway.py @@ -548,6 +548,55 @@ async def handle_request(self, request: Request): return ChatCompletionResponse(model="visualqna", choices=choices, usage=usage) +class VideoRAGQnAGateway(Gateway): + def __init__(self, megaservice, host="0.0.0.0", port=8888): + super().__init__( + megaservice, + host, + port, + str(MegaServiceEndpoint.VIDEO_RAG_QNA), + ChatCompletionRequest, + ChatCompletionResponse, + ) + + async def handle_request(self, request: Request): + data = await request.json() + stream_opt = data.get("stream", False) + chat_request = ChatCompletionRequest.parse_obj(data) + prompt = self._handle_message(chat_request.messages) + parameters = LLMParams( + max_new_tokens=chat_request.max_tokens if chat_request.max_tokens else 1024, + top_k=chat_request.top_k if chat_request.top_k else 10, + top_p=chat_request.top_p if chat_request.top_p else 0.95, + temperature=chat_request.temperature if chat_request.temperature else 0.01, + repetition_penalty=chat_request.presence_penalty if chat_request.presence_penalty else 1.03, + streaming=stream_opt, + ) + result_dict, runtime_graph = await self.megaservice.schedule( + initial_inputs={"text": prompt}, llm_parameters=parameters + ) + for node, response in result_dict.items(): + # Here it suppose the last microservice in the megaservice is LVM. + if ( + isinstance(response, StreamingResponse) + and node == list(self.megaservice.services.keys())[-1] + and self.megaservice.services[node].service_type == ServiceType.LVM + ): + return response + last_node = runtime_graph.all_leaves()[-1] + response = result_dict[last_node]["text"] + choices = [] + usage = UsageInfo() + choices.append( + ChatCompletionResponseChoice( + index=0, + message=ChatMessage(role="assistant", content=response), + finish_reason="stop", + ) + ) + return ChatCompletionResponse(model="videoragqna", choices=choices, usage=usage) + + class RetrievalToolGateway(Gateway): """embed+retrieve+rerank.""" diff --git a/comps/embeddings/multimodal_clip/embeddings_clip.py b/comps/embeddings/multimodal_clip/embeddings_clip.py index 39db85b6e1..f010245dd2 100644 --- a/comps/embeddings/multimodal_clip/embeddings_clip.py +++ b/comps/embeddings/multimodal_clip/embeddings_clip.py @@ -27,7 +27,8 @@ def embed_query(self, texts): return text_features def get_embedding_length(self): - return len(self.embed_query("sample_text")) + text_features = self.embed_query("sample_text") + return text_features.shape[1] def get_image_embeddings(self, images): """Input is list of images.""" diff --git a/comps/retrievers/langchain/vdms/retriever_vdms.py b/comps/retrievers/langchain/vdms/retriever_vdms.py index 8dae6f8f77..5eaa29ad65 100644 --- a/comps/retrievers/langchain/vdms/retriever_vdms.py +++ b/comps/retrievers/langchain/vdms/retriever_vdms.py @@ -89,7 +89,7 @@ def retrieve(input: EmbedDoc) -> SearchedMultimodalDoc: # Create vectorstore if use_clip: - embeddings = vCLIP({"model_name": "openai/clip-vit-base-patch32", "num_frm": 4}) + embeddings = vCLIP({"model_name": "openai/clip-vit-base-patch32", "num_frm": 64}) dimensions = embeddings.get_embedding_length() elif tei_embedding_endpoint: embeddings = HuggingFaceEndpointEmbeddings(model=tei_embedding_endpoint, huggingfacehub_api_token=hf_token) diff --git a/comps/retrievers/langchain/vdms/vdms_config.py b/comps/retrievers/langchain/vdms/vdms_config.py index d388add9a7..5b6a852139 100644 --- a/comps/retrievers/langchain/vdms/vdms_config.py +++ b/comps/retrievers/langchain/vdms/vdms_config.py @@ -77,4 +77,4 @@ def get_boolean_env_var(var_name, default_value=False): # VDMS_SCHEMA = os.getenv("VDMS_SCHEMA", "vdms_schema.yml") # INDEX_SCHEMA = os.path.join(parent_dir, VDMS_SCHEMA) SEARCH_ENGINE = "FaissFlat" -DISTANCE_STRATEGY = "L2" +DISTANCE_STRATEGY = "IP" diff --git a/tests/cores/mega/test_service_orchestrator_with_videoragqnagateway.py b/tests/cores/mega/test_service_orchestrator_with_videoragqnagateway.py new file mode 100644 index 0000000000..a9bdcdb332 --- /dev/null +++ b/tests/cores/mega/test_service_orchestrator_with_videoragqnagateway.py @@ -0,0 +1,80 @@ +# Copyright (C) 2024 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 + +import json +import unittest + +from fastapi.responses import StreamingResponse + +from comps import ( + ServiceOrchestrator, + ServiceType, + TextDoc, + VideoRAGQnAGateway, + opea_microservices, + register_microservice, +) +from comps.cores.proto.docarray import LLMParams + + +@register_microservice(name="s1", host="0.0.0.0", port=8083, endpoint="/v1/add") +async def s1_add(request: TextDoc) -> TextDoc: + req = request.model_dump_json() + req_dict = json.loads(req) + text = req_dict["text"] + text += "opea " + return {"text": text} + + +@register_microservice(name="s2", host="0.0.0.0", port=8084, endpoint="/v1/add", service_type=ServiceType.LVM) +async def s2_add(request: TextDoc) -> TextDoc: + req = request.model_dump_json() + req_dict = json.loads(req) + text = req_dict["text"] + + def streamer(text): + yield f"{text}".encode("utf-8") + for i in range(3): + yield "project!".encode("utf-8") + + return StreamingResponse(streamer(text), media_type="text/event-stream") + + +class TestServiceOrchestrator(unittest.IsolatedAsyncioTestCase): + def setUp(self): + self.s1 = opea_microservices["s1"] + self.s2 = opea_microservices["s2"] + self.s1.start() + self.s2.start() + + self.service_builder = ServiceOrchestrator() + + self.service_builder.add(opea_microservices["s1"]).add(opea_microservices["s2"]) + self.service_builder.flow_to(self.s1, self.s2) + self.gateway = VideoRAGQnAGateway(self.service_builder, port=9898) + + def tearDown(self): + self.s1.stop() + self.s2.stop() + self.gateway.stop() + + async def test_schedule(self): + result_dict, _ = await self.service_builder.schedule( + initial_inputs={"text": "hello, "}, llm_parameters=LLMParams(streaming=True) + ) + streaming_response = result_dict[self.s2.name] + + if isinstance(streaming_response, StreamingResponse): + content = b"" + async for chunk in streaming_response.body_iterator: + content += chunk + final_text = content.decode("utf-8") + + print("Streamed content from s2: ", final_text) + + expected_result = "hello, opea project!project!project!" + self.assertEqual(final_text, expected_result) + + +if __name__ == "__main__": + unittest.main() From d76751ad8184831421b2bebbc347c5cce5de581b Mon Sep 17 00:00:00 2001 From: "Dong, Bo" <472452063@qq.com> Date: Tue, 10 Sep 2024 12:08:42 +0800 Subject: [PATCH 002/145] optimize rerank with backend ref (#579) * add rerank with neural speed Signed-off-by: Dong, Bo1 * add the code Signed-off-by: Dong, Bo1 * add the code Signed-off-by: Dong, Bo1 * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci Signed-off-by: Dong, Bo1 * fix mismatched response format w/wo streaming guardrails (#568) * fix mismatched response format w/wo streaming guardrails * fix & debug * fix & rm debug * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Signed-off-by: Dong, Bo1 * Fix guardrails out handle logics for space linebreak and quote (#571) * fix mismatched response format w/wo streaming guardrails * fix & debug * fix & rm debug * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * debug * debug * debug * fix pre-space and linebreak * fix pre-space and linebreak * fix single/double quote * fix single/double quote * remove debug * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Signed-off-by: Dong, Bo1 * BUG FIX: LVM security fix (#572) * add url validator Signed-off-by: BaoHuiling * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * add validation for video_url Signed-off-by: BaoHuiling --------- Signed-off-by: BaoHuiling Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Signed-off-by: Dong, Bo1 * Modify output messages. (#569) * Reduced output. Signed-off-by: zepan * Output the location where the modified Dockerfile file is referenced. Signed-off-by: zepan * for test Signed-off-by: zepan * Restore test file. Signed-off-by: zepan --------- Signed-off-by: zepan Signed-off-by: Dong, Bo1 * refine logging code. (#559) * add ut and refine logging code. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * update microservice port. --------- Co-authored-by: root Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Signed-off-by: Dong, Bo1 * adding lancedb to langchain vectorstores (#291) * adding lancedb to langchain vectorstores Signed-off-by: sharanshirodkar7 * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Signed-off-by: sharanshirodkar7 Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: lvliang-intel Signed-off-by: Dong, Bo1 * Refine Dataprep Milvus MS (#570) Signed-off-by: letonghan Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Signed-off-by: Dong, Bo1 * final version Signed-off-by: Dong, Bo1 * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci Signed-off-by: Dong, Bo1 * update the readme Signed-off-by: Dong, Bo1 * add the sign Signed-off-by: Dong, Bo1 * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci Signed-off-by: Dong, Bo1 * fix error for pre ci Signed-off-by: Dong, Bo1 * add the ut Signed-off-by: Dong, Bo1 * update docker file Signed-off-by: Dong, Bo1 * update CI test log achieve (#577) Signed-off-by: chensuyue Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Signed-off-by: Dong, Bo1 * Multimodal dataprep (#575) * multimodal embedding for MM RAG for videos Signed-off-by: Tiep Le * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * develop data prep first commit Signed-off-by: Tiep Le * develop dataprep microservice for multimodal data Signed-off-by: Tiep Le * multimodal langchain for dataprep Signed-off-by: Tiep Le * update README Signed-off-by: Tiep Le * update README Signed-off-by: Tiep Le * update README Signed-off-by: Tiep Le * update README Signed-off-by: Tiep Le * cosmetic Signed-off-by: Tiep Le * test for multimodal dataprep Signed-off-by: Tiep Le * update test Signed-off-by: Tiep Le * update test Signed-off-by: Tiep Le * update test Signed-off-by: Tiep Le * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * cosmetic update Signed-off-by: Tiep Le * remove langsmith Signed-off-by: Tiep Le * update API to remove /dataprep from API names and remove langsmith Signed-off-by: Tiep Le * update test Signed-off-by: Tiep Le * update the error message per PR reviewer Signed-off-by: Tiep Le --------- Signed-off-by: Tiep Le Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Signed-off-by: Dong, Bo1 * add: Pathway vector store and retriever as LangChain component (#342) * nb Signed-off-by: Berke * init changes Signed-off-by: Berke * docker Signed-off-by: Berke * example data Signed-off-by: Berke * docs(readme): update, add commands Signed-off-by: Berke * fix: formatting, data sources Signed-off-by: Berke * docs(readme): update instructions, add comments Signed-off-by: Berke * fix: rm unused parts Signed-off-by: Berke * fix: image name, compose env vars Signed-off-by: Berke * fix: rm unused part Signed-off-by: Berke * fix: logging name Signed-off-by: Berke * fix: env var Signed-off-by: Berke * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci Signed-off-by: Berke * fix: rename pw docker Signed-off-by: Berke * docs(readme): update input sources Signed-off-by: Berke * nb Signed-off-by: Berke * init changes Signed-off-by: Berke * fix: formatting, data sources Signed-off-by: Berke * docs(readme): update instructions, add comments Signed-off-by: Berke * fix: rm unused part Signed-off-by: Berke * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci Signed-off-by: Berke * fix: rename pw docker Signed-off-by: Berke * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci Signed-off-by: Berke * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * feat: mv vector store, naming, clarify instructions, improve ingestion components Signed-off-by: Berke * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * tests: add pw retriever test fix: update docker to include libmagic Signed-off-by: Berke * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * implement suggestions from review, entrypoint, reqs, comments, https_proxy. Signed-off-by: Berke * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fix: update docker tags in test and readme Signed-off-by: Berke * tests: add separate pathway vectorstore test Signed-off-by: Berke --------- Signed-off-by: Berke Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Sihan Chen <39623753+Spycsh@users.noreply.github.com> Signed-off-by: Dong, Bo1 * Add local Rerank microservice for VideoRAGQnA (#496) * initial commit Signed-off-by: BaoHuiling * save Signed-off-by: BaoHuiling * add readme, test script, fix bug Signed-off-by: BaoHuiling * update video URL Signed-off-by: BaoHuiling * use default Signed-off-by: BaoHuiling * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * update core dependency Signed-off-by: BaoHuiling * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * use p 5000 Signed-off-by: BaoHuiling * use 5037 Signed-off-by: BaoHuiling * update ctnr name Signed-off-by: BaoHuiling * remove langsmith Signed-off-by: BaoHuiling * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * add rerank algo desc in readme Signed-off-by: BaoHuiling * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Signed-off-by: BaoHuiling Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: chen, suyue Signed-off-by: Dong, Bo1 * Add Scan Container. (#560) Signed-off-by: zepan Signed-off-by: Dong, Bo1 * fix SearchedMultimodalDoc in docarray (#583) Signed-off-by: BaoHuiling Signed-off-by: Dong, Bo1 * update image build yaml (#529) Signed-off-by: chensuyue Signed-off-by: zepan Signed-off-by: Dong, Bo1 * add microservice for intent detection (#131) * add microservice for intent detection Signed-off-by: Liangyx2 * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * update license copyright Signed-off-by: Liangyx2 * add ut Signed-off-by: Liangyx2 * refine Signed-off-by: Liangyx2 * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * update folder Signed-off-by: Liangyx2 * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fix test Signed-off-by: Liangyx2 --------- Signed-off-by: Liangyx2 Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Signed-off-by: Dong, Bo1 * Make the scanning method optional. (#580) Signed-off-by: zepan Signed-off-by: Dong, Bo1 * add code owners (#586) Signed-off-by: Dong, Bo1 * remove revision for tei (#584) Signed-off-by: letonghan Signed-off-by: Dong, Bo1 * Bug fix (#591) * Check if the document exists. Signed-off-by: zepan * Add flag output. Signed-off-by: zepan * Modify nginx readme. Signed-off-by: zepan * Modify document detection logic Signed-off-by: zepan --------- Signed-off-by: zepan Signed-off-by: Dong, Bo1 * fix ut issue Signed-off-by: Dong, Bo1 * merge the main Signed-off-by: Dong, Bo1 * align with new pipeline Signed-off-by: Dong, Bo1 * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * align with newest pipeline Signed-off-by: Dong, Bo1 * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * upload code Signed-off-by: Dong, Bo1 * update the ut Signed-off-by: Dong, Bo1 * add docker path Signed-off-by: Dong, Bo1 * add the docker path Signed-off-by: Dong, Bo1 --------- Signed-off-by: Dong, Bo1 Signed-off-by: BaoHuiling Signed-off-by: zepan Signed-off-by: sharanshirodkar7 Signed-off-by: letonghan Signed-off-by: chensuyue Signed-off-by: Tiep Le Signed-off-by: Berke Signed-off-by: Liangyx2 Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Sihan Chen <39623753+Spycsh@users.noreply.github.com> Co-authored-by: Huiling Bao Co-authored-by: ZePan110 Co-authored-by: lkk <33276950+lkk12014402@users.noreply.github.com> Co-authored-by: root Co-authored-by: Sharan Shirodkar <91109427+sharanshirodkar7@users.noreply.github.com> Co-authored-by: lvliang-intel Co-authored-by: Letong Han <106566639+letonghan@users.noreply.github.com> Co-authored-by: chen, suyue Co-authored-by: Tiep Le <97980157+tileintel@users.noreply.github.com> Co-authored-by: berkecanrizai <63911408+berkecanrizai@users.noreply.github.com> Co-authored-by: Liangyx2 Co-authored-by: kevinintel --- .../docker/compose/reranks-compose-cd.yaml | 8 ++ comps/reranks/neural-speed/README.md | 32 +++++++ comps/reranks/neural-speed/__init__.py | 2 + comps/reranks/neural-speed/docker/Dockerfile | 31 +++++++ .../docker/docker_compose_embedding.yaml | 22 +++++ .../neuralspeed-docker/Dockerfile | 27 ++++++ .../neural-speed/neuralspeed-docker/client.py | 35 +++++++ .../neuralspeed-docker/client_multibatch.py | 45 +++++++++ .../neuralspeed-docker/requirements.txt | 16 ++++ .../neural-speed/neuralspeed-docker/server.py | 91 ++++++++++++++++++ comps/reranks/neural-speed/requirements.txt | 11 +++ .../neural-speed/reranking_neuralspeed_svc.py | 93 +++++++++++++++++++ tests/test_reranks_mosec-neuralspeed.sh | 84 +++++++++++++++++ 13 files changed, 497 insertions(+) create mode 100644 comps/reranks/neural-speed/README.md create mode 100644 comps/reranks/neural-speed/__init__.py create mode 100644 comps/reranks/neural-speed/docker/Dockerfile create mode 100644 comps/reranks/neural-speed/docker/docker_compose_embedding.yaml create mode 100644 comps/reranks/neural-speed/neuralspeed-docker/Dockerfile create mode 100644 comps/reranks/neural-speed/neuralspeed-docker/client.py create mode 100644 comps/reranks/neural-speed/neuralspeed-docker/client_multibatch.py create mode 100644 comps/reranks/neural-speed/neuralspeed-docker/requirements.txt create mode 100644 comps/reranks/neural-speed/neuralspeed-docker/server.py create mode 100644 comps/reranks/neural-speed/requirements.txt create mode 100644 comps/reranks/neural-speed/reranking_neuralspeed_svc.py create mode 100644 tests/test_reranks_mosec-neuralspeed.sh diff --git a/.github/workflows/docker/compose/reranks-compose-cd.yaml b/.github/workflows/docker/compose/reranks-compose-cd.yaml index d805b570e6..0cebf4ca36 100644 --- a/.github/workflows/docker/compose/reranks-compose-cd.yaml +++ b/.github/workflows/docker/compose/reranks-compose-cd.yaml @@ -14,3 +14,11 @@ services: build: dockerfile: comps/reranks/langchain-mosec/docker/Dockerfile image: ${REGISTRY:-opea}/reranking-langchain-mosec:${TAG:-latest} + reranking-mosec-neural-speed: + build: + dockerfile: comps/reranks/neural-speed/docker/Dockerfile + image: ${REGISTRY:-opea}/reranking-mosec-neural-speed:${TAG:-latest} + reranking-mosec-neural-speed-endpoint: + build: + dockerfile: comps/reranks/neural-speed/neuralspeed-docker/Dockerfile + image: ${REGISTRY:-opea}/reranking-mosec-neural-speed-endpoint:${TAG:-latest} diff --git a/comps/reranks/neural-speed/README.md b/comps/reranks/neural-speed/README.md new file mode 100644 index 0000000000..c1841e16aa --- /dev/null +++ b/comps/reranks/neural-speed/README.md @@ -0,0 +1,32 @@ +# build Mosec endpoint docker image + +``` +docker build --build-arg http_proxy=$http_proxy --build-arg https_proxy=$https_proxy -t langchain-mosec:neuralspeed-reranks -f comps/reranks/neural-speed/neuralspeed-docker/Dockerfile . +``` + +# build Reranking microservice docker image + +``` +docker build --build-arg http_proxy=$http_proxy --build-arg https_proxy=$https_proxy -t opea/reranking-langchain-mosec:neuralspeed -f comps/reranks/neural-speed/docker/Dockerfile . +``` + +Note: Please contact us to request model files before building images. + +# launch Mosec endpoint docker container + +``` +docker run -d --name="reranking-langchain-mosec-endpoint" -p 6001:8000 langchain-mosec:neuralspeed-reranks +``` + +# launch Reranking microservice docker container + +``` +export MOSEC_RERANKING_ENDPOINT=http://127.0.0.1:6001 +docker run -d --name="reranking-langchain-mosec-server" -e http_proxy=$http_proxy -e https_proxy=$https_proxy -p 6000:8000 --ipc=host -e MOSEC_RERANKING_ENDPOINT=$MOSEC_RERANKING_ENDPOINT opea/reranking-langchain-mosec:neuralspeed +``` + +# run client test + +``` +curl http://localhost:6000/v1/reranking -X POST -d '{"initial_query":"What is Deep Learning?", "retrieved_docs": [{"text":"Deep Learning is not..."}, {"text":"Deep learning is..."}]}' -H 'Content-Type: application/json' +``` diff --git a/comps/reranks/neural-speed/__init__.py b/comps/reranks/neural-speed/__init__.py new file mode 100644 index 0000000000..916f3a44b2 --- /dev/null +++ b/comps/reranks/neural-speed/__init__.py @@ -0,0 +1,2 @@ +# Copyright (C) 2024 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 diff --git a/comps/reranks/neural-speed/docker/Dockerfile b/comps/reranks/neural-speed/docker/Dockerfile new file mode 100644 index 0000000000..8ffed65ec9 --- /dev/null +++ b/comps/reranks/neural-speed/docker/Dockerfile @@ -0,0 +1,31 @@ + +# Copyright (C) 2024 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 + +FROM langchain/langchain:latest + +RUN apt-get update -y && apt-get install -y --no-install-recommends --fix-missing \ + libgl1-mesa-glx \ + libjemalloc-dev \ + vim + +RUN useradd -m -s /bin/bash user && \ + mkdir -p /home/user && \ + chown -R user /home/user/ + +USER user + +COPY comps /home/user/comps + +RUN pip install --no-cache-dir --upgrade pip && \ + pip install --no-cache-dir -r /home/user/comps/reranks/neural-speed/requirements.txt + +RUN pip3 install llmspec mosec msgspec httpx requests +RUN pip3 install torch==2.2.2 --trusted-host download.pytorch.org --index-url https://download.pytorch.org/whl/cpu + +ENV PYTHONPATH=$PYTHONPATH:/home/user + +WORKDIR /home/user/comps/reranks/neural-speed + +ENTRYPOINT ["python", "reranking_neuralspeed_svc.py"] + diff --git a/comps/reranks/neural-speed/docker/docker_compose_embedding.yaml b/comps/reranks/neural-speed/docker/docker_compose_embedding.yaml new file mode 100644 index 0000000000..d5f59b4a07 --- /dev/null +++ b/comps/reranks/neural-speed/docker/docker_compose_embedding.yaml @@ -0,0 +1,22 @@ +# Copyright (C) 2024 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 + +version: "3.8" + +services: + reranking: + image: opea/reranking-langchain-mosec:neuralspeed + container_name: reranking-langchain-mosec-server + ports: + - "6000:8000" + ipc: host + environment: + http_proxy: ${http_proxy} + https_proxy: ${https_proxy} + MOSEC_RERANKING_ENDPOINT: ${MOSEC_RERANKING_ENDPOINT} + LANGCHAIN_API_KEY: ${LANGCHAIN_API_KEY} + restart: unless-stopped + +networks: + default: + driver: bridge diff --git a/comps/reranks/neural-speed/neuralspeed-docker/Dockerfile b/comps/reranks/neural-speed/neuralspeed-docker/Dockerfile new file mode 100644 index 0000000000..42dcbad8c3 --- /dev/null +++ b/comps/reranks/neural-speed/neuralspeed-docker/Dockerfile @@ -0,0 +1,27 @@ +# Copyright (C) 2024 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 + +From ubuntu:22.04 +ARG DEBIAN_FRONTEND=noninteractive + +ENV GLIBC_TUNABLES glibc.cpu.x86_shstk=permissive + +COPY comps /root/comps +COPY neural_speed-0.1.dev45+g41ea0aa-cp310-cp310-linux_x86_64.whl /root/ +COPY bge-large-r-q8.bin /root/ +COPY libstdc++.so.6 /root/ + +RUN apt update && apt install -y python3 python3-pip +RUN pip3 install -r /root/comps/reranks/neural-speed/neuralspeed-docker/requirements.txt +RUN pip3 install llmspec mosec msgspec httpx requests +RUN pip3 install /root/neural_speed-0.1.dev45+g41ea0aa-cp310-cp310-linux_x86_64.whl + +RUN cd /root/ && export HF_ENDPOINT=https://hf-mirror.com && huggingface-cli download --resume-download BAAI/bge-reranker-large --local-dir /root/bge-reranker-large + + +ENV LD_PRELOAD=/root/libstdc++.so.6 + + +WORKDIR /root/comps/reranks/neural-speed/neuralspeed-docker + +CMD ["python3", "server.py"] diff --git a/comps/reranks/neural-speed/neuralspeed-docker/client.py b/comps/reranks/neural-speed/neuralspeed-docker/client.py new file mode 100644 index 0000000000..02017faaf2 --- /dev/null +++ b/comps/reranks/neural-speed/neuralspeed-docker/client.py @@ -0,0 +1,35 @@ +# Copyright (C) 2024 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 + +import os +from http import HTTPStatus + +import httpx +import msgspec +import requests + +req = { + "query": "talk is cheap, show me the code", + "docs": [ + "what a nice day", + "life is short, use python", + "early bird catches the worm", + ], +} + +httpx_response = httpx.post("http://127.0.0.1:8080/inference", content=msgspec.msgpack.encode(req)) + +requests_response = requests.post("http://127.0.0.1:8080/inference", data=msgspec.msgpack.encode(req)) + +MOSEC_RERANKING_ENDPOINT = os.environ.get("MOSEC_RERANKING_ENDPOINT", "http://127.0.0.1:8080") + +request_url = MOSEC_RERANKING_ENDPOINT + "/inference" +print(f"request_url = {request_url}") +resp_3 = requests.post(request_url, data=msgspec.msgpack.encode(req)) + +if httpx_response.status_code == HTTPStatus.OK and requests_response.status_code == HTTPStatus.OK: + print(f"OK: \n {msgspec.msgpack.decode(httpx_response.content)}") + print(f"OK: \n {msgspec.msgpack.decode(requests_response.content)}") + print(f"OK: \n {msgspec.msgpack.decode(resp_3.content)}") +else: + print(f"err[{httpx_response.status_code}] {httpx_response.text}") diff --git a/comps/reranks/neural-speed/neuralspeed-docker/client_multibatch.py b/comps/reranks/neural-speed/neuralspeed-docker/client_multibatch.py new file mode 100644 index 0000000000..09eee1dfbf --- /dev/null +++ b/comps/reranks/neural-speed/neuralspeed-docker/client_multibatch.py @@ -0,0 +1,45 @@ +# Copyright (C) 2024 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 + +from http import HTTPStatus +from threading import Thread + +import httpx +import msgspec + +req = { + "query": "talk is cheap, show me the code", + "docs": [ + "what a nice day", + "life is short, use python", + "early bird catches the worm", + ], +} +reqs = [] +BATCH = 32 +for i in range(BATCH): + reqs.append(msgspec.msgpack.encode(req)) + + +def post_func(threadIdx): + resp = httpx.post("http://127.0.0.1:8080/inference", content=reqs[threadIdx]) + ret = f"thread {threadIdx} \n" + if resp.status_code == HTTPStatus.OK: + ret += f"OK: {msgspec.msgpack.decode(resp.content)['scores']}" + else: + ret += f"err[{resp.status_code}] {resp.text}" + print(ret) + + +threads = [] +for i in range(BATCH): + t = Thread( + target=post_func, + args=[ + i, + ], + ) + threads.append(t) + +for i in range(BATCH): + threads[i].start() diff --git a/comps/reranks/neural-speed/neuralspeed-docker/requirements.txt b/comps/reranks/neural-speed/neuralspeed-docker/requirements.txt new file mode 100644 index 0000000000..50dc540fcd --- /dev/null +++ b/comps/reranks/neural-speed/neuralspeed-docker/requirements.txt @@ -0,0 +1,16 @@ +--extra-index-url https://download.pytorch.org/whl/cpu +accelerate +cmake +datasets +huggingface_hub +matplotlib +numpy +peft +protobuf<3.20 +py-cpuinfo +sentencepiece +tiktoken +torch +transformers +transformers_stream_generator +zipfile38 diff --git a/comps/reranks/neural-speed/neuralspeed-docker/server.py b/comps/reranks/neural-speed/neuralspeed-docker/server.py new file mode 100644 index 0000000000..0176abcfbe --- /dev/null +++ b/comps/reranks/neural-speed/neuralspeed-docker/server.py @@ -0,0 +1,91 @@ +# Copyright (C) 2024 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 + +import os +import time +from typing import Any, List + +import numpy +from mosec import Server, Worker, get_logger +from mosec.mixin import TypedMsgPackMixin +from msgspec import Struct +from neural_speed import Model +from transformers import AutoModelForSequenceClassification, AutoTokenizer + +logger = get_logger() + +INFERENCE_BATCH_SIZE = 128 +INFERENCE_MAX_WAIT_TIME = 10 +INFERENCE_WORKER_NUM = 1 +INFERENCE_CONTEXT = 512 + +TorchModel = "/root/bge-reranker-large" +NS_Bin = "/root/bge-large-r-q8.bin" + +NS_Model = "bert" + + +class Request(Struct, kw_only=True): + query: str + docs: List[str] + + +class Response(Struct, kw_only=True): + scores: List[float] + + +class Inference(TypedMsgPackMixin, Worker): + + def __init__(self): + super().__init__() + self.tokenizer = AutoTokenizer.from_pretrained(TorchModel) + self.model = Model() + self.model.init_from_bin( + NS_Model, + NS_Bin, + batch_size=INFERENCE_BATCH_SIZE, + n_ctx=INFERENCE_CONTEXT + 2, + ) + + def forward(self, data: List[Request]) -> List[Response]: + batch = len(data) + ndoc = [] + inps = [] + for data in data: + inp = [[data.query, doc] for doc in data.docs] + inps.extend(inp) + ndoc.append(len(data.docs)) + outs = [] + for i in range(0, len(inps), INFERENCE_BATCH_SIZE): + inp_bs = inps[i : i + INFERENCE_BATCH_SIZE] + inputs = self.tokenizer( + inp_bs, padding=True, truncation=True, max_length=INFERENCE_CONTEXT, return_tensors="pt" + ) + st = time.time() + output = self.model( + **inputs, + reinit=True, + logits_all=True, + continuous_batching=False, + ignore_padding=True, + ) + logger.info(f"Toal batch {batch} input shape {inputs.input_ids.shape} time {time.time()-st}") + outs.append(output) + ns_outputs = numpy.concatenate(outs, axis=0) + resps = [] + pos = 0 + for i in range(batch): + resp = Response(scores=ns_outputs[pos : pos + ndoc[i]].tolist()) + pos += ndoc[i] + resps.append(resp) + return resps + + +if __name__ == "__main__": + INFERENCE_BATCH_SIZE = int(os.environ.get("MAX_BATCH_SIZE", 128)) + INFERENCE_MAX_WAIT_TIME = int(os.environ.get("MAX_WAIT_TIME", 1)) + server = Server() + server.append_worker( + Inference, max_batch_size=INFERENCE_BATCH_SIZE, max_wait_time=INFERENCE_MAX_WAIT_TIME, num=INFERENCE_WORKER_NUM + ) + server.run() diff --git a/comps/reranks/neural-speed/requirements.txt b/comps/reranks/neural-speed/requirements.txt new file mode 100644 index 0000000000..9fa1a059ce --- /dev/null +++ b/comps/reranks/neural-speed/requirements.txt @@ -0,0 +1,11 @@ +docarray[full] +fastapi +langchain +langchain_community +openai +opentelemetry-api +opentelemetry-exporter-otlp +opentelemetry-sdk +prometheus-fastapi-instrumentator +shortuuid +uvicorn diff --git a/comps/reranks/neural-speed/reranking_neuralspeed_svc.py b/comps/reranks/neural-speed/reranking_neuralspeed_svc.py new file mode 100644 index 0000000000..098378a527 --- /dev/null +++ b/comps/reranks/neural-speed/reranking_neuralspeed_svc.py @@ -0,0 +1,93 @@ +# Copyright (C) 2024 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 + +import heapq +import json +import os +import re +import time +from typing import List, Optional, Union + +import httpx +import msgspec +import requests +import torch +from langchain_core.prompts import ChatPromptTemplate +from langsmith import traceable + +from comps import ( + CustomLogger, + LLMParamsDoc, + SearchedDoc, + ServiceType, + opea_microservices, + register_microservice, + register_statistics, + statistics_dict, +) +from comps.cores.proto.api_protocol import ( + ChatCompletionRequest, + RerankingRequest, + RerankingResponse, + RerankingResponseData, +) + + +@register_microservice( + name="opea_service@reranking_mosec", + service_type=ServiceType.RERANK, + endpoint="/v1/reranking", + host="0.0.0.0", + port=8000, + input_datatype=SearchedDoc, + output_datatype=LLMParamsDoc, +) +@traceable(run_type="reranking") +@register_statistics(names=["opea_service@reranking_mosec"]) +def reranking( + input: Union[SearchedDoc, RerankingRequest, ChatCompletionRequest] +) -> Union[LLMParamsDoc, RerankingResponse, ChatCompletionRequest]: + start = time.time() + reranking_results = [] + if input.retrieved_docs: + docs = [doc.text for doc in input.retrieved_docs] + url = mosec_reranking_endpoint + "/inference" + if isinstance(input, SearchedDoc): + query = input.initial_query + else: + # for RerankingRequest, ChatCompletionRequest + query = input.input + data = {"query": query, "docs": docs} + resp = requests.post(url, data=msgspec.msgpack.encode(data)) + response_list = msgspec.msgpack.decode(resp.content)["scores"] + response = torch.nn.functional.sigmoid(torch.tensor(response_list)) + length = len(response) + resp_list = response.tolist() + sorted_score = heapq.nlargest(length, resp_list) + sorted_score_index = map(resp_list.index, sorted_score) + + for i in range(input.top_n): + reranking_results.append( + {"text": input.retrieved_docs[list(sorted_score_index)[i]].text, "score": sorted_score[i]} + ) + + statistics_dict["opea_service@reranking_mosec"].append_latency(time.time() - start, None) + if isinstance(input, SearchedDoc): + return LLMParamsDoc(query=input.initial_query, documents=[doc["text"] for doc in reranking_results]) + else: + reranking_docs = [] + for doc in reranking_results: + reranking_docs.append(RerankingResponseData(text=doc["text"], score=doc["score"])) + if isinstance(input, RerankingRequest): + return RerankingResponse(reranked_docs=reranking_docs) + + if isinstance(input, ChatCompletionRequest): + input.reranked_docs = reranking_docs + input.documents = [doc["text"] for doc in reranking_results] + return input + + +if __name__ == "__main__": + mosec_reranking_endpoint = os.getenv("MOSEC_RERANKING_ENDPOINT", "http://localhost:8080") + print("NeuralSpeed Reranking Microservice Initialized.") + opea_microservices["opea_service@reranking_mosec"].start() diff --git a/tests/test_reranks_mosec-neuralspeed.sh b/tests/test_reranks_mosec-neuralspeed.sh new file mode 100644 index 0000000000..4512dc794d --- /dev/null +++ b/tests/test_reranks_mosec-neuralspeed.sh @@ -0,0 +1,84 @@ +#!/bin/bash +# Copyright (C) 2024 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 + +set -x + +WORKPATH=$(dirname "$PWD") +ip_address=$(hostname -I | awk '{print $1}') + +function build_mosec_docker_images() { + cd $WORKPATH + echo $(pwd) + cp /data2/nswhl/* ./ + docker build --build-arg http_proxy=$http_proxy --build-arg https_proxy=$https_proxy -t langchain-mosec:neuralspeed-reranks -f comps/reranks/neural-speed/neuralspeed-docker/Dockerfile . + if [ $? -ne 0 ]; then + echo "opea/reranking-langchain-mosec-endpoint built fail" + exit 1 + else + echo "opea/reranking-langchain-mosec-endpoint built successful" + fi +} + +function build_docker_images() { + cd $WORKPATH + echo $(pwd) + docker build --build-arg http_proxy=$http_proxy --build-arg https_proxy=$https_proxy -t opea/reranking-langchain-mosec:neuralspeed -f comps/reranks/neural-speed/docker/Dockerfile . + if [ $? -ne 0 ]; then + echo "opea/reranking-langchain-mosec built fail" + exit 1 + else + echo "opea/reranking-langchain-mosec built successful" + fi +} + +function start_service() { + mosec_endpoint=5006 + model="BAAI/bge-reranker-large" + unset http_proxy + docker run -d --name="test-comps-reranking-langchain-mosec-endpoint" -p $mosec_endpoint:8000 langchain-mosec:neuralspeed-reranks + export MOSEC_RERANKING_ENDPOINT="http://${ip_address}:${mosec_endpoint}" + mosec_service_port=5007 + docker run -d --name="test-comps-reranking-langchain-mosec-server" -e http_proxy=$http_proxy -e https_proxy=$https_proxy -p ${mosec_service_port}:8000 --ipc=host -e MOSEC_RERANKING_ENDPOINT=$MOSEC_RERANKING_ENDPOINT opea/reranking-langchain-mosec:neuralspeed + sleep 3m +} + +function validate_microservice() { + mosec_service_port=5007 + result=$(http_proxy="" curl http://${ip_address}:${mosec_service_port}/v1/reranking\ + -X POST \ + -d '{"initial_query":"What is Deep Learning?", "retrieved_docs": [{"text":"Deep Learning is not..."}, {"text":"Deep learning is..."}]}' \ + -H 'Content-Type: application/json') + if [[ $result == *"Deep"* ]]; then + echo "Result correct." + else + echo "Result wrong. Received was $result" + docker logs test-comps-reranking-langchain-mosec-endpoint + docker logs test-comps-reranking-langchain-mosec-server + exit 1 + fi +} + +function stop_docker() { + cid=$(docker ps -aq --filter "name=test-comps-reranking-langchain-mosec-*") + if [[ ! -z "$cid" ]]; then docker stop $cid && docker rm $cid && sleep 1s; fi +} + +function main() { + + stop_docker + + build_mosec_docker_images + + build_docker_images + + start_service + + validate_microservice + + stop_docker + echo y | docker system prune + +} + +main From 58e9972d82ef9086861b904bea8410294a700323 Mon Sep 17 00:00:00 2001 From: XinyuYe-Intel Date: Tue, 10 Sep 2024 13:18:35 +0800 Subject: [PATCH 003/145] Add LLM pretraining support (#622) * support rerank model finetuning. Signed-off-by: Ye, Xinyu * adapt rerank model to transformers' scheme. Signed-off-by: Ye, Xinyu * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * fix typo. Signed-off-by: Ye, Xinyu * refined readme. Signed-off-by: Ye, Xinyu * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * add LLM pretraining support. Signed-off-by: Ye, Xinyu * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * added readme. Signed-off-by: Ye, Xinyu * added rerank finetuning test. Signed-off-by: Ye, Xinyu * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * added LLM pretraining test. Signed-off-by: Ye, Xinyu --------- Signed-off-by: Ye, Xinyu Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- comps/finetuning/README.md | 26 ++++ comps/finetuning/finetune_config.py | 5 +- .../llm_on_ray/finetune/data_process.py | 35 +++++- .../llm_on_ray/finetune/finetune.py | 57 +++++++-- tests/test_finetuning_llm_pretraining.sh | 118 ++++++++++++++++++ tests/test_finetuning_rerank.sh | 117 +++++++++++++++++ 6 files changed, 348 insertions(+), 10 deletions(-) create mode 100644 tests/test_finetuning_llm_pretraining.sh create mode 100644 tests/test_finetuning_rerank.sh diff --git a/comps/finetuning/README.md b/comps/finetuning/README.md index fb46977deb..2717a00649 100644 --- a/comps/finetuning/README.md +++ b/comps/finetuning/README.md @@ -173,6 +173,32 @@ curl http://${your_ip}:8015/v1/fine_tuning/jobs \ ``` +### 3.2.4 LLM Pretraining + +Use the following command to launch a job for LLM pretraining, such as `meta-llama/Llama-2-7b-hf`: + +```bash +# create a finetuning job +curl http://${your_ip}:8015/v1/fine_tuning/jobs \ + -X POST \ + -H "Content-Type: application/json" \ + -d '{ + "training_file": "test_data.json", + "model": "meta-llama/Llama-2-7b-hf", + "General":{ + "task":"pretraining", + "lora_config":null + } + }' +``` + +Below is an example for the format of the pretraining dataset: + +```json +{"text": "A girl with a blue tank top sitting watching three dogs."} +{"text": "A boy with a blue tank top sitting watching three dogs."} +``` + ## 3.3 Manage fine-tuning job Below commands show how to list finetuning jobs, retrieve a finetuning job, cancel a finetuning job and list checkpoints of a finetuning job. diff --git a/comps/finetuning/finetune_config.py b/comps/finetuning/finetune_config.py index 3accabfb39..5473cd9aa2 100644 --- a/comps/finetuning/finetune_config.py +++ b/comps/finetuning/finetune_config.py @@ -16,6 +16,7 @@ DEVICE_CPU = "cpu" DEVICE_HPU = "hpu" DEVICE_GPU = "gpu" +DEVICE_CUDA = "cuda" ACCELERATE_STRATEGY_DDP = "DDP" ACCELERATE_STRATEGY_FSDP = "FSDP" @@ -57,7 +58,7 @@ def check_report_to(cls, v: str): @validator("task") def check_task(cls, v: str): - assert v in ["instruction_tuning", "rerank", "embedding"] + assert v in ["instruction_tuning", "pretraining", "rerank", "embedding"] return v @@ -136,7 +137,7 @@ class TrainingConfig(BaseModel): def check_device(cls, v: str): # will convert to lower case if v: - assert v.lower() in [DEVICE_CPU, DEVICE_GPU, DEVICE_HPU] + assert v.lower() in [DEVICE_CPU, DEVICE_GPU, DEVICE_HPU, DEVICE_CUDA] return v.lower() @validator("hpu_execution_mode") diff --git a/comps/finetuning/llm_on_ray/finetune/data_process.py b/comps/finetuning/llm_on_ray/finetune/data_process.py index d85bf2bfad..07b12d71e1 100644 --- a/comps/finetuning/llm_on_ray/finetune/data_process.py +++ b/comps/finetuning/llm_on_ray/finetune/data_process.py @@ -18,7 +18,7 @@ IGNORE_INDEX = -100 -class DataProcessor: +class InstructionDataProcessor: # We used the following prompts for fine-tuning the Alpaca model. You can find reference doc form this URL(https://github.com/tatsu-lab/stanford_alpaca/blob/main/README.md#data-release) def __init__(self, config, tokenizer): self.tokenizer = tokenizer @@ -202,6 +202,39 @@ def tokenize(self, examples): return examples +class PretrainingDataProcessor: + def __init__(self, config, tokenizer): + self.tokenizer = tokenizer + self.max_length = self.max_seq_length = config["Dataset"].get("max_length", 512) + self.truncation = config["Dataset"].get("truncation", True) + self.padding = config["Dataset"].get("padding", True) + + def tokenize(self, examples): + keys = list(examples.data.keys()) + if len(keys) != 1 and "text" not in keys: + raise ValueError("Unsupported dataset format") + + key = keys[0] if len(keys) == 1 else "text" + examples["input_ids"] = [] + examples["labels"] = [] + examples["attention_mask"] = [] + for exp in examples[key]: + results = self.tokenizer( + exp, + padding=self.padding, + truncation=self.truncation, + return_tensors=None, + max_length=self.max_length, + ) + + input_ids = results["input_ids"] + labels = copy.deepcopy(input_ids) + examples["input_ids"].append(results["input_ids"]) + examples["labels"].append(labels) + examples["attention_mask"].append(results["attention_mask"]) + return examples + + class TrainDatasetForCE(Dataset): def __init__(self, dataset, args, tokenizer): self.dataset = dataset diff --git a/comps/finetuning/llm_on_ray/finetune/finetune.py b/comps/finetuning/llm_on_ray/finetune/finetune.py index c66cc7bbec..f44deedff2 100644 --- a/comps/finetuning/llm_on_ray/finetune/finetune.py +++ b/comps/finetuning/llm_on_ray/finetune/finetune.py @@ -28,9 +28,10 @@ from comps.finetuning.finetune_config import FinetuneConfig from comps.finetuning.llm_on_ray import common from comps.finetuning.llm_on_ray.finetune.data_process import ( - DataProcessor, EmbedCollator, GroupCollator, + InstructionDataProcessor, + PretrainingDataProcessor, TrainDatasetForCE, TrainDatasetForEmbedding, ) @@ -198,9 +199,9 @@ def tokenize_dataset(config: Dict, tokenizer, dataset): if task == "instruction_tuning": group = config["Dataset"].get("group", True) block_size = config["Dataset"].get("block_size", 512) - tokenizer.pad_token = tokenizer.eos_token + tokenizer.pad_token = tokenizer.eos_token if not tokenizer.pad_token else tokenizer.pad_token - processor = DataProcessor(config, tokenizer) + processor = InstructionDataProcessor(config, tokenizer) for key in dataset: prompts = processor.make_prompt(dataset[key]) @@ -221,6 +222,48 @@ def tokenize_dataset(config: Dict, tokenizer, dataset): desc="Tokenize dataset", ) + if group: + + def group_texts(examples): + # Concatenate all texts. + concatenated_examples = {k: list(chain(*examples[k])) for k in examples.keys()} + total_length = len(concatenated_examples[list(examples.keys())[0]]) + # We drop the small remainder, we could add padding if the model supported it instead of this drop, you can + # customize this part to your needs. + if total_length >= block_size: + total_length = (total_length // block_size) * block_size + # Split by chunks of max_len. + result = { + k: [t[i : i + block_size] for i in range(0, total_length, block_size)] + for k, t in concatenated_examples.items() + } + return result + + tokenized_dataset = tokenized_dataset.map( + group_texts, + batched=True, + load_from_cache_file=False, + desc=f"Grouping texts in chunks of {block_size}", + ) + + return tokenized_dataset + elif task == "pretraining": + group = True + block_size = config["Dataset"].get("block_size", 512) + tokenizer.pad_token = tokenizer.eos_token if not tokenizer.pad_token else tokenizer.pad_token + + processor = PretrainingDataProcessor(config, tokenizer) + + column_names = list(dataset["train"].features) + + tokenized_dataset = dataset.map( + processor.tokenize, + remove_columns=column_names, + batched=True, + load_from_cache_file=False, + desc="Tokenize dataset", + ) + if group: def group_texts(examples): @@ -258,7 +301,7 @@ def group_texts(examples): def prepare_data_collator(config: Dict, tokenizer): task = config["General"].get("task", "instruction_tuning") - if task == "instruction_tuning": + if task == "instruction_tuning" or task == "pretraining": return transformers.DataCollatorForLanguageModeling( tokenizer=tokenizer, mlm=False, return_tensors="pt", pad_to_multiple_of=8 ) @@ -280,10 +323,10 @@ def load_model(config: Dict): model_dtype = convert_dtype(config["Training"].get("mixed_precision", "no")) model_config = config["General"].get("config", {}) task = config["General"].get("task", "instruction_tuning") - if task == "instruction_tuning": + if task == "instruction_tuning" or task == "pretraining": model = transformers.AutoModelForCausalLM.from_pretrained(model_name, torch_dtype=model_dtype, **model_config) lora_config = config["General"].get("lora_config", None) - if lora_config: + if lora_config and task != "pretraining": peft_config = LoraConfig(**lora_config) model = get_peft_model(model, peft_config) elif task == "rerank": @@ -326,7 +369,7 @@ def load_model(config: Dict): def get_trainer(config: Dict, model, tokenizer, tokenized_dataset, data_collator): device = config["Training"]["device"] - if device in ["cpu", "gpu"]: + if device in ["cpu", "gpu", "cuda"]: training_args = convert_to_training_args(TrainingArguments, config) trainer = Trainer( model=model, diff --git a/tests/test_finetuning_llm_pretraining.sh b/tests/test_finetuning_llm_pretraining.sh new file mode 100644 index 0000000000..69460fbc0f --- /dev/null +++ b/tests/test_finetuning_llm_pretraining.sh @@ -0,0 +1,118 @@ +#!/bin/bash +# Copyright (C) 2024 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 + +set -x + +WORKPATH=$(dirname "$PWD") +LOG_PATH="$WORKPATH/tests" +ip_address=$(hostname -I | awk '{print $1}') +finetuning_service_port=8015 +ray_port=8265 + +function build_docker_images() { + cd $WORKPATH + echo $(pwd) + docker build -t opea/finetuning:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy --build-arg HF_TOKEN=$HF_TOKEN -f comps/finetuning/docker/Dockerfile_cpu . + if [ $? -ne 0 ]; then + echo "opea/finetuning built fail" + exit 1 + else + echo "opea/finetuning built successful" + fi +} + +function start_service() { + export no_proxy="localhost,127.0.0.1,"${ip_address} + docker run -d --name="finetuning-server" -p $finetuning_service_port:$finetuning_service_port -p $ray_port:$ray_port --runtime=runc --ipc=host -e http_proxy=$http_proxy -e https_proxy=$https_proxy -e no_proxy=$no_proxy opea/finetuning:latest + sleep 1m +} + +function validate_microservice() { + cd $LOG_PATH + export no_proxy="localhost,127.0.0.1,"${ip_address} + + # test /v1/dataprep upload file + URL="http://${ip_address}:$finetuning_service_port/v1/files" + cat < test_data.json +{"text": "Five women walk along a beach wearing flip-flops."} +{"text": "A woman standing on a high cliff on one leg looking over a river."} +{"text": "Two woman are playing instruments; one a clarinet, the other a violin."} +{"text": "A girl with a blue tank top sitting watching three dogs."} +{"text": "A yellow dog running along a forest path."} +{"text": "It sets out essential activities in each phase along with critical factors related to those activities."} +EOF + HTTP_RESPONSE=$(curl --silent --write-out "HTTPSTATUS:%{http_code}" -X POST -F 'file=@./test_data.json' -F purpose="fine-tune" -H 'Content-Type: multipart/form-data' "$URL") + HTTP_STATUS=$(echo $HTTP_RESPONSE | tr -d '\n' | sed -e 's/.*HTTPSTATUS://') + RESPONSE_BODY=$(echo $HTTP_RESPONSE | sed -e 's/HTTPSTATUS\:.*//g') + SERVICE_NAME="finetuning-server - upload - file" + + # Parse the JSON response + purpose=$(echo "$RESPONSE_BODY" | jq -r '.purpose') + filename=$(echo "$RESPONSE_BODY" | jq -r '.filename') + + # Define expected values + expected_purpose="fine-tune" + expected_filename="test_data.json" + + if [ "$HTTP_STATUS" -ne "200" ]; then + echo "[ $SERVICE_NAME ] HTTP status is not 200. Received status was $HTTP_STATUS" + docker logs finetuning-server >> ${LOG_PATH}/finetuning-server_upload_file.log + exit 1 + else + echo "[ $SERVICE_NAME ] HTTP status is 200. Checking content..." + fi + # Check if the parsed values match the expected values + if [[ "$purpose" != "$expected_purpose" || "$filename" != "$expected_filename" ]]; then + echo "[ $SERVICE_NAME ] Content does not match the expected result: $RESPONSE_BODY" + docker logs finetuning-server >> ${LOG_PATH}/finetuning-server_upload_file.log + exit 1 + else + echo "[ $SERVICE_NAME ] Content is as expected." + fi + + # test /v1/fine_tuning/jobs + URL="http://${ip_address}:$finetuning_service_port/v1/fine_tuning/jobs" + HTTP_RESPONSE=$(curl --silent --write-out "HTTPSTATUS:%{http_code}" -X POST -H 'Content-Type: application/json' -d '{"training_file": "test_data.json","model": "facebook/opt-125m","General":{"task":"pretraining","lora_config":null}}' "$URL") + HTTP_STATUS=$(echo $HTTP_RESPONSE | tr -d '\n' | sed -e 's/.*HTTPSTATUS://') + RESPONSE_BODY=$(echo $HTTP_RESPONSE | sed -e 's/HTTPSTATUS\:.*//g') + SERVICE_NAME="finetuning-server - create finetuning job" + + if [ "$HTTP_STATUS" -ne "200" ]; then + echo "[ $SERVICE_NAME ] HTTP status is not 200. Received status was $HTTP_STATUS" + docker logs finetuning-server >> ${LOG_PATH}/finetuning-server_create.log + exit 1 + else + echo "[ $SERVICE_NAME ] HTTP status is 200. Checking content..." + fi + if [[ "$RESPONSE_BODY" != *'{"id":"ft-job'* ]]; then + echo "[ $SERVICE_NAME ] Content does not match the expected result: $RESPONSE_BODY" + docker logs finetuning-server >> ${LOG_PATH}/finetuning-server_create.log + exit 1 + else + echo "[ $SERVICE_NAME ] Content is as expected." + fi + + sleep 3m +} + +function stop_docker() { + cid=$(docker ps -aq --filter "name=finetuning-server*") + if [[ ! -z "$cid" ]]; then docker stop $cid && docker rm $cid && sleep 1s; fi +} + +function main() { + + stop_docker + + build_docker_images + start_service + + validate_microservice + + stop_docker + echo y | docker system prune + +} + +main diff --git a/tests/test_finetuning_rerank.sh b/tests/test_finetuning_rerank.sh new file mode 100644 index 0000000000..fd594bf6ca --- /dev/null +++ b/tests/test_finetuning_rerank.sh @@ -0,0 +1,117 @@ +# Copyright (C) 2024 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 + +set -x + +WORKPATH=$(dirname "$PWD") +LOG_PATH="$WORKPATH/tests" +ip_address=$(hostname -I | awk '{print $1}') +finetuning_service_port=8015 +ray_port=8265 + +function build_docker_images() { + cd $WORKPATH + echo $(pwd) + docker build -t opea/finetuning:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy --build-arg HF_TOKEN=$HF_TOKEN -f comps/finetuning/docker/Dockerfile_cpu . + if [ $? -ne 0 ]; then + echo "opea/finetuning built fail" + exit 1 + else + echo "opea/finetuning built successful" + fi +} + +function start_service() { + export no_proxy="localhost,127.0.0.1,"${ip_address} + docker run -d --name="finetuning-server" -p $finetuning_service_port:$finetuning_service_port -p $ray_port:$ray_port --runtime=runc --ipc=host -e http_proxy=$http_proxy -e https_proxy=$https_proxy -e no_proxy=$no_proxy opea/finetuning:latest + sleep 1m +} + +function validate_microservice() { + cd $LOG_PATH + export no_proxy="localhost,127.0.0.1,"${ip_address} + + # test /v1/dataprep upload file + URL="http://${ip_address}:$finetuning_service_port/v1/files" + cat < test_data.json +{"query": "Five women walk along a beach wearing flip-flops.", "pos": ["Some women with flip-flops on, are walking along the beach"], "neg": ["The 4 women are sitting on the beach.", "There was a reform in 1996.", "She's not going to court to clear her record.", "The man is talking about hawaii.", "A woman is standing outside.", "The battle was over. ", "A group of people plays volleyball."]} +{"query": "A woman standing on a high cliff on one leg looking over a river.", "pos": ["A woman is standing on a cliff."], "neg": ["A woman sits on a chair.", "George Bush told the Republicans there was no way he would let them even consider this foolish idea, against his top advisors advice.", "The family was falling apart.", "no one showed up to the meeting", "A boy is sitting outside playing in the sand.", "Ended as soon as I received the wire.", "A child is reading in her bedroom."]} +{"query": "Two woman are playing instruments; one a clarinet, the other a violin.", "pos": ["Some people are playing a tune."], "neg": ["Two women are playing a guitar and drums.", "A man is skiing down a mountain.", "The fatal dose was not taken when the murderer thought it would be.", "Person on bike", "The girl is standing, leaning against the archway.", "A group of women watch soap operas.", "No matter how old people get they never forget. "]} +{"query": "A girl with a blue tank top sitting watching three dogs.", "pos": ["A girl is wearing blue."], "neg": ["A girl is with three cats.", "The people are watching a funeral procession.", "The child is wearing black.", "Financing is an issue for us in public schools.", "Kids at a pool.", "It is calming to be assaulted.", "I face a serious problem at eighteen years old. "]} +{"query": "A yellow dog running along a forest path.", "pos": ["a dog is running"], "neg": ["a cat is running", "Steele did not keep her original story.", "The rule discourages people to pay their child support.", "A man in a vest sits in a car.", "Person in black clothing, with white bandanna and sunglasses waits at a bus stop.", "Neither the Globe or Mail had comments on the current state of Canada's road system. ", "The Spring Creek facility is old and outdated."]} +{"query": "It sets out essential activities in each phase along with critical factors related to those activities.", "pos": ["Critical factors for essential activities are set out."], "neg": ["It lays out critical activities but makes no provision for critical factors related to those activities.", "People are assembled in protest.", "The state would prefer for you to do that.", "A girl sits beside a boy.", "Two males are performing.", "Nobody is jumping", "Conrad was being plotted against, to be hit on the head."]} +EOF + HTTP_RESPONSE=$(curl --silent --write-out "HTTPSTATUS:%{http_code}" -X POST -F 'file=@./test_data.json' -F purpose="fine-tune" -H 'Content-Type: multipart/form-data' "$URL") + HTTP_STATUS=$(echo $HTTP_RESPONSE | tr -d '\n' | sed -e 's/.*HTTPSTATUS://') + RESPONSE_BODY=$(echo $HTTP_RESPONSE | sed -e 's/HTTPSTATUS\:.*//g') + SERVICE_NAME="finetuning-server - upload - file" + + # Parse the JSON response + purpose=$(echo "$RESPONSE_BODY" | jq -r '.purpose') + filename=$(echo "$RESPONSE_BODY" | jq -r '.filename') + + # Define expected values + expected_purpose="fine-tune" + expected_filename="test_data.json" + + if [ "$HTTP_STATUS" -ne "200" ]; then + echo "[ $SERVICE_NAME ] HTTP status is not 200. Received status was $HTTP_STATUS" + docker logs finetuning-server >> ${LOG_PATH}/finetuning-server_upload_file.log + exit 1 + else + echo "[ $SERVICE_NAME ] HTTP status is 200. Checking content..." + fi + # Check if the parsed values match the expected values + if [[ "$purpose" != "$expected_purpose" || "$filename" != "$expected_filename" ]]; then + echo "[ $SERVICE_NAME ] Content does not match the expected result: $RESPONSE_BODY" + docker logs finetuning-server >> ${LOG_PATH}/finetuning-server_upload_file.log + exit 1 + else + echo "[ $SERVICE_NAME ] Content is as expected." + fi + + # test /v1/fine_tuning/jobs + URL="http://${ip_address}:$finetuning_service_port/v1/fine_tuning/jobs" + HTTP_RESPONSE=$(curl --silent --write-out "HTTPSTATUS:%{http_code}" -X POST -H 'Content-Type: application/json' -d '{"training_file": "test_data.json","model": "BAAI/bge-reranker-base","General":{"task":"rerank","lora_config":null}}' "$URL") + HTTP_STATUS=$(echo $HTTP_RESPONSE | tr -d '\n' | sed -e 's/.*HTTPSTATUS://') + RESPONSE_BODY=$(echo $HTTP_RESPONSE | sed -e 's/HTTPSTATUS\:.*//g') + SERVICE_NAME="finetuning-server - create finetuning job" + + if [ "$HTTP_STATUS" -ne "200" ]; then + echo "[ $SERVICE_NAME ] HTTP status is not 200. Received status was $HTTP_STATUS" + docker logs finetuning-server >> ${LOG_PATH}/finetuning-server_create.log + exit 1 + else + echo "[ $SERVICE_NAME ] HTTP status is 200. Checking content..." + fi + if [[ "$RESPONSE_BODY" != *'{"id":"ft-job'* ]]; then + echo "[ $SERVICE_NAME ] Content does not match the expected result: $RESPONSE_BODY" + docker logs finetuning-server >> ${LOG_PATH}/finetuning-server_create.log + exit 1 + else + echo "[ $SERVICE_NAME ] Content is as expected." + fi + + sleep 10m +} + +function stop_docker() { + cid=$(docker ps -aq --filter "name=finetuning-server*") + if [[ ! -z "$cid" ]]; then docker stop $cid && docker rm $cid && sleep 1s; fi +} + +function main() { + + stop_docker + + build_docker_images + start_service + + validate_microservice + + stop_docker + echo y | docker system prune + +} + +main From 8a1141314d73215f8fa5dcceef632e9fe8f6d598 Mon Sep 17 00:00:00 2001 From: ZePan110 Date: Tue, 10 Sep 2024 13:43:06 +0800 Subject: [PATCH 004/145] Optimize the content of the alerts. (#640) Signed-off-by: ZePan110 Signed-off-by: chensuyue --- .../workflows/pr-dockerfile-path-scan.yaml | 65 ++++++++++--------- 1 file changed, 33 insertions(+), 32 deletions(-) diff --git a/.github/workflows/pr-dockerfile-path-scan.yaml b/.github/workflows/pr-dockerfile-path-scan.yaml index 6fa00a3973..984619f50c 100644 --- a/.github/workflows/pr-dockerfile-path-scan.yaml +++ b/.github/workflows/pr-dockerfile-path-scan.yaml @@ -51,6 +51,7 @@ jobs: fi - name: Check for changed Dockerfile paths in readme + if: always() run: | set -e shopt -s globstar @@ -75,6 +76,37 @@ jobs: exit 1 fi + - name: Check new Dockerfile in compose yaml + if: always() + run: | + set -xe + shopt -s globstar + cd ${{github.workspace}} + no_add="FALSE" + merged_commit=$(git log -1 --format='%H') + changed_files="$(git diff --name-status --diff-filter=A ${{ github.event.pull_request.base.sha }} ${merged_commit} -- '**/Dockerfile**' | cut -f2)" + changed_yamls="$(git diff --name-status --diff-filter=AM ${{ github.event.pull_request.base.sha }} ${merged_commit} -- '**/*.yaml**' | cut -f2)" + if [ -n "$changed_files" ]; then + for file in $changed_files; do + service=$(echo "$file" | awk -F '/' '{print $2}') + if find "${{github.workspace}}/.github/workflows/docker/compose/" -name "*$service*" |grep -q .; then + if [ -n "$changed_files" ] && grep -q $service'-compose-cd.yaml' <<< "$changed_yamls"; then + echo "The $file has been added to the ${{github.workspace}}/.github/workflows/docker/compose/"$service"-compose-cd.yaml." + else + echo "Please check if the added $file is included in the yaml under path ${{github.workspace}}/.github/workflows/docker/compose/"$service"-compose-cd.yaml." + no_add="TRUE" + fi + else + echo "Please create a new compose file named "$service"-compose-cd.yaml in ${{github.workspace}}/.github/workflows/docker/compose/ for $file and fill it in." + no_add="TRUE" + fi + done + fi + + if [[ "$no_add" == "TRUE" ]]; then + exit 1 + fi + Dockerfile-path-change-detection-in-GenAIExamples: runs-on: ubuntu-latest steps: @@ -99,7 +131,7 @@ jobs: is_use="FALSE" used_files="" merged_commit=$(git log -1 --format='%H') - changed_files="$(git diff --name-status --diff-filter=DR ${{ github.event.pull_request.base.sha }} ${merged_commit} -- '**/Dockerfile' | cut -f2)" + changed_files="$(git diff --name-status --diff-filter=DR ${{ github.event.pull_request.base.sha }} ${merged_commit} -- '**/Dockerfile**' | cut -f2)" if [ -n "$changed_files" ]; then for file in $changed_files; do matching_files=$(grep -rl "$file" ../GenAIExamples/**/*.md) @@ -118,34 +150,3 @@ jobs: echo "Please modify the corresponding README in GenAIExamples repo and ask suyue.chen@intel.com for final confirmation." exit 1 fi - - Dockerfile-addition-detection-in-GenAIComps: - runs-on: ubuntu-latest - steps: - - name: Clean Up Working Directory - run: sudo rm -rf ${{github.workspace}}/* - - - name: Checkout code - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - name: Check if the Dockerfile has been added - run: | - set -e - shopt -s globstar - cd ${{github.workspace}} - is_use="FALSE" - used_files="" - merged_commit=$(git log -1 --format='%H') - changed_files="$(git diff --name-status --diff-filter=A ${{ github.event.pull_request.base.sha }} ${merged_commit} -- '**/Dockerfile**' | cut -f2)" - if [ -n "$changed_files" ]; then - for file in $changed_files; do - if find "${{github.workspace}}/.github/workflows/docker/compose/" -name "*$(echo "$file" | awk -F '/' '{print $2}')*" |grep -q .; then - echo "Please check if the added $file is included in the yaml under path ${{github.workspace}}/.github/workflows/docker/compose/." - else - echo "Please create a new compose file named service_name-compose-cd.yaml in ${{github.workspace}}/.github/workflows/docker/compose/ for $file and fill it in." - fi - done - exit 1 - fi From 48d4e533964bd2843df0a90b6c5e7c45c817a8d4 Mon Sep 17 00:00:00 2001 From: "chen, suyue" Date: Tue, 10 Sep 2024 15:23:10 +0800 Subject: [PATCH 005/145] unify default reranking model with BAAI/bge-reranker-base (#623) Signed-off-by: chensuyue Signed-off-by: ZePan110 --- README.md | 4 ++-- comps/dataprep/redis/README.md | 2 +- comps/dataprep/redis/langchain/config.py | 2 +- comps/embeddings/README.md | 8 ++++---- comps/embeddings/langchain/local_embedding.py | 2 +- comps/embeddings/llama_index/embedding_tei.py | 2 +- comps/embeddings/llama_index/local_embedding.py | 2 +- comps/reranks/README.md | 2 +- comps/reranks/langchain-mosec/mosec-docker/Dockerfile | 2 +- comps/reranks/tei/local_reranking.py | 2 +- tests/test_embeddings_langchain-mosec.sh | 2 +- tests/test_embeddings_langchain.sh | 4 ++-- tests/test_embeddings_llama_index.sh | 4 ++-- tests/test_reranks_langchain-mosec.sh | 2 +- tests/test_reranks_tei.sh | 4 ++-- 15 files changed, 22 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index e1b48a08ce..ecaf6c35d6 100644 --- a/README.md +++ b/README.md @@ -55,7 +55,7 @@ The initially supported `Microservices` are described in the below table. More ` Embedding LangChain/LlamaIndex - BAAI/bge-large-en-v1.5 + BAAI/bge-base-en-v1.5 TEI-Gaudi Gaudi2 Embedding on Gaudi2 @@ -76,7 +76,7 @@ The initially supported `Microservices` are described in the below table. More ` Reranking LangChain/LlamaIndex - BAAI/bge-reranker-large + BAAI/bge-reranker-base TEI-Gaudi Gaudi2 Reranking on Gaudi2 diff --git a/comps/dataprep/redis/README.md b/comps/dataprep/redis/README.md index 440eb0d457..c9fb1deaf7 100644 --- a/comps/dataprep/redis/README.md +++ b/comps/dataprep/redis/README.md @@ -49,7 +49,7 @@ First, you need to start a TEI service. ```bash your_port=6006 -model="BAAI/bge-large-en-v1.5" +model="BAAI/bge-base-en-v1.5" revision="refs/pr/5" docker run -p $your_port:80 -v ./data:/data --name tei_server -e http_proxy=$http_proxy -e https_proxy=$https_proxy --pull always ghcr.io/huggingface/text-embeddings-inference:cpu-1.2 --model-id $model --revision $revision ``` diff --git a/comps/dataprep/redis/langchain/config.py b/comps/dataprep/redis/langchain/config.py index 75715912c9..2d722a84a6 100644 --- a/comps/dataprep/redis/langchain/config.py +++ b/comps/dataprep/redis/langchain/config.py @@ -5,7 +5,7 @@ # Embedding model -EMBED_MODEL = os.getenv("EMBED_MODEL", "BAAI/bge-large-en-v1.5") +EMBED_MODEL = os.getenv("EMBED_MODEL", "BAAI/bge-base-en-v1.5") # Redis Connection Information REDIS_HOST = os.getenv("REDIS_HOST", "localhost") diff --git a/comps/embeddings/README.md b/comps/embeddings/README.md index 8ac6dfe0ca..56dc922df3 100644 --- a/comps/embeddings/README.md +++ b/comps/embeddings/README.md @@ -43,7 +43,7 @@ First, you need to start a TEI service. ```bash your_port=8090 -model="BAAI/bge-large-en-v1.5" +model="BAAI/bge-base-en-v1.5" docker run -p $your_port:80 -v ./data:/data --name tei_server -e http_proxy=$http_proxy -e https_proxy=$https_proxy --pull always ghcr.io/huggingface/text-embeddings-inference:cpu-1.5 --model-id $model ``` @@ -64,7 +64,7 @@ cd langchain # run with llama_index cd llama_index export TEI_EMBEDDING_ENDPOINT="http://localhost:$yourport" -export TEI_EMBEDDING_MODEL_NAME="BAAI/bge-large-en-v1.5" +export TEI_EMBEDDING_MODEL_NAME="BAAI/bge-base-en-v1.5" python embedding_tei.py ``` @@ -86,7 +86,7 @@ First, you need to start a TEI service. ```bash your_port=8090 -model="BAAI/bge-large-en-v1.5" +model="BAAI/bge-base-en-v1.5" docker run -p $your_port:80 -v ./data:/data --name tei_server -e http_proxy=$http_proxy -e https_proxy=$https_proxy --pull always ghcr.io/huggingface/text-embeddings-inference:cpu-1.5 --model-id $model ``` @@ -103,7 +103,7 @@ Export the `TEI_EMBEDDING_ENDPOINT` for later usage: ```bash export TEI_EMBEDDING_ENDPOINT="http://localhost:$yourport" -export TEI_EMBEDDING_MODEL_NAME="BAAI/bge-large-en-v1.5" +export TEI_EMBEDDING_MODEL_NAME="BAAI/bge-base-en-v1.5" ``` ### 2.2 Build Docker Image diff --git a/comps/embeddings/langchain/local_embedding.py b/comps/embeddings/langchain/local_embedding.py index 32f8944a98..6a0a1a630f 100644 --- a/comps/embeddings/langchain/local_embedding.py +++ b/comps/embeddings/langchain/local_embedding.py @@ -40,5 +40,5 @@ def embedding(input: TextDoc) -> EmbedDoc: if __name__ == "__main__": - embeddings = HuggingFaceEmbeddings(model_name="BAAI/bge-large-en-v1.5") + embeddings = HuggingFaceEmbeddings(model_name="BAAI/bge-base-en-v1.5") opea_microservices["opea_service@local_embedding"].start() diff --git a/comps/embeddings/llama_index/embedding_tei.py b/comps/embeddings/llama_index/embedding_tei.py index cf14f7790b..943bd75350 100644 --- a/comps/embeddings/llama_index/embedding_tei.py +++ b/comps/embeddings/llama_index/embedding_tei.py @@ -31,7 +31,7 @@ def embedding(input: TextDoc) -> EmbedDoc: if __name__ == "__main__": - tei_embedding_model_name = os.getenv("TEI_EMBEDDING_MODEL_NAME", "BAAI/bge-large-en-v1.5") + tei_embedding_model_name = os.getenv("TEI_EMBEDDING_MODEL_NAME", "BAAI/bge-base-en-v1.5") tei_embedding_endpoint = os.getenv("TEI_EMBEDDING_ENDPOINT", "http://localhost:8090") embeddings = TextEmbeddingsInference(model_name=tei_embedding_model_name, base_url=tei_embedding_endpoint) logger.info("TEI Gaudi Embedding initialized.") diff --git a/comps/embeddings/llama_index/local_embedding.py b/comps/embeddings/llama_index/local_embedding.py index 143d7bb07c..17ee6e89a8 100644 --- a/comps/embeddings/llama_index/local_embedding.py +++ b/comps/embeddings/llama_index/local_embedding.py @@ -31,5 +31,5 @@ def embedding(input: TextDoc) -> EmbedDoc: if __name__ == "__main__": - embeddings = HuggingFaceInferenceAPIEmbedding(model_name="BAAI/bge-large-en-v1.5") + embeddings = HuggingFaceInferenceAPIEmbedding(model_name="BAAI/bge-base-en-v1.5") opea_microservices["opea_service@local_embedding"].start() diff --git a/comps/reranks/README.md b/comps/reranks/README.md index 9b5dc90426..c1ea8bb7a8 100644 --- a/comps/reranks/README.md +++ b/comps/reranks/README.md @@ -19,7 +19,7 @@ export HF_TOKEN=${your_hf_api_token} export LANGCHAIN_TRACING_V2=true export LANGCHAIN_API_KEY=${your_langchain_api_key} export LANGCHAIN_PROJECT="opea/reranks" -export RERANK_MODEL_ID="BAAI/bge-reranker-large" +export RERANK_MODEL_ID="BAAI/bge-reranker-base" revision=refs/pr/4 volume=$PWD/data docker run -d -p 6060:80 -v $volume:/data -e http_proxy=$http_proxy -e https_proxy=$https_proxy --pull always ghcr.io/huggingface/text-embeddings-inference:cpu-1.2 --model-id $RERANK_MODEL_ID --revision $revision --hf-api-token $HF_TOKEN diff --git a/comps/reranks/langchain-mosec/mosec-docker/Dockerfile b/comps/reranks/langchain-mosec/mosec-docker/Dockerfile index dcf38aee5e..895b209099 100644 --- a/comps/reranks/langchain-mosec/mosec-docker/Dockerfile +++ b/comps/reranks/langchain-mosec/mosec-docker/Dockerfile @@ -18,7 +18,7 @@ RUN pip3 install intel-extension-for-pytorch==2.2.0 RUN pip3 install transformers sentence-transformers RUN pip3 install llmspec mosec -RUN cd /home/user/ && export HF_ENDPOINT=https://hf-mirror.com && huggingface-cli download --resume-download BAAI/bge-reranker-large --local-dir /home/user/bge-reranker-large +RUN cd /home/user/ && export HF_ENDPOINT=https://hf-mirror.com && huggingface-cli download --resume-download BAAI/bge-reranker-base --local-dir /home/user/bge-reranker-large USER user ENV EMB_MODEL="/home/user/bge-reranker-large/" diff --git a/comps/reranks/tei/local_reranking.py b/comps/reranks/tei/local_reranking.py index 284cca7e6d..fca2e68e6f 100644 --- a/comps/reranks/tei/local_reranking.py +++ b/comps/reranks/tei/local_reranking.py @@ -41,5 +41,5 @@ def reranking(input: SearchedDoc) -> RerankedDoc: if __name__ == "__main__": - reranker_model = CrossEncoder(model_name="BAAI/bge-reranker-large", max_length=512) + reranker_model = CrossEncoder(model_name="BAAI/bge-reranker-base", max_length=512) opea_microservices["opea_service@local_reranking"].start() diff --git a/tests/test_embeddings_langchain-mosec.sh b/tests/test_embeddings_langchain-mosec.sh index 95858118b0..9a30b33cee 100644 --- a/tests/test_embeddings_langchain-mosec.sh +++ b/tests/test_embeddings_langchain-mosec.sh @@ -33,7 +33,7 @@ function build_docker_images() { function start_service() { mosec_endpoint=5001 - model="BAAI/bge-large-en-v1.5" + model="BAAI/bge-base-en-v1.5" unset http_proxy docker run -d --name="test-comps-embedding-langchain-mosec-endpoint" -p $mosec_endpoint:8000 opea/embedding-langchain-mosec-endpoint:comps export MOSEC_EMBEDDING_ENDPOINT="http://${ip_address}:${mosec_endpoint}" diff --git a/tests/test_embeddings_langchain.sh b/tests/test_embeddings_langchain.sh index 6c6241226c..3dbbcdcd0a 100644 --- a/tests/test_embeddings_langchain.sh +++ b/tests/test_embeddings_langchain.sh @@ -21,10 +21,10 @@ function build_docker_images() { function start_service() { tei_endpoint=5001 - model="BAAI/bge-large-en-v1.5" + model="BAAI/bge-base-en-v1.5" revision="refs/pr/5" unset http_proxy - docker run -d --name="test-comps-embedding-tei-endpoint" -p $tei_endpoint:80 -v ./data:/data --pull always ghcr.io/huggingface/text-embeddings-inference:cpu-1.2 --model-id $model --revision $revision + docker run -d --name="test-comps-embedding-tei-endpoint" -p $tei_endpoint:80 -v ./data:/data --pull always ghcr.io/huggingface/text-embeddings-inference:cpu-1.5 --model-id $model export TEI_EMBEDDING_ENDPOINT="http://${ip_address}:${tei_endpoint}" tei_service_port=5002 docker run -d --name="test-comps-embedding-tei-server" -e http_proxy=$http_proxy -e https_proxy=$https_proxy -p ${tei_service_port}:6000 --ipc=host -e TEI_EMBEDDING_ENDPOINT=$TEI_EMBEDDING_ENDPOINT opea/embedding-tei:comps diff --git a/tests/test_embeddings_llama_index.sh b/tests/test_embeddings_llama_index.sh index 81eac442ba..19eb55304a 100644 --- a/tests/test_embeddings_llama_index.sh +++ b/tests/test_embeddings_llama_index.sh @@ -22,9 +22,9 @@ function build_docker_images() { function start_service() { tei_endpoint=5001 - model="BAAI/bge-large-en-v1.5" + model="BAAI/bge-base-en-v1.5" revision="refs/pr/5" - docker run -d --name="test-comps-embedding-tei-llama-index-endpoint" -p $tei_endpoint:80 -v ./data:/data -e http_proxy=$http_proxy -e https_proxy=$https_proxy --pull always ghcr.io/huggingface/text-embeddings-inference:cpu-1.2 --model-id $model --revision $revision + docker run -d --name="test-comps-embedding-tei-llama-index-endpoint" -p $tei_endpoint:80 -v ./data:/data -e http_proxy=$http_proxy -e https_proxy=$https_proxy --pull always ghcr.io/huggingface/text-embeddings-inference:cpu-1.5 --model-id $model export TEI_EMBEDDING_ENDPOINT="http://${ip_address}:${tei_endpoint}" tei_service_port=5010 docker run -d --name="test-comps-embedding-tei-llama-index-server" -e http_proxy=$http_proxy -e https_proxy=$https_proxy -p ${tei_service_port}:6000 --ipc=host -e TEI_EMBEDDING_ENDPOINT=$TEI_EMBEDDING_ENDPOINT opea/embedding-tei-llama-index:comps diff --git a/tests/test_reranks_langchain-mosec.sh b/tests/test_reranks_langchain-mosec.sh index d34957a4cc..1339c0df97 100644 --- a/tests/test_reranks_langchain-mosec.sh +++ b/tests/test_reranks_langchain-mosec.sh @@ -33,7 +33,7 @@ function build_docker_images() { function start_service() { mosec_endpoint=5006 - model="BAAI/bge-reranker-large" + model="BAAI/bge-reranker-base" unset http_proxy docker run -d --name="test-comps-reranking-langchain-mosec-endpoint" -p $mosec_endpoint:8000 opea/reranking-langchain-mosec-endpoint:comps export MOSEC_RERANKING_ENDPOINT="http://${ip_address}:${mosec_endpoint}" diff --git a/tests/test_reranks_tei.sh b/tests/test_reranks_tei.sh index 0b146d81e6..fa087357ce 100644 --- a/tests/test_reranks_tei.sh +++ b/tests/test_reranks_tei.sh @@ -21,10 +21,10 @@ function start_service() { tei_endpoint=5006 # Remember to set HF_TOKEN before invoking this test! export HF_TOKEN=${HF_TOKEN} - model=BAAI/bge-reranker-large + model=BAAI/bge-reranker-base revision=refs/pr/4 volume=$PWD/data - docker run -d --name="test-comps-reranking-tei-endpoint" -p $tei_endpoint:80 -v $volume:/data --pull always ghcr.io/huggingface/text-embeddings-inference:cpu-1.2 --model-id $model --revision $revision + docker run -d --name="test-comps-reranking-tei-endpoint" -p $tei_endpoint:80 -v $volume:/data --pull always ghcr.io/huggingface/text-embeddings-inference:cpu-1.5 --model-id $model export TEI_RERANKING_ENDPOINT="http://${ip_address}:${tei_endpoint}" tei_service_port=5007 From 2fbce3e53d40dec3be2b573f6d5b9e68b70316c2 Mon Sep 17 00:00:00 2001 From: XuhuiRen <44249229+XuhuiRen@users.noreply.github.com> Date: Tue, 10 Sep 2024 15:50:40 +0800 Subject: [PATCH 006/145] Fix the loading error of jsonl file (#644) * fixjsonl Signed-off-by: XuhuiRen * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Signed-off-by: XuhuiRen Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- comps/dataprep/utils.py | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/comps/dataprep/utils.py b/comps/dataprep/utils.py index 571d5e8a47..f48d971574 100644 --- a/comps/dataprep/utils.py +++ b/comps/dataprep/utils.py @@ -285,6 +285,16 @@ def load_json(json_path): return content_list +def load_jsonl(jsonl_path): + """Load and process jsonl file.""" + content_list = [] + with open(jsonl_path, "r") as file: + for line in file: + json_obj = json.loads(line) + content_list.append(json_obj) + return content_list + + def load_yaml(yaml_path): """Load and process yaml file.""" with open(yaml_path, "r") as file: @@ -351,8 +361,10 @@ def document_loader(doc_path): return load_md(doc_path) elif doc_path.endswith(".xml"): return load_xml(doc_path) - elif doc_path.endswith(".json") or doc_path.endswith(".jsonl"): + elif doc_path.endswith(".json"): return load_json(doc_path) + elif doc_path.endswith(".jsonl"): + return load_jsonl(doc_path) elif doc_path.endswith(".yaml"): return load_yaml(doc_path) elif doc_path.endswith(".xlsx") or doc_path.endswith(".xls"): From 29311479bb4685054d63168137ab2f204d5da8b3 Mon Sep 17 00:00:00 2001 From: XinyuYe-Intel Date: Tue, 10 Sep 2024 15:52:15 +0800 Subject: [PATCH 007/145] added finetuned model deployment tutorial in readme. (#648) Signed-off-by: Ye, Xinyu --- comps/finetuning/README.md | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/comps/finetuning/README.md b/comps/finetuning/README.md index 2717a00649..0eb39da9b2 100644 --- a/comps/finetuning/README.md +++ b/comps/finetuning/README.md @@ -86,7 +86,7 @@ docker run --runtime=habana -e HABANA_VISIBLE_DEVICES=all -p 8015:8015 -e OMPI_M ## 🚀3. Consume Finetuning Service -## 3.1 Upload a training file +### 3.1 Upload a training file Download a training file, such as `alpaca_data.json` for instruction tuning and upload it to the server with below command, this file can be downloaded in [here](https://github.com/tatsu-lab/stanford_alpaca/blob/main/alpaca_data.json): @@ -97,9 +97,9 @@ curl http://${your_ip}:8015/v1/files -X POST -H "Content-Type: multipart/form-da For reranking and embedding models finetuning, the training file [toy_finetune_data.jsonl](https://github.com/FlagOpen/FlagEmbedding/blob/master/examples/finetune/toy_finetune_data.jsonl) is an toy example. -## 3.2 Create fine-tuning job +### 3.2 Create fine-tuning job -### 3.2.1 Instruction Tuning +#### 3.2.1 Instruction Tuning After a training file like `alpaca_data.json` is uploaded, use the following command to launch a finetuning job using `meta-llama/Llama-2-7b-chat-hf` as base model: @@ -114,7 +114,7 @@ curl http://${your_ip}:8015/v1/fine_tuning/jobs \ }' ``` -### 3.2.2 Reranking Model Training +#### 3.2.2 Reranking Model Training Use the following command to launch a finetuning job for reranking model finetuning, such as `BAAI/bge-reranker-large`: @@ -133,7 +133,7 @@ curl http://${your_ip}:8015/v1/fine_tuning/jobs \ }' ``` -### 3.2.3 Embedding Model Training +#### 3.2.3 Embedding Model Training Use the following command to launch a finetuning job for embedding model finetuning, such as `BAAI/bge-base-en-v1.5`: @@ -173,7 +173,7 @@ curl http://${your_ip}:8015/v1/fine_tuning/jobs \ ``` -### 3.2.4 LLM Pretraining +#### 3.2.4 LLM Pretraining Use the following command to launch a job for LLM pretraining, such as `meta-llama/Llama-2-7b-hf`: @@ -199,7 +199,7 @@ Below is an example for the format of the pretraining dataset: {"text": "A boy with a blue tank top sitting watching three dogs."} ``` -## 3.3 Manage fine-tuning job +### 3.3 Manage fine-tuning job Below commands show how to list finetuning jobs, retrieve a finetuning job, cancel a finetuning job and list checkpoints of a finetuning job. @@ -217,6 +217,10 @@ curl http://localhost:8015/v1/fine_tuning/jobs/cancel -X POST -H "Content-Type: curl http://${your_ip}:8015/v1/finetune/list_checkpoints -X POST -H "Content-Type: application/json" -d '{"fine_tuning_job_id": ${fine_tuning_job_id}}' ``` +### 3.4 Leverage fine-tuned model + +After fine-tuning job is done, fine-tuned model can be chosen from listed checkpoints, then the fine-tuned model can be used in other microservices. For example, fine-tuned reranking model can be used in [reranks](../reranks/README.md) microservice by assign its path to the environment variable `RERANK_MODEL_ID`, fine-tuned embedding model can be used in [embeddings](../embeddings/README.md) microservice by assign its path to the environment variable `model`, LLMs after instruction tuning can be used in [llms](../llms/README.md) microservice by assign its path to the environment variable `your_hf_llm_model`. + ## 🚀4. Descriptions for Finetuning parameters We utilize [OpenAI finetuning parameters](https://platform.openai.com/docs/api-reference/fine-tuning) and extend it with more customizable parameters, see the definitions at [finetune_config](https://github.com/opea-project/GenAIComps/blob/main/comps/finetuning/finetune_config.py). From 94eb60f168fb88fbf88b578663bee6b792c612c9 Mon Sep 17 00:00:00 2001 From: "chen, suyue" Date: Tue, 10 Sep 2024 15:56:47 +0800 Subject: [PATCH 008/145] add PREDICTIONGUARD_API_KEY for CI (#650) Signed-off-by: chensuyue --- .github/workflows/pr-microservice-test.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/pr-microservice-test.yml b/.github/workflows/pr-microservice-test.yml index 786b887c56..6e205784f7 100644 --- a/.github/workflows/pr-microservice-test.yml +++ b/.github/workflows/pr-microservice-test.yml @@ -46,6 +46,7 @@ jobs: GOOGLE_API_KEY: ${{ secrets.GOOGLE_API_KEY }} GOOGLE_CSE_ID: ${{ secrets.GOOGLE_CSE_ID }} PINECONE_KEY: ${{ secrets.PINECONE_KEY }} + PREDICTIONGUARD_API_KEY: ${{ secrets.PREDICTIONGUARD_API_KEY }} service_path: ${{ matrix.service }} hardware: ${{ matrix.hardware }} run: | From c718602abfb28dc8726ecd9639f0831c93096304 Mon Sep 17 00:00:00 2001 From: lkk <33276950+lkk12014402@users.noreply.github.com> Date: Tue, 10 Sep 2024 16:35:23 +0800 Subject: [PATCH 009/145] add resume finetuning checkpoint ut. (#646) * add resume finetuning checkpoint ut. * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * add final tuned model. --------- Co-authored-by: root Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- comps/finetuning/handlers.py | 20 ++++++- tests/test_finetuning_embedding_hpu.sh | 79 +++++++++++++++++++++++++- 2 files changed, 93 insertions(+), 6 deletions(-) diff --git a/comps/finetuning/handlers.py b/comps/finetuning/handlers.py index ddae0726fd..8026273de5 100644 --- a/comps/finetuning/handlers.py +++ b/comps/finetuning/handlers.py @@ -3,6 +3,7 @@ import os import random +import re import time import urllib.parse import uuid @@ -61,7 +62,7 @@ def update_job_status(job_id: FineTuningJobID): status = "cancelled" if status == "stopped" else status logger.info(f"Status of job {job_id} is '{status}'") running_finetuning_jobs[job_id].status = status - if status == "finished" or status == "cancelled" or status == "failed": + if status == "succeeded" or status == "cancelled" or status == "failed": break time.sleep(CHECK_JOB_STATUS_INTERVAL) @@ -190,7 +191,21 @@ def handle_list_finetuning_checkpoints(request: FineTuningJobIDRequest): checkpoints = [] if os.path.exists(output_dir): # Iterate over the contents of the directory and add an entry for each - for _ in os.listdir(output_dir): # Loop over directory contents + files = os.listdir(output_dir) + for file in files: # Loop over directory contents + file_path = os.path.join(output_dir, file) + if os.path.isdir(file_path) and file.startswith("checkpoint"): + steps = re.findall("\d+", file)[0] + checkpointsResponse = FineTuningJobCheckpoint( + id=f"ftckpt-{uuid.uuid4()}", # Generate a unique ID + created_at=int(time.time()), # Use the current timestamp + fine_tuned_model_checkpoint=file_path, # Directory path itself + fine_tuning_job_id=fine_tuning_job_id, + object="fine_tuning.job.checkpoint", + step_number=steps, + ) + checkpoints.append(checkpointsResponse) + if job.status == "succeeded": checkpointsResponse = FineTuningJobCheckpoint( id=f"ftckpt-{uuid.uuid4()}", # Generate a unique ID created_at=int(time.time()), # Use the current timestamp @@ -199,7 +214,6 @@ def handle_list_finetuning_checkpoints(request: FineTuningJobIDRequest): object="fine_tuning.job.checkpoint", ) checkpoints.append(checkpointsResponse) - checkpoint_id_to_checkpoint_path[checkpointsResponse.id] = checkpointsResponse.fine_tuned_model_checkpoint return checkpoints diff --git a/tests/test_finetuning_embedding_hpu.sh b/tests/test_finetuning_embedding_hpu.sh index e080b0d13b..a066140ae3 100644 --- a/tests/test_finetuning_embedding_hpu.sh +++ b/tests/test_finetuning_embedding_hpu.sh @@ -28,6 +28,7 @@ function start_service() { sleep 1m } + function validate_microservice() { cd $LOG_PATH export no_proxy="localhost,127.0.0.1,"${ip_address} @@ -79,8 +80,10 @@ function validate_microservice() { HTTP_RESPONSE=$(curl --silent --write-out "HTTPSTATUS:%{http_code}" -X POST -H 'Content-Type: application/json' -d '{"training_file": "test_embed_data.json","model": "BAAI/bge-base-en-v1.5","General":{"task":"embedding","lora_cofig":null,"save_strategy":"epoch"},"Dataset":{"query_max_len":128,"passage_max_len":128,"padding":"max_length"},"Training":{"epochs":3}}' "$URL") HTTP_STATUS=$(echo $HTTP_RESPONSE | tr -d '\n' | sed -e 's/.*HTTPSTATUS://') RESPONSE_BODY=$(echo $HTTP_RESPONSE | sed -e 's/HTTPSTATUS\:.*//g') + FINTUNING_ID=$(echo "$RESPONSE_BODY" | jq -r '.id') SERVICE_NAME="finetuning-server - create finetuning job" + if [ "$HTTP_STATUS" -ne "200" ]; then echo "[ $SERVICE_NAME ] HTTP status is not 200. Received status was $HTTP_STATUS" docker logs finetuning-server >> ${LOG_PATH}/finetuning-server_create.log @@ -96,10 +99,80 @@ function validate_microservice() { echo "[ $SERVICE_NAME ] Content is as expected." fi - sleep 10m + # test /v1/fine_tuning/jobs/retrieve + URL="http://${ip_address}:$finetuning_service_port/v1/fine_tuning/jobs/retrieve" + for((i=1;i<=10;i++)); + do + HTTP_RESPONSE=$(curl --silent --write-out "HTTPSTATUS:%{http_code}" -X POST -H "Content-Type: application/json" -d '{"fine_tuning_job_id": "'$FINTUNING_ID'"}' "$URL") + echo $HTTP_RESPONSE + RESPONSE_BODY=$(echo $HTTP_RESPONSE | sed -e 's/HTTPSTATUS\:.*//g') + STATUS=$(echo "$RESPONSE_BODY" | jq -r '.status') + if [[ "$STATUS" == "succeeded" ]]; then + echo "training: succeeded." + break + elif [[ "$STATUS" == "failed" ]]; then + echo "training: failed." + exit 1 + else + echo "training: '$STATUS'" + fi + sleep 1m + done + + # test /v1/finetune/list_checkpoints + URL="http://${ip_address}:$finetuning_service_port/v1/finetune/list_checkpoints" + HTTP_RESPONSE=$(curl --silent --write-out "HTTPSTATUS:%{http_code}" -X POST -H "Content-Type: application/json" -d '{"fine_tuning_job_id": "'$FINTUNING_ID'"}' "$URL") + echo $HTTP_RESPONSE + RESPONSE_BODY=$(echo $HTTP_RESPONSE | sed -e 's/HTTPSTATUS\:.*//g') + fine_tuned_model_checkpoint=$(echo "$RESPONSE_BODY" | jq -r '.[0].fine_tuned_model_checkpoint') + echo $fine_tuned_model_checkpoint + + echo "start resume checkpoint............................................." + # resume checkpoint /v1/fine_tuning/jobs + URL="http://${ip_address}:$finetuning_service_port/v1/fine_tuning/jobs" + HTTP_RESPONSE=$(curl --silent --write-out "HTTPSTATUS:%{http_code}" -X POST -H 'Content-Type: application/json' -d '{"training_file": "test_embed_data.json","model": "BAAI/bge-base-en-v1.5","General":{"task":"embedding","lora_cofig":null,"save_strategy":"epoch","resume_from_checkpoint":"'$fine_tuned_model_checkpoint'"},"Dataset":{"query_max_len":128,"passage_max_len":128,"padding":"max_length"},"Training":{"epochs":5}}' "$URL") + HTTP_STATUS=$(echo $HTTP_RESPONSE | tr -d '\n' | sed -e 's/.*HTTPSTATUS://') + RESPONSE_BODY=$(echo $HTTP_RESPONSE | sed -e 's/HTTPSTATUS\:.*//g') + FINTUNING_ID=$(echo "$RESPONSE_BODY" | jq -r '.id') + SERVICE_NAME="finetuning-server - resume checkpoint" + + + if [ "$HTTP_STATUS" -ne "200" ]; then + echo "[ $SERVICE_NAME ] HTTP status is not 200. Received status was $HTTP_STATUS" + docker logs finetuning-server >> ${LOG_PATH}/finetuning-server_create.log + exit 1 + else + echo "[ $SERVICE_NAME ] HTTP status is 200. Checking content..." + fi + if [[ "$RESPONSE_BODY" != *'{"id":"ft-job'* ]]; then + echo "[ $SERVICE_NAME ] Content does not match the expected result: $RESPONSE_BODY" + docker logs finetuning-server >> ${LOG_PATH}/finetuning-server_create.log + exit 1 + else + echo "[ $SERVICE_NAME ] Content is as expected." + fi + + # check training status /v1/fine_tuning/jobs/retrieve + URL="http://${ip_address}:$finetuning_service_port/v1/fine_tuning/jobs/retrieve" + for((i=1;i<=10;i++)); + do + HTTP_RESPONSE=$(curl --silent --write-out "HTTPSTATUS:%{http_code}" -X POST -H "Content-Type: application/json" -d '{"fine_tuning_job_id": "'$FINTUNING_ID'"}' "$URL") + echo $HTTP_RESPONSE + RESPONSE_BODY=$(echo $HTTP_RESPONSE | sed -e 's/HTTPSTATUS\:.*//g') + STATUS=$(echo "$RESPONSE_BODY" | jq -r '.status') + if [[ "$STATUS" == "succeeded" ]]; then + echo "training: succeeded." + break + elif [[ "$STATUS" == "failed" ]]; then + echo "training: failed." + exit 1 + else + echo "training: '$STATUS'" + fi + sleep 1m + done + - # get logs - docker logs finetuning-server >> ${LOG_PATH}/finetuning-server_create.log } function stop_docker() { From 2a91903627d024937dc380e77c883c9da8e93084 Mon Sep 17 00:00:00 2001 From: ZePan110 Date: Tue, 10 Sep 2024 17:22:35 +0800 Subject: [PATCH 010/145] Fix Dockerfile detect issue (#652) Signed-off-by: ZePan110 --- .github/workflows/pr-dockerfile-path-scan.yaml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/pr-dockerfile-path-scan.yaml b/.github/workflows/pr-dockerfile-path-scan.yaml index 984619f50c..3482e90c49 100644 --- a/.github/workflows/pr-dockerfile-path-scan.yaml +++ b/.github/workflows/pr-dockerfile-path-scan.yaml @@ -134,12 +134,14 @@ jobs: changed_files="$(git diff --name-status --diff-filter=DR ${{ github.event.pull_request.base.sha }} ${merged_commit} -- '**/Dockerfile**' | cut -f2)" if [ -n "$changed_files" ]; then for file in $changed_files; do - matching_files=$(grep -rl "$file" ../GenAIExamples/**/*.md) + matching_files=$(grep -rl "$file" ../GenAIExamples/**/*.md) || true if [ -n "$matching_files" ]; then is_use="TRUE" used_files+="$file " echo "Modified Dockerfile '$file' is referenced in:" echo "$matching_files" + else + echo "Modified Dockerfile '$file' is not referenced" fi done fi From bea9bb02429830d073d63439b5cc4a8356f322ca Mon Sep 17 00:00:00 2001 From: Letong Han <106566639+letonghan@users.noreply.github.com> Date: Tue, 10 Sep 2024 23:24:09 +0800 Subject: [PATCH 011/145] [Reorg] Reorg Folder to Support Different Vendors (#625) Signed-off-by: letonghan Signed-off-by: chensuyue --- .github/workflows/_get-test-matrix.yml | 54 +---- .../docker/compose/agent-compose-cd.yaml | 2 +- .../workflows/docker/compose/asr-compose.yaml | 6 +- .../compose/chathistory-compose-cd.yaml | 2 +- .../docker/compose/dataprep-compose-cd.yaml | 10 +- .../docker/compose/dataprep-compose.yaml | 4 +- .../docker/compose/embeddings-compose-cd.yaml | 6 +- .../docker/compose/embeddings-compose.yaml | 2 +- .../docker/compose/guardrails-compose-cd.yaml | 2 +- .../docker/compose/guardrails-compose.yaml | 2 +- .../docker/compose/llms-compose-cd.yaml | 2 +- .../docker/compose/llms-compose.yaml | 14 +- .../docker/compose/lvms-compose-cd.yaml | 8 +- .../docker/compose/nginx-compose-cd.yaml | 2 +- .../compose/prompt_registry-compose-cd.yaml | 2 +- .../docker/compose/reranks-compose-cd.yaml | 6 +- .../docker/compose/reranks-compose.yaml | 2 +- .../docker/compose/retrievers-compose-cd.yaml | 8 +- .../docker/compose/retrievers-compose.yaml | 4 +- .../workflows/docker/compose/tts-compose.yaml | 6 +- .../compose/vectorstores-compose-cd.yaml | 2 +- .../compose/web_retrievers-compose.yaml | 2 +- .../workflows/pr-dockerfile-path-scan.yaml | 2 +- .github/workflows/pr-examples-test.yml | 12 +- .github/workflows/pr-microservice-test.yml | 13 +- .github/workflows/scripts/get_test_matrix.sh | 84 ++++++++ .github/workflows/scripts/test_ut.sh | 2 - comps/agent/langchain/{docker => }/Dockerfile | 0 comps/agent/langchain/README.md | 2 +- comps/asr/whisper/Dockerfile | 22 +- comps/asr/{ => whisper}/README.md | 10 +- comps/asr/{ => whisper}/asr.py | 0 comps/asr/{ => whisper}/check_asr_server.py | 0 comps/asr/whisper/dependency/Dockerfile | 36 ++++ .../Dockerfile.intel_hpu} | 6 +- .../asr/{ => whisper/dependency}/__init__.py | 0 .../{ => dependency}/check_whisper_server.py | 0 .../whisper/{ => dependency}/whisper_model.py | 0 .../{ => dependency}/whisper_server.py | 0 comps/asr/{ => whisper}/requirements.txt | 0 .../chathistory/mongo/{docker => }/Dockerfile | 0 comps/chathistory/mongo/README.md | 2 +- .../docker-compose-chathistory-mongo.yaml | 0 comps/dataprep/README.md | 10 +- .../milvus/{docker => langchain}/Dockerfile | 6 +- .../dataprep/milvus/{ => langchain}/README.md | 10 +- .../milvus/{ => langchain}/__init__.py | 0 .../dataprep/milvus/{ => langchain}/config.py | 0 .../docker-compose-dataprep-milvus.yaml | 0 .../milvus/{docker => langchain}/milvus.yaml | 0 .../{ => langchain}/prepare_doc_milvus.py | 0 .../milvus/{ => langchain}/requirements.txt | 0 .../redis/langchain}/Dockerfile | 4 +- .../redis/langchain}/README.md | 12 +- .../redis/langchain}/__init__.py | 0 .../redis/langchain}/config.py | 0 .../docker-compose-dataprep-redis.yaml | 0 .../redis/langchain}/multimodal_utils.py | 0 .../langchain}/prepare_videodoc_redis.py | 10 +- .../redis/langchain}/requirements.txt | 0 .../redis/langchain}/schema.yml | 0 .../__pycache__/config.cpython-38.pyc | Bin 426 -> 0 bytes .../langchain/{docker => }/Dockerfile | 0 .../pgvector/{ => langchain}/README.md | 14 +- .../docker-compose-dataprep-pgvector.yaml | 1 - .../pinecone/{docker => langchain}/Dockerfile | 8 +- .../pinecone/{ => langchain}/README.md | 6 +- .../langchain}/__init__.py | 0 .../pinecone/{ => langchain}/config.py | 0 .../docker-compose-dataprep-pinecone.yaml | 0 .../{ => langchain}/prepare_doc_pinecone.py | 0 .../pinecone/{ => langchain}/requirements.txt | 0 .../qdrant/{docker => langchain}/Dockerfile | 6 +- .../dataprep/qdrant/{ => langchain}/README.md | 6 +- .../langchain}/__init__.py | 0 .../dataprep/qdrant/{ => langchain}/config.py | 0 .../docker-compose-dataprep-qdrant.yaml | 0 .../{ => langchain}/prepare_doc_qdrant.py | 0 .../qdrant/{ => langchain}/requirements.txt | 0 comps/dataprep/redis/README.md | 28 +-- .../redis/langchain/{docker => }/Dockerfile | 0 .../docker-compose-dataprep-redis.yaml | 0 .../langchain_ray/{docker => }/Dockerfile | 0 .../docker-compose-dataprep-redis.yaml | 43 ++++ .../redis/llama_index/{docker => }/Dockerfile | 0 .../docker-compose-dataprep-redis.yaml | 0 comps/dataprep/redis/test_data.pdf | Bin 1083893 -> 0 bytes comps/embeddings/README.md | 143 +------------ .../docker => mosec/langchain}/Dockerfile | 4 +- .../langchain}/README.md | 4 +- .../langchain}/__init__.py | 0 .../langchain/dependency}/Dockerfile | 2 +- .../langchain/dependency}/README.md | 2 +- .../langchain/dependency}/server-ipex.py | 0 .../langchain/dependency}/test-embedding.py | 0 .../langchain}/docker_compose_embedding.yaml | 1 - .../langchain}/embedding_mosec.py | 0 .../langchain}/requirements.txt | 0 .../README.md | 20 +- .../{langchain => multimodal}/__init__.py | 0 .../bridgetower}/Dockerfile | 4 +- .../bridgetower/Dockerfile.intel_hpu} | 4 +- .../bridgetower/__init__.py | 0 .../bridgetower/bridgetower_custom.py | 0 .../bridgetower/bridgetower_embedding.py | 0 .../bridgetower/bridgetower_server.py | 2 +- ...ompose_bridgetower_embedding_endpoint.yaml | 0 .../bridgetower/utils.py | 0 .../multimodal_langchain}/Dockerfile | 6 +- .../multimodal_langchain}/__init__.py | 0 .../docker_compose_multimodal_embedding.yaml | 0 .../local_mm_embedding.py | 2 +- .../multimodal_langchain/mm_embedding_mmei.py | 0 .../multimodal_langchain/requirements.txt | 0 .../multimodal_clip/{docker => }/Dockerfile | 0 comps/embeddings/multimodal_clip/README.md | 4 +- .../docker_compose_embedding.yaml | 0 .../neural-speed/{docker => }/Dockerfile | 0 comps/embeddings/neural-speed/README.md | 4 +- .../Dockerfile | 4 +- .../client.py | 0 .../client_multibatch.py | 0 .../requirements.txt | 0 .../server.py | 0 .../docker_compose_embedding.yaml | 1 - .../docker => tei/langchain}/Dockerfile | 4 +- comps/embeddings/tei/langchain/README.md | 121 +++++++++++ .../langchain}/__init__.py | 0 .../langchain}/docker_compose_embedding.yaml | 1 - .../{ => tei}/langchain/embedding_tei.py | 0 .../{ => tei}/langchain/local_embedding.py | 0 .../langchain/local_embedding_768.py | 0 .../{ => tei}/langchain/requirements.txt | 0 .../docker => tei/llama_index}/Dockerfile | 4 +- comps/embeddings/tei/llama_index/README.md | 121 +++++++++++ .../llama_index}/__init__.py | 0 .../docker_compose_embedding.yaml | 0 .../{ => tei}/llama_index/embedding_tei.py | 0 .../{ => tei}/llama_index/local_embedding.py | 0 .../{ => tei}/llama_index/requirements.txt | 0 .../mongo/{docker => }/Dockerfile | 0 comps/feedback_management/mongo/README.md | 2 +- .../docker-compose-user-feedback-mongo.yaml | 0 .../{docker/Dockerfile_cpu => Dockerfile} | 0 .../Dockerfile_hpu => Dockerfile.intel_hpu} | 0 comps/finetuning/README.md | 4 +- .../{docker => langchain}/Dockerfile | 4 +- .../llama_guard/{ => langchain}/README.md | 8 +- .../llama_guard/{ => langchain}/__init__.py | 0 .../docker_compose_guardrails.yaml | 0 .../{ => langchain}/guardrails_tgi.py | 0 .../{ => langchain}/requirements.txt | 0 .../pii_detection/{docker => }/Dockerfile | 0 comps/guardrails/pii_detection/README.md | 2 +- .../{docker => }/Dockerfile | 0 comps/guardrails/toxicity_detection/README.md | 2 +- .../{ => langchain}/README.md | 10 - .../langchain/docker_compose_intent.yaml | 1 - .../langchain/intent_detection.py | 7 +- .../langchain/requirements.txt | 1 + comps/intent_detection/langchain/template.py | 8 - .../langchain/{docker => }/Dockerfile | 4 +- .../knowledgegraphs/{ => langchain}/README.md | 2 +- .../{ => langchain}/build_docker.sh | 0 .../{ => langchain}/doc/output_cypher.png | Bin .../{ => langchain}/doc/output_query1.png | Bin .../{ => langchain}/doc/output_query2.png | Bin .../{ => langchain}/doc/output_rag.png | Bin .../{ => langchain}/doc/workflow.png | Bin .../{ => langchain}/requirements.txt | 0 comps/knowledgegraphs/{ => langchain}/test.py | 0 .../tgi/{ => langchain}/Dockerfile | 4 +- .../tgi/{ => langchain}/README.md | 6 +- .../faq-generation/tgi/langchain}/__init__.py | 0 .../{ => langchain}/docker_compose_llm.yaml | 1 - .../tgi/{ => langchain}/entrypoint.sh | 0 .../faq-generation/tgi/{ => langchain}/llm.py | 0 .../{ => langchain}/requirements-runtime.txt | 0 .../tgi/{ => langchain}/requirements.txt | 0 .../tgi/{ => langchain}/Dockerfile | 4 +- .../tgi/{ => langchain}/README.md | 2 +- .../tgi/langchain}/__init__.py | 0 .../{ => langchain}/docker_compose_llm.yaml | 0 .../tgi/{ => langchain}/entrypoint.sh | 0 .../summarization/tgi/{ => langchain}/llm.py | 0 .../{ => langchain}/requirements-runtime.txt | 0 .../tgi/{ => langchain}/requirements.txt | 0 comps/llms/{ => text-generation}/README.md | 26 +-- .../native/{docker => }/Dockerfile | 0 comps/llms/text-generation/native/README.md | 3 +- .../{docker => }/docker_compose_llm.yaml | 0 .../ollama/{ => langchain}/Dockerfile | 4 +- .../ollama/{ => langchain}/README.md | 2 +- .../ollama/langchain}/__init__.py | 0 .../ollama/{ => langchain}/entrypoint.sh | 0 .../ollama/{ => langchain}/llm.py | 0 .../{ => langchain}/requirements-runtime.txt | 0 .../ollama/{ => langchain}/requirements.txt | 0 .../text-generation/vllm-openvino/README.md | 86 -------- comps/llms/text-generation/vllm/README.md | 132 ++---------- .../Dockerfile} | 6 +- .../text-generation/vllm/langchain/README.md | 189 ++++++++++++++++++ .../build_docker_microservice.sh | 2 +- .../dependency/Dockerfile.intel_hpu} | 0 .../dependency}/build_docker_vllm.sh | 2 +- .../dependency/build_docker_vllm_openvino.sh} | 0 .../dependency}/launch_vllm_service.sh | 0 .../launch_vllm_service_openvino.sh} | 2 +- .../{ => langchain}/docker_compose_llm.yaml | 0 .../vllm/{ => langchain}/entrypoint.sh | 0 .../{ => langchain}/launch_microservice.sh | 0 .../vllm/{ => langchain}/llm.py | 0 .../vllm/{ => langchain}/query.sh | 0 .../{ => langchain}/requirements-runtime.txt | 0 .../vllm/{ => langchain}/requirements.txt | 0 .../ray/Dockerfile} | 4 +- .../{vllm-ray => vllm/ray}/README.md | 6 + .../{ollama => vllm/ray}/__init__.py | 0 .../ray}/build_docker_microservice.sh | 2 +- .../ray/dependency/Dockerfile} | 6 +- .../ray/dependency}/build_docker_vllmray.sh | 2 +- .../ray/dependency}/launch_vllmray.sh | 0 .../ray}/docker_compose_llm.yaml | 0 .../ray}/launch_microservice.sh | 0 .../{vllm-ray => vllm/ray}/llm.py | 0 .../{vllm-ray => vllm/ray}/query.sh | 0 .../{vllm-ray => vllm/ray}/requirements.txt | 0 .../{vllm-ray => vllm/ray}/vllm_ray_openai.py | 0 .../{vllm-xft/docker => vllm/xft}/Dockerfile | 8 +- .../{vllm-xft => vllm/xft}/README.md | 2 +- .../{vllm-xft => vllm/xft}/llm.py | 0 .../{vllm-xft => vllm/xft}/requirements.txt | 0 .../{vllm-xft => vllm/xft}/run.sh | 0 .../lm-eval/{Dockerfile.cpu => Dockerfile} | 0 comps/lvms/llava/Dockerfile | 5 +- comps/lvms/{ => llava}/README.md | 12 +- comps/lvms/{ => llava}/check_lvm.py | 0 comps/lvms/{ => llava/dependency}/Dockerfile | 7 +- .../Dockerfile.intel_hpu} | 4 +- .../{ => dependency}/check_llava_server.py | 0 .../llava/{ => dependency}/llava_server.py | 0 comps/lvms/{ => llava}/lvm.py | 0 comps/lvms/{ => llava}/requirements.txt | 0 comps/lvms/{ => llava}/template.py | 0 .../{Dockerfile_tgi => tgi-llava/Dockerfile} | 4 +- .../vllm-ray => lvms/tgi-llava}/__init__.py | 0 comps/lvms/{ => tgi-llava}/lvm_tgi.py | 0 comps/lvms/tgi-llava/requirements.txt | 14 ++ comps/lvms/video-llama/README.md | 2 +- .../{server/docker => dependency}/Dockerfile | 4 +- .../data/silence_girl.mp4 | Bin .../docker_compose_vllama.yaml | 0 .../extract_vl_embedding.py | 0 .../{server => dependency}/requirements.txt | 0 .../{server => dependency}/server.py | 2 +- .../{server => dependency}/start.sh | 0 .../video-llama.patch.tar | Bin .../video_llama_eval_only_vl.yaml | 0 comps/nginx/{docker => }/Dockerfile | 4 +- comps/nginx/README.md | 3 +- comps/nginx/{docker => }/docker-compose.yaml | 0 comps/nginx/{docker => }/nginx.conf.template | 0 comps/nginx/{docker => }/start-nginx.sh | 0 .../mongo/{docker => }/Dockerfile | 0 comps/prompt_registry/mongo/README.md | 2 +- .../docker-compose-prompt-registry-mongo.yaml | 0 comps/ragas/tgi/{ => langchain}/Dockerfile | 4 +- .../{lvms => ragas/tgi/langchain}/__init__.py | 0 .../ragas/tgi/{ => langchain}/build_docker.sh | 0 .../{ => langchain}/docker_compose_llm.yaml | 1 - comps/ragas/tgi/{ => langchain}/entrypoint.sh | 0 comps/ragas/tgi/{ => langchain}/llm.py | 0 .../{ => langchain}/requirements-runtime.txt | 0 .../tgi/{ => langchain}/requirements.txt | 0 comps/reranks/fastrag/{docker => }/Dockerfile | 1 - comps/reranks/fastrag/README.md | 2 +- comps/reranks/fastrag/requirements.txt | 3 + .../docker => mosec/langchain}/Dockerfile | 4 +- .../langchain}/README.md | 4 +- .../mosec/langchain}/__init__.py | 0 .../langchain/dependency}/Dockerfile | 2 +- .../langchain/dependency}/server-ipex.py | 0 .../langchain}/docker_compose_embedding.yaml | 0 .../langchain}/requirements.txt | 0 .../langchain}/reranking_mosec_xeon.py | 0 comps/reranks/tei/{docker => }/Dockerfile | 2 +- comps/reranks/{ => tei}/README.md | 14 +- .../docker_compose_reranking.yaml | 1 - comps/reranks/{ => tei}/requirements.txt | 0 .../video-rag-qna/{docker => }/Dockerfile | 0 comps/reranks/video-rag-qna/README.md | 2 +- .../docker_compose_reranking.yaml | 0 comps/retrievers/{langchain => }/README.md | 4 + .../docker => milvus/langchain}/Dockerfile | 4 +- .../milvus => milvus/langchain}/README.md | 6 +- .../milvus/langchain}/__init__.py | 0 .../milvus => milvus/langchain}/config.py | 0 .../milvus => milvus/langchain}/ingest.py | 0 .../langchain}/requirements.txt | 0 .../langchain}/retriever_milvus.py | 0 .../redis/langchain}/Dockerfile | 4 +- .../redis/langchain}/README.md | 2 +- .../redis/langchain}/__init__.py | 0 .../langchain}/docker_compose_retriever.yaml | 0 .../redis/langchain}/multimodal_config.py | 0 .../redis/langchain}/requirements.txt | 0 .../redis/langchain}/retriever_redis.py | 2 +- .../redis/langchain}/schema.yml | 0 .../docker => pathway/langchain}/Dockerfile | 4 +- .../pathway => pathway/langchain}/README.md | 16 +- .../langchain}/docker_compose_retriever.yaml | 0 .../langchain}/entrypoint.sh | 0 .../langchain}/requirements-runtime.txt | 0 .../langchain}/requirements.txt | 0 .../langchain}/retriever_pathway.py | 0 .../docker => pgvector/langchain}/Dockerfile | 4 +- .../pgvector => pgvector/langchain}/README.md | 15 +- .../pgvector => pgvector/langchain}/config.py | 0 .../langchain}/docker_compose_retriever.yaml | 0 .../langchain}/requirements.txt | 0 .../langchain}/retriever_pgvector.py | 0 .../docker => pinecone/langchain}/Dockerfile | 4 +- .../qdrant => pinecone/langchain}/__init__.py | 0 .../pinecone => pinecone/langchain}/config.py | 0 .../langchain}/docker_compose_retriever.yaml | 0 .../langchain}/requirements.txt | 0 .../langchain}/retriever_pinecone.py | 0 .../docker => qdrant/haystack}/Dockerfile | 4 +- .../qdrant => qdrant/haystack}/README.md | 4 +- .../milvus => qdrant/haystack}/__init__.py | 0 .../qdrant => qdrant/haystack}/ingest.py | 0 .../haystack}/qdrant_config.py | 0 .../haystack}/requirements.txt | 0 .../haystack}/retriever_qdrant.py | 0 .../redis/data/nke-10k-2023.pdf | Bin .../docker => redis/langchain}/Dockerfile | 4 +- .../redis => redis/langchain}/README.md | 17 +- .../pinecone => redis/langchain}/__init__.py | 0 .../langchain}/docker_compose_retriever.yaml | 3 +- .../redis => redis/langchain}/ingest.py | 0 .../redis => redis/langchain}/redis_config.py | 0 .../langchain}/redis_schema.yml | 0 .../langchain}/requirements.txt | 0 .../langchain}/retriever_redis.py | 0 .../docker => redis/llama_index}/Dockerfile | 4 +- .../llama_index}/README.md | 8 +- .../redis => redis/llama_index}/__init__.py | 0 .../docker_compose_retriever.yaml | 1 - .../llama_index}/redis_config.py | 0 .../llama_index}/requirements.txt | 0 .../llama_index}/retriever_redis.py | 0 .../vdms/docker => vdms/langchain}/Dockerfile | 4 +- .../vdms => vdms/langchain}/README.md | 14 +- .../langchain}/__init__.py | 0 .../langchain}/docker_compose_retriever.yaml | 0 .../vdms => vdms/langchain}/requirements.txt | 0 .../vdms => vdms/langchain}/retriever_vdms.py | 0 .../vdms => vdms/langchain}/vdms_config.py | 0 comps/tts/speecht5/Dockerfile | 21 +- comps/tts/{ => speecht5}/README.md | 12 +- .../speecht5/dependency}/Dockerfile | 23 ++- .../Dockerfile.intel_hpu} | 4 +- .../speecht5/dependency}/__init__.py | 0 .../{ => dependency}/speecht5_model.py | 0 .../{ => dependency}/speecht5_server.py | 0 comps/tts/{ => speecht5}/requirements.txt | 0 comps/tts/{ => speecht5}/tts.py | 0 comps/vectorstores/README.md | 24 ++- .../{langchain => }/chroma/README.md | 0 .../chroma}/__init__.py | 0 .../{langchain => }/lancedb/README.md | 0 .../{tts => vectorstores/lancedb}/__init__.py | 0 .../{langchain => }/milvus/README.md | 0 .../{langchain/chroma => milvus}/__init__.py | 0 .../{langchain => }/milvus/docker-compose.yml | 0 .../{langchain => }/milvus/milvus.yaml | 0 .../{langchain => }/pathway/Dockerfile | 0 .../{langchain => }/pathway/README.md | 2 +- .../{langchain/milvus => pathway}/__init__.py | 0 .../pathway/data/nke-10k-2023.pdf | Bin .../{langchain => }/pathway/requirements.txt | 0 .../pathway/vectorstore_pathway.py | 0 .../{langchain => }/pgvector/README.md | 0 .../{langchain => }/pgvector/__init__.py | 0 .../pgvector/docker-compose.yml | 0 .../{langchain => }/pgvector/init.sql | 0 .../{langchain => }/pinecone/README.md | 0 .../{langchain => }/pinecone/__init__.py | 0 .../{langchain => }/qdrant/README.md | 0 .../{langchain => }/qdrant/__init__.py | 0 .../{langchain => }/redis/README.md | 0 .../{langchain => }/redis/__init__.py | 0 .../redis/docker-compose-redis.yml | 0 .../{langchain => }/vdms/README.md | 0 .../{langchain => }/vdms/__init__.py | 0 .../vdms/docker-compose-vdms.yml | 0 .../docker => chroma/langchain}/Dockerfile | 6 +- .../chroma => chroma/langchain}/README.md | 5 +- .../{ => chroma/langchain}/__init__.py | 0 .../langchain}/requirements.txt | 0 .../langchain}/retriever_chroma.py | 0 .../test_agent_langchain_on_intel_hpu.sh} | 24 +-- .../{test_asr.sh => asr/test_asr_whisper.sh} | 4 +- .../test_chathistory_mongo.sh | 2 +- .../test_dataprep_milvus_langchain.sh} | 4 +- ...st_dataprep_multimodal_redis_langchain.sh} | 6 +- .../test_dataprep_pgvector_langchain.sh} | 4 +- .../test_dataprep_pinecone_langchain.sh} | 2 +- .../test_dataprep_qdrant_langchain.sh | 14 +- .../test_dataprep_redis_langchain.sh | 2 +- .../test_dataprep_redis_langchain_ray.sh | 2 +- .../test_dataprep_redis_llama_index.sh | 2 +- .../test_embeddings_mosec_langchain.sh} | 4 +- .../test_embeddings_multimodal.sh} | 8 +- .../test_embeddings_multimodal_clip.sh} | 2 +- ...est_embeddings_multimodal_on_intel_hpu.sh} | 13 +- .../test_embeddings_tei_langchain.sh} | 5 +- .../test_embeddings_tei_llama_index.sh} | 7 +- .../test_feedback_management_mongo.sh | 2 +- tests/{ => finetuning}/test_finetuning.sh | 14 +- .../test_finetuning_on_intel_hpu.sh} | 21 +- ...ils_llama_guard_langchain_on_intel_hpu.sh} | 2 +- .../test_guardrails_pii_detection.sh | 2 +- .../test_guardrails_toxicity_detection.sh | 2 +- .../test_intent_detection_langchain.sh | 79 ++++++++ ...test_llms_faq-generation_tgi_langchain.sh} | 34 ++-- .../test_llms_summarization_tgi_langchain.sh} | 34 ++-- ...ms_text-generation_native_on_intel_hpu.sh} | 4 +- .../test_llms_text-generation_tgi.sh | 19 +- ...generation_vllm_langchain_on_intel_hpu.sh} | 8 +- ...ext-generation_vllm_langchain_openvino.sh} | 0 ..._text-generation_vllm_ray_on_intel_hpu.sh} | 29 +-- tests/lvms/test_lvms_llava.sh | 93 +++++++++ .../test_lvms_tgi-llava_on_intel_hpu.sh} | 18 +- tests/lvms/test_lvms_video-llama.sh | 117 +++++++++++ tests/{ => nginx}/test_nginx.sh | 2 +- .../test_prompt_registry_mongo.sh | 2 +- tests/{ => reranks}/test_reranks_fastrag.sh | 2 +- .../test_reranks_mosec_langchain.sh} | 4 +- tests/{ => reranks}/test_reranks_tei.sh | 2 +- .../test_reranks_video-rag-qna.sh | 2 +- ..._retrievers_multimodal_redis_langchain.sh} | 6 +- .../test_retrievers_pathway_langchain.sh} | 22 +- .../test_retrievers_pgvector_langchain.sh | 85 ++++++++ .../test_retrievers_pinecone_langchain.sh | 80 ++++++++ .../test_retrievers_qdrant_haystack.sh} | 25 +-- .../test_retrievers_redis_langchain.sh} | 24 +-- .../test_retrievers_vdms_langchain.sh | 113 +++++++++++ tests/test_intent_detection_langchain.sh | 57 ------ tests/test_lvms_llava.sh | 89 --------- tests/test_lvms_video-llama.sh | 97 --------- tests/test_retrievers_langchain_pgvector.sh | 91 --------- tests/test_retrievers_langchain_pinecone.sh | 83 -------- tests/test_retrievers_langchain_vdms.sh | 126 ------------ .../{test_tts.sh => tts/test_tts_speecht5.sh} | 4 +- .../test_vectorstores_milvus.sh} | 2 +- .../test_vectorstores_pathway.sh} | 20 +- .../test_web_retrievers_chroma_langchain.sh} | 4 +- 458 files changed, 1782 insertions(+), 1588 deletions(-) create mode 100644 .github/workflows/scripts/get_test_matrix.sh rename comps/agent/langchain/{docker => }/Dockerfile (100%) rename comps/asr/{ => whisper}/README.md (94%) rename comps/asr/{ => whisper}/asr.py (100%) rename comps/asr/{ => whisper}/check_asr_server.py (100%) create mode 100644 comps/asr/whisper/dependency/Dockerfile rename comps/asr/whisper/{Dockerfile_hpu => dependency/Dockerfile.intel_hpu} (83%) rename comps/asr/{ => whisper/dependency}/__init__.py (100%) rename comps/asr/whisper/{ => dependency}/check_whisper_server.py (100%) rename comps/asr/whisper/{ => dependency}/whisper_model.py (100%) rename comps/asr/whisper/{ => dependency}/whisper_server.py (100%) rename comps/asr/{ => whisper}/requirements.txt (100%) rename comps/chathistory/mongo/{docker => }/Dockerfile (100%) rename comps/chathistory/mongo/{docker => }/docker-compose-chathistory-mongo.yaml (100%) rename comps/dataprep/milvus/{docker => langchain}/Dockerfile (78%) rename comps/dataprep/milvus/{ => langchain}/README.md (95%) rename comps/dataprep/milvus/{ => langchain}/__init__.py (100%) rename comps/dataprep/milvus/{ => langchain}/config.py (100%) rename comps/dataprep/milvus/{docker => langchain}/docker-compose-dataprep-milvus.yaml (100%) rename comps/dataprep/milvus/{docker => langchain}/milvus.yaml (100%) rename comps/dataprep/milvus/{ => langchain}/prepare_doc_milvus.py (100%) rename comps/dataprep/milvus/{ => langchain}/requirements.txt (100%) rename comps/dataprep/{redis/multimodal_langchain/docker => multimodal/redis/langchain}/Dockerfile (86%) rename comps/dataprep/{redis/multimodal_langchain => multimodal/redis/langchain}/README.md (93%) rename comps/dataprep/{pinecone => multimodal/redis/langchain}/__init__.py (100%) rename comps/dataprep/{redis/multimodal_langchain => multimodal/redis/langchain}/config.py (100%) rename comps/dataprep/{redis/multimodal_langchain/docker => multimodal/redis/langchain}/docker-compose-dataprep-redis.yaml (100%) rename comps/dataprep/{ => multimodal/redis/langchain}/multimodal_utils.py (100%) rename comps/dataprep/{redis/multimodal_langchain => multimodal/redis/langchain}/prepare_videodoc_redis.py (99%) rename comps/dataprep/{redis/multimodal_langchain => multimodal/redis/langchain}/requirements.txt (100%) rename comps/dataprep/{redis/multimodal_langchain => multimodal/redis/langchain}/schema.yml (100%) delete mode 100644 comps/dataprep/pgvector/__pycache__/config.cpython-38.pyc rename comps/dataprep/pgvector/langchain/{docker => }/Dockerfile (100%) rename comps/dataprep/pgvector/{ => langchain}/README.md (85%) rename comps/dataprep/pgvector/langchain/{docker => }/docker-compose-dataprep-pgvector.yaml (95%) rename comps/dataprep/pinecone/{docker => langchain}/Dockerfile (77%) rename comps/dataprep/pinecone/{ => langchain}/README.md (91%) rename comps/dataprep/{qdrant => pinecone/langchain}/__init__.py (100%) rename comps/dataprep/pinecone/{ => langchain}/config.py (100%) rename comps/dataprep/pinecone/{docker => langchain}/docker-compose-dataprep-pinecone.yaml (100%) rename comps/dataprep/pinecone/{ => langchain}/prepare_doc_pinecone.py (100%) rename comps/dataprep/pinecone/{ => langchain}/requirements.txt (100%) rename comps/dataprep/qdrant/{docker => langchain}/Dockerfile (78%) rename comps/dataprep/qdrant/{ => langchain}/README.md (95%) rename comps/dataprep/{redis/multimodal_langchain => qdrant/langchain}/__init__.py (100%) rename comps/dataprep/qdrant/{ => langchain}/config.py (100%) rename comps/dataprep/qdrant/{docker => langchain}/docker-compose-dataprep-qdrant.yaml (100%) rename comps/dataprep/qdrant/{ => langchain}/prepare_doc_qdrant.py (100%) rename comps/dataprep/qdrant/{ => langchain}/requirements.txt (100%) rename comps/dataprep/redis/langchain/{docker => }/Dockerfile (100%) rename comps/dataprep/redis/langchain/{docker => }/docker-compose-dataprep-redis.yaml (100%) rename comps/dataprep/redis/langchain_ray/{docker => }/Dockerfile (100%) create mode 100644 comps/dataprep/redis/langchain_ray/docker-compose-dataprep-redis.yaml rename comps/dataprep/redis/llama_index/{docker => }/Dockerfile (100%) rename comps/dataprep/redis/llama_index/{docker => }/docker-compose-dataprep-redis.yaml (100%) delete mode 100644 comps/dataprep/redis/test_data.pdf rename comps/embeddings/{langchain-mosec/docker => mosec/langchain}/Dockerfile (77%) rename comps/embeddings/{langchain-mosec => mosec/langchain}/README.md (89%) rename comps/embeddings/{langchain-mosec => mosec/langchain}/__init__.py (100%) rename comps/embeddings/{langchain-mosec/mosec-docker => mosec/langchain/dependency}/Dockerfile (92%) rename comps/embeddings/{langchain-mosec/mosec-docker => mosec/langchain/dependency}/README.md (93%) rename comps/embeddings/{langchain-mosec/mosec-docker => mosec/langchain/dependency}/server-ipex.py (100%) rename comps/embeddings/{langchain-mosec/mosec-docker => mosec/langchain/dependency}/test-embedding.py (100%) rename comps/embeddings/{langchain-mosec/docker => mosec/langchain}/docker_compose_embedding.yaml (91%) rename comps/embeddings/{langchain-mosec => mosec/langchain}/embedding_mosec.py (100%) rename comps/embeddings/{langchain-mosec => mosec/langchain}/requirements.txt (100%) rename comps/embeddings/{multimodal_embeddings => multimodal}/README.md (92%) rename comps/embeddings/{langchain => multimodal}/__init__.py (100%) rename comps/embeddings/{multimodal_embeddings/bridgetower/docker => multimodal/bridgetower}/Dockerfile (83%) rename comps/embeddings/{multimodal_embeddings/bridgetower/docker/Dockerfile_hpu => multimodal/bridgetower/Dockerfile.intel_hpu} (86%) rename comps/embeddings/{multimodal_embeddings => multimodal}/bridgetower/__init__.py (100%) rename comps/embeddings/{multimodal_embeddings => multimodal}/bridgetower/bridgetower_custom.py (100%) rename comps/embeddings/{multimodal_embeddings => multimodal}/bridgetower/bridgetower_embedding.py (100%) rename comps/embeddings/{multimodal_embeddings => multimodal}/bridgetower/bridgetower_server.py (98%) rename comps/embeddings/{multimodal_embeddings/bridgetower/docker => multimodal/bridgetower}/docker_compose_bridgetower_embedding_endpoint.yaml (100%) rename comps/embeddings/{multimodal_embeddings => multimodal}/bridgetower/utils.py (100%) rename comps/embeddings/{multimodal_embeddings/multimodal_langchain/docker => multimodal/multimodal_langchain}/Dockerfile (75%) rename comps/embeddings/{llama_index => multimodal/multimodal_langchain}/__init__.py (100%) rename comps/embeddings/{multimodal_embeddings/multimodal_langchain/docker => multimodal/multimodal_langchain}/docker_compose_multimodal_embedding.yaml (100%) rename comps/embeddings/{multimodal_embeddings => multimodal}/multimodal_langchain/local_mm_embedding.py (94%) rename comps/embeddings/{multimodal_embeddings => multimodal}/multimodal_langchain/mm_embedding_mmei.py (100%) rename comps/embeddings/{multimodal_embeddings => multimodal}/multimodal_langchain/requirements.txt (100%) rename comps/embeddings/multimodal_clip/{docker => }/Dockerfile (100%) rename comps/embeddings/multimodal_clip/{docker => }/docker_compose_embedding.yaml (100%) rename comps/embeddings/neural-speed/{docker => }/Dockerfile (100%) rename comps/embeddings/neural-speed/{neuralspeed-docker => dependency}/Dockerfile (82%) rename comps/embeddings/neural-speed/{neuralspeed-docker => dependency}/client.py (100%) rename comps/embeddings/neural-speed/{neuralspeed-docker => dependency}/client_multibatch.py (100%) rename comps/embeddings/neural-speed/{neuralspeed-docker => dependency}/requirements.txt (100%) rename comps/embeddings/neural-speed/{neuralspeed-docker => dependency}/server.py (100%) rename comps/embeddings/neural-speed/{docker => }/docker_compose_embedding.yaml (91%) rename comps/embeddings/{langchain/docker => tei/langchain}/Dockerfile (81%) create mode 100644 comps/embeddings/tei/langchain/README.md rename comps/embeddings/{multimodal_embeddings => tei/langchain}/__init__.py (100%) rename comps/embeddings/{langchain/docker => tei/langchain}/docker_compose_embedding.yaml (91%) rename comps/embeddings/{ => tei}/langchain/embedding_tei.py (100%) rename comps/embeddings/{ => tei}/langchain/local_embedding.py (100%) rename comps/embeddings/{ => tei}/langchain/local_embedding_768.py (100%) rename comps/embeddings/{ => tei}/langchain/requirements.txt (100%) rename comps/embeddings/{llama_index/docker => tei/llama_index}/Dockerfile (78%) create mode 100644 comps/embeddings/tei/llama_index/README.md rename comps/embeddings/{multimodal_embeddings/multimodal_langchain => tei/llama_index}/__init__.py (100%) rename comps/embeddings/{llama_index/docker => tei/llama_index}/docker_compose_embedding.yaml (100%) rename comps/embeddings/{ => tei}/llama_index/embedding_tei.py (100%) rename comps/embeddings/{ => tei}/llama_index/local_embedding.py (100%) rename comps/embeddings/{ => tei}/llama_index/requirements.txt (100%) rename comps/feedback_management/mongo/{docker => }/Dockerfile (100%) rename comps/feedback_management/mongo/{docker => }/docker-compose-user-feedback-mongo.yaml (100%) rename comps/finetuning/{docker/Dockerfile_cpu => Dockerfile} (100%) rename comps/finetuning/{docker/Dockerfile_hpu => Dockerfile.intel_hpu} (100%) rename comps/guardrails/llama_guard/{docker => langchain}/Dockerfile (88%) rename comps/guardrails/llama_guard/{ => langchain}/README.md (95%) rename comps/guardrails/llama_guard/{ => langchain}/__init__.py (100%) rename comps/guardrails/llama_guard/{docker => langchain}/docker_compose_guardrails.yaml (100%) rename comps/guardrails/llama_guard/{ => langchain}/guardrails_tgi.py (100%) rename comps/guardrails/llama_guard/{ => langchain}/requirements.txt (100%) rename comps/guardrails/pii_detection/{docker => }/Dockerfile (100%) rename comps/guardrails/toxicity_detection/{docker => }/Dockerfile (100%) rename comps/intent_detection/{ => langchain}/README.md (84%) delete mode 100644 comps/intent_detection/langchain/template.py rename comps/knowledgegraphs/langchain/{docker => }/Dockerfile (86%) mode change 100755 => 100644 rename comps/knowledgegraphs/{ => langchain}/README.md (98%) mode change 100755 => 100644 rename comps/knowledgegraphs/{ => langchain}/build_docker.sh (100%) mode change 100755 => 100644 rename comps/knowledgegraphs/{ => langchain}/doc/output_cypher.png (100%) rename comps/knowledgegraphs/{ => langchain}/doc/output_query1.png (100%) rename comps/knowledgegraphs/{ => langchain}/doc/output_query2.png (100%) rename comps/knowledgegraphs/{ => langchain}/doc/output_rag.png (100%) rename comps/knowledgegraphs/{ => langchain}/doc/workflow.png (100%) rename comps/knowledgegraphs/{ => langchain}/requirements.txt (100%) mode change 100755 => 100644 rename comps/knowledgegraphs/{ => langchain}/test.py (100%) rename comps/llms/faq-generation/tgi/{ => langchain}/Dockerfile (85%) rename comps/llms/faq-generation/tgi/{ => langchain}/README.md (94%) rename comps/{knowledgegraphs => llms/faq-generation/tgi/langchain}/__init__.py (100%) mode change 100755 => 100644 rename comps/llms/faq-generation/tgi/{ => langchain}/docker_compose_llm.yaml (94%) rename comps/llms/faq-generation/tgi/{ => langchain}/entrypoint.sh (100%) rename comps/llms/faq-generation/tgi/{ => langchain}/llm.py (100%) rename comps/llms/faq-generation/tgi/{ => langchain}/requirements-runtime.txt (100%) rename comps/llms/faq-generation/tgi/{ => langchain}/requirements.txt (100%) rename comps/llms/summarization/tgi/{ => langchain}/Dockerfile (85%) rename comps/llms/summarization/tgi/{ => langchain}/README.md (98%) rename comps/llms/{faq-generation/tgi => summarization/tgi/langchain}/__init__.py (100%) rename comps/llms/summarization/tgi/{ => langchain}/docker_compose_llm.yaml (100%) rename comps/llms/summarization/tgi/{ => langchain}/entrypoint.sh (100%) rename comps/llms/summarization/tgi/{ => langchain}/llm.py (100%) rename comps/llms/summarization/tgi/{ => langchain}/requirements-runtime.txt (100%) rename comps/llms/summarization/tgi/{ => langchain}/requirements.txt (100%) rename comps/llms/{ => text-generation}/README.md (93%) rename comps/llms/text-generation/native/{docker => }/Dockerfile (100%) rename comps/llms/text-generation/native/{docker => }/docker_compose_llm.yaml (100%) rename comps/llms/text-generation/ollama/{ => langchain}/Dockerfile (84%) rename comps/llms/text-generation/ollama/{ => langchain}/README.md (98%) rename comps/llms/{summarization/tgi => text-generation/ollama/langchain}/__init__.py (100%) rename comps/llms/text-generation/ollama/{ => langchain}/entrypoint.sh (100%) rename comps/llms/text-generation/ollama/{ => langchain}/llm.py (100%) rename comps/llms/text-generation/ollama/{ => langchain}/requirements-runtime.txt (100%) rename comps/llms/text-generation/ollama/{ => langchain}/requirements.txt (100%) delete mode 100644 comps/llms/text-generation/vllm-openvino/README.md rename comps/llms/text-generation/vllm/{docker/Dockerfile.microservice => langchain/Dockerfile} (84%) create mode 100644 comps/llms/text-generation/vllm/langchain/README.md rename comps/llms/text-generation/vllm/{ => langchain}/build_docker_microservice.sh (75%) rename comps/llms/text-generation/vllm/{docker/Dockerfile.hpu => langchain/dependency/Dockerfile.intel_hpu} (100%) rename comps/llms/text-generation/vllm/{ => langchain/dependency}/build_docker_vllm.sh (89%) rename comps/llms/text-generation/{vllm-openvino/build_vllm_openvino.sh => vllm/langchain/dependency/build_docker_vllm_openvino.sh} (100%) mode change 100755 => 100644 rename comps/llms/text-generation/vllm/{ => langchain/dependency}/launch_vllm_service.sh (100%) rename comps/llms/text-generation/{vllm-openvino/launch_model_server.sh => vllm/langchain/dependency/launch_vllm_service_openvino.sh} (98%) mode change 100755 => 100644 rename comps/llms/text-generation/vllm/{ => langchain}/docker_compose_llm.yaml (100%) rename comps/llms/text-generation/vllm/{ => langchain}/entrypoint.sh (100%) rename comps/llms/text-generation/vllm/{ => langchain}/launch_microservice.sh (100%) rename comps/llms/text-generation/vllm/{ => langchain}/llm.py (100%) rename comps/llms/text-generation/vllm/{ => langchain}/query.sh (100%) rename comps/llms/text-generation/vllm/{ => langchain}/requirements-runtime.txt (100%) rename comps/llms/text-generation/vllm/{ => langchain}/requirements.txt (100%) rename comps/llms/text-generation/{vllm-ray/docker/Dockerfile.microservice => vllm/ray/Dockerfile} (86%) rename comps/llms/text-generation/{vllm-ray => vllm/ray}/README.md (97%) rename comps/llms/text-generation/{ollama => vllm/ray}/__init__.py (100%) rename comps/llms/text-generation/{vllm-ray => vllm/ray}/build_docker_microservice.sh (75%) rename comps/llms/text-generation/{vllm-ray/docker/Dockerfile.vllmray => vllm/ray/dependency/Dockerfile} (86%) rename comps/llms/text-generation/{vllm-ray => vllm/ray/dependency}/build_docker_vllmray.sh (80%) mode change 100755 => 100644 rename comps/llms/text-generation/{vllm-ray => vllm/ray/dependency}/launch_vllmray.sh (100%) mode change 100755 => 100644 rename comps/llms/text-generation/{vllm-ray => vllm/ray}/docker_compose_llm.yaml (100%) rename comps/llms/text-generation/{vllm-ray => vllm/ray}/launch_microservice.sh (100%) rename comps/llms/text-generation/{vllm-ray => vllm/ray}/llm.py (100%) rename comps/llms/text-generation/{vllm-ray => vllm/ray}/query.sh (100%) rename comps/llms/text-generation/{vllm-ray => vllm/ray}/requirements.txt (100%) rename comps/llms/text-generation/{vllm-ray => vllm/ray}/vllm_ray_openai.py (100%) rename comps/llms/text-generation/{vllm-xft/docker => vllm/xft}/Dockerfile (93%) rename comps/llms/text-generation/{vllm-xft => vllm/xft}/README.md (97%) rename comps/llms/text-generation/{vllm-xft => vllm/xft}/llm.py (100%) rename comps/llms/text-generation/{vllm-xft => vllm/xft}/requirements.txt (100%) rename comps/llms/text-generation/{vllm-xft => vllm/xft}/run.sh (100%) rename comps/llms/utils/lm-eval/{Dockerfile.cpu => Dockerfile} (100%) rename comps/lvms/{ => llava}/README.md (88%) rename comps/lvms/{ => llava}/check_lvm.py (100%) rename comps/lvms/{ => llava/dependency}/Dockerfile (60%) rename comps/lvms/llava/{Dockerfile_hpu => dependency/Dockerfile.intel_hpu} (85%) rename comps/lvms/llava/{ => dependency}/check_llava_server.py (100%) rename comps/lvms/llava/{ => dependency}/llava_server.py (100%) rename comps/lvms/{ => llava}/lvm.py (100%) rename comps/lvms/{ => llava}/requirements.txt (100%) rename comps/lvms/{ => llava}/template.py (100%) rename comps/lvms/{Dockerfile_tgi => tgi-llava/Dockerfile} (72%) rename comps/{llms/text-generation/vllm-ray => lvms/tgi-llava}/__init__.py (100%) rename comps/lvms/{ => tgi-llava}/lvm_tgi.py (100%) create mode 100644 comps/lvms/tgi-llava/requirements.txt rename comps/lvms/video-llama/{server/docker => dependency}/Dockerfile (92%) rename comps/lvms/video-llama/{server => dependency}/data/silence_girl.mp4 (100%) rename comps/lvms/video-llama/{server/docker => dependency}/docker_compose_vllama.yaml (100%) rename comps/lvms/video-llama/{server => dependency}/extract_vl_embedding.py (100%) rename comps/lvms/video-llama/{server => dependency}/requirements.txt (100%) rename comps/lvms/video-llama/{server => dependency}/server.py (99%) rename comps/lvms/video-llama/{server => dependency}/start.sh (100%) rename comps/lvms/video-llama/{server => dependency}/video-llama.patch.tar (100%) rename comps/lvms/video-llama/{server => dependency}/video_llama_config/video_llama_eval_only_vl.yaml (100%) rename comps/nginx/{docker => }/Dockerfile (72%) rename comps/nginx/{docker => }/docker-compose.yaml (100%) rename comps/nginx/{docker => }/nginx.conf.template (100%) rename comps/nginx/{docker => }/start-nginx.sh (100%) rename comps/prompt_registry/mongo/{docker => }/Dockerfile (100%) rename comps/prompt_registry/mongo/{docker => }/docker-compose-prompt-registry-mongo.yaml (100%) rename comps/ragas/tgi/{ => langchain}/Dockerfile (78%) rename comps/{lvms => ragas/tgi/langchain}/__init__.py (100%) rename comps/ragas/tgi/{ => langchain}/build_docker.sh (100%) rename comps/ragas/tgi/{ => langchain}/docker_compose_llm.yaml (94%) rename comps/ragas/tgi/{ => langchain}/entrypoint.sh (100%) rename comps/ragas/tgi/{ => langchain}/llm.py (100%) rename comps/ragas/tgi/{ => langchain}/requirements-runtime.txt (100%) rename comps/ragas/tgi/{ => langchain}/requirements.txt (100%) rename comps/reranks/fastrag/{docker => }/Dockerfile (91%) rename comps/reranks/{langchain-mosec/docker => mosec/langchain}/Dockerfile (78%) rename comps/reranks/{langchain-mosec => mosec/langchain}/README.md (90%) rename comps/{ragas/tgi => reranks/mosec/langchain}/__init__.py (100%) rename comps/reranks/{langchain-mosec/mosec-docker => mosec/langchain/dependency}/Dockerfile (93%) rename comps/reranks/{langchain-mosec/mosec-docker => mosec/langchain/dependency}/server-ipex.py (100%) rename comps/reranks/{langchain-mosec/docker => mosec/langchain}/docker_compose_embedding.yaml (100%) rename comps/reranks/{langchain-mosec => mosec/langchain}/requirements.txt (100%) rename comps/reranks/{langchain-mosec => mosec/langchain}/reranking_mosec_xeon.py (100%) rename comps/reranks/tei/{docker => }/Dockerfile (89%) rename comps/reranks/{ => tei}/README.md (87%) rename comps/reranks/tei/{docker => }/docker_compose_reranking.yaml (94%) rename comps/reranks/{ => tei}/requirements.txt (100%) rename comps/reranks/video-rag-qna/{docker => }/Dockerfile (100%) rename comps/reranks/video-rag-qna/{docker => }/docker_compose_reranking.yaml (100%) rename comps/retrievers/{langchain => }/README.md (93%) rename comps/retrievers/{langchain/milvus/docker => milvus/langchain}/Dockerfile (82%) rename comps/retrievers/{langchain/milvus => milvus/langchain}/README.md (95%) rename comps/{reranks/langchain-mosec => retrievers/milvus/langchain}/__init__.py (100%) rename comps/retrievers/{langchain/milvus => milvus/langchain}/config.py (100%) rename comps/retrievers/{langchain/milvus => milvus/langchain}/ingest.py (100%) rename comps/retrievers/{langchain/milvus => milvus/langchain}/requirements.txt (100%) rename comps/retrievers/{langchain/milvus => milvus/langchain}/retriever_milvus.py (100%) rename comps/retrievers/{langchain/redis_multimodal/docker => multimodal/redis/langchain}/Dockerfile (79%) rename comps/retrievers/{langchain/redis_multimodal => multimodal/redis/langchain}/README.md (98%) rename comps/retrievers/{ => multimodal/redis/langchain}/__init__.py (100%) rename comps/retrievers/{langchain/redis_multimodal/docker => multimodal/redis/langchain}/docker_compose_retriever.yaml (100%) rename comps/retrievers/{langchain/redis_multimodal => multimodal/redis/langchain}/multimodal_config.py (100%) rename comps/retrievers/{langchain/redis_multimodal => multimodal/redis/langchain}/requirements.txt (100%) rename comps/retrievers/{langchain/redis_multimodal => multimodal/redis/langchain}/retriever_redis.py (97%) rename comps/retrievers/{langchain/redis_multimodal => multimodal/redis/langchain}/schema.yml (100%) rename comps/retrievers/{langchain/pathway/docker => pathway/langchain}/Dockerfile (81%) rename comps/retrievers/{langchain/pathway => pathway/langchain}/README.md (86%) rename comps/retrievers/{langchain/pathway/docker => pathway/langchain}/docker_compose_retriever.yaml (100%) rename comps/retrievers/{langchain/pathway => pathway/langchain}/entrypoint.sh (100%) rename comps/retrievers/{langchain/pathway => pathway/langchain}/requirements-runtime.txt (100%) rename comps/retrievers/{langchain/pathway => pathway/langchain}/requirements.txt (100%) rename comps/retrievers/{langchain/pathway => pathway/langchain}/retriever_pathway.py (100%) rename comps/retrievers/{langchain/pgvector/docker => pgvector/langchain}/Dockerfile (77%) rename comps/retrievers/{langchain/pgvector => pgvector/langchain}/README.md (89%) rename comps/retrievers/{langchain/pgvector => pgvector/langchain}/config.py (100%) rename comps/retrievers/{langchain/pgvector/docker => pgvector/langchain}/docker_compose_retriever.yaml (100%) rename comps/retrievers/{langchain/pgvector => pgvector/langchain}/requirements.txt (100%) rename comps/retrievers/{langchain/pgvector => pgvector/langchain}/retriever_pgvector.py (100%) rename comps/retrievers/{langchain/pinecone/docker => pinecone/langchain}/Dockerfile (81%) rename comps/retrievers/{haystack/qdrant => pinecone/langchain}/__init__.py (100%) rename comps/retrievers/{langchain/pinecone => pinecone/langchain}/config.py (100%) rename comps/retrievers/{langchain/pinecone/docker => pinecone/langchain}/docker_compose_retriever.yaml (100%) rename comps/retrievers/{langchain/pinecone => pinecone/langchain}/requirements.txt (100%) rename comps/retrievers/{langchain/pinecone => pinecone/langchain}/retriever_pinecone.py (100%) rename comps/retrievers/{haystack/qdrant/docker => qdrant/haystack}/Dockerfile (86%) rename comps/retrievers/{haystack/qdrant => qdrant/haystack}/README.md (93%) rename comps/retrievers/{langchain/milvus => qdrant/haystack}/__init__.py (100%) rename comps/retrievers/{haystack/qdrant => qdrant/haystack}/ingest.py (100%) rename comps/retrievers/{haystack/qdrant => qdrant/haystack}/qdrant_config.py (100%) rename comps/retrievers/{haystack/qdrant => qdrant/haystack}/requirements.txt (100%) rename comps/retrievers/{haystack/qdrant => qdrant/haystack}/retriever_qdrant.py (100%) rename comps/retrievers/{langchain => }/redis/data/nke-10k-2023.pdf (100%) rename comps/retrievers/{langchain/redis/docker => redis/langchain}/Dockerfile (81%) rename comps/retrievers/{langchain/redis => redis/langchain}/README.md (91%) rename comps/retrievers/{langchain/pinecone => redis/langchain}/__init__.py (100%) rename comps/retrievers/{langchain/redis/docker => redis/langchain}/docker_compose_retriever.yaml (86%) rename comps/retrievers/{langchain/redis => redis/langchain}/ingest.py (100%) rename comps/retrievers/{langchain/redis => redis/langchain}/redis_config.py (100%) rename comps/retrievers/{langchain/redis => redis/langchain}/redis_schema.yml (100%) rename comps/retrievers/{langchain/redis => redis/langchain}/requirements.txt (100%) rename comps/retrievers/{langchain/redis => redis/langchain}/retriever_redis.py (100%) rename comps/retrievers/{llamaindex/docker => redis/llama_index}/Dockerfile (77%) rename comps/retrievers/{llamaindex => redis/llama_index}/README.md (94%) rename comps/retrievers/{langchain/redis => redis/llama_index}/__init__.py (100%) rename comps/retrievers/{llamaindex/docker => redis/llama_index}/docker_compose_retriever.yaml (92%) rename comps/retrievers/{llamaindex => redis/llama_index}/redis_config.py (100%) rename comps/retrievers/{llamaindex => redis/llama_index}/requirements.txt (100%) rename comps/retrievers/{llamaindex => redis/llama_index}/retriever_redis.py (100%) rename comps/retrievers/{langchain/vdms/docker => vdms/langchain}/Dockerfile (86%) rename comps/retrievers/{langchain/vdms => vdms/langchain}/README.md (93%) rename comps/retrievers/{langchain/redis_multimodal => vdms/langchain}/__init__.py (100%) rename comps/retrievers/{langchain/vdms/docker => vdms/langchain}/docker_compose_retriever.yaml (100%) rename comps/retrievers/{langchain/vdms => vdms/langchain}/requirements.txt (100%) rename comps/retrievers/{langchain/vdms => vdms/langchain}/retriever_vdms.py (100%) rename comps/retrievers/{langchain/vdms => vdms/langchain}/vdms_config.py (100%) rename comps/tts/{ => speecht5}/README.md (92%) rename comps/{asr => tts/speecht5/dependency}/Dockerfile (52%) rename comps/tts/speecht5/{Dockerfile_hpu => dependency/Dockerfile.intel_hpu} (87%) rename comps/{retrievers/langchain/vdms => tts/speecht5/dependency}/__init__.py (100%) rename comps/tts/speecht5/{ => dependency}/speecht5_model.py (100%) rename comps/tts/speecht5/{ => dependency}/speecht5_server.py (100%) rename comps/tts/{ => speecht5}/requirements.txt (100%) rename comps/tts/{ => speecht5}/tts.py (100%) rename comps/vectorstores/{langchain => }/chroma/README.md (100%) rename comps/{retrievers/llamaindex => vectorstores/chroma}/__init__.py (100%) rename comps/vectorstores/{langchain => }/lancedb/README.md (100%) rename comps/{tts => vectorstores/lancedb}/__init__.py (100%) rename comps/vectorstores/{langchain => }/milvus/README.md (100%) rename comps/vectorstores/{langchain/chroma => milvus}/__init__.py (100%) rename comps/vectorstores/{langchain => }/milvus/docker-compose.yml (100%) rename comps/vectorstores/{langchain => }/milvus/milvus.yaml (100%) rename comps/vectorstores/{langchain => }/pathway/Dockerfile (100%) rename comps/vectorstores/{langchain => }/pathway/README.md (98%) rename comps/vectorstores/{langchain/milvus => pathway}/__init__.py (100%) rename comps/vectorstores/{langchain => }/pathway/data/nke-10k-2023.pdf (100%) rename comps/vectorstores/{langchain => }/pathway/requirements.txt (100%) rename comps/vectorstores/{langchain => }/pathway/vectorstore_pathway.py (100%) rename comps/vectorstores/{langchain => }/pgvector/README.md (100%) rename comps/vectorstores/{langchain => }/pgvector/__init__.py (100%) rename comps/vectorstores/{langchain => }/pgvector/docker-compose.yml (100%) rename comps/vectorstores/{langchain => }/pgvector/init.sql (100%) rename comps/vectorstores/{langchain => }/pinecone/README.md (100%) rename comps/vectorstores/{langchain => }/pinecone/__init__.py (100%) rename comps/vectorstores/{langchain => }/qdrant/README.md (100%) rename comps/vectorstores/{langchain => }/qdrant/__init__.py (100%) rename comps/vectorstores/{langchain => }/redis/README.md (100%) rename comps/vectorstores/{langchain => }/redis/__init__.py (100%) rename comps/vectorstores/{langchain => }/redis/docker-compose-redis.yml (100%) rename comps/vectorstores/{langchain => }/vdms/README.md (100%) rename comps/vectorstores/{langchain => }/vdms/__init__.py (100%) rename comps/vectorstores/{langchain => }/vdms/docker-compose-vdms.yml (100%) rename comps/web_retrievers/{langchain/chroma/docker => chroma/langchain}/Dockerfile (79%) rename comps/web_retrievers/{langchain/chroma => chroma/langchain}/README.md (92%) rename comps/web_retrievers/{ => chroma/langchain}/__init__.py (100%) rename comps/web_retrievers/{langchain/chroma => chroma/langchain}/requirements.txt (100%) rename comps/web_retrievers/{langchain/chroma => chroma/langchain}/retriever_chroma.py (100%) rename tests/{test_agent_langchain.sh => agent/test_agent_langchain_on_intel_hpu.sh} (69%) rename tests/{test_asr.sh => asr/test_asr_whisper.sh} (94%) rename tests/{ => chathistory}/test_chathistory_mongo.sh (97%) mode change 100755 => 100644 rename tests/{test_dataprep_milvus.sh => dataprep/test_dataprep_milvus_langchain.sh} (98%) rename tests/{test_dataprep_redis_multimodal_langchain.sh => dataprep/test_dataprep_multimodal_redis_langchain.sh} (98%) rename tests/{test_dataprep_pgvector.sh => dataprep/test_dataprep_pgvector_langchain.sh} (95%) mode change 100755 => 100644 rename tests/{test_dataprep_pinecone.sh => dataprep/test_dataprep_pinecone_langchain.sh} (97%) mode change 100755 => 100644 rename tests/{ => dataprep}/test_dataprep_qdrant_langchain.sh (89%) rename tests/{ => dataprep}/test_dataprep_redis_langchain.sh (99%) rename tests/{ => dataprep}/test_dataprep_redis_langchain_ray.sh (98%) rename tests/{ => dataprep}/test_dataprep_redis_llama_index.sh (98%) rename tests/{test_embeddings_langchain-mosec.sh => embeddings/test_embeddings_mosec_langchain.sh} (94%) rename tests/{test_multimodal_embeddings_langchain_cpu.sh => embeddings/test_embeddings_multimodal.sh} (91%) rename tests/{test_embeddings_clip_multimodal.sh => embeddings/test_embeddings_multimodal_clip.sh} (96%) mode change 100755 => 100644 rename tests/{test_multimodal_embeddings_langchain_hpu.sh => embeddings/test_embeddings_multimodal_on_intel_hpu.sh} (89%) rename tests/{test_embeddings_langchain.sh => embeddings/test_embeddings_tei_langchain.sh} (95%) rename tests/{test_embeddings_llama_index.sh => embeddings/test_embeddings_tei_llama_index.sh} (95%) rename tests/{ => feedback_management}/test_feedback_management_mongo.sh (97%) rename tests/{ => finetuning}/test_finetuning.sh (92%) rename tests/{test_finetuning_embedding_hpu.sh => finetuning/test_finetuning_on_intel_hpu.sh} (90%) rename tests/{test_guardrails_llama_guard.sh => guardrails/test_guardrails_llama_guard_langchain_on_intel_hpu.sh} (98%) rename tests/{ => guardrails}/test_guardrails_pii_detection.sh (97%) rename tests/{ => guardrails}/test_guardrails_toxicity_detection.sh (96%) mode change 100755 => 100644 create mode 100644 tests/intent_detection/test_intent_detection_langchain.sh rename tests/{test_llms_faq-generation_tgi.sh => llms/test_llms_faq-generation_tgi_langchain.sh} (64%) mode change 100755 => 100644 rename tests/{test_llms_summarization_tgi.sh => llms/test_llms_summarization_tgi_langchain.sh} (61%) rename tests/{test_llms_text-generation_native.sh => llms/test_llms_text-generation_native_on_intel_hpu.sh} (97%) rename tests/{ => llms}/test_llms_text-generation_tgi.sh (74%) rename tests/{test_llms_text-generation_vllm.sh => llms/test_llms_text-generation_vllm_langchain_on_intel_hpu.sh} (94%) rename tests/{test_llms_text-generation_vllm-openvino.sh => llms/test_llms_text-generation_vllm_langchain_openvino.sh} (100%) mode change 100755 => 100644 rename tests/{test_llms_text-generation_vllm-ray.sh => llms/test_llms_text-generation_vllm_ray_on_intel_hpu.sh} (75%) create mode 100644 tests/lvms/test_lvms_llava.sh rename tests/{test_lvms_tgi_llava_next.sh => lvms/test_lvms_tgi-llava_on_intel_hpu.sh} (68%) create mode 100644 tests/lvms/test_lvms_video-llama.sh rename tests/{ => nginx}/test_nginx.sh (98%) rename tests/{ => prompt_registry}/test_prompt_registry_mongo.sh (96%) rename tests/{ => reranks}/test_reranks_fastrag.sh (97%) rename tests/{test_reranks_langchain-mosec.sh => reranks/test_reranks_mosec_langchain.sh} (94%) rename tests/{ => reranks}/test_reranks_tei.sh (98%) rename tests/{ => reranks}/test_reranks_video-rag-qna.sh (97%) mode change 100755 => 100644 rename tests/{test_retrievers_langchain_multimodal_redis.sh => retrievers/test_retrievers_multimodal_redis_langchain.sh} (95%) rename tests/{test_retrievers_langchain_pathway.sh => retrievers/test_retrievers_pathway_langchain.sh} (60%) create mode 100644 tests/retrievers/test_retrievers_pgvector_langchain.sh create mode 100644 tests/retrievers/test_retrievers_pinecone_langchain.sh rename tests/{test_retrievers_haystack_qdrant.sh => retrievers/test_retrievers_qdrant_haystack.sh} (72%) rename tests/{test_retrievers_langchain_redis.sh => retrievers/test_retrievers_redis_langchain.sh} (83%) create mode 100644 tests/retrievers/test_retrievers_vdms_langchain.sh delete mode 100644 tests/test_intent_detection_langchain.sh delete mode 100644 tests/test_lvms_llava.sh delete mode 100755 tests/test_lvms_video-llama.sh delete mode 100755 tests/test_retrievers_langchain_pgvector.sh delete mode 100755 tests/test_retrievers_langchain_pinecone.sh delete mode 100755 tests/test_retrievers_langchain_vdms.sh rename tests/{test_tts.sh => tts/test_tts_speecht5.sh} (93%) rename tests/{test_vectorstores_langchain_milvus.sh => vectorstores/test_vectorstores_milvus.sh} (98%) rename tests/{test_vectorstores_langchain_pathway.sh => vectorstores/test_vectorstores_pathway.sh} (60%) rename tests/{test_web_retrievers_langchain_chroma.sh => web_retrievers/test_web_retrievers_chroma_langchain.sh} (94%) diff --git a/.github/workflows/_get-test-matrix.yml b/.github/workflows/_get-test-matrix.yml index 301835fc89..e2975a0663 100644 --- a/.github/workflows/_get-test-matrix.yml +++ b/.github/workflows/_get-test-matrix.yml @@ -17,6 +17,7 @@ jobs: runs-on: ubuntu-latest outputs: run_matrix: ${{ steps.get-test-matrix.outputs.run_matrix }} + if: ${{ !github.event.pull_request.draft }} steps: - name: Get checkout ref run: | @@ -35,7 +36,6 @@ jobs: - name: Get test matrix id: get-test-matrix run: | - set -xe if [ "${{ github.event_name }}" == "pull_request" ] || [ "${{ github.event_name }}" == "pull_request_target" ]; then LATEST_COMMIT_SHA=$(curl -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \ "https://api.github.com/repos/opea-project/GenAIComps/commits?sha=${{ github.event.pull_request.base.ref }}" | jq -r '.[0].sha') @@ -46,52 +46,8 @@ jobs: fi merged_commit=$(git log -1 --format='%H') - changed_files="$(git diff --name-only ${base_commit} ${merged_commit} | \ - grep 'comps/' | grep -vE '*.md|comps/cores')" || true - services=$(printf '%s\n' "${changed_files[@]}" | cut -d'/' -f2 | grep -vE '*.py' | sort -u) || true - run_matrix="{\"include\":[" - for service in ${services}; do - hardware="gaudi" # default hardware, set based on the changed files - if [[ $(ls comps/${service} | grep -E "Dockerfile*|docker*") ]]; then - run_matrix="${run_matrix}{\"service\":\"${service}\",\"hardware\":\"${hardware}\"}," - fi - vendors=$(printf '%s\n' "${changed_files[@]}" | grep ${service} | cut -d'/' -f3 | grep -vE '*.py|Dockerfile|*.sh|docker|*.yaml|*.yml' | sort -u) - for vendor in ${vendors}; do - if [[ $(ls comps/${service}/${vendor} | grep -E "Dockerfile*|docker*") ]]; then - run_matrix="${run_matrix}{\"service\":\"${service}/${vendor}\",\"hardware\":\"${hardware}\"}," - fi - sub_vendors=$(printf '%s\n' "${changed_files[@]}" | grep ${service} | grep ${vendor} | cut -d'/' -f4 | grep -vE '*.py|Dockerfile|*.sh|docker|*.yaml|*.yml' | sort -u) - for sub_vendor in ${sub_vendors}; do - if [[ $(ls comps/${service}/${vendor}/${sub_vendor} | grep -E "Dockerfile*|docker*") ]]; then - run_matrix="${run_matrix}{\"service\":\"${service}/${vendor}/${sub_vendor}\",\"hardware\":\"${hardware}\"}," - fi - done - done - done + changed_files="$(git diff --name-only ${base_commit} ${merged_commit})" || true + export changed_files_full=$changed_files - # add test for comps/dataprep/utils.py - if [[ "${changed_files[@]}" =~ "comps/dataprep/utils.py" ]]; then - service_list=("dataprep/qdrant" "dataprep/redis/langchain") - hardware="gaudi" # default hardware, set based on the changed files - for service in ${service_list[@]}; do - if [ $(echo ${run_matrix} | grep -c ${service}) == 0 ]; then - run_matrix="${run_matrix}{\"service\":\"${service}\",\"hardware\":\"${hardware}\"}," - fi - done - fi - - # add test for test scripts update - changed_files="$(git diff --name-only ${base_commit} ${merged_commit} | \ - grep 'tests/' | grep -vE '*.md|*.txt|tests/cores')" || true - run_matrix_match=$(echo $run_matrix | tr '/' '_') - test_files=$(printf '%s\n' "${changed_files[@]}" | grep -E "tests/test_*" | grep -E "*.sh") || true - for test_file in ${test_files}; do - service=$(echo $test_file | cut -d'/' -f2 | cut -d'.' -f1 | cut -c6-) - hardware="gaudi" # default hardware, set based on the changed files - if [ $(echo ${run_matrix_match} | grep -c ${service}) == 0 ]; then - run_matrix="${run_matrix}{\"service\":\"${service}\",\"hardware\":\"${hardware}\"}," - fi - done - - run_matrix=$run_matrix"]}" - echo "run_matrix=${run_matrix}" >> $GITHUB_OUTPUT + export WORKSPACE=${{ github.workspace }} + bash .github/workflows/scripts/get_test_matrix.sh diff --git a/.github/workflows/docker/compose/agent-compose-cd.yaml b/.github/workflows/docker/compose/agent-compose-cd.yaml index e06d4dfad8..f8c3d7386f 100644 --- a/.github/workflows/docker/compose/agent-compose-cd.yaml +++ b/.github/workflows/docker/compose/agent-compose-cd.yaml @@ -5,5 +5,5 @@ services: comps-agent-langchain: build: - dockerfile: comps/agent/langchain/docker/Dockerfile + dockerfile: comps/agent/langchain/Dockerfile image: ${REGISTRY:-opea}/comps-agent-langchain:${TAG:-latest} diff --git a/.github/workflows/docker/compose/asr-compose.yaml b/.github/workflows/docker/compose/asr-compose.yaml index 391adeb342..5c8baf5683 100644 --- a/.github/workflows/docker/compose/asr-compose.yaml +++ b/.github/workflows/docker/compose/asr-compose.yaml @@ -6,13 +6,13 @@ services: asr: build: - dockerfile: comps/asr/Dockerfile + dockerfile: comps/asr/whisper/Dockerfile image: ${REGISTRY:-opea}/asr:${TAG:-latest} whisper: build: - dockerfile: comps/asr/whisper/Dockerfile + dockerfile: comps/asr/whisper/dependency/Dockerfile image: ${REGISTRY:-opea}/whisper:${TAG:-latest} whisper-gaudi: build: - dockerfile: comps/asr/whisper/Dockerfile_hpu + dockerfile: comps/asr/whisper/dependency/Dockerfile.intel_hpu image: ${REGISTRY:-opea}/whisper-gaudi:${TAG:-latest} diff --git a/.github/workflows/docker/compose/chathistory-compose-cd.yaml b/.github/workflows/docker/compose/chathistory-compose-cd.yaml index 0b3c70b093..987447feea 100644 --- a/.github/workflows/docker/compose/chathistory-compose-cd.yaml +++ b/.github/workflows/docker/compose/chathistory-compose-cd.yaml @@ -5,5 +5,5 @@ services: chathistory-mongo-server: build: - dockerfile: comps/chathistory/mongo/docker/Dockerfile + dockerfile: comps/chathistory/mongo/Dockerfile image: ${REGISTRY:-opea}/chathistory-mongo-server:${TAG:-latest} diff --git a/.github/workflows/docker/compose/dataprep-compose-cd.yaml b/.github/workflows/docker/compose/dataprep-compose-cd.yaml index e177830515..53eba8bc7e 100644 --- a/.github/workflows/docker/compose/dataprep-compose-cd.yaml +++ b/.github/workflows/docker/compose/dataprep-compose-cd.yaml @@ -5,21 +5,21 @@ services: dataprep-redis-llama-index: build: - dockerfile: comps/dataprep/redis/llama_index/docker/Dockerfile + dockerfile: comps/dataprep/redis/llama_index/Dockerfile image: ${REGISTRY:-opea}/dataprep-redis-llama-index:${TAG:-latest} dataprep-on-ray-redis: build: - dockerfile: comps/dataprep/redis/langchain_ray/docker/Dockerfile + dockerfile: comps/dataprep/redis/langchain_ray/Dockerfile image: ${REGISTRY:-opea}/dataprep-on-ray-redis:${TAG:-latest} dataprep-milvus: build: - dockerfile: comps/dataprep/milvus/docker/Dockerfile + dockerfile: comps/dataprep/milvus/langchain/Dockerfile image: ${REGISTRY:-opea}/dataprep-milvus:${TAG:-latest} dataprep-pgvector: build: - dockerfile: comps/dataprep/pgvector/langchain/docker/Dockerfile + dockerfile: comps/dataprep/pgvector/langchain/Dockerfile image: ${REGISTRY:-opea}/dataprep-pgvector:${TAG:-latest} dataprep-pinecone: build: - dockerfile: comps/dataprep/pinecone/docker/Dockerfile + dockerfile: comps/dataprep/pinecone/langchain/Dockerfile image: ${REGISTRY:-opea}/dataprep-pinecone:${TAG:-latest} diff --git a/.github/workflows/docker/compose/dataprep-compose.yaml b/.github/workflows/docker/compose/dataprep-compose.yaml index 49dc4f8193..0f8ca4e83c 100644 --- a/.github/workflows/docker/compose/dataprep-compose.yaml +++ b/.github/workflows/docker/compose/dataprep-compose.yaml @@ -7,9 +7,9 @@ services: dataprep-redis: build: - dockerfile: comps/dataprep/redis/langchain/docker/Dockerfile + dockerfile: comps/dataprep/redis/langchain/Dockerfile image: ${REGISTRY:-opea}/dataprep-redis:${TAG:-latest} dataprep-qdrant: build: - dockerfile: comps/dataprep/qdrant/docker/Dockerfile + dockerfile: comps/dataprep/qdrant/langchain/Dockerfile image: ${REGISTRY:-opea}/dataprep-qdrant:${TAG:-latest} diff --git a/.github/workflows/docker/compose/embeddings-compose-cd.yaml b/.github/workflows/docker/compose/embeddings-compose-cd.yaml index 6cab3fa1af..9d0afadc35 100644 --- a/.github/workflows/docker/compose/embeddings-compose-cd.yaml +++ b/.github/workflows/docker/compose/embeddings-compose-cd.yaml @@ -4,13 +4,13 @@ services: embedding-langchain-mosec-endpoint: build: - dockerfile: comps/embeddings/langchain-mosec/mosec-docker/Dockerfile + dockerfile: comps/embeddings/mosec/langchain/dependency/Dockerfile image: ${REGISTRY:-opea}/embedding-langchain-mosec-endpoint:${TAG:-latest} embedding-langchain-mosec: build: - dockerfile: comps/embeddings/langchain-mosec/docker/Dockerfile + dockerfile: comps/embeddings/mosec/langchain/Dockerfile image: ${REGISTRY:-opea}/embedding-langchain-mosec:${TAG:-latest} embedding-tei-llama-index: build: - dockerfile: comps/embeddings/llama_index/docker/Dockerfile + dockerfile: comps/embeddings/tei/llama_index/Dockerfile image: ${REGISTRY:-opea}/embedding-tei-llama-index:${TAG:-latest} diff --git a/.github/workflows/docker/compose/embeddings-compose.yaml b/.github/workflows/docker/compose/embeddings-compose.yaml index efaee181f4..a922f06112 100644 --- a/.github/workflows/docker/compose/embeddings-compose.yaml +++ b/.github/workflows/docker/compose/embeddings-compose.yaml @@ -6,5 +6,5 @@ services: embedding-tei: build: - dockerfile: comps/embeddings/langchain/docker/Dockerfile + dockerfile: comps/embeddings/tei/langchain/Dockerfile image: ${REGISTRY:-opea}/embedding-tei:${TAG:-latest} diff --git a/.github/workflows/docker/compose/guardrails-compose-cd.yaml b/.github/workflows/docker/compose/guardrails-compose-cd.yaml index 0b25f749d4..2c1df06395 100644 --- a/.github/workflows/docker/compose/guardrails-compose-cd.yaml +++ b/.github/workflows/docker/compose/guardrails-compose-cd.yaml @@ -4,5 +4,5 @@ services: guardrails-pii-detection: build: - dockerfile: comps/guardrails/pii_detection/docker/Dockerfile + dockerfile: comps/guardrails/pii_detection/Dockerfile image: ${REGISTRY:-opea}/guardrails-pii-detection:${TAG:-latest} diff --git a/.github/workflows/docker/compose/guardrails-compose.yaml b/.github/workflows/docker/compose/guardrails-compose.yaml index 20c543f2df..81e5162090 100644 --- a/.github/workflows/docker/compose/guardrails-compose.yaml +++ b/.github/workflows/docker/compose/guardrails-compose.yaml @@ -7,5 +7,5 @@ services: guardrails-tgi: build: - dockerfile: comps/guardrails/llama_guard/docker/Dockerfile + dockerfile: comps/guardrails/llama_guard/langchain/Dockerfile image: ${REGISTRY:-opea}/guardrails-tgi:${TAG:-latest} diff --git a/.github/workflows/docker/compose/llms-compose-cd.yaml b/.github/workflows/docker/compose/llms-compose-cd.yaml index 17c2f79493..1d99d076d7 100644 --- a/.github/workflows/docker/compose/llms-compose-cd.yaml +++ b/.github/workflows/docker/compose/llms-compose-cd.yaml @@ -4,7 +4,7 @@ services: llm-native: build: - dockerfile: comps/llms/text-generation/native/docker/Dockerfile + dockerfile: comps/llms/text-generation/native/Dockerfile image: ${REGISTRY:-opea}/llm-native:${TAG:-latest} vllm-openvino: build: diff --git a/.github/workflows/docker/compose/llms-compose.yaml b/.github/workflows/docker/compose/llms-compose.yaml index 9c66a3b0a5..904f7e1e71 100644 --- a/.github/workflows/docker/compose/llms-compose.yaml +++ b/.github/workflows/docker/compose/llms-compose.yaml @@ -10,29 +10,29 @@ services: image: ${REGISTRY:-opea}/llm-tgi:${TAG:-latest} llm-ollama: build: - dockerfile: comps/llms/text-generation/ollama/Dockerfile + dockerfile: comps/llms/text-generation/ollama/langchain/Dockerfile image: ${REGISTRY:-opea}/llm-ollama:${TAG:-latest} llm-docsum-tgi: build: - dockerfile: comps/llms/summarization/tgi/Dockerfile + dockerfile: comps/llms/summarization/tgi/langchain/Dockerfile image: ${REGISTRY:-opea}/llm-docsum-tgi:${TAG:-latest} llm-faqgen-tgi: build: - dockerfile: comps/llms/faq-generation/tgi/Dockerfile + dockerfile: comps/llms/faq-generation/tgi/langchain/Dockerfile image: ${REGISTRY:-opea}/llm-faqgen-tgi:${TAG:-latest} llm-vllm: build: - dockerfile: comps/llms/text-generation/vllm/docker/Dockerfile.microservice + dockerfile: comps/llms/text-generation/vllm/langchain/Dockerfile image: ${REGISTRY:-opea}/llm-vllm:${TAG:-latest} llm-vllm-hpu: build: - dockerfile: comps/llms/text-generation/vllm/docker/Dockerfile.hpu + dockerfile: comps/llms/text-generation/vllm/langchain/dependency/Dockerfile.intel_hpu image: ${REGISTRY:-opea}/llm-vllm-hpu:${TAG:-latest} llm-vllm-ray: build: - dockerfile: comps/llms/text-generation/vllm-ray/docker/Dockerfile.microservice + dockerfile: comps/llms/text-generation/vllm/ray/Dockerfile image: ${REGISTRY:-opea}/llm-vllm-ray:${TAG:-latest} llm-vllm-ray-hpu: build: - dockerfile: comps/llms/text-generation/vllm-ray/docker/Dockerfile.vllmray + dockerfile: comps/llms/text-generation/vllm/ray/dependency/Dockerfile image: ${REGISTRY:-opea}/llm-vllm-ray-hpu:${TAG:-latest} diff --git a/.github/workflows/docker/compose/lvms-compose-cd.yaml b/.github/workflows/docker/compose/lvms-compose-cd.yaml index 48bc970acd..97b1a8a89b 100644 --- a/.github/workflows/docker/compose/lvms-compose-cd.yaml +++ b/.github/workflows/docker/compose/lvms-compose-cd.yaml @@ -5,19 +5,19 @@ services: lvm: build: - dockerfile: comps/lvms/Dockerfile + dockerfile: comps/lvms/llava/Dockerfile image: ${REGISTRY:-opea}/lvm:${TAG:-latest} # Xeon CPU llava: build: - dockerfile: comps/lvms/llava/Dockerfile + dockerfile: comps/lvms/llava/dependency/Dockerfile image: ${REGISTRY:-opea}/llava:${TAG:-latest} # Gaudi2 HPU llava-hpu: build: - dockerfile: comps/lvms/llava/Dockerfile_hpu + dockerfile: comps/lvms/llava/dependency/Dockerfile.intel_hpu image: ${REGISTRY:-opea}/llava-hpu:${TAG:-latest} lvm-tgi: build: - dockerfile: comps/lvms/Dockerfile_tgi + dockerfile: comps/lvms/tgi-llava/Dockerfile image: ${REGISTRY:-opea}/lvm-tgi:${TAG:-latest} diff --git a/.github/workflows/docker/compose/nginx-compose-cd.yaml b/.github/workflows/docker/compose/nginx-compose-cd.yaml index f156d16762..b298f6f5a5 100644 --- a/.github/workflows/docker/compose/nginx-compose-cd.yaml +++ b/.github/workflows/docker/compose/nginx-compose-cd.yaml @@ -5,5 +5,5 @@ services: nginx: build: - dockerfile: comps/nginx/docker/Dockerfile + dockerfile: comps/nginx/Dockerfile image: ${REGISTRY:-opea}/nginx:${TAG:-latest} diff --git a/.github/workflows/docker/compose/prompt_registry-compose-cd.yaml b/.github/workflows/docker/compose/prompt_registry-compose-cd.yaml index 1de0d8588e..34d8973df5 100644 --- a/.github/workflows/docker/compose/prompt_registry-compose-cd.yaml +++ b/.github/workflows/docker/compose/prompt_registry-compose-cd.yaml @@ -5,5 +5,5 @@ services: promptregistry-mongo-server: build: - dockerfile: comps/prompt_registry/mongo/docker/Dockerfile + dockerfile: comps/prompt_registry/mongo/Dockerfile image: ${REGISTRY:-opea}/promptregistry-mongo-server:${TAG:-latest} diff --git a/.github/workflows/docker/compose/reranks-compose-cd.yaml b/.github/workflows/docker/compose/reranks-compose-cd.yaml index 0cebf4ca36..1f468f8e53 100644 --- a/.github/workflows/docker/compose/reranks-compose-cd.yaml +++ b/.github/workflows/docker/compose/reranks-compose-cd.yaml @@ -4,15 +4,15 @@ services: reranking-fastrag: build: - dockerfile: comps/reranks/fastrag/docker/Dockerfile + dockerfile: comps/reranks/fastrag/Dockerfile image: ${REGISTRY:-opea}/reranking-fastrag:${TAG:-latest} reranking-langchain-mosec-endpoint: build: - dockerfile: comps/reranks/langchain-mosec/mosec-docker/Dockerfile + dockerfile: comps/reranks/mosec/langchain/dependency/Dockerfile image: ${REGISTRY:-opea}/reranking-langchain-mosec-endpoint:${TAG:-latest} reranking-langchain-mosec: build: - dockerfile: comps/reranks/langchain-mosec/docker/Dockerfile + dockerfile: comps/reranks/mosec/langchain/Dockerfile image: ${REGISTRY:-opea}/reranking-langchain-mosec:${TAG:-latest} reranking-mosec-neural-speed: build: diff --git a/.github/workflows/docker/compose/reranks-compose.yaml b/.github/workflows/docker/compose/reranks-compose.yaml index f3fd38b61a..25c0aeb9bc 100644 --- a/.github/workflows/docker/compose/reranks-compose.yaml +++ b/.github/workflows/docker/compose/reranks-compose.yaml @@ -6,5 +6,5 @@ services: reranking-tei: build: - dockerfile: comps/reranks/tei/docker/Dockerfile + dockerfile: comps/reranks/tei/Dockerfile image: ${REGISTRY:-opea}/reranking-tei:${TAG:-latest} diff --git a/.github/workflows/docker/compose/retrievers-compose-cd.yaml b/.github/workflows/docker/compose/retrievers-compose-cd.yaml index 88d612fe31..a8aefeda55 100644 --- a/.github/workflows/docker/compose/retrievers-compose-cd.yaml +++ b/.github/workflows/docker/compose/retrievers-compose-cd.yaml @@ -5,17 +5,17 @@ services: retriever-pgvector: build: - dockerfile: comps/retrievers/langchain/pgvector/docker/Dockerfile + dockerfile: comps/retrievers/pgvector/langchain/Dockerfile image: ${REGISTRY:-opea}/retriever-qdrant:${TAG:-latest} retriever-pinecone: build: - dockerfile: comps/retrievers/langchain/pinecone/docker/Dockerfile + dockerfile: comps/retrievers/pinecone/langchain/Dockerfile image: ${REGISTRY:-opea}/retriever-pinecone:${TAG:-latest} retriever-milvus: build: - dockerfile: comps/retrievers/langchain/milvus/docker/Dockerfile + dockerfile: comps/retrievers/milvus/langchain/Dockerfile image: ${REGISTRY:-opea}/retriever-milvus:${TAG:-latest} retriever-redis-llamaindex: build: - dockerfile: comps/retrievers/llamaindex/docker/Dockerfile + dockerfile: comps/retrievers/redis/llama_index/Dockerfile image: ${REGISTRY:-opea}/retriever-redis-llamaindex:${TAG:-latest} diff --git a/.github/workflows/docker/compose/retrievers-compose.yaml b/.github/workflows/docker/compose/retrievers-compose.yaml index b4cdd8e32b..db1c195305 100644 --- a/.github/workflows/docker/compose/retrievers-compose.yaml +++ b/.github/workflows/docker/compose/retrievers-compose.yaml @@ -5,9 +5,9 @@ services: retriever-redis: build: - dockerfile: comps/retrievers/langchain/redis/docker/Dockerfile + dockerfile: comps/retrievers/redis/langchain/Dockerfile image: ${REGISTRY:-opea}/retriever-redis:${TAG:-latest} retriever-qdrant: build: - dockerfile: comps/retrievers/haystack/qdrant/docker/Dockerfile + dockerfile: comps/retrievers/qdrant/haystack/Dockerfile image: ${REGISTRY:-opea}/retriever-qdrant:${TAG:-latest} diff --git a/.github/workflows/docker/compose/tts-compose.yaml b/.github/workflows/docker/compose/tts-compose.yaml index 5adf287e55..07a8b48692 100644 --- a/.github/workflows/docker/compose/tts-compose.yaml +++ b/.github/workflows/docker/compose/tts-compose.yaml @@ -6,13 +6,13 @@ services: tts: build: - dockerfile: comps/tts/Dockerfile + dockerfile: comps/tts/speecht5/Dockerfile image: ${REGISTRY:-opea}/tts:${TAG:-latest} speecht5: build: - dockerfile: comps/tts/speecht5/Dockerfile + dockerfile: comps/tts/speecht5/dependency/Dockerfile image: ${REGISTRY:-opea}/speecht5:${TAG:-latest} speecht5-gaudi: build: - dockerfile: comps/tts/speecht5/Dockerfile_hpu + dockerfile: comps/tts/speecht5/dependency/Dockerfile.intel_hpu image: ${REGISTRY:-opea}/speecht5-gaudi:${TAG:-latest} diff --git a/.github/workflows/docker/compose/vectorstores-compose-cd.yaml b/.github/workflows/docker/compose/vectorstores-compose-cd.yaml index 00ac03d68d..a3940b13dd 100644 --- a/.github/workflows/docker/compose/vectorstores-compose-cd.yaml +++ b/.github/workflows/docker/compose/vectorstores-compose-cd.yaml @@ -5,5 +5,5 @@ services: vectorstore-pathway: build: - dockerfile: comps/vectorstores/langchain/pathway + dockerfile: comps/vectorstores/pathway image: ${REGISTRY:-opea}/vectorstore-pathway:${TAG:-latest} diff --git a/.github/workflows/docker/compose/web_retrievers-compose.yaml b/.github/workflows/docker/compose/web_retrievers-compose.yaml index f95bc3b8a4..7fd080ee2c 100644 --- a/.github/workflows/docker/compose/web_retrievers-compose.yaml +++ b/.github/workflows/docker/compose/web_retrievers-compose.yaml @@ -6,5 +6,5 @@ services: web-retriever-chroma: build: - dockerfile: comps/web_retrievers/langchain/chroma/docker/Dockerfile + dockerfile: comps/web_retrievers/chroma/langchain/Dockerfile image: ${REGISTRY:-opea}/web-retriever-chroma:${TAG:-latest} diff --git a/.github/workflows/pr-dockerfile-path-scan.yaml b/.github/workflows/pr-dockerfile-path-scan.yaml index 3482e90c49..d24718375e 100644 --- a/.github/workflows/pr-dockerfile-path-scan.yaml +++ b/.github/workflows/pr-dockerfile-path-scan.yaml @@ -72,7 +72,7 @@ jobs: if [[ "$is_use" == "TRUE" ]]; then echo "Warning: Changed Dockerfile paths:" echo "$used_files" - echo "Please modify the corresponding README in GenAIComps and ask suyue.chen@intel.com for final confirmation." + echo "Please modify the corresponding README in GenAIComps." exit 1 fi diff --git a/.github/workflows/pr-examples-test.yml b/.github/workflows/pr-examples-test.yml index e3fe2b6abb..a6f229864d 100644 --- a/.github/workflows/pr-examples-test.yml +++ b/.github/workflows/pr-examples-test.yml @@ -4,7 +4,7 @@ name: Example-test on: - pull_request_target: + pull_request: branches: [main] types: [opened, reopened, ready_for_review, synchronize] # added `ready_for_review` since draft is skipped paths: @@ -44,22 +44,22 @@ jobs: run: | cd ../ && sudo rm -rf GenAIExamples git clone https://github.com/opea-project/GenAIExamples.git - cd GenAIExamples/ChatQnA/docker + cd GenAIExamples/ChatQnA/docker_image_build cp -r ${{ github.workspace }}/../GenAIComps . cd ../tests - sed -i '/GenAIComps.git/d' test_chatqna_on_gaudi.sh - cat test_chatqna_on_gaudi.sh + sed -i '/GenAIComps.git/d' test_compose_on_gaudi.sh + cat test_compose_on_gaudi.sh echo "Run test..." echo "LOG_DIR=$(pwd)" >> $GITHUB_ENV export IMAGE_TAG="comps" - timeout 50m bash test_chatqna_on_gaudi.sh + timeout 50m bash test_compose_on_gaudi.sh - name: Clean up container if: cancelled() || failure() run: | - cd ${{ github.workspace }}/../GenAIExamples/ChatQnA/docker/gaudi + cd ${{ github.workspace }}/../GenAIExamples/ChatQnA/docker_compose/intel/hpu/gaudi docker compose stop && docker compose rm -f docker system prune -f diff --git a/.github/workflows/pr-microservice-test.yml b/.github/workflows/pr-microservice-test.yml index 6e205784f7..746d6a0733 100644 --- a/.github/workflows/pr-microservice-test.yml +++ b/.github/workflows/pr-microservice-test.yml @@ -4,7 +4,7 @@ name: MicroService-test 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: @@ -28,6 +28,7 @@ jobs: matrix: ${{ fromJSON(needs.job1.outputs.run_matrix) }} runs-on: ${{ matrix.hardware }} continue-on-error: true + if: ${{ !github.event.pull_request.draft }} steps: - name: Clean Up Working Directory run: | @@ -47,13 +48,13 @@ jobs: GOOGLE_CSE_ID: ${{ secrets.GOOGLE_CSE_ID }} PINECONE_KEY: ${{ secrets.PINECONE_KEY }} PREDICTIONGUARD_API_KEY: ${{ secrets.PREDICTIONGUARD_API_KEY }} - service_path: ${{ matrix.service }} + service: ${{ matrix.service }} hardware: ${{ matrix.hardware }} run: | cd tests - service=$(echo $service_path | tr '/' '_') - echo "service=${service}" >> $GITHUB_ENV - if [ -f test_${service}.sh ]; then timeout 60m bash test_${service}.sh; else echo "Test script not found, skip test!"; fi + echo "log_name=${service}_${hardware}" >> $GITHUB_ENV + if [ ${hardware} = "intel_cpu" ]; then on_hw=""; else on_hw="_on_${hardware}"; fi + timeout 60m bash $(find . -type f -name test_${service}${on_hw}.sh) - name: Clean up container if: cancelled() || failure() @@ -66,5 +67,5 @@ jobs: if: ${{ !cancelled() }} uses: actions/upload-artifact@v4 with: - name: ${{ env.service }} + name: ${{ env.log_name }} path: ${{ github.workspace }}/tests/*.log diff --git a/.github/workflows/scripts/get_test_matrix.sh b/.github/workflows/scripts/get_test_matrix.sh new file mode 100644 index 0000000000..160858bdc4 --- /dev/null +++ b/.github/workflows/scripts/get_test_matrix.sh @@ -0,0 +1,84 @@ +#!/bin/bash +# Copyright (C) 2024 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 + +# service: service path name, like 'agent_langchain', 'asr_whisper' +# hardware: 'intel_cpu', 'intel_hpu', ... + +set -xe +cd $WORKSPACE +changed_files_full=$changed_files_full +run_matrix="{\"include\":[" + +# add test services when comps code change +function find_test_1() { + local pre_service=$1 + local n=$2 + local all_service=$3 + + common_file_change=$(printf '%s\n' "${changed_files[@]}"| grep ${pre_service} | cut -d'/' -f$n | grep -E '*.py' | grep -v '__init__.py|setup.py' | sort -u) || true + if [ "$common_file_change" ] || [ "$all_service" = "true" ]; then + # if common files changed, run all services + services=$(ls ${pre_service} | cut -d'/' -f$n | grep -vE '*.md|*.py|*.sh|*.yaml|*.yml|*.pdf' | sort -u) || true + all_service="true" + else + # if specific service files changed, only run the specific service + services=$(printf '%s\n' "${changed_files[@]}"| grep ${pre_service} | cut -d'/' -f$n | grep -vE '*.py|*.sh|*.yaml|*.yml|*.pdf' | sort -u) || true + fi + + for service in ${services}; do + service=$pre_service/$service + if [[ $(ls ${service} | grep -E "Dockerfile*") ]]; then + service_name=$(echo $service | tr '/' '_' | cut -c7-) # comps/dataprep/redis/langchain -> dataprep_redis_langchain + default_service_script_path=$(find ./tests -type f -name test_${service_name}*.sh) || true + if [ "$default_service_script_path" ]; then + run_matrix="${run_matrix}{\"service\":\"${service_name}\",\"hardware\":\"intel_cpu\"}," + fi + other_service_script_path=$(find ./tests -type f -name test_${service_name}_on_*.sh) || true + for script in ${other_service_script_path}; do + _service=$(echo $script | cut -d'/' -f4 | cut -d'.' -f1 | cut -c6-) + hardware=${_service#*_on_} + run_matrix="${run_matrix}{\"service\":\"${service_name}\",\"hardware\":\"${hardware}\"}," + done + else + find_test_1 $service $((n+1)) $all_service + fi + done +} + +# add test case when test scripts code change +function find_test_2() { + test_files=$(printf '%s\n' "${changed_files[@]}" | grep -E "*.sh") || true + for test_file in ${test_files}; do + _service=$(echo $test_file | cut -d'/' -f3 | cut -d'.' -f1 | cut -c6-) + if [ $(echo ${_service} | grep -c "_on_") == 0 ]; then + service=${_service} + hardware="intel_cpu" + else + service=${_service%_on_*} + hardware=${_service#*_on_} + fi + if [[ $(echo ${run_matrix} | grep -c "{\"service\":\"${service}\",\"hardware\":\"${hardware}\"},") == 0 ]]; then + run_matrix="${run_matrix}{\"service\":\"${service}\",\"hardware\":\"${hardware}\"}," + fi + done +} + +function main() { + + changed_files=$(printf '%s\n' "${changed_files_full[@]}" | grep 'comps/' | grep -vE '*.md|comps/cores') || true + find_test_1 "comps" 2 false + sleep 1s + echo "===========finish find_test_1============" + + changed_files=$(printf '%s\n' "${changed_files_full[@]}" | grep 'tests/' | grep -vE '*.md|*.txt|tests/cores') || true + find_test_2 + sleep 1s + echo "===========finish find_test_2============" + + run_matrix=$run_matrix"]}" + echo "run_matrix=${run_matrix}" + echo "run_matrix=${run_matrix}" >> $GITHUB_OUTPUT +} + +main diff --git a/.github/workflows/scripts/test_ut.sh b/.github/workflows/scripts/test_ut.sh index 8952cc3c51..5f70c9a60e 100644 --- a/.github/workflows/scripts/test_ut.sh +++ b/.github/workflows/scripts/test_ut.sh @@ -1,6 +1,4 @@ #!/bin/bash - - # Copyright (C) 2024 Intel Corporation # SPDX-License-Identifier: Apache-2.0 diff --git a/comps/agent/langchain/docker/Dockerfile b/comps/agent/langchain/Dockerfile similarity index 100% rename from comps/agent/langchain/docker/Dockerfile rename to comps/agent/langchain/Dockerfile diff --git a/comps/agent/langchain/README.md b/comps/agent/langchain/README.md index a411ddc455..9df97e9946 100644 --- a/comps/agent/langchain/README.md +++ b/comps/agent/langchain/README.md @@ -57,7 +57,7 @@ python agent.py ```bash cd GenAIComps/ # back to GenAIComps/ folder -docker build -t opea/comps-agent-langchain:latest -f comps/agent/langchain/docker/Dockerfile . +docker build -t opea/comps-agent-langchain:latest -f comps/agent/langchain/Dockerfile . ``` #### 2.2.2 Start microservices diff --git a/comps/asr/whisper/Dockerfile b/comps/asr/whisper/Dockerfile index ece740bf6b..6a1e4d4ecb 100644 --- a/comps/asr/whisper/Dockerfile +++ b/comps/asr/whisper/Dockerfile @@ -3,34 +3,26 @@ FROM python:3.11-slim - RUN useradd -m -s /bin/bash user && \ mkdir -p /home/user && \ chown -R user /home/user/ +USER user -# Set environment variables -ENV LANG=en_US.UTF-8 +ENV LANG=C.UTF-8 ARG ARCH=cpu -# Install system dependencies -RUN apt-get update \ - && apt-get install -y ffmpeg - -COPY --chown=user:user comps /home/user/comps - -USER user +COPY comps /home/user/comps RUN pip install --no-cache-dir --upgrade pip && \ - pip install --no-cache-dir -r /home/user/comps/asr/requirements.txt && \ if [ "${ARCH}" = "cpu" ]; then \ - pip install --no-cache-dir torch torchvision --index-url https://download.pytorch.org/whl/cpu ; \ - pip install --no-cache-dir --extra-index-url https://download.pytorch.org/whl/cpu -r /home/user/comps/asr/requirements.txt ; \ + pip install torch torchvision --index-url https://download.pytorch.org/whl/cpu ; \ + pip install --no-cache-dir --extra-index-url https://download.pytorch.org/whl/cpu -r /home/user/comps/asr/whisper/requirements.txt ; \ else \ - pip install --no-cache-dir -r /home/user/comps/asr/requirements.txt ; \ + pip install --no-cache-dir -r /home/user/comps/asr/whisper/requirements.txt ; \ fi ENV PYTHONPATH=$PYTHONPATH:/home/user WORKDIR /home/user/comps/asr/whisper -ENTRYPOINT ["python", "whisper_server.py", "--device", "cpu"] +ENTRYPOINT ["python", "asr.py"] \ No newline at end of file diff --git a/comps/asr/README.md b/comps/asr/whisper/README.md similarity index 94% rename from comps/asr/README.md rename to comps/asr/whisper/README.md index 10cac9421f..d12a235185 100644 --- a/comps/asr/README.md +++ b/comps/asr/whisper/README.md @@ -17,7 +17,7 @@ pip install -r requirements.txt - Xeon CPU ```bash -cd whisper/ +cd dependency/ nohup python whisper_server.py --device=cpu & python check_whisper_server.py ``` @@ -35,7 +35,7 @@ If the Whisper server is running properly, you should see the following output: ```bash pip install optimum[habana] -cd whisper/ +cd dependency/ nohup python whisper_server.py --device=hpu & python check_whisper_server.py ``` @@ -66,20 +66,20 @@ Alternatively, you can also start the ASR microservice with Docker. ```bash cd ../.. -docker build -t opea/whisper:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/asr/whisper/Dockerfile . +docker build -t opea/whisper:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/asr/whisper/dependency/Dockerfile . ``` - Gaudi2 HPU ```bash cd ../.. -docker build -t opea/whisper-gaudi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/asr/whisper/Dockerfile_hpu . +docker build -t opea/whisper-gaudi:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/asr/whisper/dependency/Dockerfile.intel_hpu . ``` #### 2.1.2 ASR Service Image ```bash -docker build -t opea/asr:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/asr/Dockerfile . +docker build -t opea/asr:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/asr/whisper/Dockerfile . ``` ### 2.2 Start Whisper and ASR Service diff --git a/comps/asr/asr.py b/comps/asr/whisper/asr.py similarity index 100% rename from comps/asr/asr.py rename to comps/asr/whisper/asr.py diff --git a/comps/asr/check_asr_server.py b/comps/asr/whisper/check_asr_server.py similarity index 100% rename from comps/asr/check_asr_server.py rename to comps/asr/whisper/check_asr_server.py diff --git a/comps/asr/whisper/dependency/Dockerfile b/comps/asr/whisper/dependency/Dockerfile new file mode 100644 index 0000000000..18285def0f --- /dev/null +++ b/comps/asr/whisper/dependency/Dockerfile @@ -0,0 +1,36 @@ +# Copyright (C) 2024 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 + +FROM python:3.11-slim + + +RUN useradd -m -s /bin/bash user && \ + mkdir -p /home/user && \ + chown -R user /home/user/ + +# Set environment variables +ENV LANG=en_US.UTF-8 +ARG ARCH=cpu + +# Install system dependencies +RUN apt-get update \ + && apt-get install -y ffmpeg + +COPY --chown=user:user comps /home/user/comps + +USER user + +RUN pip install --no-cache-dir --upgrade pip && \ + pip install --no-cache-dir -r /home/user/comps/asr/whisper/requirements.txt && \ + if [ "${ARCH}" = "cpu" ]; then \ + pip install torch torchvision --index-url https://download.pytorch.org/whl/cpu ; \ + pip install --no-cache-dir --extra-index-url https://download.pytorch.org/whl/cpu -r /home/user/comps/asr/whisper/requirements.txt ; \ + else \ + pip install --no-cache-dir -r /home/user/comps/asr/whisper/requirements.txt ; \ + fi + +ENV PYTHONPATH=$PYTHONPATH:/home/user + +WORKDIR /home/user/comps/asr/whisper/dependency + +ENTRYPOINT ["python", "whisper_server.py", "--device", "cpu"] diff --git a/comps/asr/whisper/Dockerfile_hpu b/comps/asr/whisper/dependency/Dockerfile.intel_hpu similarity index 83% rename from comps/asr/whisper/Dockerfile_hpu rename to comps/asr/whisper/dependency/Dockerfile.intel_hpu index a5b9d11e94..c7620f965b 100644 --- a/comps/asr/whisper/Dockerfile_hpu +++ b/comps/asr/whisper/dependency/Dockerfile.intel_hpu @@ -24,11 +24,11 @@ USER user # Install requirements and optimum habana RUN pip install --no-cache-dir --upgrade pip && \ - pip install --no-cache-dir -r /home/user/comps/asr/requirements.txt && \ + pip install --no-cache-dir -r /home/user/comps/asr/whisper/requirements.txt && \ pip install --no-cache-dir optimum[habana] -ENV PYTHONPATH=$PYTHONPATH:/home/user +ENV PYTHONPATH=$PYTHONPATH:/home/users -WORKDIR /home/user/comps/asr/whisper +WORKDIR /home/user/comps/asr/whisper/dependency ENTRYPOINT ["python", "whisper_server.py", "--device", "hpu"] diff --git a/comps/asr/__init__.py b/comps/asr/whisper/dependency/__init__.py similarity index 100% rename from comps/asr/__init__.py rename to comps/asr/whisper/dependency/__init__.py diff --git a/comps/asr/whisper/check_whisper_server.py b/comps/asr/whisper/dependency/check_whisper_server.py similarity index 100% rename from comps/asr/whisper/check_whisper_server.py rename to comps/asr/whisper/dependency/check_whisper_server.py diff --git a/comps/asr/whisper/whisper_model.py b/comps/asr/whisper/dependency/whisper_model.py similarity index 100% rename from comps/asr/whisper/whisper_model.py rename to comps/asr/whisper/dependency/whisper_model.py diff --git a/comps/asr/whisper/whisper_server.py b/comps/asr/whisper/dependency/whisper_server.py similarity index 100% rename from comps/asr/whisper/whisper_server.py rename to comps/asr/whisper/dependency/whisper_server.py diff --git a/comps/asr/requirements.txt b/comps/asr/whisper/requirements.txt similarity index 100% rename from comps/asr/requirements.txt rename to comps/asr/whisper/requirements.txt diff --git a/comps/chathistory/mongo/docker/Dockerfile b/comps/chathistory/mongo/Dockerfile similarity index 100% rename from comps/chathistory/mongo/docker/Dockerfile rename to comps/chathistory/mongo/Dockerfile diff --git a/comps/chathistory/mongo/README.md b/comps/chathistory/mongo/README.md index 6f3f7a93ab..1ecb524281 100644 --- a/comps/chathistory/mongo/README.md +++ b/comps/chathistory/mongo/README.md @@ -23,7 +23,7 @@ export COLLECTION_NAME=${COLLECTION_NAME} ```bash cd ../../../../ -docker build -t opea/chathistory-mongo-server:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/chathistory/mongo/docker/Dockerfile . +docker build -t opea/chathistory-mongo-server:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/chathistory/mongo/Dockerfile . ``` ### Run Docker with CLI diff --git a/comps/chathistory/mongo/docker/docker-compose-chathistory-mongo.yaml b/comps/chathistory/mongo/docker-compose-chathistory-mongo.yaml similarity index 100% rename from comps/chathistory/mongo/docker/docker-compose-chathistory-mongo.yaml rename to comps/chathistory/mongo/docker-compose-chathistory-mongo.yaml diff --git a/comps/dataprep/README.md b/comps/dataprep/README.md index 7c3873794c..3cf8c00b63 100644 --- a/comps/dataprep/README.md +++ b/comps/dataprep/README.md @@ -19,20 +19,20 @@ export SUMMARIZE_IMAGE_VIA_LVM=1 ## Dataprep Microservice with Redis -For details, please refer to this [readme](redis/README.md) +For details, please refer to this [langchain readme](langchain/redis/README.md) or [llama index readme](llama_index/redis/README.md) ## Dataprep Microservice with Milvus -For details, please refer to this [readme](milvus/README.md) +For details, please refer to this [readme](langchain/milvus/README.md) ## Dataprep Microservice with Qdrant -For details, please refer to this [readme](qdrant/README.md) +For details, please refer to this [readme](langchain/qdrant/README.md) ## Dataprep Microservice with Pinecone -For details, please refer to this [readme](pinecone/README.md) +For details, please refer to this [readme](langchain/pinecone/README.md) ## Dataprep Microservice with PGVector -For details, please refer to this [readme](pgvector/README.md) +For details, please refer to this [readme](langchain/pgvector/README.md) diff --git a/comps/dataprep/milvus/docker/Dockerfile b/comps/dataprep/milvus/langchain/Dockerfile similarity index 78% rename from comps/dataprep/milvus/docker/Dockerfile rename to comps/dataprep/milvus/langchain/Dockerfile index 708a4ab97b..025b2748a2 100644 --- a/comps/dataprep/milvus/docker/Dockerfile +++ b/comps/dataprep/milvus/langchain/Dockerfile @@ -23,15 +23,15 @@ COPY comps /home/user/comps RUN pip install --no-cache-dir --upgrade pip setuptools && \ if [ ${ARCH} = "cpu" ]; then pip install --no-cache-dir torch torchvision --index-url https://download.pytorch.org/whl/cpu; fi && \ - pip install --no-cache-dir -r /home/user/comps/dataprep/milvus/requirements.txt + pip install --no-cache-dir -r /home/user/comps/dataprep/milvus/langchain/requirements.txt ENV PYTHONPATH=$PYTHONPATH:/home/user USER root -RUN mkdir -p /home/user/comps/dataprep/milvus/uploaded_files && chown -R user /home/user/comps/dataprep/milvus/uploaded_files +RUN mkdir -p /home/user/comps/dataprep/milvus/langchain/uploaded_files && chown -R user /home/user/comps/dataprep/milvus/langchain/uploaded_files USER user -WORKDIR /home/user/comps/dataprep/milvus +WORKDIR /home/user/comps/dataprep/milvus/langchain ENTRYPOINT ["python", "prepare_doc_milvus.py"] diff --git a/comps/dataprep/milvus/README.md b/comps/dataprep/milvus/langchain/README.md similarity index 95% rename from comps/dataprep/milvus/README.md rename to comps/dataprep/milvus/langchain/README.md index cc958bea06..ec1621faf6 100644 --- a/comps/dataprep/milvus/README.md +++ b/comps/dataprep/milvus/langchain/README.md @@ -13,7 +13,7 @@ apt-get install poppler-utils -y ### 1.2 Start Milvus Server -Please refer to this [readme](../../../vectorstores/langchain/milvus/README.md). +Please refer to this [readme](../../../vectorstores/milvus/README.md). ### 1.3 Setup Environment Variables @@ -33,7 +33,7 @@ First, you need to build a mosec embedding serving docker image. ```bash cd ../../.. -docker build --build-arg http_proxy=$http_proxy --build-arg https_proxy=$https_proxy -t opea/embedding-mosec-endpoint:latest -f comps/embeddings/langchain-mosec/mosec-docker/Dockerfile . +docker build --build-arg http_proxy=$http_proxy --build-arg https_proxy=$https_proxy -t opea/embedding-mosec-endpoint:latest -f comps/embeddings/mosec/langchain/dependency/Dockerfile . ``` Then start the mosec embedding server. @@ -62,16 +62,16 @@ python prepare_doc_milvus.py ### 2.1 Start Milvus Server -Please refer to this [readme](../../../vectorstores/langchain/milvus/README.md). +Please refer to this [readme](../../../vectorstores/milvus/README.md). ### 2.2 Build Docker Image ```bash cd ../../.. # build mosec embedding docker image -docker build --build-arg http_proxy=$http_proxy --build-arg https_proxy=$https_proxy -t opea/embedding-langchain-mosec-endpoint:latest -f comps/embeddings/langchain-mosec/mosec-docker/Dockerfile . +docker build --build-arg http_proxy=$http_proxy --build-arg https_proxy=$https_proxy -t opea/embedding-langchain-mosec-endpoint:latest -f comps/embeddings/mosec/langchain/dependency/Dockerfile . # build dataprep milvus docker image -docker build -t opea/dataprep-milvus:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy --build-arg no_proxy=$no_proxy -f comps/dataprep/milvus/docker/Dockerfile . +docker build -t opea/dataprep-milvus:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy --build-arg no_proxy=$no_proxy -f comps/dataprep/milvus/langchain/Dockerfile . ``` ### 2.3 Setup Environment Variables diff --git a/comps/dataprep/milvus/__init__.py b/comps/dataprep/milvus/langchain/__init__.py similarity index 100% rename from comps/dataprep/milvus/__init__.py rename to comps/dataprep/milvus/langchain/__init__.py diff --git a/comps/dataprep/milvus/config.py b/comps/dataprep/milvus/langchain/config.py similarity index 100% rename from comps/dataprep/milvus/config.py rename to comps/dataprep/milvus/langchain/config.py diff --git a/comps/dataprep/milvus/docker/docker-compose-dataprep-milvus.yaml b/comps/dataprep/milvus/langchain/docker-compose-dataprep-milvus.yaml similarity index 100% rename from comps/dataprep/milvus/docker/docker-compose-dataprep-milvus.yaml rename to comps/dataprep/milvus/langchain/docker-compose-dataprep-milvus.yaml diff --git a/comps/dataprep/milvus/docker/milvus.yaml b/comps/dataprep/milvus/langchain/milvus.yaml similarity index 100% rename from comps/dataprep/milvus/docker/milvus.yaml rename to comps/dataprep/milvus/langchain/milvus.yaml diff --git a/comps/dataprep/milvus/prepare_doc_milvus.py b/comps/dataprep/milvus/langchain/prepare_doc_milvus.py similarity index 100% rename from comps/dataprep/milvus/prepare_doc_milvus.py rename to comps/dataprep/milvus/langchain/prepare_doc_milvus.py diff --git a/comps/dataprep/milvus/requirements.txt b/comps/dataprep/milvus/langchain/requirements.txt similarity index 100% rename from comps/dataprep/milvus/requirements.txt rename to comps/dataprep/milvus/langchain/requirements.txt diff --git a/comps/dataprep/redis/multimodal_langchain/docker/Dockerfile b/comps/dataprep/multimodal/redis/langchain/Dockerfile similarity index 86% rename from comps/dataprep/redis/multimodal_langchain/docker/Dockerfile rename to comps/dataprep/multimodal/redis/langchain/Dockerfile index 52650b7e1e..c2b1d9bdd9 100644 --- a/comps/dataprep/redis/multimodal_langchain/docker/Dockerfile +++ b/comps/dataprep/multimodal/redis/langchain/Dockerfile @@ -27,11 +27,11 @@ COPY comps /home/user/comps RUN pip install --no-cache-dir --upgrade pip setuptools && \ if [ ${ARCH} = "cpu" ]; then pip install --no-cache-dir torch torchvision --index-url https://download.pytorch.org/whl/cpu; fi && \ - pip install --no-cache-dir -r /home/user/comps/dataprep/redis/multimodal_langchain/requirements.txt + pip install --no-cache-dir -r /home/user/comps/dataprep/multimodal/redis/langchain/requirements.txt ENV PYTHONPATH=$PYTHONPATH:/home/user -WORKDIR /home/user/comps/dataprep/redis/multimodal_langchain +WORKDIR /home/user/comps/dataprep/multimodal/redis/langchain ENTRYPOINT ["python", "prepare_videodoc_redis.py"] diff --git a/comps/dataprep/redis/multimodal_langchain/README.md b/comps/dataprep/multimodal/redis/langchain/README.md similarity index 93% rename from comps/dataprep/redis/multimodal_langchain/README.md rename to comps/dataprep/multimodal/redis/langchain/README.md index 6744ec8dcc..9a1729ca11 100644 --- a/comps/dataprep/redis/multimodal_langchain/README.md +++ b/comps/dataprep/multimodal/redis/langchain/README.md @@ -19,7 +19,7 @@ pip install -r requirements.txt ### 1.2 Start Redis Stack Server -Please refer to this [readme](../../../vectorstores/langchain/redis/README.md). +Please refer to this [readme](../../../../vectorstores/redis/README.md). ### 1.3 Setup Environment Variables @@ -34,7 +34,7 @@ export PYTHONPATH=${path_to_comps} This is required only if you are going to consume the _generate_captions_ API of this microservice as in [Section 4.3](#43-consume-generate_captions-api). -Please refer to this [readme](../../../lvms/README.md) to start the LVM microservice. +Please refer to this [readme](../../../../lvms/llava/README.md) to start the LVM microservice. After LVM is up, set up environment variables. ```bash @@ -54,13 +54,13 @@ python prepare_videodoc_redis.py ### 2.1 Start Redis Stack Server -Please refer to this [readme](../../../vectorstores/langchain/redis/README.md). +Please refer to this [readme](../../../../vectorstores/redis/README.md). ### 2.2 Start LVM Microservice (Optional) This is required only if you are going to consume the _generate_captions_ API of this microservice as described [here](#43-consume-generate_captions-api). -Please refer to this [readme](../../../lvms/README.md) to start the LVM microservice. +Please refer to this [readme](../../../../lvms/llava/README.md) to start the LVM microservice. After LVM is up, set up environment variables. ```bash @@ -83,7 +83,7 @@ export HUGGINGFACEHUB_API_TOKEN=${your_hf_api_token} ```bash cd ../../../../ -docker build -t opea/dataprep-redis:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/dataprep/redis/multimodal_langchain/docker/Dockerfile . +docker build -t opea/dataprep-redis:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/dataprep/multimodal/redis/langchain/Dockerfile . ``` ### 2.5 Run Docker with CLI (Option A) @@ -95,7 +95,7 @@ docker run -d --name="dataprep-redis-server" -p 6007:6007 --runtime=runc --ipc=h ### 2.6 Run with Docker Compose (Option B - deprecated, will move to genAIExample in future) ```bash -cd comps/dataprep/redis/multimodal_langchain/docker +cd comps/dataprep/multimodal/redis/langchain docker compose -f docker-compose-dataprep-redis.yaml up -d ``` diff --git a/comps/dataprep/pinecone/__init__.py b/comps/dataprep/multimodal/redis/langchain/__init__.py similarity index 100% rename from comps/dataprep/pinecone/__init__.py rename to comps/dataprep/multimodal/redis/langchain/__init__.py diff --git a/comps/dataprep/redis/multimodal_langchain/config.py b/comps/dataprep/multimodal/redis/langchain/config.py similarity index 100% rename from comps/dataprep/redis/multimodal_langchain/config.py rename to comps/dataprep/multimodal/redis/langchain/config.py diff --git a/comps/dataprep/redis/multimodal_langchain/docker/docker-compose-dataprep-redis.yaml b/comps/dataprep/multimodal/redis/langchain/docker-compose-dataprep-redis.yaml similarity index 100% rename from comps/dataprep/redis/multimodal_langchain/docker/docker-compose-dataprep-redis.yaml rename to comps/dataprep/multimodal/redis/langchain/docker-compose-dataprep-redis.yaml diff --git a/comps/dataprep/multimodal_utils.py b/comps/dataprep/multimodal/redis/langchain/multimodal_utils.py similarity index 100% rename from comps/dataprep/multimodal_utils.py rename to comps/dataprep/multimodal/redis/langchain/multimodal_utils.py diff --git a/comps/dataprep/redis/multimodal_langchain/prepare_videodoc_redis.py b/comps/dataprep/multimodal/redis/langchain/prepare_videodoc_redis.py similarity index 99% rename from comps/dataprep/redis/multimodal_langchain/prepare_videodoc_redis.py rename to comps/dataprep/multimodal/redis/langchain/prepare_videodoc_redis.py index d658c58b0c..a0682fb553 100644 --- a/comps/dataprep/redis/multimodal_langchain/prepare_videodoc_redis.py +++ b/comps/dataprep/multimodal/redis/langchain/prepare_videodoc_redis.py @@ -17,10 +17,7 @@ from langchain_community.vectorstores.redis.schema import read_schema from langchain_core.embeddings import Embeddings from langchain_core.utils import get_from_dict_or_env -from PIL import Image - -from comps import opea_microservices, register_microservice -from comps.dataprep.multimodal_utils import ( +from multimodal_utils import ( clear_upload_folder, convert_video_to_audio, create_upload_folder, @@ -33,7 +30,10 @@ load_whisper_model, write_vtt, ) -from comps.embeddings.multimodal_embeddings.bridgetower.bridgetower_embedding import BridgeTowerEmbedding +from PIL import Image + +from comps import opea_microservices, register_microservice +from comps.embeddings.multimodal.bridgetower.bridgetower_embedding import BridgeTowerEmbedding device = "cpu" upload_folder = "./uploaded_files/" diff --git a/comps/dataprep/redis/multimodal_langchain/requirements.txt b/comps/dataprep/multimodal/redis/langchain/requirements.txt similarity index 100% rename from comps/dataprep/redis/multimodal_langchain/requirements.txt rename to comps/dataprep/multimodal/redis/langchain/requirements.txt diff --git a/comps/dataprep/redis/multimodal_langchain/schema.yml b/comps/dataprep/multimodal/redis/langchain/schema.yml similarity index 100% rename from comps/dataprep/redis/multimodal_langchain/schema.yml rename to comps/dataprep/multimodal/redis/langchain/schema.yml diff --git a/comps/dataprep/pgvector/__pycache__/config.cpython-38.pyc b/comps/dataprep/pgvector/__pycache__/config.cpython-38.pyc deleted file mode 100644 index fb9c485a027c79afdb9725358e356661280d0e55..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 426 zcmYk3%}T>S5XUzkZPK(o2>K8`q>G3*(SC(mu&LMzl1tcRr)f0FhD{o=PvWsX`bLtg zCttyno2cNx48Q-*^50?hzS}jBh^u#R{VE~!QHlSd3Na9wU5i2yl_KOIKzoVGR5{3w zT(e3Wf|Z(^R1>TMdTi{QpdBPfuek-fV1r6a)YCtO8?wu`H6K|McfOcdH@lP3a5%$W z0H#MWFd;FE)Bd@m-A>){!nU1O#C#HMSeBQ@%$`^eu05PvyACITnFa;;Ipe){DYL9> z29QHia9O-k9{(CxF0rtOnh6*I@*%>m2!8&LPQv^v^9C z@`S|T7%8b+Lcby27Cv?P8sH6!0f$Kr5q@U;NtpV8gW?Rc6bSZNoMxDkoTMC5{5P^V ePu5}3PhU#?B4%_O!DY4etoj&T?Z_QPr1TBn-FXiH diff --git a/comps/dataprep/pgvector/langchain/docker/Dockerfile b/comps/dataprep/pgvector/langchain/Dockerfile similarity index 100% rename from comps/dataprep/pgvector/langchain/docker/Dockerfile rename to comps/dataprep/pgvector/langchain/Dockerfile diff --git a/comps/dataprep/pgvector/README.md b/comps/dataprep/pgvector/langchain/README.md similarity index 85% rename from comps/dataprep/pgvector/README.md rename to comps/dataprep/pgvector/langchain/README.md index 1a7772eb8b..37a47d1c38 100644 --- a/comps/dataprep/pgvector/README.md +++ b/comps/dataprep/pgvector/langchain/README.md @@ -13,14 +13,11 @@ pip install -r requirements.txt ```bash export PG_CONNECTION_STRING=postgresql+psycopg2://testuser:testpwd@${your_ip}:5432/vectordb export INDEX_NAME=${your_index_name} -export LANGCHAIN_TRACING_V2=true -export LANGCHAIN_API_KEY=${your_langchain_api_key} -export LANGCHAIN_PROJECT="opea/gen-ai-comps:dataprep" ``` ### 1.3 Start PGVector -Please refer to this [readme](../../vectorstores/langchain/pgvector/README.md). +Please refer to this [readme](../../../vectorstores/pgvector/README.md). ### 1.4 Start Document Preparation Microservice for PGVector with Python Script @@ -34,23 +31,20 @@ python prepare_doc_pgvector.py ### 2.1 Start PGVector -Please refer to this [readme](../../vectorstores/langchain/pgvector/README.md). +Please refer to this [readme](../../../vectorstores/pgvector/README.md). ### 2.2 Setup Environment Variables ```bash export PG_CONNECTION_STRING=postgresql+psycopg2://testuser:testpwd@${your_ip}:5432/vectordb export INDEX_NAME=${your_index_name} -export LANGCHAIN_TRACING_V2=true -export LANGCHAIN_API_KEY=${your_langchain_api_key} -export LANGCHAIN_PROJECT="opea/dataprep" ``` ### 2.3 Build Docker Image ```bash cd GenAIComps -docker build -t opea/dataprep-pgvector:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/dataprep/pgvector/langchain/docker/Dockerfile . +docker build -t opea/dataprep-pgvector:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/dataprep/pgvector/langchain/Dockerfile . ``` ### 2.4 Run Docker with CLI (Option A) @@ -62,7 +56,7 @@ docker run --name="dataprep-pgvector" -p 6007:6007 --ipc=host -e http_proxy=$ht ### 2.5 Run with Docker Compose (Option B) ```bash -cd comps/dataprep/langchain/pgvector/docker +cd comps/dataprep/pgvector/langchain docker compose -f docker-compose-dataprep-pgvector.yaml up -d ``` diff --git a/comps/dataprep/pgvector/langchain/docker/docker-compose-dataprep-pgvector.yaml b/comps/dataprep/pgvector/langchain/docker-compose-dataprep-pgvector.yaml similarity index 95% rename from comps/dataprep/pgvector/langchain/docker/docker-compose-dataprep-pgvector.yaml rename to comps/dataprep/pgvector/langchain/docker-compose-dataprep-pgvector.yaml index d396bda3a6..54ff7b802e 100644 --- a/comps/dataprep/pgvector/langchain/docker/docker-compose-dataprep-pgvector.yaml +++ b/comps/dataprep/pgvector/langchain/docker-compose-dataprep-pgvector.yaml @@ -34,7 +34,6 @@ services: PG_CONNECTION_STRING: ${PG_CONNECTION_STRING} INDEX_NAME: ${INDEX_NAME} TEI_ENDPOINT: ${TEI_ENDPOINT} - LANGCHAIN_API_KEY: ${LANGCHAIN_API_KEY} restart: unless-stopped networks: diff --git a/comps/dataprep/pinecone/docker/Dockerfile b/comps/dataprep/pinecone/langchain/Dockerfile similarity index 77% rename from comps/dataprep/pinecone/docker/Dockerfile rename to comps/dataprep/pinecone/langchain/Dockerfile index 078a5262b1..a63976685d 100644 --- a/comps/dataprep/pinecone/docker/Dockerfile +++ b/comps/dataprep/pinecone/langchain/Dockerfile @@ -23,20 +23,20 @@ USER user COPY comps /home/user/comps RUN pip install --no-cache-dir --upgrade pip && \ - pip install --no-cache-dir -r /home/user/comps/dataprep/pinecone/requirements.txt + pip install --no-cache-dir -r /home/user/comps/dataprep/pinecone/langchain/requirements.txt RUN pip install --no-cache-dir --upgrade pip setuptools && \ if [ ${ARCH} = "cpu" ]; then pip install --no-cache-dir torch torchvision --index-url https://download.pytorch.org/whl/cpu; fi && \ - pip install --no-cache-dir -r /home/user/comps/dataprep/pinecone/requirements.txt + pip install --no-cache-dir -r /home/user/comps/dataprep/pinecone/langchain/requirements.txt ENV PYTHONPATH=$PYTHONPATH:/home/user USER root -RUN mkdir -p /home/user/comps/dataprep/pinecone/uploaded_files && chown -R user /home/user/comps/dataprep/pinecone/uploaded_files +RUN mkdir -p /home/user/comps/dataprep/pinecone/langchain/uploaded_files && chown -R user /home/user/comps/dataprep/pinecone/langchain/uploaded_files USER user -WORKDIR /home/user/comps/dataprep/pinecone +WORKDIR /home/user/comps/dataprep/pinecone/langchain ENTRYPOINT ["python", "prepare_doc_pinecone.py"] diff --git a/comps/dataprep/pinecone/README.md b/comps/dataprep/pinecone/langchain/README.md similarity index 91% rename from comps/dataprep/pinecone/README.md rename to comps/dataprep/pinecone/langchain/README.md index 42e3d048a7..9087f13e47 100644 --- a/comps/dataprep/pinecone/README.md +++ b/comps/dataprep/pinecone/langchain/README.md @@ -10,7 +10,7 @@ pip install -r requirements.txt ### Start Pinecone Server -Please refer to this [readme](../../../vectorstores/langchain/pinecone/README.md). +Please refer to this [readme](../../../vectorstores/pinecone/README.md). ### Setup Environment Variables @@ -35,7 +35,7 @@ python prepare_doc_pinecone.py ```bash cd ../../../../ -docker build -t opea/dataprep-pinecone:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/dataprep/pinecone/docker/Dockerfile . +docker build -t opea/dataprep-pinecone:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/dataprep/pinecone/langchain/Dockerfile . ``` ### Run Docker with CLI @@ -56,7 +56,7 @@ export PINECONE_INDEX_NAME=${PINECONE_INDEX_NAME} ### Run Docker with Docker Compose ```bash -cd comps/dataprep/pinecone/docker +cd comps/dataprep/pinecone/langchain docker compose -f docker-compose-dataprep-pinecone.yaml up -d ``` diff --git a/comps/dataprep/qdrant/__init__.py b/comps/dataprep/pinecone/langchain/__init__.py similarity index 100% rename from comps/dataprep/qdrant/__init__.py rename to comps/dataprep/pinecone/langchain/__init__.py diff --git a/comps/dataprep/pinecone/config.py b/comps/dataprep/pinecone/langchain/config.py similarity index 100% rename from comps/dataprep/pinecone/config.py rename to comps/dataprep/pinecone/langchain/config.py diff --git a/comps/dataprep/pinecone/docker/docker-compose-dataprep-pinecone.yaml b/comps/dataprep/pinecone/langchain/docker-compose-dataprep-pinecone.yaml similarity index 100% rename from comps/dataprep/pinecone/docker/docker-compose-dataprep-pinecone.yaml rename to comps/dataprep/pinecone/langchain/docker-compose-dataprep-pinecone.yaml diff --git a/comps/dataprep/pinecone/prepare_doc_pinecone.py b/comps/dataprep/pinecone/langchain/prepare_doc_pinecone.py similarity index 100% rename from comps/dataprep/pinecone/prepare_doc_pinecone.py rename to comps/dataprep/pinecone/langchain/prepare_doc_pinecone.py diff --git a/comps/dataprep/pinecone/requirements.txt b/comps/dataprep/pinecone/langchain/requirements.txt similarity index 100% rename from comps/dataprep/pinecone/requirements.txt rename to comps/dataprep/pinecone/langchain/requirements.txt diff --git a/comps/dataprep/qdrant/docker/Dockerfile b/comps/dataprep/qdrant/langchain/Dockerfile similarity index 78% rename from comps/dataprep/qdrant/docker/Dockerfile rename to comps/dataprep/qdrant/langchain/Dockerfile index 77808c522d..fa885b9e88 100644 --- a/comps/dataprep/qdrant/docker/Dockerfile +++ b/comps/dataprep/qdrant/langchain/Dockerfile @@ -23,16 +23,16 @@ COPY comps /home/user/comps RUN pip install --no-cache-dir --upgrade pip setuptools && \ if [ ${ARCH} = "cpu" ]; then pip install --no-cache-dir torch torchvision --index-url https://download.pytorch.org/whl/cpu; fi && \ - pip install --no-cache-dir -r /home/user/comps/dataprep/qdrant/requirements.txt + pip install --no-cache-dir -r /home/user/comps/dataprep/qdrant/langchain/requirements.txt ENV PYTHONPATH=$PYTHONPATH:/home/user USER root -RUN mkdir -p /home/user/comps/dataprep/qdrant/uploaded_files && chown -R user /home/user/comps/dataprep/qdrant/uploaded_files +RUN mkdir -p /home/user/comps/dataprep/qdrant/langchain/uploaded_files && chown -R user /home/user/comps/dataprep/qdrant/langchain/uploaded_files USER user -WORKDIR /home/user/comps/dataprep/qdrant +WORKDIR /home/user/comps/dataprep/qdrant/langchain ENTRYPOINT ["python", "prepare_doc_qdrant.py"] diff --git a/comps/dataprep/qdrant/README.md b/comps/dataprep/qdrant/langchain/README.md similarity index 95% rename from comps/dataprep/qdrant/README.md rename to comps/dataprep/qdrant/langchain/README.md index 4b52eaeebc..9d58ffa779 100644 --- a/comps/dataprep/qdrant/README.md +++ b/comps/dataprep/qdrant/langchain/README.md @@ -13,7 +13,7 @@ apt-get install poppler-utils -y ### Start Qdrant Server -Please refer to this [readme](../../vectorstores/langchain/qdrant/README.md). +Please refer to this [readme](../../../vectorstores/qdrant/README.md). ### Setup Environment Variables @@ -41,7 +41,7 @@ python prepare_doc_qdrant.py ```bash cd ../../../../ -docker build -t opea/dataprep-qdrant:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/dataprep/qdrant/docker/Dockerfile . +docker build -t opea/dataprep-qdrant:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/dataprep/qdrant/langchain/Dockerfile . ``` ### Run Docker with CLI @@ -63,7 +63,7 @@ export COLLECTION_NAME=${your_collection_name} ### Run Docker with Docker Compose ```bash -cd comps/dataprep/qdrant/docker +cd comps/dataprep/qdrant/langchain docker compose -f docker-compose-dataprep-qdrant.yaml up -d ``` diff --git a/comps/dataprep/redis/multimodal_langchain/__init__.py b/comps/dataprep/qdrant/langchain/__init__.py similarity index 100% rename from comps/dataprep/redis/multimodal_langchain/__init__.py rename to comps/dataprep/qdrant/langchain/__init__.py diff --git a/comps/dataprep/qdrant/config.py b/comps/dataprep/qdrant/langchain/config.py similarity index 100% rename from comps/dataprep/qdrant/config.py rename to comps/dataprep/qdrant/langchain/config.py diff --git a/comps/dataprep/qdrant/docker/docker-compose-dataprep-qdrant.yaml b/comps/dataprep/qdrant/langchain/docker-compose-dataprep-qdrant.yaml similarity index 100% rename from comps/dataprep/qdrant/docker/docker-compose-dataprep-qdrant.yaml rename to comps/dataprep/qdrant/langchain/docker-compose-dataprep-qdrant.yaml diff --git a/comps/dataprep/qdrant/prepare_doc_qdrant.py b/comps/dataprep/qdrant/langchain/prepare_doc_qdrant.py similarity index 100% rename from comps/dataprep/qdrant/prepare_doc_qdrant.py rename to comps/dataprep/qdrant/langchain/prepare_doc_qdrant.py diff --git a/comps/dataprep/qdrant/requirements.txt b/comps/dataprep/qdrant/langchain/requirements.txt similarity index 100% rename from comps/dataprep/qdrant/requirements.txt rename to comps/dataprep/qdrant/langchain/requirements.txt diff --git a/comps/dataprep/redis/README.md b/comps/dataprep/redis/README.md index c9fb1deaf7..ed8beb5edf 100644 --- a/comps/dataprep/redis/README.md +++ b/comps/dataprep/redis/README.md @@ -1,6 +1,6 @@ # Dataprep Microservice with Redis -We have provided dataprep microservice for multimodal data input (e.g., text and image) [here](multimodal_langchain/README.md). +We have provided dataprep microservice for multimodal data input (e.g., text and image) [here](../../multimodal/redis/langchain/README.md). For dataprep microservice for text input, we provide here two frameworks: `Langchain` and `LlamaIndex`. We also provide `Langchain_ray` which uses ray to parallel the data prep for multi-file performance improvement(observed 5x - 15x speedup by processing 1000 files/links.). @@ -33,7 +33,7 @@ cd langchain_ray; pip install -r requirements_ray.txt ### 1.2 Start Redis Stack Server -Please refer to this [readme](../../vectorstores/langchain/redis/README.md). +Please refer to this [readme](../../../vectorstores/redis/README.md). ### 1.3 Setup Environment Variables @@ -50,8 +50,7 @@ First, you need to start a TEI service. ```bash your_port=6006 model="BAAI/bge-base-en-v1.5" -revision="refs/pr/5" -docker run -p $your_port:80 -v ./data:/data --name tei_server -e http_proxy=$http_proxy -e https_proxy=$https_proxy --pull always ghcr.io/huggingface/text-embeddings-inference:cpu-1.2 --model-id $model --revision $revision +docker run -p $your_port:80 -v ./data:/data --name tei_server -e http_proxy=$http_proxy -e https_proxy=$https_proxy --pull always ghcr.io/huggingface/text-embeddings-inference:cpu-1.5 --model-id $model ``` Then you need to test your TEI service using the following commands: @@ -76,12 +75,14 @@ Start document preparation microservice for Redis with below command. - option 1: Start single-process version (for 1-10 files processing) ```bash +cd langchain python prepare_doc_redis.py ``` - option 2: Start multi-process version (for >10 files processing) ```bash +cd langchain_ray python prepare_doc_redis_on_ray.py ``` @@ -89,7 +90,7 @@ python prepare_doc_redis_on_ray.py ### 2.1 Start Redis Stack Server -Please refer to this [readme](../../vectorstores/langchain/redis/README.md). +Please refer to this [readme](../../../vectorstores/redis/README.md). ### 2.2 Setup Environment Variables @@ -108,22 +109,22 @@ export HUGGINGFACEHUB_API_TOKEN=${your_hf_api_token} - option 1: Start single-process version (for 1-10 files processing) ```bash -cd ../../../../ -docker build -t opea/dataprep-redis:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/dataprep/redis/langchain/docker/Dockerfile . +cd ../../../ +docker build -t opea/dataprep-redis:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/dataprep/redis/langchain/Dockerfile . ``` - Build docker image with llama_index ```bash -cd ../../../../ -docker build -t opea/dataprep-redis:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/dataprep/redis/llama_index/docker/Dockerfile . +cd ../../../ +docker build -t opea/dataprep-redis:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/dataprep/redis/llama_index/Dockerfile . ``` - option 2: Start multi-process version (for >10 files processing) ```bash cd ../../../../ -docker build -t opea/dataprep-on-ray-redis:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/dataprep/redis/langchain_ray/docker/Dockerfile . +docker build -t opea/dataprep-on-ray-redis:latest --build-arg https_proxy=$https_proxy --build-arg http_proxy=$http_proxy -f comps/dataprep/redis/langchain_ray/Dockerfile . ``` ### 2.4 Run Docker with CLI (Option A) @@ -144,9 +145,12 @@ docker run -d --name="dataprep-redis-server" -p 6007:6007 --runtime=runc --ipc=h ```bash # for langchain -cd comps/dataprep/redis/langchain/docker +cd comps/dataprep/redis/langchain +# for langchain_ray +cd comps/dataprep/redis/langchain_ray # for llama_index -cd comps/dataprep/redis/llama_index/docker +cd comps/dataprep/redis/llama_index +# common command docker compose -f docker-compose-dataprep-redis.yaml up -d ``` diff --git a/comps/dataprep/redis/langchain/docker/Dockerfile b/comps/dataprep/redis/langchain/Dockerfile similarity index 100% rename from comps/dataprep/redis/langchain/docker/Dockerfile rename to comps/dataprep/redis/langchain/Dockerfile diff --git a/comps/dataprep/redis/langchain/docker/docker-compose-dataprep-redis.yaml b/comps/dataprep/redis/langchain/docker-compose-dataprep-redis.yaml similarity index 100% rename from comps/dataprep/redis/langchain/docker/docker-compose-dataprep-redis.yaml rename to comps/dataprep/redis/langchain/docker-compose-dataprep-redis.yaml diff --git a/comps/dataprep/redis/langchain_ray/docker/Dockerfile b/comps/dataprep/redis/langchain_ray/Dockerfile similarity index 100% rename from comps/dataprep/redis/langchain_ray/docker/Dockerfile rename to comps/dataprep/redis/langchain_ray/Dockerfile diff --git a/comps/dataprep/redis/langchain_ray/docker-compose-dataprep-redis.yaml b/comps/dataprep/redis/langchain_ray/docker-compose-dataprep-redis.yaml new file mode 100644 index 0000000000..fe6bf2be5f --- /dev/null +++ b/comps/dataprep/redis/langchain_ray/docker-compose-dataprep-redis.yaml @@ -0,0 +1,43 @@ +# Copyright (C) 2024 Intel Corporation +# SPDX-License-Identifier: Apache-2.0 + +version: "3" +services: + redis-vector-db: + image: redis/redis-stack:7.2.0-v9 + container_name: redis-vector-db + ports: + - "6379:6379" + - "8001:8001" + tei-embedding-service: + image: ghcr.io/huggingface/text-embeddings-inference:cpu-1.5 + container_name: tei-embedding-server + ports: + - "6006:80" + volumes: + - "./data:/data" + shm_size: 1g + environment: + no_proxy: ${no_proxy} + http_proxy: ${http_proxy} + https_proxy: ${https_proxy} + command: --model-id ${EMBEDDING_MODEL_ID} --auto-truncate + dataprep-redis: + image: opea/dataprep-on-ray-redis:latest + container_name: dataprep-redis-server + ports: + - "6007:6007" + ipc: host + environment: + no_proxy: ${no_proxy} + http_proxy: ${http_proxy} + https_proxy: ${https_proxy} + REDIS_URL: ${REDIS_URL} + INDEX_NAME: ${INDEX_NAME} + TEI_ENDPOINT: ${TEI_ENDPOINT} + HUGGINGFACEHUB_API_TOKEN: ${HUGGINGFACEHUB_API_TOKEN} + restart: unless-stopped + +networks: + default: + driver: bridge diff --git a/comps/dataprep/redis/llama_index/docker/Dockerfile b/comps/dataprep/redis/llama_index/Dockerfile similarity index 100% rename from comps/dataprep/redis/llama_index/docker/Dockerfile rename to comps/dataprep/redis/llama_index/Dockerfile diff --git a/comps/dataprep/redis/llama_index/docker/docker-compose-dataprep-redis.yaml b/comps/dataprep/redis/llama_index/docker-compose-dataprep-redis.yaml similarity index 100% rename from comps/dataprep/redis/llama_index/docker/docker-compose-dataprep-redis.yaml rename to comps/dataprep/redis/llama_index/docker-compose-dataprep-redis.yaml diff --git a/comps/dataprep/redis/test_data.pdf b/comps/dataprep/redis/test_data.pdf deleted file mode 100644 index db825848d1e248fdb801287a674ea29b9896dfa4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1083893 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

S<4 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∋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 z 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

DOYxcURJh;)+yUUA1dF4H7ehP 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�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≦#=9~m+xawAm<3}l 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

`XKyr%VL>b0G27n|!!{D@6$`^4O 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

%lhm(PjoIAE5-9e|JHUWL*t(%mZ2%NIFh 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

II=MX=D9nqw1C`bL6ra%GQMNaU$pmlgI7YA&} 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