feat: add QDRANT_ON_DISK configuration option for Qdrant integration

This commit will allow configuring the on_disk client parameter, to reduce the memory usage.
https://qdrant.tech/documentation/concepts/storage/?q=mmap#configuring-memmap-storage
Default is false, keeping vectors in memory.
This commit is contained in:
Athanasios Oikonomou
2025-04-15 01:35:39 +03:00
committed by Athanasios Oikonomou
parent 7e0e6177e9
commit 575c12f80c
2 changed files with 4 additions and 2 deletions

View File

@@ -6,7 +6,7 @@ from qdrant_client.http.models import PointStruct
from qdrant_client.models import models
from open_webui.retrieval.vector.main import VectorItem, SearchResult, GetResult
from open_webui.config import QDRANT_URI, QDRANT_API_KEY
from open_webui.config import QDRANT_URI, QDRANT_API_KEY, QDRANT_ON_DISK
from open_webui.env import SRC_LOG_LEVELS
NO_LIMIT = 999999999
@@ -20,6 +20,7 @@ class QdrantClient:
self.collection_prefix = "open-webui"
self.QDRANT_URI = QDRANT_URI
self.QDRANT_API_KEY = QDRANT_API_KEY
self.QDRANT_ON_DISK = QDRANT_ON_DISK
self.client = (
Qclient(url=self.QDRANT_URI, api_key=self.QDRANT_API_KEY)
if self.QDRANT_URI
@@ -50,7 +51,7 @@ class QdrantClient:
self.client.create_collection(
collection_name=collection_name_with_prefix,
vectors_config=models.VectorParams(
size=dimension, distance=models.Distance.COSINE
size=dimension, distance=models.Distance.COSINE, on_disk=self.QDRANT_ON_DISK
),
)