Vela
Set up api
df464b1
raw
history blame contribute delete
815 Bytes
import os
import sys
src_directory = os.path.abspath(os.path.join(os.path.dirname(__file__), "../../..", "src"))
sys.path.append(src_directory)
from fastapi import APIRouter, HTTPException
from schemas.schema import ImageSearch
from app import homepage
router = APIRouter()
@router.post("/search", summary="Find images by text")
def search_image(search_request: ImageSearch):
try:
query = search_request.query_text.strip()
if not query:
raise HTTPException(status_code=400, detail="Query text cannot be empty")
images = homepage.get_images_text_query(query)
if not images:
raise HTTPException(status_code=404, detail="No images found")
return images
except Exception as e:
raise HTTPException(status_code=500, detail=str(e))