mirror of
https://github.com/open-webui/open-webui.git
synced 2026-05-01 17:59:28 -05:00
feat: add qdrant indices for metadata fields
All fieldnames which are part of a query should have an index for performance reasons. This is even enforced on some qdrant cluster like those on qdrant.io, and queries using a unindexed column fail with an error.
This commit is contained in:
@@ -229,6 +229,25 @@ class QdrantClient(VectorDBBase):
|
||||
),
|
||||
wait=True,
|
||||
)
|
||||
# Create payload indexes for efficient filtering on metadata.hash and metadata.file_id
|
||||
self.client.create_payload_index(
|
||||
collection_name=mt_collection_name,
|
||||
field_name="metadata.hash",
|
||||
field_schema=models.KeywordIndexParams(
|
||||
type=models.KeywordIndexType.KEYWORD,
|
||||
is_tenant=False,
|
||||
on_disk=self.QDRANT_ON_DISK,
|
||||
),
|
||||
)
|
||||
self.client.create_payload_index(
|
||||
collection_name=mt_collection_name,
|
||||
field_name="metadata.file_id",
|
||||
field_schema=models.KeywordIndexParams(
|
||||
type=models.KeywordIndexType.KEYWORD,
|
||||
is_tenant=False,
|
||||
on_disk=self.QDRANT_ON_DISK,
|
||||
),
|
||||
)
|
||||
|
||||
log.info(
|
||||
f"Multi-tenant collection {mt_collection_name} created with dimension {dimension}!"
|
||||
|
||||
Reference in New Issue
Block a user