Files
life-echo/api/app/features/evaluation/deps.py
2026-04-06 23:19:20 +08:00

33 lines
1.0 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.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)