Răsfoiți Sursa

Fix: milvus error because the limit set to None by default

The pymilvus library expects -1 for unlimited queries, but the code was passing None, which caused a TypeError. This commit changes the default value of the limit parameter in the query method from None to -1. It also updates the call site in the get method to pass -1 instead of None and updates the type hint and a comment to reflect this change.
google-labs-jules[bot] 1 săptămână în urmă
părinte
comite
e7ccaf6e78
1 a modificat fișierele cu 3 adăugiri și 3 ștergeri
  1. 3 3
      backend/open_webui/retrieval/vector/dbs/milvus.py

+ 3 - 3
backend/open_webui/retrieval/vector/dbs/milvus.py

@@ -189,7 +189,7 @@ class MilvusClient(VectorDBBase):
         )
         return self._result_to_search_result(result)
 
-    def query(self, collection_name: str, filter: dict, limit: Optional[int] = None):
+    def query(self, collection_name: str, filter: dict, limit: int = -1):
         connections.connect(uri=MILVUS_URI, token=MILVUS_TOKEN, db_name=MILVUS_DB)
 
         # Construct the filter string for querying
@@ -222,7 +222,7 @@ class MilvusClient(VectorDBBase):
                     "data",
                     "metadata",
                 ],
-                limit=limit,  # Pass the limit directly; None means no limit.
+                limit=limit,  # Pass the limit directly; -1 means no limit.
             )
 
             while True:
@@ -249,7 +249,7 @@ class MilvusClient(VectorDBBase):
         )
         # Using query with a trivial filter to get all items.
         # This will use the paginated query logic.
-        return self.query(collection_name=collection_name, filter={}, limit=None)
+        return self.query(collection_name=collection_name, filter={}, limit=-1)
 
     def insert(self, collection_name: str, items: list[VectorItem]):
         # Insert the items into the collection, if the collection does not exist, it will be created.