File size: 952 Bytes
083d486
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
from pyexpat import model
from typing import Annotated
from fastapi import FastAPI, Depends
from .utils.authentication import verify_token
from .utils.payload_model import SingleInferencePayload, VideoInferencePayload
from .utils.qwen_inference import Qwen2_5

import os
from dotenv import load_dotenv

load_dotenv()

model_path = os.getenv("MODEL_PATH")

model_object = Qwen2_5(model_path)

app = FastAPI()

@app.get("/")
def greet_json():
    return {
        "message": "Welcome! The backend API for Qwen2.5-VL-3B-Instruct model is running.",
        "status": "active"
    }

@app.post("/single_inference")
def single_inference(payload: SingleInferencePayload, _token: Annotated[dict, Depends(verify_token)]):
    return model_object.get_single_inference(payload)

@app.post("/video_inference")
def video_inference(payload: VideoInferencePayload, _token: Annotated[dict, Depends(verify_token)]):
    return model_object.get_video_inference(payload)