feat: Implement video generation functionality and integrate with Kling API.
This commit is contained in:
@@ -3,6 +3,7 @@ from fastapi import Request, Depends
|
||||
from motor.motor_asyncio import AsyncIOMotorClient
|
||||
|
||||
from adapters.google_adapter import GoogleAdapter
|
||||
from adapters.kling_adapter import KlingAdapter
|
||||
from api.service.generation_service import GenerationService
|
||||
from repos.dao import DAO
|
||||
|
||||
@@ -36,14 +37,18 @@ def get_dao(
|
||||
# так что DAO создастся один раз за запрос.
|
||||
return DAO(mongo_client, s3_adapter)
|
||||
|
||||
def get_kling_adapter(request: Request) -> Optional[KlingAdapter]:
|
||||
return request.app.state.kling_adapter
|
||||
|
||||
# Провайдер сервиса (собирается из DAO и Gemini)
|
||||
def get_generation_service(
|
||||
dao: DAO = Depends(get_dao),
|
||||
gemini: GoogleAdapter = Depends(get_gemini_client),
|
||||
s3_adapter: S3Adapter = Depends(get_s3_adapter),
|
||||
bot: Bot = Depends(get_bot_client),
|
||||
kling_adapter: Optional[KlingAdapter] = Depends(get_kling_adapter),
|
||||
) -> GenerationService:
|
||||
return GenerationService(dao, gemini, s3_adapter, bot)
|
||||
return GenerationService(dao, gemini, s3_adapter, bot, kling_adapter=kling_adapter)
|
||||
|
||||
from fastapi import Header
|
||||
|
||||
|
||||
Reference in New Issue
Block a user