fix(vector): do not bind a query dimension for text-only search

A full-text search sends no query vector by design, but search() validated
len([]) == 0 as the expected embedding dimension, so the request failed with
'Embedding dimension 0 is not enabled for this deployment' and hid the
backend capability error. An empty query vector now means no expected
dimension to verify.
This commit is contained in:
Hyu
2026-09-30 15:47:59 +08:00
parent e3e45d7b34
commit 5758f20768
+4 -1
View File
@@ -356,7 +356,10 @@ class VectorDBManager:
scope = await self._resolve_pgvector_scope(
execution_context,
knowledge_base_uuid,
expected_dimension=len(query_vector),
# A text-only search sends no query vector; there is no dimension
# to bind, and validating an empty vector as dimension 0 would
# mask the backend capability error.
expected_dimension=len(query_vector) or None,
initialize_dimension=False,
)
results = await pgvector.search(