Spaces:
Sleeping
Sleeping
File size: 707 Bytes
f8835a3 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | from functools import lru_cache
from fastapi import Depends
from onnxruntime import InferenceSession
from infrastructure.onnx.model_loader import load_onnx_session
from infrastructure.onnx.pdf_figure_extractor import PdfFigureExtractor
from usecase.extract_figures import ExtractFiguresUseCase
@lru_cache
def get_onnx_session() -> InferenceSession:
return load_onnx_session()
def get_extractor(session: InferenceSession = Depends(get_onnx_session)) -> PdfFigureExtractor:
return PdfFigureExtractor(session=session)
def get_extract_figures_use_case(
extractor: PdfFigureExtractor = Depends(get_extractor),
) -> ExtractFiguresUseCase:
return ExtractFiguresUseCase(extractor=extractor)
|