What's the best API to provide a unified semantic retrieval layer for my LLM app?