File size: 687 Bytes
da2b98d
5ddae77
b1f0e98
 
 
 
8cbad39
5ddae77
b1f0e98
 
 
 
5ddae77
 
b1f0e98
5ddae77
b1f0e98
5ddae77
da2b98d
5ddae77
da2b98d
5ddae77
da2b98d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
"""Prediction API routes."""

from fastapi import APIRouter, Depends

from app.api.controllers import PredictionController
from app.api.models import ImageRequest, PredictionResponse
from app.core.dependencies import get_inference_service
from app.services.base import InferenceService

router = APIRouter()


@router.post("/predict", response_model=PredictionResponse)
async def predict(
    request: ImageRequest,
    service: InferenceService = Depends(get_inference_service)
):
    """
    Run inference on base64-encoded image.

    Returns prediction, confidence, predicted label, model name, and media type.
    """
    return await PredictionController.predict(request, service)