Semantic Kernel + Qdrant = Persistent Memories Powered By Open Source

John Maeda

Image skpatternlarge

Image interviewsformat 006

Interview with Qdrant CEO and co-founder Andre Zayarni

Semantic Kernel now works seamlessly with the open-source vector database Qdrant — just launch an instance of Qdrant on Azure with one click and you’re good to go. You can learn more about Qdrant’s history in this interview with the CEO and co-founder, Andre Zayarni:

SK: What moment in your life inspired you to create a vector database? How did this all start?

Andre: While working as a CTO for a start-up company in Berlin, we were building a matching engine for large amounts of unstructured textual data. The first version was based on a basic classification approach. This solution was very limited and worked only for a particular set of object categories. So, we were looking for a universal solution. And our new Head of ML, Andrey, suggested trying out the neural search. He had experience with the vector similarity approach from his previous work at a large bank, where he was working as Head of Search on a product recommendations solution based on customer transactions. The main challenge was to combine vector similarity search with hard-defined business rules and filters. Nowadays, it is also sometimes referenced as Hybrid Vector Similarity Search.

Andrey came up with an idea on how to extend the HNSW ANN index algorithm to make it possible to apply metadata-based one-stage filtering during the graph traversal instead of using a pre or post-filtering approach, which is, in most cases, suboptimal and does not scale. He published an article about Filterable/Categorical HNSW by the end of 2019 on his blog and shared it with the author of the HNSW paper Yury Malkov. Nowadays, almost all the major players in the vector similarity search space have adopted this approach. Andrey decided to start his own free time open-source project and began to develop a vector search database using Rust programming language in his free time by the mid of 2020. In May 2021, the first working version of the Qdrant vector search database was officially released on GitHub. Within a short time, we started to receive very positive feedback from the ML community. Companies were asking about our project plans and if they could use it in production. This motivated us to found a company and start working on a feature-rich and scalable vector search solution.

SK: What kind of systems out there have been your inspirations while creating Qdrant?

Andre: We are clearly following the path of such OSS giants like MongoDB with a community-centric bottom-up approach. The difference is that nowadays, everything moves much faster. We were able to develop an enterprise-ready version of our open-source database and launch our managed cloud solution just within a year.

SK: With the rise of pre-trained foundation models, was it obvious to you that vector databases would be necessary?

Andre: The whole vector similarity search technology depends on the neural network models and their quality. With the rise of transformers and LLM, it became affordable for companies of any size to benefit from VSS technology. Before this, only corporations were able to use vector similarity for large-scale applications. Today, creating a simple semantic search-based application can be done in a few rows of code by combining, for example, embeddings API by Open AI, Cohere AI, etc., and a vector search database like Qdrant. Also, new kinds of applications are now possible, like Copilot for X, Neural Discovery, etc. Vector Search became a foundational component of the new AI stack.

SK: What are the key distinguishing factors to Qdrant that set it apart from other vector databases?

Andre: The uniqueness of Qdrant is in its architecture and the underlying tech stack. It is the only open-source vector search database written in Rust. It provides a wide range of useful features starting with advanced filtering support, which includes basic string or range filters, but also more complex ones like geo-filters. Choosing the right system programming language allows us to optimize the performance on a very low level. This is reflected in our comparative benchmarks. The other mega-important topic is developer experience. Most of our adopters experience a Wow effect while trying out our solution because it is so simple to get it to run, deploy, and also to scale for large data sets. It brings product stickiness and retention. Many of our users switched from using a library like FAISS or other legacy solutions. We work very closely with our community and address their feedback by adjusting our roadmap if necessary. For example, we implemented a feature extension for engineers from Mozilla, and now Qdrant is powering a recommendation engine solution at Pocket. Along with the open-source core solution, we also launched our managed cloud solution, a DBaaS that provides an additional level of functionality and resolves the need to deploy, maintain and scale a vector search database for production.

SK: Why should we be using vector databases instead of just re-rigging existing SQL databases to support LLM AI?

Andre: In a dedicated vector search database, the vectors are the first-class citizens, and all the functionality is built around vectors. Whereas in an existing solution, it is usually just a kind of nice to have an additional feature that is not optimized and lacks essential capabilities. It is possible to implement keyword search using just the Postgres database, but it is not the best idea, and you should use a popper full-text search engine instead. It is also possible to store data in the form of JSON in Postgres, but you better rely on a NoSQL database in such a case. Basically, you do not use a kitchen knife for surgery when there is a better option. Using the right tool for the specific challenge achieves the best possible result.

SK: What are your thoughts about the open-source Microsoft Semantic Kernel efforts? Any hopes for it? Any fears?

Andre: Microsoft Semantic Kernel introduces a very important concept of memory. It allows a new form of learning for Neural Network Models – instead of making expensive back-propagation loops, we can simply add new facts to the LLM-compatible knowledge base. And Qdrant is a very natural candidate for storing, managing, and searching this kind of LLM-adapded data.

Qdrant is integrated with all major semantic search and LLM frameworks. We always see it as an opportunity to extend the adoption of our engine. We were underrepresented in the .NET ecosystem. But we hope it will change now with the introduction of Semantic Kernel. And this process has already begun. We are already receiving the first adopter requests from engineers using Semantic Kernel. We are working to extend our managed cloud offering to support Azure. In the meantime, Qdrant can be easily deployed to the Azure cloud using this Qdrant-Azure code samples repository, kindly created by Tara and her team. 🙏

Image andre Andre Zayarny, CEO/Co-founder @Qdrant

Over fifteen years of experience in Engineering. Worked at various startups and companies. Started as a backend engineer, switched to technical product management, and spent five years working as CTO/CPO. Co-founded Qdrant as CEO in late 2021 with his former colleague Andrey Vasnetsov (CTO), to develop cutting-edge vector search technology for the new age of AI applications.

Image skpatternsmallbw

0 comments

Discussion is closed.

Feedback usabilla icon