Axiovora-X / backend /api /quantum_routes.py
ZAIDX11's picture
Add files using upload-large-folder tool
effde1c verified
from fastapi import APIRouter, Depends, HTTPException
from backend.core.quantum_search import GroverSearch
from backend.api.auth import get_api_key
from backend.core.logging_config import get_logger
router = APIRouter()
logger = get_logger("quantum_routes")
@router.post("/quantum/grover")
def run_grover(database_size: int, target_idx: int, iterations: int = None, api_key: str = Depends(get_api_key)):
try:
search = GroverSearch(database_size)
result_idx = search.run(target_idx, iterations)
logger.info(f"Grover search: db_size={database_size}, target={target_idx}, result={result_idx}")
return {"found_index": result_idx}
except Exception as e:
logger.error(f"Grover search error: {e}")
raise HTTPException(status_code=500, detail=str(e))