|
from typing import Optional |
|
|
|
from pydantic import Field, PositiveInt |
|
from pydantic_settings import BaseSettings |
|
|
|
|
|
class PGVectorConfig(BaseSettings): |
|
""" |
|
Configuration settings for PGVector (PostgreSQL with vector extension) |
|
""" |
|
|
|
PGVECTOR_HOST: Optional[str] = Field( |
|
description="Hostname or IP address of the PostgreSQL server with PGVector extension (e.g., 'localhost')", |
|
default=None, |
|
) |
|
|
|
PGVECTOR_PORT: PositiveInt = Field( |
|
description="Port number on which the PostgreSQL server is listening (default is 5433)", |
|
default=5433, |
|
) |
|
|
|
PGVECTOR_USER: Optional[str] = Field( |
|
description="Username for authenticating with the PostgreSQL database", |
|
default=None, |
|
) |
|
|
|
PGVECTOR_PASSWORD: Optional[str] = Field( |
|
description="Password for authenticating with the PostgreSQL database", |
|
default=None, |
|
) |
|
|
|
PGVECTOR_DATABASE: Optional[str] = Field( |
|
description="Name of the PostgreSQL database to connect to", |
|
default=None, |
|
) |
|
|
|
PGVECTOR_MIN_CONNECTION: PositiveInt = Field( |
|
description="Min connection of the PostgreSQL database", |
|
default=1, |
|
) |
|
|
|
PGVECTOR_MAX_CONNECTION: PositiveInt = Field( |
|
description="Max connection of the PostgreSQL database", |
|
default=5, |
|
) |
|
|