3 ms·
> One solution is to ensemble semantic search with keyword search. BM25 is a solid baseline when we expect at least one keyword to match. Nonetheless, it doesn’
by summarity 4y ago
> One solution is to ensemble semantic search with keyword search. BM25 is a solid baseline when we expect at least one keyword to match. Nonetheless, it doesn’t do as well on shorter queries where there’s no keyword overlap with the relevant documents—in this case, averaged keyword embeddings may perform better. By combining the best of keyword search and semantic search, we can improve recall for various types of queries.
Oh hey I have a demo of that here: https://findsight.ai https://findsight.ai
For it I wrote a custom search engine, and KNN index implementation, which ranks and merges results across three stages (labels, full-text, embedding) effectively. To speed up retrieval, OpenAI embeddings are stored instead as SuperBit signatures. Rank merging turned out to be a really hard problem.
- motoboi 4y agoWait. What!?! This is amazing. Did you write about that?
- neatze 4y agoCan this work with local files or at least with user uploaded library ?
- summarity 4y agoI'm experimenting with ways of letting users add content.
- fudged71 4y agoI think this was also a recent addition to Llama Index
- polyrand 4y agoThis sounds cool! I would be happy to read a blog post about it if you ever write one.