конфиг: адрес OpenAI-совместимого провайдера LLM
Добавлен LLM_BASE_URL — без него не подключить Cloud.ru Foundation Models и любой другой OpenAI-совместимый шлюз. Имена COMPAT_MODEL_* принимаются тоже, так их выставляет командный сниппет. Ключ в repr настроек скрыт.
This commit is contained in:
parent
e7a0798ba7
commit
4f5a8d1400
1 changed files with 16 additions and 4 deletions
|
|
@ -2,6 +2,7 @@
|
||||||
|
|
||||||
from functools import lru_cache
|
from functools import lru_cache
|
||||||
|
|
||||||
|
from pydantic import AliasChoices, Field
|
||||||
from pydantic_settings import BaseSettings, SettingsConfigDict
|
from pydantic_settings import BaseSettings, SettingsConfigDict
|
||||||
|
|
||||||
from app.domain.timers import NORMATIVES, TimerCode
|
from app.domain.timers import NORMATIVES, TimerCode
|
||||||
|
|
@ -22,10 +23,21 @@ class Settings(BaseSettings):
|
||||||
offline: bool = False
|
offline: bool = False
|
||||||
|
|
||||||
# LLM. Провайдер меняется значением, не кодом (docs/arch/STACK.md).
|
# LLM. Провайдер меняется значением, не кодом (docs/arch/STACK.md).
|
||||||
llm_provider: str = "gigachat"
|
# Имена COMPAT_MODEL_* принимаются тоже — так их выставляет командный сниппет.
|
||||||
llm_api_key: str = ""
|
llm_provider: str = "openai_compatible"
|
||||||
llm_model_caller: str = ""
|
llm_base_url: str = Field(
|
||||||
llm_model_judge: str = ""
|
default="", validation_alias=AliasChoices("llm_base_url", "compat_model_url")
|
||||||
|
)
|
||||||
|
llm_api_key: str = Field(
|
||||||
|
default="", validation_alias=AliasChoices("llm_api_key", "compat_model_api_key"),
|
||||||
|
repr=False,
|
||||||
|
)
|
||||||
|
llm_model_caller: str = Field(
|
||||||
|
default="", validation_alias=AliasChoices("llm_model_caller", "compat_model_name")
|
||||||
|
)
|
||||||
|
llm_model_judge: str = Field(
|
||||||
|
default="", validation_alias=AliasChoices("llm_model_judge", "compat_model_name")
|
||||||
|
)
|
||||||
judge_temperature: float = 0.0
|
judge_temperature: float = 0.0
|
||||||
|
|
||||||
# Нормативы: переопределяют значения по умолчанию из domain/timers.py
|
# Нормативы: переопределяют значения по умолчанию из domain/timers.py
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue