File size: 829 Bytes
644bdfe
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
from typing import Optional

from pydantic import Field
from pydantic_settings import BaseSettings

from mcp_server_mariadb_vector.embeddings.base import EmbeddingProviderType


class DatabaseSettings(BaseSettings):
    host: str = Field(default="127.0.0.1", alias="MARIADB_HOST")
    port: int = Field(default=3306, alias="MARIADB_PORT")
    user: str = Field(..., alias="MARIADB_USER")
    password: str = Field(..., alias="MARIADB_PASSWORD")
    database: str = Field(..., alias="MARIADB_DATABASE")


class EmbeddingSettings(BaseSettings):
    provider: EmbeddingProviderType = Field(
        default=EmbeddingProviderType.OPENAI, alias="EMBEDDING_PROVIDER"
    )
    model: str = Field(default="text-embedding-3-small", alias="EMBEDDING_MODEL")
    openai_api_key: Optional[str] = Field(default=None, alias="OPENAI_API_KEY")