From 8b489cb31f1498a0edef7bb5b8cbec8663b0469a Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Fri, 8 Aug 2025 12:24:47 +0400 Subject: [PATCH] refac: s3 vector --- backend/open_webui/retrieval/vector/dbs/s3vector.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/backend/open_webui/retrieval/vector/dbs/s3vector.py b/backend/open_webui/retrieval/vector/dbs/s3vector.py index 12069e628c..74253a3b36 100644 --- a/backend/open_webui/retrieval/vector/dbs/s3vector.py +++ b/backend/open_webui/retrieval/vector/dbs/s3vector.py @@ -1,3 +1,4 @@ +from backend.open_webui.retrieval.vector.utils import stringify_metadata from open_webui.retrieval.vector.main import ( VectorDBBase, VectorItem, @@ -183,6 +184,9 @@ class S3VectorClient(VectorDBBase): # Add the text field to metadata so it's available for retrieval metadata["text"] = item["text"] + # Convert metadata to string format for consistency + metadata = stringify_metadata(metadata) + # Filter metadata to comply with S3 Vector API limit of 10 keys metadata = self._filter_metadata(metadata, item["id"]) @@ -241,6 +245,9 @@ class S3VectorClient(VectorDBBase): # Add the text field to metadata so it's available for retrieval metadata["text"] = item["text"] + # Convert metadata to string format for consistency + metadata = stringify_metadata(metadata) + # Filter metadata to comply with S3 Vector API limit of 10 keys metadata = self._filter_metadata(metadata, item["id"])