how to set a VECTOR_DB in value.yaml #89

Closed
opened 2026-02-15 19:16:10 -05:00 by yindo · 2 comments
Owner

Originally created by @bulolo on GitHub (Jun 21, 2025).

es version:

{
"name": "es0",
"cluster_name": "es-cluster",
"cluster_uuid": "EePmcg7mRgygE5chieKrFQ",
"version": {
"number": "8.14.3",
"build_flavor": "default",
"build_type": "docker",
"build_hash": "d55f984299e0e88dee72ebd8255f7ff130859ad0",
"build_date": "2024-07-07T22:04:49.882652950Z",
"build_snapshot": false,
"lucene_version": "9.10.0",
"minimum_wire_compatibility_version": "7.17.0",
"minimum_index_compatibility_version": "7.0.0"
},
"tagline": "You Know, for Search"
}

https://docs.openwebui.com/getting-started/env-configuration#vector-database

extraEnvVars or commonEnvVars ?

i didnot find any rag setting in value.yaml

i set in extraEnvVars

extraEnvVars:
  - name: VECTOR_DB
    value: "elasticsearch"
  - name: ELASTICSEARCH_URL
    value: "http://192.168.3.163:9200"
  - name: ELASTICSEARCH_USERNAME
    value: "elastic"
  - name: ELASTICSEARCH_PASSWORD
    value: "XXXXX"

but with error when upload a file

           │    │      └ <elasticsearch._sync.client.indices.IndicesClient object at 0x7f10b71d01d0>
           │    └ <Elasticsearch(['http://192.168.3.163:9200'])>
           └ <open_webui.retrieval.vector.dbs.elasticsearch.ElasticsearchClient object at 0x7f10b71a0f10>

  File "/usr/local/lib/python3.11/site-packages/elasticsearch/_sync/client/utils.py", line 415, in wrapped
    return api(*args, **kwargs)
           │    │       └ {'index': 'open_webui_collections_d1024'}
           │    └ (<elasticsearch._sync.client.indices.IndicesClient object at 0x7f10b71d01d0>,)
           └ <function IndicesClient.exists at 0x7f10b22e8a40>
  File "/usr/local/lib/python3.11/site-packages/elasticsearch/_sync/client/indices.py", line 1523, in exists
    return self.perform_request(  # type: ignore[return-value]
           │    └ <function NamespacedClient.perform_request at 0x7f10b6e17560>
           └ <elasticsearch._sync.client.indices.IndicesClient object at 0x7f10b71d01d0>
  File "/usr/local/lib/python3.11/site-packages/elasticsearch/_sync/client/_base.py", line 422, in perform_request
    return self._client.perform_request(
           │    │       └ <function BaseClient.perform_request at 0x7f10b6e17380>
           │    └ <Elasticsearch(['http://192.168.3.163:9200'])>
           └ <elasticsearch._sync.client.indices.IndicesClient object at 0x7f10b71d01d0>
  File "/usr/local/lib/python3.11/site-packages/elasticsearch/_sync/client/_base.py", line 271, in perform_request
    response = self._perform_request(
               │    └ <function BaseClient._perform_request at 0x7f10b6e17420>
               └ <Elasticsearch(['http://192.168.3.163:9200'])>
  File "/usr/local/lib/python3.11/site-packages/elasticsearch/_sync/client/_base.py", line 351, in _perform_request
    raise HTTP_EXCEPTIONS.get(meta.status, ApiError)(
          │               │   │    │       └ <class 'elasticsearch.ApiError'>
          │               │   │    └ 400
          │               │   └ ApiResponseMeta(status=400, http_version='1.1', headers={'X-elastic-product': 'Elasticsearch', 'content-type': 'application/j...
          │               └ <method 'get' of 'dict' objects>
          └ {400: <class 'elasticsearch.BadRequestError'>, 401: <class 'elasticsearch.AuthenticationException'>, 403: <class 'elasticsear...

elasticsearch.BadRequestError: BadRequestError(400, 'None')
Originally created by @bulolo on GitHub (Jun 21, 2025). es version: ``` { "name": "es0", "cluster_name": "es-cluster", "cluster_uuid": "EePmcg7mRgygE5chieKrFQ", "version": { "number": "8.14.3", "build_flavor": "default", "build_type": "docker", "build_hash": "d55f984299e0e88dee72ebd8255f7ff130859ad0", "build_date": "2024-07-07T22:04:49.882652950Z", "build_snapshot": false, "lucene_version": "9.10.0", "minimum_wire_compatibility_version": "7.17.0", "minimum_index_compatibility_version": "7.0.0" }, "tagline": "You Know, for Search" } ``` https://docs.openwebui.com/getting-started/env-configuration#vector-database extraEnvVars or commonEnvVars ? i didnot find any rag setting in value.yaml i set in extraEnvVars ``` extraEnvVars: - name: VECTOR_DB value: "elasticsearch" - name: ELASTICSEARCH_URL value: "http://192.168.3.163:9200" - name: ELASTICSEARCH_USERNAME value: "elastic" - name: ELASTICSEARCH_PASSWORD value: "XXXXX" ``` but with error when upload a file ``` │ │ └ <elasticsearch._sync.client.indices.IndicesClient object at 0x7f10b71d01d0> │ └ <Elasticsearch(['http://192.168.3.163:9200'])> └ <open_webui.retrieval.vector.dbs.elasticsearch.ElasticsearchClient object at 0x7f10b71a0f10> File "/usr/local/lib/python3.11/site-packages/elasticsearch/_sync/client/utils.py", line 415, in wrapped return api(*args, **kwargs) │ │ └ {'index': 'open_webui_collections_d1024'} │ └ (<elasticsearch._sync.client.indices.IndicesClient object at 0x7f10b71d01d0>,) └ <function IndicesClient.exists at 0x7f10b22e8a40> File "/usr/local/lib/python3.11/site-packages/elasticsearch/_sync/client/indices.py", line 1523, in exists return self.perform_request( # type: ignore[return-value] │ └ <function NamespacedClient.perform_request at 0x7f10b6e17560> └ <elasticsearch._sync.client.indices.IndicesClient object at 0x7f10b71d01d0> File "/usr/local/lib/python3.11/site-packages/elasticsearch/_sync/client/_base.py", line 422, in perform_request return self._client.perform_request( │ │ └ <function BaseClient.perform_request at 0x7f10b6e17380> │ └ <Elasticsearch(['http://192.168.3.163:9200'])> └ <elasticsearch._sync.client.indices.IndicesClient object at 0x7f10b71d01d0> File "/usr/local/lib/python3.11/site-packages/elasticsearch/_sync/client/_base.py", line 271, in perform_request response = self._perform_request( │ └ <function BaseClient._perform_request at 0x7f10b6e17420> └ <Elasticsearch(['http://192.168.3.163:9200'])> File "/usr/local/lib/python3.11/site-packages/elasticsearch/_sync/client/_base.py", line 351, in _perform_request raise HTTP_EXCEPTIONS.get(meta.status, ApiError)( │ │ │ │ └ <class 'elasticsearch.ApiError'> │ │ │ └ 400 │ │ └ ApiResponseMeta(status=400, http_version='1.1', headers={'X-elastic-product': 'Elasticsearch', 'content-type': 'application/j... │ └ <method 'get' of 'dict' objects> └ {400: <class 'elasticsearch.BadRequestError'>, 401: <class 'elasticsearch.AuthenticationException'>, 403: <class 'elasticsear... elasticsearch.BadRequestError: BadRequestError(400, 'None') ```
yindo added the question label 2026-02-15 19:16:10 -05:00
yindo closed this issue 2026-02-15 19:16:10 -05:00
Author
Owner

@davidshen84 commented on GitHub (Sep 1, 2025):

It is a BadRequestError(400, 'None') error. I think your configuration is correct. Either your ES needs to be configured in a way to accept requests from open-webui, or there's a bug in open-webui implementation that sends the request in a wrong format.

I guess it is the latter. The latest ES version is v9, but your ES is at v8. I would expect breaking changes across major versions.

@davidshen84 commented on GitHub (Sep 1, 2025): It is a `BadRequestError(400, 'None')` error. I think your configuration is correct. Either your ES needs to be configured in a way to accept requests from open-webui, or there's a bug in open-webui implementation that sends the request in a wrong format. I guess it is the latter. The latest ES version is v9, but your ES is at v8. I would expect breaking changes across major versions.
Author
Owner

@westbrook-ai commented on GitHub (Oct 18, 2025):

Agreed with davidshen84 on this that your config was correct. Since the Helm chart functionality worked as expected I'll close this out, but please feel free to re-submit if you found Helm-specific issues.

@westbrook-ai commented on GitHub (Oct 18, 2025): Agreed with davidshen84 on this that your config was correct. Since the Helm chart functionality worked as expected I'll close this out, but please feel free to re-submit if you found Helm-specific issues.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: open-webui/helm-charts#89