Files
life-echo/api/app/features/evaluation/deps.py
Kevin 6772e1269c feat(evaluation): memoir readiness, judge/replay updates, eval web playground
Add memoir_readiness_service and router tests; extend judge schemas/services, replay_service, and conversation rubric; align story route agent, payload, prompts, and story_pipeline_sync; update agent logging, config, and DI. Document internal-eval; add replayDraft util and PlaygroundPage changes in app-eval-web.
2026-04-08 09:43:34 +08:00

40 lines
1.3 KiB
Python

from __future__ import annotations
from typing import Annotated
from fastapi import Depends
from sqlalchemy.ext.asyncio import AsyncSession
from app.core.db import get_async_db
from app.features.evaluation.admin_service import EvaluationAdminService
from app.features.evaluation.judge_manual_service import EvalJudgeManualService
from app.features.evaluation.memoir_readiness_service import MemoirReadinessService
from app.features.evaluation.replay_service import ReplayConversationService
from app.features.quota.deps import get_quota_service
from app.features.quota.service import QuotaService
def get_evaluation_admin_service(
db: Annotated[AsyncSession, Depends(get_async_db)],
) -> EvaluationAdminService:
return EvaluationAdminService(db)
def get_replay_conversation_service(
db: Annotated[AsyncSession, Depends(get_async_db)],
quota: Annotated[QuotaService, Depends(get_quota_service)],
) -> ReplayConversationService:
return ReplayConversationService(db, quota)
def get_eval_judge_manual_service(
db: Annotated[AsyncSession, Depends(get_async_db)],
) -> EvalJudgeManualService:
return EvalJudgeManualService(db)
def get_memoir_readiness_service(
db: Annotated[AsyncSession, Depends(get_async_db)],
) -> MemoirReadinessService:
return MemoirReadinessService(db)