Spaces:
Sleeping
Sleeping
File size: 1,754 Bytes
12d0de7 | 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 33 34 35 36 37 38 39 40 41 42 43 44 45 46 | from fastapi import APIRouter , Depends
from helpers.configs import Settings , get_settings
from helpers.db import get_chroma
from fastapi.responses import FileResponse
base_router = APIRouter(
prefix=f"/AutoProctor/{get_settings().APP_VARIENT}",
tags=["AutoProctor_v1"])
@base_router.get("/")
async def welcome(app_settings: Settings = Depends(get_settings)):
return FileResponse('static/index.html')
# app_name = app_settings.APP_NAME
# app_varient=app_settings.APP_VARIENT
# app_version = app_settings.APP_VERSION
# return {"app_name": app_name, "app_version": app_version ,"app_varient":app_varient, "status": "healthy"}
@base_router.get('/config')
async def config(app_settings: Settings = Depends(get_settings)):
return {
'app_name': app_settings.APP_NAME,
'app_version': app_settings.APP_VERSION,
'app_variant': app_settings.APP_VARIENT,
'detection_model': app_settings.DETECTION_MODEL,
'yoloface_model_path': app_settings.YOLOFACE_MODEL_PATH,
'chroma_db_path': app_settings.CHROMA_DB_PATH,
'collection_name': app_settings.COLLECTION_NAME,
'similarity_threshold': app_settings.SIMILARITY_THRESHOLD,
'max_results': app_settings.MAX_RESULTS
}
@base_router.get("/health")
async def health(app_settings: Settings = Depends(get_settings)):
app_name = app_settings.APP_NAME
app_version = app_settings.APP_VERSION
return {"app_name": app_name, "app_version": app_version , "status": "healthy"}
@base_router.get("/count")
def count_documents():
_, collection = get_chroma()
return {"documents": collection.count()} |