| from typing import Optional | |
| from pydantic import Field, NonNegativeInt, PositiveInt | |
| from pydantic_settings import BaseSettings | |
| class TencentVectorDBConfig(BaseSettings): | |
| """ | |
| Configuration settings for Tencent Vector Database | |
| """ | |
| TENCENT_VECTOR_DB_URL: Optional[str] = Field( | |
| description="URL of the Tencent Vector Database service (e.g., 'https://vectordb.tencentcloudapi.com')", | |
| default=None, | |
| ) | |
| TENCENT_VECTOR_DB_API_KEY: Optional[str] = Field( | |
| description="API key for authenticating with the Tencent Vector Database service", | |
| default=None, | |
| ) | |
| TENCENT_VECTOR_DB_TIMEOUT: PositiveInt = Field( | |
| description="Timeout in seconds for Tencent Vector Database operations (default is 30 seconds)", | |
| default=30, | |
| ) | |
| TENCENT_VECTOR_DB_USERNAME: Optional[str] = Field( | |
| description="Username for authenticating with the Tencent Vector Database (if required)", | |
| default=None, | |
| ) | |
| TENCENT_VECTOR_DB_PASSWORD: Optional[str] = Field( | |
| description="Password for authenticating with the Tencent Vector Database (if required)", | |
| default=None, | |
| ) | |
| TENCENT_VECTOR_DB_SHARD: PositiveInt = Field( | |
| description="Number of shards for the Tencent Vector Database (default is 1)", | |
| default=1, | |
| ) | |
| TENCENT_VECTOR_DB_REPLICAS: NonNegativeInt = Field( | |
| description="Number of replicas for the Tencent Vector Database (default is 2)", | |
| default=2, | |
| ) | |
| TENCENT_VECTOR_DB_DATABASE: Optional[str] = Field( | |
| description="Name of the specific Tencent Vector Database to connect to", | |
| default=None, | |
| ) | |