4242from app .utils .health import is_health_ok
4343
4444router = APIRouter ()
45+ reRankerInstance = Reranker (
46+ model_name = os .getenv ("SIMPLE_RERANKER_MODEL_NAME" ),
47+ model_type = os .getenv ("SIMPLE_RERANKER_MODEL_TYPE" ),
48+ lang = os .getenv ("SIMPLE_RERANKER_LANG" ),
49+ )
4550
4651
4752def get_user_id (request : Request , entity_id : str = None ) -> str :
@@ -704,17 +709,10 @@ async def query_embeddings_by_file_ids(request: Request, body: QueryMultipleBody
704709 )
705710 raise HTTPException (status_code = 500 , detail = str (e ))
706711
712+
707713@router .post ("/rerank" )
708714async def rerank_documents_by_query (request : Request , body : QueryMultipleDocs ):
709715 try :
710- rk = Reranker (
711- body .config .get ("model_name" , "flashrank" ),
712- model_type = body .config .get ("model_type" ),
713- lang = body .config .get ("lang" ),
714- api_provider = body .config .get ("api_provider" ),
715- api_key = body .config .get ("api_key" ),
716- )
717-
718716 docs = []
719717 for i , d in enumerate (body .docs ):
720718 if isinstance (d , str ):
@@ -730,10 +728,12 @@ async def rerank_documents_by_query(request: Request, body: QueryMultipleDocs):
730728
731729 top_k = body .k
732730
733- results = rk .rank (query = body .query , docs = docs )
731+ results = reRankerInstance .rank (query = body .query , docs = docs )
734732 items = results .top_k (top_k ) if top_k else results
735733
736- return [[getattr (r .document , "text" , None ), r .score ] for r in items ]
734+ return [
735+ {"text" : getattr (r .document , "text" , None ), "score" : r .score } for r in items
736+ ]
737737 except Exception as e :
738738 logger .error (
739739 "Error in reranking documents | Query: %s | Error: %s | Traceback: %s" ,
@@ -743,6 +743,7 @@ async def rerank_documents_by_query(request: Request, body: QueryMultipleDocs):
743743 )
744744 raise HTTPException (status_code = 500 , detail = str (e ))
745745
746+
746747@router .post ("/text" )
747748async def extract_text_from_file (
748749 request : Request ,
0 commit comments