Skip to content

Commit 19e2000

Browse files
committed
workbench + pipelines + models update
- update of Python libraries in workbenches and pipelines - change Flan-T5 for Qwen-2.5-0.5B quantized on vLLM - update pipelines code - rebuild workbench and pipeline images
1 parent c3994a2 commit 19e2000

32 files changed

+4457
-3992
lines changed

bootstrap/ic-rhoai-configuration/workbench-imagestream.yaml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -22,17 +22,17 @@ spec:
2222
lookupPolicy:
2323
local: true
2424
tags:
25-
- name: "1.2"
25+
- name: "3.0.4"
2626
annotations:
2727
opendatahub.io/notebook-python-dependencies: >-
28-
[{"name":"PyTorch","version":"2.2.2"},{"name":"Langchain","version":"0.3.1"},{"name":"Ultralytics","version":"8.2.100"},]
28+
[{"name":"PyTorch","version":"2.6.0"},{"name":"Langchain","version":"0.3.25"},{"name":"Ultralytics","version":"8.3.151"},]
2929
opendatahub.io/notebook-software: >-
30-
[{"name":"Python","version":"v3.9"}]
31-
openshift.io/imported-from: quay.io/rh-aiservices-bu/rhoai-lab-parasol-insurance
30+
[{"name":"Python","version":"v3.11"}]
31+
openshift.io/imported-from: quay.io/rh-aiservices-bu/rhoai-lab-insurance-claim-workbench
3232
from:
3333
kind: DockerImage
3434
name: >-
35-
quay.io/rh-aiservices-bu/rhoai-lab-parasol-insurance:1.2
35+
quay.io/rh-aiservices-bu/rhoai-lab-insurance-claim-workbench:3.0.4
3636
importPolicy:
3737
importMode: Legacy
3838
referencePolicy:
@@ -61,15 +61,15 @@ spec:
6161
lookupPolicy:
6262
local: true
6363
tags:
64-
- name: "2024.1"
64+
- name: "2025.1"
6565
annotations:
66-
opendatahub.io/notebook-python-dependencies: '[{"name":"code-server","version":"4.22"}]'
67-
opendatahub.io/notebook-software: '[{"name":"Python","version":"v3.9"}]'
66+
opendatahub.io/notebook-python-dependencies: '[{"name":"code-server","version":"4.98"}]'
67+
opendatahub.io/notebook-software: '[{"name":"Python","version":"v3.11"}]'
6868
openshift.io/imported-from: quay.io/modh/codeserver
6969
from:
7070
kind: DockerImage
7171
name: >-
72-
quay.io/modh/codeserver@sha256:4b6b563e75f9e642bac9f21c4a2d8d72d77923fc391dd5dc985d4489c7258ef5
72+
quay.io/modh/codeserver@sha256:38460e3b5536d903add40869714512e2c3a993c3dfe4a8010688e4e3b79bf090
7373
importPolicy:
7474
importMode: Legacy
7575
referencePolicy:
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
FROM quay.io/redhat-ai-services/huggingface-modelcar-builder:latest as base
2+
3+
# Set the HF_TOKEN with --build-arg HF_TOKEN="hf_..." at build time
4+
ARG HF_TOKEN
5+
6+
# The model repo to download
7+
ENV MODEL_REPO="RedHatAI/Qwen2.5-0.5B-quantized.w8a8"
8+
9+
# Download the necessary model files
10+
RUN python3 download_model.py --model-repo ${MODEL_REPO}
11+
12+
# Final image containing only the essential model files
13+
FROM registry.access.redhat.com/ubi9/ubi-micro:9.5
14+
15+
COPY --from=base /models /models
16+
17+
USER 1001
Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
apiVersion: serving.kserve.io/v1beta1
2+
kind: InferenceService
3+
metadata:
4+
annotations:
5+
openshift.io/display-name: qwen
6+
serving.knative.openshift.io/enablePassthrough: 'true'
7+
sidecar.istio.io/inject: 'true'
8+
sidecar.istio.io/rewriteAppHTTPProbers: 'true'
9+
argocd.argoproj.io/sync-wave: "2"
10+
serving.kserve.io/deploymentMode: RawDeployment
11+
argocd.argoproj.io/compare-options: IgnoreExtraneous
12+
argocd.argoproj.io/sync-options: Prune=false
13+
name: qwen
14+
namespace: ic-shared-llm
15+
labels:
16+
opendatahub.io/dashboard: 'true'
17+
spec:
18+
predictor:
19+
maxReplicas: 2
20+
minReplicas: 2
21+
model:
22+
args:
23+
- '--port=8080'
24+
- '--model=/mnt/models'
25+
- '--served-model-name=qwen2.5'
26+
- '--max-model-len=2048'
27+
- '--tensor-parallel-size=1'
28+
modelFormat:
29+
name: vLLM
30+
name: ''
31+
resources:
32+
limits:
33+
cpu: '4'
34+
memory: 6Gi
35+
requests:
36+
cpu: '4'
37+
memory: 5Gi
38+
runtime: vllm-cpu
39+
storageUri: oci://quay.io/rh-aiservices-bu/qwen2.5-0.5b-quantized.w8a8-modelcar:0.0.1
40+
tolerations:
41+
- effect: NoSchedule
42+
key: nvidia.com/gpu
43+
operator: Exists

bootstrap/ic-shared-llm/kustomization.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,10 @@ resources:
1313
- namespace.yaml
1414
# wave 1
1515
- serving-runtime-vllm-granite-modelcar.yaml
16+
- serving-runtime-vllm-cpu-qwen-modelcar.yaml
1617
# wave 2
1718
- inference-service-granite-modelcar.yaml
19+
- inference-service-qwen-modelcar.yaml
1820
- pvc-hftgi.yaml
1921
- deployment-hftgi.yaml
2022
- service-hftgi.yaml
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
apiVersion: serving.kserve.io/v1alpha1
2+
kind: ServingRuntime
3+
labels:
4+
opendatahub.io/dashboard: "true"
5+
metadata:
6+
annotations:
7+
openshift.io/display-name: vLLM-CPU
8+
opendatahub.io/apiProtocol: REST
9+
opendatahub.io/recommended-accelerators: '[]'
10+
opendatahub.io/template-display-name: vLLM ServingRuntime for KServe
11+
opendatahub.io/template-name: vllm-runtime-cpu
12+
argocd.argoproj.io/sync-wave: "1"
13+
name: vllm-cpu
14+
spec:
15+
builtInAdapter:
16+
modelLoadingTimeoutMillis: 90000
17+
containers:
18+
- command:
19+
- python
20+
- '-m'
21+
- vllm.entrypoints.openai.api_server
22+
image: public.ecr.aws/q9t5s3a7/vllm-cpu-release-repo:v0.9.1
23+
env:
24+
- name: VLLM_CPU_KVCACHE_SPACE
25+
value: "2"
26+
- name: OMP_NUM_THREADS
27+
value: "1"
28+
- name: VLLM_CPU_OMP_THREADS_BIND
29+
value: "all"
30+
name: kserve-container
31+
ports:
32+
- containerPort: 8080
33+
name: http1
34+
protocol: TCP
35+
multiModel: false
36+
supportedModelFormats:
37+
- autoSelect: true
38+
name: vLLM

bootstrap/ic-user-projects/images-puller.yaml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ spec:
1919
spec:
2020
containers:
2121
- name: ic-workbench
22-
image: image-registry.openshift-image-registry.svc:5000/redhat-ods-applications/ic-workbench:1.2
22+
image: image-registry.openshift-image-registry.svc:5000/redhat-ods-applications/ic-workbench:3.0.4
2323
command: ["tail"]
2424
args: ["-f", "/dev/null"]
2525
resources:
@@ -29,7 +29,7 @@ spec:
2929
cpu: 10m
3030
memory: 10Mi
3131
- name: ic-code-server
32-
image: quay.io/modh/codeserver@sha256:4b6b563e75f9e642bac9f21c4a2d8d72d77923fc391dd5dc985d4489c7258ef5
32+
image: image-registry.openshift-image-registry.svc:5000/redhat-ods-applications/ic-code-server:2025.1
3333
command: ["tail"]
3434
args: ["-f", "/dev/null"]
3535
resources:
@@ -57,7 +57,7 @@ spec:
5757
spec:
5858
containers:
5959
- name: oauth-proxy
60-
image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:4bef31eb993feb6f1096b51b4876c65a6fb1f4401fee97fa4f4542b6b7c9bc46
60+
image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:8507daed246d4d367704f7d7193233724acf1072572e1226ca063c066b858ecf
6161
command: ["tail"]
6262
args: ["-f", "/dev/null"]
6363
resources:
@@ -67,7 +67,7 @@ spec:
6767
cpu: 10m
6868
memory: 10Mi
6969
- name: model-server
70-
image: quay.io/modh/openvino_model_server@sha256:9086c1ba1ba30d358194c534f0563923aab02d03954e43e9f3647136b44a5daf
70+
image: quay.io/modh/openvino_model_server@sha256:53b7fcf95de9b81e4c8652d0bf4e84e22d5b696827a5d951d863420c68b9cfe8
7171
command: ["tail"]
7272
args: ["-f", "/dev/null"]
7373
resources:
@@ -77,7 +77,7 @@ spec:
7777
cpu: 10m
7878
memory: 10Mi
7979
- name: runtime-adapter
80-
image: registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:7d085942e4da73c2ff4885c62f10b904dc70fd08e819e62f925eb1b4ddfa1554
80+
image: registry.redhat.io/rhoai/odh-modelmesh-runtime-adapter-rhel8@sha256:12d75776a60c119d938dec28625f574f5d55a2616c49bb8773e5b87ba3141280
8181
command: ["tail"]
8282
args: ["-f", "/dev/null"]
8383
resources:
@@ -87,7 +87,7 @@ spec:
8787
cpu: 10m
8888
memory: 10Mi
8989
- name: modelmesh
90-
image: registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:bf25fce160dd7b8cce11e68a501006e4fa81a7858645038cdefdbba03df7ecdb
90+
image: registry.redhat.io/rhoai/odh-modelmesh-rhel8@sha256:43d98c254ad76c2eefc48a56e84e4083281c72e8b9ae38e49dfb6d5751bdb895
9191
command: ["tail"]
9292
args: ["-f", "/dev/null"]
9393
resources:
@@ -115,7 +115,7 @@ spec:
115115
spec:
116116
containers:
117117
- name: mariadb
118-
image: registry.redhat.io/rhel8/mariadb-103@sha256:3d30992e60774f887c4e7959c81b0c41b0d82d042250b3b56f05ab67fd4cdee1
118+
image: registry.redhat.io/rhel8/mariadb-103@sha256:f0ee0d27bb784e289f7d88cc8ee0e085ca70e88a5d126562105542f259a1ac01
119119
command: ["tail"]
120120
args: ["-f", "/dev/null"]
121121
resources:
@@ -125,7 +125,7 @@ spec:
125125
cpu: 10m
126126
memory: 10Mi
127127
- name: ds-pipeline-scheduledworkflow-pipelines-definition
128-
image: registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:c2bd493e9345eccd124bbe0440e45cce8cf57588827d8eb9533f8bbadaa3ebbe
128+
image: registry.redhat.io/rhoai/odh-ml-pipelines-scheduledworkflow-v2-rhel8@sha256:99ca5a981184f0dd3f94105172b20494328c5c7a762fb027905e108710b7b5d4
129129
command: ["tail"]
130130
args: ["-f", "/dev/null"]
131131
resources:
@@ -135,7 +135,7 @@ spec:
135135
cpu: 10m
136136
memory: 10Mi
137137
- name: ds-pipeline-pipelines-definition
138-
image: registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:5d6354e65106460ab9285b42124faf288298387a8b16317565bd591f009c39a6
138+
image: registry.redhat.io/rhoai/odh-ml-pipelines-api-server-v2-rhel8@sha256:da649491f5112763d9f563d64ca3455ed5e4309b15adab0886ae16e0bb367b0c
139139
command: ["tail"]
140140
args: ["-f", "/dev/null"]
141141
resources:
@@ -145,7 +145,7 @@ spec:
145145
cpu: 10m
146146
memory: 10Mi
147147
- name: oauth-proxy
148-
image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:ab112105ac37352a2a4916a39d6736f5db6ab4c29bad4467de8d613e80e9bb33
148+
image: registry.redhat.io/openshift4/ose-oauth-proxy@sha256:8ce44de8c683f198bf24ba36cd17e89708153d11f5b42c0a27e77f8fdb233551
149149
command: ["tail"]
150150
args: ["-f", "/dev/null"]
151151
resources:
@@ -155,7 +155,7 @@ spec:
155155
cpu: 10m
156156
memory: 10Mi
157157
- name: ds-pipeline-persistenceagent-pipelines-definition
158-
image: registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:b90b63e3c5de629eb89798d818218104158a5401220397ddbc7072a390e46bdd
158+
image: registry.redhat.io/rhoai/odh-ml-pipelines-persistenceagent-v2-rhel8@sha256:4e0c858d68f925a307ee53498aa6019563254c5b27f5d7635debc0195db2c5bd
159159
command: ["tail"]
160160
args: ["-f", "/dev/null"]
161161
resources:
@@ -165,7 +165,7 @@ spec:
165165
cpu: 10m
166166
memory: 10Mi
167167
- name: ds-pipeline-runtime-image-confidence
168-
image: quay.io/rh-aiservices-bu/rhoai-lab-insurance-claim-confidence-pipeline:1.2
168+
image: quay.io/rh-aiservices-bu/rhoai-lab-insurance-claim-confidence-pipeline:2.0
169169
command: ["tail"]
170170
args: ["-f", "/dev/null"]
171171
resources:

bootstrap/workbench-image/Containerfile

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
FROM quay.io/modh/odh-generic-data-science-notebook:v2-2024a-20240829
1+
FROM quay.io/modh/odh-generic-data-science-notebook:v3-20250320-3fa2d83
2+
23

34
##########################
45
# Deploy Python packages #
@@ -17,6 +18,11 @@ RUN echo "Installing packages" && \
1718
# Install Python packages \
1819
pip install --no-cache-dir --no-dependencies -r requirements.txt
1920

21+
# Copy pycodestyle configuration
22+
COPY --chown=1001:0 pycodestyle /opt/app-root/etc/pycodestyle
23+
# Copy the custom start script
24+
COPY --chown=1001:0 start-notebook.sh /opt/app-root/bin/start-notebook.sh
25+
2026
WORKDIR /opt/app-root/src
2127

2228
ENTRYPOINT ["start-notebook.sh"]

0 commit comments

Comments
 (0)