Vector similarity alone isn't always enough - real applications need to combine semantic search with traditional filtering. Let's explore how Qdrant's powerful filtering language helps you build complex queries that match your exact needs! 🔍 💡 Remember you can use dot notation for nested fields and even filter array elements with the [] syntax! 📚 Full filtering guide: https://lnkd.in/damY8Srs
I've spent the last 4 nights just for that! 😅 Mixing the semantic similarity search with dynamic filtering is just the king. 👌 Dynamic filters when you use an LLM to parse a chat history and generate a filter as JSON dict, then eval it, lastly pass it to model from Qdrant to convert that dict to a modular filter valid to be used. 🤝 Try it and see the power! Hint: Use Groq Llama 3.3 70B for the generation!
Super happy to see this functionality in Qdrant. This is actually a critical, but often neglected step. Filtering and/or using NER prior to querying can help us rethink how we store our vectors and most importantly how we separate context in different indices/collections, versus a single one for all vectors.
Metadata filtering will give good results
DevOps Engineer
1wInteresting to see that the SQL filtering is 3 lines and the qdrant filtering is 30 lines. Definitely opens up some space for an SQL-like DSL in qdrant. Especially considering we now have things like PostgresML and Timescale's pgai. You can of course trim it down to 20 but immediately lose readability.