30 lines
1.1 KiB
Python
30 lines
1.1 KiB
Python
|
|
from fastapi import APIRouter
|
||
|
|
from backend.services.data_service import data_service
|
||
|
|
from backend.utils.common import make_response
|
||
|
|
from backend.schemas.schemas import RegisterRequest, AddUrlsRequest, PendingRequest, SearchRequest
|
||
|
|
|
||
|
|
router = APIRouter(prefix="/api/v1", tags=["V1 Manual"])
|
||
|
|
|
||
|
|
@router.post("/register")
|
||
|
|
async def register(req: RegisterRequest):
|
||
|
|
try:
|
||
|
|
res = data_service.register_task(req.url)
|
||
|
|
return make_response(1, res.pop("msg", "Success"), res)
|
||
|
|
except Exception as e:
|
||
|
|
return make_response(0, str(e))
|
||
|
|
|
||
|
|
@router.post("/add_urls")
|
||
|
|
async def add_urls(req: AddUrlsRequest):
|
||
|
|
try:
|
||
|
|
res = data_service.add_urls(req.task_id, req.urls_obj["urls"])
|
||
|
|
return make_response(1, res.pop("msg", "Success"), res)
|
||
|
|
except Exception as e:
|
||
|
|
return make_response(0, str(e))
|
||
|
|
|
||
|
|
@router.post("/search")
|
||
|
|
async def search_manual(req: SearchRequest):
|
||
|
|
try:
|
||
|
|
res = data_service.search(req.query_embedding['vector'], req.task_id, req.limit)
|
||
|
|
return make_response(1, res.pop("msg", "Success"), res)
|
||
|
|
except Exception as e:
|
||
|
|
return make_response(0, str(e))
|