|
|
|
|
@ -27,8 +27,8 @@ class MilvusConfig(BaseModel):
|
|
|
|
|
|
|
|
|
|
uri: str # Milvus server URI
|
|
|
|
|
token: Optional[str] = None # Optional token for authentication
|
|
|
|
|
user: str # Username for authentication
|
|
|
|
|
password: str # Password for authentication
|
|
|
|
|
user: Optional[str] = None # Username for authentication
|
|
|
|
|
password: Optional[str] = None # Password for authentication
|
|
|
|
|
batch_size: int = 100 # Batch size for operations
|
|
|
|
|
database: str = "default" # Database name
|
|
|
|
|
enable_hybrid_search: bool = False # Flag to enable hybrid search
|
|
|
|
|
@ -43,10 +43,11 @@ class MilvusConfig(BaseModel):
|
|
|
|
|
"""
|
|
|
|
|
if not values.get("uri"):
|
|
|
|
|
raise ValueError("config MILVUS_URI is required")
|
|
|
|
|
if not values.get("user"):
|
|
|
|
|
raise ValueError("config MILVUS_USER is required")
|
|
|
|
|
if not values.get("password"):
|
|
|
|
|
raise ValueError("config MILVUS_PASSWORD is required")
|
|
|
|
|
if not values.get("token"):
|
|
|
|
|
if not values.get("user"):
|
|
|
|
|
raise ValueError("config MILVUS_USER is required")
|
|
|
|
|
if not values.get("password"):
|
|
|
|
|
raise ValueError("config MILVUS_PASSWORD is required")
|
|
|
|
|
return values
|
|
|
|
|
|
|
|
|
|
def to_milvus_params(self):
|
|
|
|
|
@ -356,11 +357,14 @@ class MilvusVector(BaseVector):
|
|
|
|
|
)
|
|
|
|
|
redis_client.set(collection_exist_cache_key, 1, ex=3600)
|
|
|
|
|
|
|
|
|
|
def _init_client(self, config) -> MilvusClient:
|
|
|
|
|
def _init_client(self, config: MilvusConfig) -> MilvusClient:
|
|
|
|
|
"""
|
|
|
|
|
Initialize and return a Milvus client.
|
|
|
|
|
"""
|
|
|
|
|
client = MilvusClient(uri=config.uri, user=config.user, password=config.password, db_name=config.database)
|
|
|
|
|
if config.token:
|
|
|
|
|
client = MilvusClient(uri=config.uri, token=config.token, db_name=config.database)
|
|
|
|
|
else:
|
|
|
|
|
client = MilvusClient(uri=config.uri, user=config.user, password=config.password, db_name=config.database)
|
|
|
|
|
return client
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|