Show HN: Multi-modal RAG with ColQwen in a single line of Code (github.com)
We recently launched support for ColPali-style image embeddings and late-interaction retrieval. We've implemented a hamming distance version of retrieval which helps this approach scale significantly more when compared with the regular late-interaction similarity scoring.
These embeddings provide a significantly better retrieval accuracy, with ColQwen achieving around an 89% average score on the ViDoRe benchmark, compared to around 67% for traditional parsing and captioning based methods.
We're completely open source, and getting started takes less than 10 minutes (get started here: https://databridge.mintlify.app/getting-started). In fact, using these style of embeddings requires just setting `use_colpali=True` in our python SDK while ingesting or retrieving documents.
Our long term goal is to make state of the art research in retrieval be as accessible for production use cases as possible, and integrating ColPali is an initial step towards that goal. If there's research that you think is compelling, but haven't been able to integrate into production, let us know: we'd be happy to help.
We really appreciate the honest feedback the HN community provides, and so we'd love to hear from you!
6 comments
[ 0.29 ms ] story [ 595 ms ] threadCan you tell what is it and how it works?
You can find more about getting started and installation instructions here: https://databridge.mintlify.app/getting-started
And you can find our API reference here: https://databridge.mintlify.app/api-reference/
Is there anything specific you're looking for?
Your search queries would go through a planner which - depending on the kind of data we're retrieving - will call the correct tools to extract information from the data and respond to your query.
For instance, this could be function calling over object-tracking data if your query relates to object movements over a video. This could also be a call to ColQwen in case we're looking for particular features within a diagram-heavy PDF. It could also be a simple semantic search if thats what the planner deems most useful.
The idea is that traditional databases work the same way - query planning systems figure out the best path to execute the user query, and pass that to the query execution engine. We think a lot of this complexity can be abstracted away from the user - as long as we can provide them strong retrieval guarantees (the same ways Databases have SLAs).
Let me know if something is unclear here!
We're finding the actual embedding process to be more of a bottleneck, and we're exploring options on how to speed that up.
Feel free to clarify in case that didn't answer your question!