refactor(api): TOML 配置 SSOT、统一错误契约、Auth/事务加固与可观测性 (#33)
配置 SSOT(TOML + .env) 统一错误契约 Auth 与事务边界 Redis / Celery 可靠性:业务 Redis(DB/0)与 Celery broker/backend(DB/1)显式拆分;连接池、sync client 可观测性(OpenTelemetry + LGTM)
This commit is contained in:
@@ -7,6 +7,8 @@ from langchain_openai import ChatOpenAI
|
||||
from app.adapters.llm.openai_base_url import normalize_openai_compatible_base_url
|
||||
from app.core.config import settings
|
||||
from app.core.eval_judge_spec import EvalJudgeLlmSpec
|
||||
from app.features.evaluation.constants import eval_cfg
|
||||
from app.core.runtime_constants import llm_defaults
|
||||
|
||||
|
||||
def resolve_deepseek_eval_judge_model(
|
||||
@@ -35,7 +37,7 @@ def resolve_deepseek_eval_judge_model(
|
||||
if m == "deepseek-v4-pro":
|
||||
return ("deepseek-v4-pro", None, "high")
|
||||
if m in ("", "deepseek-v4-flash"):
|
||||
if settings.eval_judge_deepseek_thinking_enabled:
|
||||
if eval_cfg.judge_deepseek_thinking_enabled:
|
||||
return (
|
||||
"deepseek-v4-flash",
|
||||
{"thinking": {"type": "enabled"}},
|
||||
@@ -55,23 +57,23 @@ def build_deepseek_eval_judge_spec(
|
||||
judge_model: str | None,
|
||||
) -> EvalJudgeLlmSpec | None:
|
||||
"""密钥缺失时返回 None。"""
|
||||
api_key = (settings.deepseek_api_key or settings.llm_api_key or "").strip()
|
||||
api_key = (settings.deepseek_api_key or "").strip()
|
||||
if not api_key:
|
||||
return None
|
||||
want = (judge_model or "").strip()
|
||||
base = normalize_openai_compatible_base_url(
|
||||
settings.deepseek_base_url,
|
||||
llm_defaults.deepseek_base_url,
|
||||
fallback="https://api.deepseek.com",
|
||||
)
|
||||
default_m = (settings.eval_judge_deepseek_model or "deepseek-v4-flash").strip()
|
||||
default_m = (eval_cfg.judge_deepseek_model or "deepseek-v4-flash").strip()
|
||||
combined = want or default_m
|
||||
model, extra, effort = resolve_deepseek_eval_judge_model(combined)
|
||||
ctx = int(settings.eval_judge_deepseek_context_window_tokens)
|
||||
ctx = int(eval_cfg.judge_deepseek_context_window_tokens)
|
||||
llm_kw: dict = {
|
||||
"api_key": api_key,
|
||||
"base_url": base,
|
||||
"model": model,
|
||||
"temperature": settings.eval_judge_temperature,
|
||||
"temperature": eval_cfg.judge_temperature,
|
||||
}
|
||||
if extra is not None:
|
||||
llm_kw["extra_body"] = extra
|
||||
|
||||
Reference in New Issue
Block a user