mosec
pgvecto.rs
mosec | pgvecto.rs | |
---|---|---|
11 | 17 | |
707 | 1,390 | |
1.4% | 11.9% | |
8.5 | 9.3 | |
5 days ago | 7 days ago | |
Python | Rust | |
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.
mosec
-
20x Faster as the Beginning: Introducing pgvecto.rs extension written in Rust
Mosec - A high-performance serving framework for ML models, offers dynamic batching and CPU/GPU pipelines to fully exploit your compute machine. Simple and faster alternative to NVIDIA Triton.
-
[D] Handling Concurrent Request for ML Model API
- Yes C++ would be better, but you can try mosec. It has a Python interface and helps you handle all the difficult things about Python multiprocessing. The web service part is implemented in Rust thus it's fast enough for machine learning services.
-
Launching ModelZ Beta!
Contribute to open source projects: Modelz is built on top of envd, mosec, modelz-llm and many other open source projects. If you're interested in contributing to these projects, you can check out their GitHub repositories and start contributing.
-
Deploying a model with an API in docker
You could first create the image with the framework you like (e.g. bentoml or https://github.com/mosecorg/mosec for light weight).
- PostgresML is 8-40x faster than Python HTTP microservices
- Python Machine Learning Service Can Run Way More Faster
-
[D] Open Source ML Organisations to contribute to?
If you're interested in machine learning model serving, can check mosec: https://github.com/mosecorg/mosec
-
Why not multiprocessing
During the development of a machine learning serving project Mosec, I used a lot of multiprocessing to make it more efficient. I want to share some experiences and some researches related to Python multiprocessing.
-
[P] Mosec: deploy your machine learning model in an easy and efficient way
That's a good example. I have met the same situation before. I have created a discussion in GitHub to track the DAG progress.
- Mosec: deploy your machine learning model in an easy and efficient way
pgvecto.rs
-
My binary vector search is better than your FP32 vectors
To evaluate the performance metrics in comparison to the original vector approach, we conducted benchmarking using the dbpedia-entities-openai3-text-embedding-3-large-3072-1M dataset. The benchmark was performed on a Google Cloud virtual machine (VM) with specifications of n2-standard-8, which includes 8 virtual CPUs and 32GB of memory. We used pgvecto.rs v0.2.1 as the vector database.
-
pgvecto.rs 0.2: Unifying Relational Queries and Vector Search in PostgreSQL
Please check out our documentation for more details. We encourage you to try out pgvecto.rs, benchmark it against your workloads, and contribute your indexing innovations. Join our Discord community to connect with the developers and other users working to improve pgvecto.rs!
-
pgvecto.rs alternatives - qdrant and Weaviate
3 projects | 13 Mar 2024
-
Milvus VS pgvecto.rs - a user suggested alternative
2 projects | 13 Mar 2024
-
You Shouldn't Invest in Vector Databases?
It's kind of a tradeoff. Performance is just one factor when choosing the vector database. In pgvecto.rs https://github.com/tensorchord/pgvecto.rs, we store the index separately from PostgreSQL's internal storage, unlike pgvector's approach. This enable us to get multi-threaded indexing, async indexing without blocking the insertion, and faster search speed comparing to pgvector.
I don't see any fundamental reason why the index in Postgres would be slower than a specialized vector database. The query pattern of the vector database is simply a point query using an index, similar to other queries in an OLTP system.
The only limitation I see is scalability. It's not easy to make PostgreSQL distributed, but solutions like Citus exist, making it still possible.
(I'm the author of pgvecto.rs)
-
How We Made PostgreSQL a Better Vector Database
Hi, we've solved the problem you mentioned! Please take a look on our open source postgres vector extension https://github.com/tensorchord/pgvecto.rs.
Our index building process is significantly faster than pgvector on hnsw because we can utilize all the cores, whereas pgvector can only use one core. And for the filter support, we do support pre-filtering, which will guarantee enough results no matter the condition is.
-
First Postgres Vector Extension with Filtering Support
Hi,
In our previous post titled “Do we really need a specialized vector database?” on HN (https://news.ycombinator.com/item?id=37097004) we discussed the importance of using a Postgres-based solution for vector search. However, we acknowledged that existing Postgres vector extensions lack support for metadata filtering.
We are excited to announce that we have now addressed this limitation. We are proud to be the first (https://github.com/tensorchord/pgvecto.rs) to enable conditional filtering directly on HNSW indexes within Postgres. This breakthrough allows for efficient and effective metadata filtering in combination with vector search, eliminating the tradeoff previously associated with using Postgres for this purpose.
We invite you to explore our updated offering and experience the benefits of seamless metadata filtering within a Postgres-based vector search system.
-
A Summary of LLMOps
Yeah, I think in many cases you just need a vector search lib, instead of a DB.
And in some other cases, you may want postgres vector extension e.g. https://github.com/tensorchord/pgvecto.rs instead of a specialized vector db.
-
An early look at HNSW performance with pgvector
Seems that pgvector has a viable competitor extension: https://github.com/tensorchord/pgvecto.rs
-
20x Faster as the Beginning: Introducing pgvecto.rs extension written in Rust
We are thrilled to announce the release of https://github.com/tensorchord/pgvecto.rs, a powerful Postgres extension for vector similarity search written in Rust. Its HNSW algorithm is 20x faster than pgvector at 90% recall. But speed is just the start - pgvecto.rs is architected to add new algorithms easily. We've made it an extensible architecture for contributors to implement the new indexes quickly, and we look forward to the open-source community driving pgvecto.rs to new heights!
What are some alternatives?
BentoML - The most flexible way to serve AI/ML models in production - Build Model Inference Service, LLM APIs, Inference Graph/Pipelines, Compound AI systems, Multi-Modal, RAG as a Service, and more!
pgvector - Open-source vector similarity search for Postgres
GPflow - Gaussian processes in TensorFlow
modelz-llm - OpenAI compatible API for LLMs and embeddings (LLaMA, Vicuna, ChatGLM and many others)
mlrun - MLRun is an open source MLOps platform for quickly building and managing continuous ML applications across their lifecycle. MLRun integrates into your development and CI/CD environment and automates the delivery of production data, ML pipelines, and online applications.
pgvecto.rs-bench
text-generation-inference - Large Language Model Text Generation Inference
Awesome-LLMOps - An awesome & curated list of best LLMOps tools for developers
metaflow - :rocket: Build and manage real-life ML, AI, and data science projects with ease!
faiss-rs - Rust language bindings for Faiss
postgresml - The GPU-powered AI application database. Get your app to market faster using the simplicity of SQL and the latest NLP, ML + LLM models.
DocumentGPT - DocumentGPT is a web application that allows you to chat over your research document using OpenAI's chat API and perform semantic search using vector databases. This tool provides a seamless interface for interacting with your research document, exploring search results, and engaging in a conversation with an AI chatbot.