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

✨ Helm Chart for VideoQnA Application #497

Open
wants to merge 33 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
131861f
Optimize path and link validity check. (#462)
ZePan110 Oct 9, 2024
7cd488a
🚨 linter and pre-commit check fixes
krish918 Oct 16, 2024
1f121e9
✅ Added helm tests for all services | linting fixes
krish918 Oct 16, 2024
418edb7
✏ typo fix
krish918 Oct 17, 2024
24b4e3f
🛂 running vdms as root to fix errors
krish918 Oct 22, 2024
880e406
✅ updated tests for vdms-vector-db | typo fix
krish918 Oct 22, 2024
0110b85
⚡Updated and fixed several tests, values during integration
krish918 Oct 24, 2024
56afc63
🔥 removed hardcoded extraArgs for some comps
krish918 Oct 24, 2024
1a5f762
🔥 removed hardcoded extraArgs for some comps
krish918 Oct 24, 2024
5fbfe85
Merge branch 'main' into helm/videoqna
krish918 Oct 24, 2024
3bb015d
🩹 fixes for request going to nginx instead of videoqna
krish918 Oct 27, 2024
a29691b
🔨 passed nginx proxy endpoints to UI using templates
krish918 Oct 28, 2024
e8f58bb
🔨 passed nginx proxy endpoints to UI using templates
krish918 Oct 28, 2024
a8cbdbf
💚 added symbolic links to values files for CI
krish918 Oct 28, 2024
63bf7f6
💚 added symbolic links to values files for CI
krish918 Oct 28, 2024
cf4360f
📝 Added readme files for videoqna charts and subcharts
krish918 Oct 28, 2024
2d02cf9
💚 Added missing symbolic links for some values files
krish918 Oct 28, 2024
d03a52f
Merge branch 'main' into helm/videoqna
krish918 Oct 29, 2024
1e5eea1
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Oct 29, 2024
6e832ea
💚 added variant prefix to all videoqna values file
krish918 Oct 29, 2024
fc17e30
💚 Added several CI fixes
krish918 Oct 30, 2024
5ee3dc0
updated videoqna-ui vars and configmap
krish918 Oct 30, 2024
ea180a5
Merge branch 'main' into helm/videoqna
krish918 Oct 30, 2024
ef695c8
🩹 Fixes in reranking values for enabling data-prep
krish918 Oct 31, 2024
7be67a1
🩹 fixes in chart.yaml | updates in UI configmap
krish918 Nov 1, 2024
3cf4f29
updated videoqna-ui values filename
krish918 Nov 1, 2024
0e37189
Merge branch 'main' into helm/videoqna
krish918 Nov 1, 2024
d13bdcb
🔥 Updates based on lvm-uservice from visualqna
krish918 Nov 4, 2024
c932c31
Merge branch 'main' into helm/videoqna
krish918 Nov 4, 2024
a993f1a
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Nov 4, 2024
773922e
🩹 fix videoqna new dependency values for lvm-uservice
krish918 Nov 4, 2024
4bd8b04
lvm-serving rename | replaced cachedir with modeldir
krish918 Nov 6, 2024
91f96ec
reverted to INDEX_NAME key
krish918 Nov 6, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
🩹 fixes in chart.yaml | updates in UI configmap
Signed-off-by: Krishna Murti <krishna.murti@intel.com>
  • Loading branch information
krish918 committed Nov 1, 2024
commit 7be67a1393662d219bd98a9ed7209cedf6f416ed
2 changes: 1 addition & 1 deletion helm-charts/common/ui/templates/configmap.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ data:
VITE_FAQ_GEN_URL: {{ .Values.BACKEND_SERVICE_ENDPOINT | quote }}
{{- else if contains "videoqna-ui" .Values.image.repository }}
BACKEND_SERVICE_ENDPOINT: {{ tpl .Values.BACKEND_SERVICE_ENDPOINT . | quote }}
BACKEND_HEALTH_CHECK_ENDPOINT: {{ tpl .Values.BACKEND_HEALTH_CHECK_ENDPOINT . | quote }}
BACKEND_HEALTH_CHECK_ENDPOINT: {{ tpl .Values.BACKEND_SERVICE_ENDPOINT . | replace "videoqna" "health_check" | quote }}
{{- else }}
{{- fail "Unsupported ui image: " .Values.image.repository }}
{{- end }}
2 changes: 0 additions & 2 deletions helm-charts/videoqna/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@ apiVersion: v2
name: videoqna
description: A Helm chart to deploy VideoQnA Application Suite
type: application
version: 1.0.0
appVersion: "1.0"
dependencies:
- name: data-prep
version: 1.0.0
Expand Down
1 change: 0 additions & 1 deletion helm-charts/videoqna/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,6 @@ videoqna-ui:

# Following template value will be resolved in videoqna-ui ConfigMap
BACKEND_SERVICE_ENDPOINT: http://{{ .Release.Name | trunc 57 | trimSuffix "-" }}-nginx/v1/videoqna
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be the "/v1/videoqna", just what we put here for all other UIs, e.g. https://github.com/opea-project/GenAIInfra/blob/main/helm-charts/codegen/values.yaml#L50, and let the nginx reverse proxy to prepend the the scheme and hostname part. I'll let @Ruoyu-y to chime in here because she knows more about all the nginx settings.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Because the UI for videoqna is based on Streamlit, which seems to be running code in backend first before sending the results to the browser. The requests library being used in the Python backend code requires the complete URL along with scheme and host, otherwise fails (unlike frontend js frameworks being used in other UIs, which can take relative URLs without scheme and host). I found, I could resolve this by using the service-name for nginx as host, as all pods can communicate with each other with service name. Please let me know, if there are other better ways to do this.

Copy link
Collaborator

@lianhao lianhao Nov 1, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ok, seems the videoqna-ui is designed to run the code which connects to videoqna mega gateway service in the ui container itself. In this case, we don't need the nginx part at all. We can set the BACKEND_SERVICE_ENDPOINT to the corresponding k8s svc url of the viedoqna mega gateway service, and remove all the nginx related part, i.e.

BACKEND_SERVICE_ENDPOINT: http://{{ include "videoqna.fullname" . }}:{{ .Values.service.port }}/v1/videoqna

we can change the ui service type to NodePort, and ask the user to directly connect to that NodePort in web browser

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

May be, nginx would be helpful for future UI updates, in case we have UIs in react or svelte. Please let me know if that's not the case and I should proceed with removing nginx.

Also, UI being a sub-chart for videoqna mega-application, doesn't seem to have access to values and templates defined in the parent chart i.e. videoqna. So, I am finding it difficult to access videoqna.fullname and other videoqna chart value in the UI sub-chart. However, I can access the videoqna svc name the same way I am accessing nginx svc name right now. Please help me if I am missing something here.

BACKEND_HEALTH_CHECK_ENDPOINT: http://{{ .Release.Name | trunc 57 | trimSuffix "-" }}-nginx/v1/health_check

containerPort: 5173
service:
Expand Down
Loading