Browse Source

feat: optimize weaviate error msg (#441)

John Wang 1 year ago
parent
commit
951afcaaed
1 changed files with 10 additions and 6 deletions
  1. 10 6
      api/core/index/vector_index/weaviate_vector_index.py

+ 10 - 6
api/core/index/vector_index/weaviate_vector_index.py

@@ -1,5 +1,6 @@
 from typing import Optional, cast
 
+import requests
 import weaviate
 from langchain.embeddings.base import Embeddings
 from langchain.schema import Document, BaseRetriever
@@ -34,12 +35,15 @@ class WeaviateVectorIndex(BaseVectorIndex):
 
         weaviate.connect.connection.has_grpc = False
 
-        client = weaviate.Client(
-            url=config.endpoint,
-            auth_client_secret=auth_config,
-            timeout_config=(5, 60),
-            startup_period=None
-        )
+        try:
+            client = weaviate.Client(
+                url=config.endpoint,
+                auth_client_secret=auth_config,
+                timeout_config=(5, 60),
+                startup_period=None
+            )
+        except requests.exceptions.ConnectionError:
+            raise ConnectionError("Vector database connection error")
 
         client.batch.configure(
             # `batch_size` takes an `int` value to enable auto-batching