Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Review #2412

Closed
wants to merge 80 commits into from
Closed

Review #2412

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
80 commits
Select commit Hold shift + click to select a range
c5a2a67
Update links [main] (#2358)
dkalinowski Mar 6, 2024
630f3b2
Snippet with latest package (#2360)
dkalinowski Mar 11, 2024
8da2890
Clone the repo before running demo in instructions (#2362)
dkalinowski Mar 11, 2024
818b4fa
LLM Text Gen demo - fixes & adjusting to notebook changes (#2367)
dkalinowski Mar 13, 2024
f1e403d
Updated to v2024.0 public ovms package in C-API Minimal App Demo (#2357)
bstrzele Mar 13, 2024
6c4a09a
Python improvements and bugfixes (#2366)
mzegla Mar 13, 2024
33d8d9f
Documentation for capi benchmark app (#2329)
bstrzele Mar 13, 2024
60234af
RAG Chatbot demo (#2328)
dkalinowski Mar 14, 2024
95336a8
String request validation when data array is empty (#2368)
dkalinowski Mar 18, 2024
c21f7bb
Update OV to 11 march (#2369)
dkalinowski Mar 18, 2024
59690c1
Added test for string precision metadata (#2343)
bstrzele Mar 18, 2024
ef32570
Resolve python node todo's (#2344)
michalkulakowski Mar 19, 2024
e9b17ea
ov::string serialization for single models (+ single model DAG) (#2372)
dkalinowski Mar 20, 2024
34a7551
Update to new calculators validation (#2335)
rasapala Mar 22, 2024
2af021b
[LLM Demos] Add optional seed, adjust readme (#2376)
dkalinowski Mar 25, 2024
a4aa7f3
PR testing changes (#2323)
dtrawins Mar 26, 2024
ca5934e
Quieten boost (#2379)
stevegrubb Mar 29, 2024
f76dedc
Integrate openvino_tokenizers repo (#2381)
dkalinowski Apr 2, 2024
602500d
Fix input name in demo after model input name changed (#2382)
dkalinowski Apr 2, 2024
296f53a
Bump tokenizers to commit with MUSE bugfix (#2389)
dkalinowski Apr 2, 2024
42de1f3
Fix input name in Go Client Image Classification demo after OpenVINO …
dkalinowski Apr 3, 2024
2cee117
CVS-134244_skip_test_reshaping_gpu (#2396)
ngrozae Apr 4, 2024
8286d31
ignore .venvs for docker context (#2399)
dkalinowski Apr 8, 2024
7af4177
Allow flag injection to pugixml (#2390)
dtrawins Apr 8, 2024
e5dd40c
update ov to build 14985 (#2394)
dtrawins Apr 8, 2024
a959b8e
Add string output demo (#2378)
michalkulakowski Apr 9, 2024
10667af
Fix row named format for binary inputs in REST API & fix logging for …
mzegla Apr 9, 2024
067d241
Upgraded gradio (#2392)
bstrzele Apr 9, 2024
6058b37
Full support of KServe Api for Mediapipe
michalkulakowski Apr 9, 2024
ba6e878
[DOCS] Fixing references for docs (#2402)
sgolebiewski-intel Apr 11, 2024
d7fca36
Expose compiler flags (#2380)
stevegrubb Apr 11, 2024
18543aa
Fixing broken links (#2404)
sgolebiewski-intel Apr 11, 2024
5c2455d
Fix cpprestsdk linker flag injection bug (#2383)
stevegrubb Apr 12, 2024
73c3387
Added handling of relative paths (#2384)
bstrzele Apr 12, 2024
5c754fe
Fixed failing unit test (#2408)
bstrzele Apr 15, 2024
bc334b6
[DOCS] Removing html tags from references (#2409)
sgolebiewski-intel Apr 15, 2024
6b33569
update coverity scanning (#2230)
dtrawins Apr 16, 2024
8435706
Updated llm demo to report number of generated tokens in the last res…
bstrzele Apr 16, 2024
a300728
Mkulakow/mediapipe kfs rest test (#2377)
michalkulakowski Apr 17, 2024
0c2fe0e
Coverity fixes (#2411)
atobiszei Apr 17, 2024
5f62713
Change dockerfile default values to match Makefile (#2414)
dkalinowski Apr 18, 2024
bb43de2
Update OV to 2024.1 RC (#2415)
dkalinowski Apr 18, 2024
5f79324
Fix UTs without python (#2416)
michalkulakowski Apr 18, 2024
0e872ad
Templatize graph execution (both unary and stream) (#2407)
dkalinowski Apr 22, 2024
de7be1e
print_summary option to benchmark_client to parse benchmark results. …
psakamoori Apr 24, 2024
dfd1316
update onnx in demos to 1.16.0 (#2424)
dtrawins Apr 24, 2024
e52d12c
[main] Remove GPT-J demo and blingfire tokenizer custom node (#2421)
dkalinowski Apr 24, 2024
a5fb58a
TFHub->Kaggle (#2427)
dkalinowski Apr 24, 2024
1cb8a17
rag demo with online scope changes (#2413)
dtrawins Apr 26, 2024
e0972e1
Fix building with MP=on PY=off (#2432)
dkalinowski Apr 29, 2024
f8b06ec
Cvs 139227 Continuous batching library integration (#2430)
rasapala Apr 29, 2024
6a7b271
Init PR checkbox (#2375)
rasapala May 6, 2024
ff46b1d
universal_and_benchmark_documentation_updates (#2433)
pgladkows May 15, 2024
0b95dd5
RAG python demo with online scope changes (#2434)
dtrawins May 16, 2024
37d69bf
Implement /v3/chat/completions endpoint - forward to MP graph (#2436)
dkalinowski May 17, 2024
3d34b77
CVS-137992_fix_tests_deadline_exceeded_dg2 (#2440)
ngrozae May 17, 2024
7947c57
Cvs 139229 llm node resource (#2437)
rasapala May 17, 2024
19872ee
Add LLM execution thread 1/2 (#2442)
mzegla May 21, 2024
787dddc
update ov version to 15441 build (#2445)
dtrawins May 22, 2024
b9ae161
Mkulakow/chat completion request conversion (#2443)
michalkulakowski May 22, 2024
916bf33
client tests for python3.12 (#2446)
dtrawins May 23, 2024
57735ef
update_test_requirements (#2453)
ngrozae May 24, 2024
39a0aba
LLM execution thread notifications and error handling 2/2 (#2447)
mzegla May 24, 2024
48f6e55
Fix ovms status to http status conversion (#2410)
michalkulakowski May 27, 2024
c7bf496
add-version-to-ubuntu-os (#2438)
pgladkows May 27, 2024
59c5886
Update mediapipe docs and demo (#2422) (#2458)
michalkulakowski May 29, 2024
1390189
LLM calculator compliant with /v3/chat/completions (#2452)
dkalinowski May 29, 2024
f08caa1
fix regstering tokenizer extension from the ov lib path (#2466)
dtrawins May 31, 2024
f3be238
update ov (#2465)
dtrawins May 31, 2024
746ed14
Python 3.12 support. (#2444)
rasapala Jun 3, 2024
b991f9b
Adding LLM scheduler config from graph options. (#2455)
rasapala Jun 4, 2024
1637183
added documentation about openai api (#2460)
dtrawins Jun 6, 2024
0c23278
Add handling for missing OpenAI parameters + profiling traces (#2468)
dkalinowski Jun 7, 2024
122a163
update client dependencies (#2476)
dtrawins Jun 7, 2024
019e35d
Add http payload conversion UTs (#2461)
michalkulakowski Jun 11, 2024
762ea3f
update ov to 2024.2 rc2 (#2481)
dtrawins Jun 11, 2024
90dc2dd
update_tests_requirements (#2482)
ngrozae Jun 11, 2024
5c73d1b
Fix http MEDIAPIPE_DEFINITION_NOT_LOADED_ANYMORE status conversion (#…
michalkulakowski Jun 11, 2024
a0bca87
Text streamer fix (#2483)
dkalinowski Jun 11, 2024
bdd225f
Support Jinja template application for /chat/completion endpoint (#2479)
mzegla Jun 11, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 3 additions & 0 deletions .bazelrc
Original file line number Diff line number Diff line change
Expand Up @@ -96,3 +96,6 @@ build --experimental_cc_shared_library

build --check_visibility=true

build --cxxopt=-DOVMS_DUMP_TO_FILE=0
coverage --cxxopt=-DOVMS_DUMP_TO_FILE=0
test --cxxopt=-DOVMS_DUMP_TO_FILE=0
2 changes: 2 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
.venv
.venv-style
**/.venv

12 changes: 12 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
### 🛠 Summary

JIRA/Issue if applicable.
Describe the changes.

### 🧪 Checklist

- [ ] Unit tests added.
- [ ] The documentation updated.
- [ ] Change follows security best practices.
``

91 changes: 42 additions & 49 deletions Dockerfile.redhat
Original file line number Diff line number Diff line change
Expand Up @@ -47,27 +47,28 @@ RUN dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.n
https://vault.centos.org/centos/8/AppStream/x86_64/os/Packages/tbb-2018.2-9.el8.x86_64.rpm && \
yum clean all

# Build and install pugixml
# hadolint ignore=DL3003
RUN git clone -b v1.13 https://github.com/zeux/pugixml && \
cd pugixml && \
cmake -DBUILD_SHARED_LIBS=ON && \
make all && \
cp -P libpugixml.so* /usr/lib64/

####### Azure SDK needs new boost:
WORKDIR /boost
# hadolint ignore=DL3003
RUN wget -nv https://sourceforge.net/projects/boost/files/boost/1.68.0/boost_1_68_0.tar.gz && \
tar xvf boost_1_68_0.tar.gz && cd boost_1_68_0 && ./bootstrap.sh && \
tar xf boost_1_68_0.tar.gz && cd boost_1_68_0 && ./bootstrap.sh && \
./b2 -j ${JOBS} cxxstd=17 link=static cxxflags='-fPIC' cflags='-fPIC' \
--with-chrono --with-date_time --with-filesystem --with-program_options --with-system \
--with-random --with-thread --with-atomic --with-regex \
--with-log --with-locale \
--with-log --with-locale -d+2 \
install

COPY third_party /ovms/third_party/

# Build and install pugixml
# hadolint ignore=DL3003
RUN git clone -b v1.13 https://github.com/zeux/pugixml && \
cd pugixml && \
patch -p1 < /ovms/third_party/pugixml/pugixml_v1.13_flags.patch && \
cmake -DBUILD_SHARED_LIBS=ON && \
make all && \
cp -P libpugixml.so* /usr/lib64/

####### Azure SDK
WORKDIR /azure
RUN git clone --recurse-submodules --depth 1 --branch v2.10.16 https://github.com/Microsoft/cpprestsdk.git && \
Expand All @@ -84,7 +85,7 @@ RUN CASABLANCA_DIR=/azure/cpprestsdk cmake .. -DCMAKE_CXX_FLAGS="-fPIC" -DCMAKE_

####### Build OpenCV
WORKDIR /ovms/third_party/opencv
RUN ./install_opencv.sh
RUN export VERBOSE=1 && ./install_opencv.sh
####### End of OpenCV

# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #
Expand All @@ -110,13 +111,11 @@ RUN dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.n
vim \
xz \
python39-devel \
https://vault.centos.org/centos/8/AppStream/x86_64/os/Packages/tbb-2018.2-9.el8.x86_64.rpm \
http://mirror.centos.org/centos/8-stream/PowerTools/x86_64/os/Packages/libusb-devel-0.1.5-12.el8.x86_64.rpm \
http://mirror.centos.org/centos/8-stream/BaseOS/x86_64/os/Packages/libusb-0.1.5-12.el8.x86_64.rpm \
http://mirror.centos.org/centos/8-stream/BaseOS/x86_64/os/Packages/libusbx-devel-1.0.23-4.el8.x86_64.rpm && \
https://vault.centos.org/centos/8/AppStream/x86_64/os/Packages/tbb-2018.2-9.el8.x86_64.rpm && \
yum clean all

RUN python3 --version && python3 -m pip install numpy==1.21.0 --no-cache-dir
RUN python3 --version && python3 -m pip install "numpy<2.0.0" --no-cache-dir && \
python3 --version && python3 -m pip install "Jinja2==3.1.4" --no-cache-dir

ARG NVIDIA=0
# Add Nvidia dev tool if needed
Expand Down Expand Up @@ -149,27 +148,27 @@ ENV TF_SYSTEM_LIBS="curl"
ENV TEST_LOG="/root/.cache/bazel/_bazel_root/bc57d4817a53cab8c785464da57d1983/execroot/ovms/bazel-out/test.log"
ARG ov_source_branch=master
ARG ov_contrib_branch=master
ARG sentencepiece=1
ARG tokenizers=1
ARG ov_source_org=openvinotoolkit
ARG ov_contrib_org=openvinotoolkit
ARG ov_use_binary=0
ARG DLDT_PACKAGE_URL
ARG TEMP_DIR=/tmp/openvino_installer
ARG CMAKE_BUILD_TYPE=Release
ARG debug_bazel_flags=--strip=never
ARG debug_bazel_flags="--strip=always --define MEDIAPIPE_DISABLE=0 --define PYTHON_DISABLE=0 --//:distro=redhat"

# hadolint ignore=DL3003
RUN if [[ "$sentencepiece" == "1" || "$NVIDIA" == "1" ]] ; then true ; else exit 0 ; fi ; git clone https://github.com/$ov_contrib_org/openvino_contrib.git /openvino_contrib && cd /openvino_contrib && git checkout $ov_contrib_branch && git submodule update --init --recursive
RUN if [[ "$NVIDIA" == "1" ]] ; then true ; else exit 0 ; fi ; git clone https://github.com/$ov_contrib_org/openvino_contrib.git /openvino_contrib && cd /openvino_contrib && git checkout $ov_contrib_branch && git submodule update --init --recursive

################### BUILD OPENVINO FROM SOURCE - buildarg ov_use_binary=0 ############################
# Build OpenVINO and nGraph (OV dependency) with D_GLIBCXX_USE_CXX11_ABI=0 or 1
# hadolint ignore=DL3003
RUN if [ "$ov_use_binary" == "0" ] ; then true ; else exit 0 ; fi ; git clone https://github.com/$ov_source_org/openvino.git /openvino && cd /openvino && git checkout $ov_source_branch && git submodule update --init --recursive
RUN if [ "$ov_use_binary" == "0" ]; then true ; else exit 0 ; fi ; if ! [[ $debug_bazel_flags == *"PYTHON_DISABLE=1"* ]]; then true ; else exit 0 ; fi ; pip3 install --no-cache-dir -r /openvino/src/bindings/python/wheel/requirements-dev.txt
WORKDIR /openvino/build
RUN if [ "$ov_use_binary" == "0" ] ; then true ; else exit 0 ; fi ; dnf install -y http://mirror.centos.org/centos/8-stream/PowerTools/x86_64/os/Packages/opencl-headers-2.2-1.20180306gite986688.el8.noarch.rpm && dnf clean all
RUN if [ "$ov_use_binary" == "0" ] ; then true ; else exit 0 ; fi ; dnf install -y http://vault.centos.org/centos/8-stream/PowerTools/x86_64/os/Packages/opencl-headers-2.2-1.20180306gite986688.el8.noarch.rpm && dnf clean all
RUN if [ "$ov_use_binary" == "0" ] && [[ $debug_bazel_flags == *"PYTHON_DISABLE=1"* ]]; then true ; else exit 0 ; fi ; if ! [[ $debug_bazel_flags == *"PYTHON_DISABLE=1"* ]]; then true ; else exit 0 ; fi ; cmake -DCMAKE_BUILD_TYPE=$CMAKE_BUILD_TYPE -DENABLE_PYTHON=ON -DENABLE_SAMPLES=0 -DNGRAPH_USE_CXX_ABI=1 -DCMAKE_CXX_FLAGS=" -D_GLIBCXX_USE_CXX11_ABI=1 -Wno-error=parentheses " ..
RUN if [ "$ov_use_binary" == "0" ] ; then true ; else exit 0 ; fi ; cmake -DCMAKE_BUILD_TYPE="$CMAKE_BUILD_TYPE" -DENABLE_SAMPLES=0 -DNGRAPH_USE_CXX_ABI=1 -DCMAKE_CXX_FLAGS=" -D_GLIBCXX_USE_CXX11_ABI=1 -Wno-error=parentheses " ..
RUN if [ "$ov_use_binary" == "0" ] ; then true ; else exit 0 ; fi ; cmake -DCMAKE_BUILD_TYPE="$CMAKE_BUILD_TYPE" -DCMAKE_VERBOSE_MAKEFILE=ON -DENABLE_SAMPLES=0 -DNGRAPH_USE_CXX_ABI=1 -DCMAKE_CXX_FLAGS=" -D_GLIBCXX_USE_CXX11_ABI=1 -Wno-error=parentheses " ..
RUN if [ "$ov_use_binary" == "0" ] ; then true ; else exit 0 ; fi ; make --jobs=$JOBS
RUN if [ "$ov_use_binary" == "0" ] ; then true ; else exit 0 ; fi ; make install
RUN if [ "$ov_use_binary" == "0" ] ; then true ; else exit 0 ; fi ; \
Expand All @@ -178,7 +177,7 @@ RUN if [ "$ov_use_binary" == "0" ] ; then true ; else exit 0 ; fi ; \
ln -s /openvino/inference-engine/temp/opencv_*/opencv /opt/intel/openvino/extras && \
ln -s /usr/local/runtime /opt/intel/openvino && \
ln -s /openvino/scripts/setupvars/setupvars.sh /opt/intel/openvino/setupvars.sh && \
ln -s /opt/intel/openvino /opt/intel/openvino_2023
ln -s /opt/intel/openvino /opt/intel/openvino_2024
RUN if [ "$ov_use_binary" == "0" ]; then true ; else exit 0 ; fi ; if ! [[ $debug_bazel_flags == *"PYTHON_DISABLE=1"* ]]; then true ; else exit 0 ; fi ; mkdir -p /opt/intel/openvino && cp -r /openvino/bin/intel64/Release/python /opt/intel/openvino/
RUN if [ "$ov_use_binary" == "0" ]; then true ; else exit 0 ; fi ; if ! [[ $debug_bazel_flags == *"PYTHON_DISABLE=1"* ]]; then true ; else exit 0 ; fi ; cp -r /openvino/tools/ovc/* /opt/intel/openvino/python
################## END OF OPENVINO SOURCE BUILD ######################
Expand All @@ -191,20 +190,23 @@ RUN if [ "$ov_use_binary" = "1" ] && [ "$DLDT_PACKAGE_URL" != "" ]; then true ;
mkdir /opt/intel && \
tar -zxf l_openvino_toolkit*.tgz -C /opt/intel && \
ln -s /opt/intel/l_openvino_toolkit* /opt/intel/openvino && \
ln -s /opt/intel/l_openvino_toolkit* /opt/intel/openvino_2023
ln -s /opt/intel/l_openvino_toolkit* /opt/intel/openvino_2024

# install sample apps including benchmark_app
RUN yum install -y http://mirror.centos.org/centos/8-stream/PowerTools/x86_64/os/Packages/gflags-devel-2.2.2-1.el8.x86_64.rpm \
http://mirror.centos.org/centos/8-stream/PowerTools/x86_64/os/Packages/gflags-2.2.2-1.el8.x86_64.rpm \
RUN yum install -y http://vault.centos.org/centos/8-stream/PowerTools/x86_64/os/Packages/gflags-devel-2.2.2-1.el8.x86_64.rpm \
http://vault.centos.org/centos/8-stream/PowerTools/x86_64/os/Packages/gflags-2.2.2-1.el8.x86_64.rpm \
https://dl.fedoraproject.org/pub/epel/8/Everything/x86_64/Packages/j/json-devel-3.6.1-2.el8.x86_64.rpm && \
rm -rf /var/cache/yum
RUN if [ -f /opt/intel/openvino/samples/cpp/build_samples.sh ]; then /opt/intel/openvino/samples/cpp/build_samples.sh ; fi
#################### END OF OPENVINO BINARY INSTALL

# SENTENCEPIECE_EXTENSION
# OpenVINO Tokenizers extension
ENV OpenVINO_DIR=/opt/intel/openvino/runtime/cmake
WORKDIR /openvino_contrib/modules/custom_operations/user_ie_extensions
RUN if [ "$sentencepiece" == "1" ] ; then true ; else exit 0 ; fi ; cmake .. -DCMAKE_BUILD_TYPE=Release -DCUSTOM_OPERATIONS="tokenizer" && cmake --build . --parallel $JOBS
ARG ov_tokenizers_branch=master
# hadolint ignore=DL3003
RUN if [[ "$tokenizers" == "1" ]] ; then true ; else exit 0 ; fi ; git clone https://github.com/openvinotoolkit/openvino_tokenizers.git /openvino_tokenizers && cd /openvino_tokenizers && git checkout $ov_tokenizers_branch && git submodule update --init --recursive
WORKDIR /openvino_tokenizers/build
RUN if [ "$tokenizers" == "1" ] ; then true ; else exit 0 ; fi ; cmake .. -DCMAKE_BUILD_TYPE=Release && cmake --build . --parallel $JOBS ; cp /openvino_tokenizers/build/src/lib*.so /opt/intel/openvino/runtime/lib/intel64/

# NVIDIA
ENV OPENVINO_BUILD_PATH=/cuda_plugin_build
Expand Down Expand Up @@ -277,27 +279,18 @@ COPY demos/benchmark/cpp/synthetic_client_async_benchmark.cpp demos/image_classi

COPY src/ /ovms/src/

# Compile tokenizer custom node
WORKDIR /ovms/src/custom_nodes/tokenizer/build
RUN cp /ovms/src/custom_node_interface.h /ovms/src/custom_nodes/tokenizer/ && \
cp -r /ovms/src/custom_nodes/common /ovms/src/custom_nodes/tokenizer/ && \
cmake -DWITH_TESTS=1 .. && \
make -j${JOBS} && \
./test/detokenization_test && \
./test/tokenization_test

# Sample CPU Extension
WORKDIR /ovms/src/example/SampleCpuExtension/
RUN make

RUN if ! [[ $debug_bazel_flags == *"PYTHON_DISABLE=1"* ]]; then true ; else exit 0 ; fi ; \
mkdir -p /opt/intel/openvino/python/openvino-2024.0.dist-info && \
echo $'Metadata-Version: 1.0\nName: openvino\nVersion: 2024.0' > /opt/intel/openvino/python/openvino-2024.0.dist-info/METADATA
mkdir -p /opt/intel/openvino/python/openvino-2024.2.dist-info && \
echo $'Metadata-Version: 1.0\nName: openvino\nVersion: 2024.2' > /opt/intel/openvino/python/openvino-2024.2.dist-info/METADATA
ENV PYTHONPATH=/opt/intel/openvino/python:/ovms/bazel-bin/src/python/binding

WORKDIR /ovms

ARG PROJECT_VERSION="2024.0"
ARG PROJECT_VERSION="2024.2"
ARG PROJECT_NAME="OpenVINO Model Server"
LABEL description=${PROJECT_NAME}
ARG minitrace_flags
Expand All @@ -317,15 +310,15 @@ RUN bash -c "sed -i -e 's|REPLACE_PROJECT_NAME|${PROJECT_NAME}|g' /ovms/src/vers
bash -c "sed -i -e 's|REPLACE_BAZEL_BUILD_FLAGS|${debug_bazel_flags}${minitrace_flags}|g' /ovms/src/version.hpp"

# C api shared library
ARG CAPI_FLAGS=--strip=always --define MEDIAPIPE_DISABLE=1 --cxxopt=-DMEDIAPIPE_DISABLE=1 --define PYTHON_DISABLE=1 --cxxopt=-DPYTHON_DISABLE=1
ARG CAPI_FLAGS="--strip=always --define MEDIAPIPE_DISABLE=1 --define PYTHON_DISABLE=1 --//:distro=redhat"
RUN bazel build --jobs $JOBS ${CAPI_FLAGS} //src:ovms_shared

# C api app with bazel
# hadolint ignore=DL3059
RUN bazel build --jobs $JOBS ${CAPI_FLAGS} //src:capi_cpp_example

# C-API benchmark app
RUN bazel build --jobs=$JOBS ${CAPI_FLAGS} //src:capi_benchmark && ./bazel-bin/src/capi_benchmark --niter 2 --threads_per_ireq 2 --nireq 1 --servable_name "dummy" --inputs_names "b" --shape "b[1,10]"
RUN bazel build --jobs=$JOBS ${CAPI_FLAGS} //src:capi_benchmark && ./bazel-bin/src/capi_benchmark --niter 2 --nstreams 1 --servable_name "dummy"

# Custom Nodes
RUN bazel build --jobs=$JOBS ${debug_bazel_flags} //src:release_custom_nodes
Expand Down Expand Up @@ -382,7 +375,7 @@ RUN if [ -f /ovms_release/lib/libovms_shared.so ] ; then mv /ovms_release/lib/li
FROM $RELEASE_BASE_IMAGE as release
LABEL "name"="OVMS"
LABEL "vendor"="Intel Corporation"
LABEL "version"="2024.0"
LABEL "version"="2024.2"
LABEL "release"="2024"
LABEL "summary"="OpenVINO(TM) Model Server"
LABEL "description"="OpenVINO(TM) Model Server is a solution for serving AI models"
Expand All @@ -396,7 +389,7 @@ LABEL supported-devices="CPU=1 GPU=${GPU} NVIDIA=${NVIDIA}"
ARG RELEASE_BASE_IMAGE
LABEL base-image=${RELEASE_BASE_IMAGE}

ENV PYTHONPATH=/ovms/lib/python
ENV PYTHONPATH=/ovms/lib/python:/ovms/python_deps

WORKDIR /
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
Expand Down Expand Up @@ -461,9 +454,7 @@ RUN if [ -f /usr/bin/dnf ] ; then export DNF_TOOL=dnf ; else export DNF_TOOL=mic
echo `rpm -qa | grep intel-opencl` ; \
fi ; \
if [ "$INSTALL_RPMS_FROM_URL" == "" ] ; then \
rpm -ivh http://mirror.centos.org/centos/8-stream/BaseOS/x86_64/os/Packages/numactl-libs-2.0.12-11.el8.x86_64.rpm; \
rpm -ivh http://mirror.centos.org/centos/8-stream/BaseOS/x86_64/os/Packages/numactl-2.0.12-11.el8.x86_64.rpm; \
rpm -ivh http://mirror.centos.org/centos/8-stream/AppStream/x86_64/os/Packages/ocl-icd-2.2.12-1.el8.x86_64.rpm; \
rpm -ivh http://vault.centos.org/centos/8-stream/AppStream/x86_64/os/Packages/ocl-icd-2.2.12-1.el8.x86_64.rpm; \
else \
$DNF_TOOL install -y tar gzip; \
mkdir /tmp_ovms ; \
Expand All @@ -479,8 +470,8 @@ RUN if [ -f /usr/bin/dnf ] ; then export DNF_TOOL=dnf ; else export DNF_TOOL=mic
# For image with Python enabled install Python library
if ! [[ $debug_bazel_flags == *"PYTHON_DISABLE=1"* ]]; then \
$DNF_TOOL install -y python39-libs --setopt=install_weak_deps=0; \
mkdir -p /ovms/lib/openvino-2024.0.dist-info && \
echo $'Metadata-Version: 1.0\nName: openvino\nVersion: 2024.0' > /ovms/lib/openvino-2024.0.dist-info/METADATA ; \
mkdir -p /ovms/lib/openvino-2024.2.dist-info && \
echo $'Metadata-Version: 1.0\nName: openvino\nVersion: 2024.2' > /ovms/lib/openvino-2024.2.dist-info/METADATA ; \
fi ; \
$DNF_TOOL install -y shadow-utils; \
cp -v /etc/ssl/certs/ca-bundle.crt /etc/ssl/certs/ca-certificates.crt ; \
Expand All @@ -497,6 +488,8 @@ RUN if [ "$NVIDIA" == "1" ]; then true ; else exit 0 ; fi ; echo "installing cud
ENV LD_LIBRARY_PATH=/ovms/lib

COPY --from=pkg /ovms_release /ovms
COPY --from=build /usr/local/lib/python3.*/site-packages /ovms/python_deps
COPY --from=build /usr/local/lib64/python3.*/site-packages /ovms/python_deps
COPY --from=pkg /licenses /licenses
USER ovms
ENTRYPOINT ["/ovms/bin/ovms"]
Loading