CFInsight / api /suggest.py
PocketSkye's picture
Deploy FastAPI app
777d84a
Raw
History Blame Contribute Delete
584 Bytes
from fastapi import APIRouter
from fastapi import Query
from core.trie_store import (
trie,
handle_frequency
)
router = APIRouter(
prefix="/suggest",
tags=["Suggestions"]
)
@router.get("/")
async def suggest_handles(
prefix: str = Query(..., min_length=1)
):
matches = trie.search_prefix(
prefix=prefix,
limit=50
)
matches.sort(
key=lambda handle: handle_frequency.get(
handle,
0
),
reverse=True
)
return {
"prefix": prefix,
"suggestions": matches[:5]
}