浏览代码

add qdrant client timeout limit (#1894)

Co-authored-by: jyong <jyong@dify.ai>
Jyong 1 年之前
父节点
当前提交
5ca4c4a44d
共有 3 个文件被更改,包括 5 次插入1 次删除
  1. 1 0
      api/config.py
  2. 2 0
      api/core/index/vector_index/qdrant_vector_index.py
  3. 2 1
      api/core/index/vector_index/vector_index.py

+ 1 - 0
api/config.py

@@ -197,6 +197,7 @@ class Config:
         # qdrant settings
         self.QDRANT_URL = get_env('QDRANT_URL')
         self.QDRANT_API_KEY = get_env('QDRANT_API_KEY')
+        self.QDRANT_CLIENT_TIMEOUT = get_env('QDRANT_CLIENT_TIMEOUT')
 
         # milvus / zilliz setting
         self.MILVUS_HOST = get_env('MILVUS_HOST')

+ 2 - 0
api/core/index/vector_index/qdrant_vector_index.py

@@ -18,6 +18,7 @@ from models.dataset import Dataset, DatasetCollectionBinding
 class QdrantConfig(BaseModel):
     endpoint: str
     api_key: Optional[str]
+    timeout: float = 20
     root_path: Optional[str]
 
     def to_qdrant_params(self):
@@ -33,6 +34,7 @@ class QdrantConfig(BaseModel):
             return {
                 'url': self.endpoint,
                 'api_key': self.api_key,
+                'timeout': self.timeout
             }
 
 

+ 2 - 1
api/core/index/vector_index/vector_index.py

@@ -49,7 +49,8 @@ class VectorIndex:
                 config=QdrantConfig(
                     endpoint=config.get('QDRANT_URL'),
                     api_key=config.get('QDRANT_API_KEY'),
-                    root_path=current_app.root_path
+                    root_path=current_app.root_path,
+                    timeout=config.get('QDRANT_CLIENT_TIMEOUT')
                 ),
                 embeddings=embeddings
             )