Crate
bootcamp
Crate | bootcamp | |
---|---|---|
6 | 24 | |
3,965 | 1,627 | |
0.7% | 2.8% | |
9.9 | 9.1 | |
4 days ago | 6 days ago | |
Java | Python | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Crate
- FLaNK AI - 01 April 2024
-
Creating an advanced search engine with PostgreSQL
I'm wondering if CrateDB [https://github.com/crate/crate] could fit your use case.
It's a relational SQL database which aims for compatibility with PostgreSQL. Internally it uses Lucene as a storage and such can offer fulltext functionality which is exposed via MATCH.
-
Distributed query execution in CrateDB: What you need to know
A logical execution plan does not take into account the information about data distribution. CrateDB is a distributed database and data is sharded: a table can be split into many parts - so-called shards. Shards can be independently replicated and moved from one node to another. The number of shards a table can have is specified at the time the table is created.
- Parser generators vs. handwritten parsers: surveying major languages in 2021
-
Querying time series data with SQL: examples
PD: If you liked this post... We'd really appreciate a ⭐️ in Github!
-
What is CrateDB? 🤔 FAQ
But there's nothing better than trying things by yourself... So Download CrateDB, experiment, and tell us what you think! 😁
bootcamp
- FLaNK AI - 01 April 2024
- FLaNK Stack Weekly 22 January 2024
-
Milvus Adventures Jan 5, 2023
Metadata Filtering with Zilliz Cloud Pipelines This tutorial discuss scalar or metadata filtering and how you can perform metadata filtering in Zilliz Cloud. This blog continues on the previous blog on Getting started with RAG in just 5 minutes. You can find its code in this notebook and scroll down to Cell #27.
-
Build a search engine, not a vector DB
Partially agree.
Vector DBs are critical components in retrieval systems. What most applications need are retrieval systems, rather than building blocks of retrieval systems. That doesn't mean the building blocks are not important.
As someone working on vector DB, I find many users struggling in building their own retrieval systems with building blocks such as embedding service (openai,cohere), logic orchestration framework (langchain/llamaindex) and vector databases, some even with reranker models. Putting them together is not as easy as it looks. A fairly changeling system work. Letting alone quality tuning and devops.
The struggle is no surprise to me, as tech companies who are experts on this (google,meta) all have dedicated teams working on retrieval system alone, making tons of optimizations and develop a whole feedback loop of evaluating and improving the quality. Most developers don't get access to such resource.
No one size fits all. I think there shall exist a service that democratize AI-powered retrieval, in simple words the know-how of using embedding+vectordb and a bunch of tricks to achieve SOTA retrieval quality.
With this idea I built a Retrieval-as-a-service solution, and here is its demo:
https://github.com/milvus-io/bootcamp/blob/master/bootcamp/R...
Curious to learn your thoughts.
-
Vector Database in a Jupyter Notebook
Although it's common to use vector databases in conjunction with LLMs, I like to talk about vector databases in the context of unstructured data, i.e. any data that you can vectorize with (or without) an ML model. Yes, this includes text, but it also includes things like visual data, molecular structures, and geospatial data.
For folks who want to learn a bit more, there are examples of vector database use cases beyond semantic text search in our bootcamp: https://github.com/milvus-io/bootcamp
-
Beginner-ish resources for choosing a vector database?
Easy to get started: Here are some tutorials for Milvus in a Jupyter Notebook that I wrote - reverse image search, semantic text search
-
Semantic Similarity Search
I think you can just store your vector embeddings in the vector store somewhere and then query with your second document. I created a short tutorial on this that shows how to get the top 2 vector embeddings from a text query
-
[D] Looking for open source projects to contribute
For more beginner tasks associated with the Milvus vector database, you can contribute to the Bootcamp project( https://github.com/milvus-io/bootcamp), where we build a lot of data-driven solutions using ML and Milvus vector database, including reverse image search, recommender systems, etc.
-
I built an image similarity search system... Suggestions needed: what are some fun image datasets or scenarios I can use with this? :)
Source code here: https://github.com/milvus-io/bootcamp/tree/master/solutions/reverse_image_search
- Faiss: Facebook's open source vector search library
What are some alternatives?
Presto - The official home of the Presto distributed SQL query engine for big data
Milvus - A cloud-native vector database, storage for next generation AI applications
OrientDB - OrientDB is the most versatile DBMS supporting Graph, Document, Reactive, Full-Text and Geospatial models in one Multi-Model product. OrientDB can run distributed (Multi-Master), supports SQL, ACID Transactions, Full-Text indexing and Reactive Queries.
google-research - Google Research
MapDB - MapDB provides concurrent Maps, Sets and Queues backed by disk storage or off-heap-memory. It is a fast and easy to use embedded Java database engine.
docarray - Represent, send, store and search multimodal data
jOOQ - jOOQ is the best way to write SQL in Java
es-clip-image-search - Sample implementation of natural language image search with OpenAI's CLIP and Elasticsearch or Opensearch.
Flyway - Flyway by Redgate • Database Migrations Made Easy.
habitat-sim - A flexible, high-performance 3D simulator for Embodied AI research.
sql2o - sql2o is a small library, which makes it easy to convert the result of your sql-statements into objects. No resultset hacking required. Kind of like an orm, but without the sql-generation capabilities. Supports named parameters.
annoy - Approximate Nearest Neighbors in C++/Python optimized for memory usage and loading/saving to disk