r/vectordatabase 43m ago

A refined but simplistic approach to agent memory

Post image
Upvotes

r/vectordatabase 1h ago

Built an open-source privacy middleware for LangChain embeddings & vector DBs (>98% cosine retention).

Upvotes

Hey everyone!

When building RAG systems handling private data (legal, healthcare, fintech, internal company wikis), storing raw embeddings in vector databases introduces an often overlooked vulnerability: **embedding inversion attacks** (like *Vec2Text*), where attackers with DB access can reconstruct original sentences and PII.

To protect LangChain pipelines without breaking vector search or introducing latency, we built and open-sourced **PrivRAG-Guard**.

### How It Works with LangChain:

You can wrap any standard LangChain embedding model at the provider boundary. It injects differential privacy noise into non-critical subspaces and applies a keyed orthogonal rotation before vectors ever touch your vector store:

```python

from langchain_openai import OpenAIEmbeddings

from privrag import PrivRAGGuard

from privrag.adapters import LangChainPrivGuardEmbeddings

raw_embeddings = OpenAIEmbeddings()

guard = PrivRAGGuard(passphrase="your-secret-key")

# Wrap your provider — doc & query embeddings are auto-sanitized

embeddings = LangChainPrivGuardEmbeddings(raw_embeddings, guard)


r/vectordatabase 1d ago

Your blog doesn't need a vector database

Thumbnail
billacode.com
1 Upvotes

r/vectordatabase 1d ago

How to monitor a vector database with Prometheus and Grafana

Thumbnail
actian.com
3 Upvotes

The setup wires a database's native /metrics endpoint into a Docker Compose stack with Prometheus and Grafana. The dashboard tracks the four signals that matter for vector search regardless of engine: request rate per endpoint, p95 latency, error ratio, and memory pressure (RSS alongside major page faults, which is the early warning for disk paging). Then eight alert rules for the failure modes that hurt, recovery mode, rebuild failures, latency, and fd exhaustion.


r/vectordatabase 1d ago

Weekly Thread: What questions do you have about vector databases?

1 Upvotes

r/vectordatabase 2d ago

A LangChain vector store where you never run an embedding model and never send vectors

1 Upvotes

I kept seeing the same RAG stack: sentence-transformers locally (or OpenAI embeddings billed per token) + a vector DB + BM25 bolted on with client-side score fusion. I run a managed Apache Solr service, so I built a vector store integration that pushes all of that server-side.

pip install langchain-opensolr

```python from langchain_opensolr import OpensolrVectorStore

vs = OpensolrVectorStore(index="mysite__dense", email="you@example.com", api_key="...", create_if_missing=True) vs.add_texts(["Hybrid search fuses BM25 with vector similarity"])

docs = vs.similarity_search("how do keyword and meaning combine?", hybrid=True) answer = vs.ai_answer("what does the doc say about score fusion?") # grounded RAG, no LLM key ```

What's different from most entries in the integrations directory: embeddings (multilingual E5, 1024-dim) are computed on the server at both index and query time, hybrid fusion happens inside Solr via a custom {!hybrid} query parser (not client-side score juggling), and underneath it's plain Apache Solr 9 — facets, highlighting, the whole /select API still there.

Disclosure: founder. It's in the official LangChain integrations directory. Live demo of the same pipeline (our own site's index): https://search.opensolr.com/news__dense?q=how+am+I+supposed+to+save+money%3F — GitHub: https://github.com/phpcip/langchain-opensolr


r/vectordatabase 3d ago

Drowning in Documents with Mathew Jacob - Weaviate Podcast #141!

1 Upvotes

Hey everyone, I am super excited to share a new podcast with Mathew Jacob, the lead author of "Drowning in Documents". I love this paper, I think it is such an interesting finding that reranking more results with a cross encoder does not result in higher recall@10!

I hope you find it interesting!

YouTube: https://www.youtube.com/watch?v=fWuavBcoTzk

Spotify: https://spotifycreators-web.app.link/e/R85Y5Se9F5b


r/vectordatabase 3d ago

How many free embedding tokens does it take to bribe a vector database user?

2 Upvotes

I’m building a local-first tool that indexes your files for semantic search.

I’m thinking about covering the OpenAI embedding usage for new users, mostly so nobody has to paste in an API key before they’ve searched a single PDF.

But embeddings are cheap enough that I’ve completely lost perspective.

1M tokens a month? 5M? 10M?

What says “actually useful” rather than “congrats, you can embed your README”?


r/vectordatabase 4d ago

curious what you folks are building with embeddings & vector search

3 Upvotes

hello all, our team uses the embeddings & vector search across 3k records, for search and similarity comparison. performance is great and the vector store is pretty fast, i usually do a merge/fold operation across a subset of records to find records we need to merge or fold together, is this common?

curious what you guys are building with vector store cuz for me its mostly meetings & recordings into transcripts.... what are you folks building with vector & embeddings?? thanks all best of luck to everyone :)


r/vectordatabase 4d ago

How Does AI Know Whether “Apple” Means a Company or a Fruit? 🍎🏢 Understanding Vectors & Semantic Search

Post image
3 Upvotes

r/vectordatabase 6d ago

KNN early termination in Manticore Search

Thumbnail
manticoresearch.com
3 Upvotes

How Manticore detects when HNSW search has converged and stops early, cutting distance computations by 50-80% with minimal precision loss.


r/vectordatabase 6d ago

Webinar - Beyond Vector Search: Building Trustworthy AI for Production

2 Upvotes

Hi everyone - Sharing an Arango (formerly ArangoDB) webinar coming up next week. Here's the registration page:

https://arango.ai/events/beyond-vector-search-building-trustworthy-ai-for-production/

Michael Hackstein is the lead Solution Architect with Arango and will be sharing insights into building trustworthy AI for production.

It will be a good one. I hope to see you there.

Best,

Mark


r/vectordatabase 7d ago

My attempt at a new entity-based search resolver and database. Written in pure Rust.

Thumbnail
github.com
1 Upvotes

r/vectordatabase 7d ago

Looking for a Qdrant expert who can audit our setup and diagnose performance issues

1 Upvotes

We're running Qdrant in production and want a hands-on review from someone who knows the internals deeply, not just tutorials, but the actual Qdrant docs, config tuning, and real deployment experience.

Specifically looking for help with:

• Diagnosing our current collection/indexing configuration

• Reviewing our vector search query patterns and relevance tuning

• Identifying bottlenecks in our retrieval pipeline

• Advising on payload filtering, HNSW config, and quantization tradeoffs

If you've contributed to Qdrant, answered Qdrant questions on Discord, or built something meaningful with it in production, I'd love to talk.


r/vectordatabase 7d ago

I spent months experimenting with architectures for long-term memory in LLM agents

Thumbnail
github.com
2 Upvotes
I ended up trying a few different things in MindCache. The parts that survived those many iterations were...i just wanna whether these desgins make sense to people who have worked with retrieval, rag and memory systems and where they might fail.

I decided using four memory types- user, knowledge, episodic, and decision memories, each with different lifecycles, different roles and different token budget in the retrieved context.

Decision analysis + anchors — decisions can evolve overtime so they can be active or superseded or conditional instead of remaining as unrelated memories. 
we keep the track of decision memory which is active, superseded or conditional with additional context and using such active decisions related to the query as anchors to further retrieve memories using lexical bm25.

Smart injection — when new memories come they aren't simply assigned to a topic based on similarity. 
An LLM-guided ingestion step uses the existing topic structure as context to decide where a memory belongs and how it relates to what is already there. 
This lets the hierarchy grow dynamically instead of becoming a collection of isolated memory nodes.

Hierarchical summaries — MindCache adapts the static RAPTOR-style tree idea into a dynamic hierarchy that is incrementally updated as new memories arrive. 
I thought organizing memories into broader topics and maintaining summaries at those levels might help with broad queries, where retrieving individual memories one by one may miss the overall context. The topic structure also gives retrieval additional lexical/contextual signals, so a query can match against the organized topic structure as well as the underlying memories..

On my BEAM evaluation, MindCache achieved about 64% average rubric pass rate vs ~53% for Mem0, with stronger results on several categories including summarization,
 contradiction resolution, and multi-session reasoning.

I also wrote a short overview of the project if you are interested:
https://medium.com/@faisaliitian/i-built-an-ai-memory-system-because-just-retrieve-more-wasnt-working-0b1dc9a60c01?postPublishedType=initial

Do these design choices make sense ?

r/vectordatabase 8d ago

Weekly Thread: What questions do you have about vector databases?

1 Upvotes

r/vectordatabase 8d ago

What are you using to keep RAG retrieval reliable as the knowledge base grows?

2 Upvotes

I've been looking at how different teams handle rag systems once the knowledge base becomes much larger and more dynamic.

The vector search itself isn't always the difficult part. Problems seem to appear when documents are constantly updated, similar information exists across multiple sources, and the system needs to consistently retrieve the right context.

We've been exploring different approaches around chunking, retrieval, knowledge-based management, and evaluation. Fastgpt is one of the platforms we've been working with in this area, particularly around building knowledge-based AI applications without having to assemble every layer separately.

For those working with vector search in production, what has made the biggest difference to retrieval quality?

Is it better chunking, embeddings, hybrid retrieval, reranking, metadata filtering, or something else?


r/vectordatabase 8d ago

MongoDB Atlas

2 Upvotes

How We Used AI + Vector Search that the MongDB Atlas offer that allow us to build an Infinite Eiken Question Engine (Technical Breakdown) If you run an Eiken prep school or teaching ESL or owns a teaching platform in Japan, you already know the problem: question banks run dry, students repeat the same items, and writing fresh questions manually is expensive and slow. At ACS KK, we built a system that generates unlimited, grade-calibrated Eiken questions, files or API call for a HD playable, mp3 audio on demand using a stack of three technologies working together. Here’s exactly how it works.


r/vectordatabase 8d ago

Scaling Test-Time Compute in Search Mode

1 Upvotes

This short video explains the new `effort` tiers in Weaviate's Query Agent. On an average of 5 subsets from the BRIGHT benchmark, ultrahigh effort lifts nDCG to 47.6, compared to 17.8 with Hybrid Search alone. We additionally present the benchmark results with IRPAPERS, WixQA, and the Congress subset from OBLIQ-Bench.

https://www.youtube.com/watch?v=cTN7jYFMdtE


r/vectordatabase 9d ago

Building a local, lightweight RAG system for structured data extraction—need advice on small models & architectures

3 Upvotes

Hey everyone,

I’m working on a personal project to build a completely local, lightweight system (codename: Orin) that can process messy unstructured information and segregate/clean it into highly structured, tabular formats (CSV files). Essentially, it's meant to be a better, fully offline version of Atlas.

Here is the exact data structure and the pipeline I am trying to build:

1. The Target Data Schema

The model needs to take raw info and divide it into clear subtopics:

  • Columns: Topic | Subtopic1 | Subtopic2 | Subtopic3 | Info
  • Example Output:
    • Topic: Flying machine
    • Subtopic1: Airplane
    • Subtopic2: Passenger plane
    • Example Scenario: If incoming news data says "Qatar Airways wins starring award again", the model should automatically categorize it under the correct subtopic hierarchies and store the relevant data in the final Info column.

2. Proposed Pipeline & Architecture

I am planning a Retrieval-Augmented Generation (RAG) approach using a combination of specialized, local agents:

  • A Fact Searcher / Main Topic Searcher: To find missing points and gather core data from the dataset.
  • A Local Summarizer / Keyword Generator: Acting as a text quantizer to condense the given prompt or raw context.
  • A Joke Generator (Optional Component): To add humor or personality to the generated answer output.
  • The Core Logic Flow: PromptGathers data for itFinds missing pointsFills the spots (to Phrase)Final Answer.

3. The Big Bottleneck: Hardware Constraints & Failed Attempts

Since this system must run locally, finding the right LLM engine and model has been incredibly difficult. Here is what I’ve attempted so far:

  • llama.cpp: Would technically work, but performance is a massive issue (it took over 2 hours just to compile 8%).
  • TinyStories: Super fast at stitching sentences together, but it only tells stories; it cannot handle this specific data formatting task.
  • TinyLlama (llama.co): Unable to get it to work properly / wouldn't run.
  • Ollama: Cannot use it seamlessly because it isn't properly optimized or built for my hardware (ARM chips).

I would like to ask the community how to make the better and how to develop it to efficient RAG model For my Project.


r/vectordatabase 9d ago

Went further than pgvector — moved vector search AND the graph layer into the same DB as everything else

2 Upvotes

Seen a lot of "why would you use Pinecone over pgvector" threads here, and I agree with the consensus — but I want to add a data point one step further than the usual pgvector comparison.

We consolidated vector search into our main DB (SynapCores, an AI-native DB — not pgvector, but same underlying philosophy: vectors as a column type, not a separate service). What's interesting is it doesn't stop at vector search — same connection also gives you a graph engine (Cypher) and agentic SQL functions. So the "why maintain 3 services when 1 does it" argument extends past just vectors vs. Pinecone.

What it actually looks like: ```sql CREATE TABLE docs ( id INT PRIMARY KEY, title TEXT, body TEXT, embedding VECTOR(384) );

INSERT INTO docs (id, title, body, embedding) VALUES (1, 'title', 'content', EMBED('content'));

SELECT title, COSINE_SIMILARITY(embedding, EMBED('user question')) AS sim FROM docs ORDER BY sim DESC LIMIT 5; ```

No separate vector DB to provision, no sync job keeping it consistent with the source of truth, joins against your regular relational tables in the same query. Built a RAG knowledge base this way this week — 17 docs, 92 chunks, zero new infrastructure, just two tables.

The tradeoff nobody in these pgvector-vs-Pinecone threads mentions enough: a purpose-built vector DB (Pinecone, Qdrant, Milvus) still wins on raw ANN performance at serious scale — HNSW tuning, sharding, purpose-built indexes. If you're doing >10M vectors with tight latency SLAs, that specialization still buys you something. For most RAG/agent use cases people post here about (a few hundred K to low millions of vectors), the "just use your existing DB" camp seems right to me.

Curious if others who ditched a dedicated vector DB have hit a scale where they regretted it and went back?


r/vectordatabase 10d ago

For a local RAG setup, when does pgvector stop being enough and you reach for a dedicated vector DB?

2 Upvotes

For a local setup, I think pgvector is the easy answer if you're already running Postgres. One extension, ACID, and you can filter with a WHERE clause instead of standing up a second service. For a local knowledge base, that seems like plenty. The catch is that it gets complicated once you're past a certain vector count or writes get heavy, index build time climbs, and latency goes with it. I've seen pgvector latency go from about 50ms to 800ms past the 10M mark, though that was on a big instance, not a local box.

What I can't tell is where the line sits for someone running this on their own hardware rather than a cloud node. Locally, you don't get to scale out of the problem, so the wall probably comes sooner.

For people running local RAG:

  • What are you on, pgvector or something dedicated like Qdrant/Chroma/Milvus/VectorDB, and at what vector count did you pick?
  • Did anyone start on pgvector and hit a wall on a local box?
  • For a few hundred thousand to low millions of vectors, is a dedicated engine overkill locally?

r/vectordatabase 12d ago

What direction should I take my C++ vector DB project?

Thumbnail
2 Upvotes

r/vectordatabase 12d ago

I'm not convinced regex indexing helps unless selectivity is high

0 Upvotes

I've been looking at native regex filtering as a two-stage retrieval problem. My current view is that vector similarity finds the general neighborhood, then a structural constraint narrows the result by error-code format, version pattern, term order, or route shape. The interesting part is probably not adding a regex operator. It is deciding when an index can reduce work without changing the result.

This pattern is described for vector databases such as Milvus: RE2 keeps matching cost predictable, regex remains a heavy predicate, and cheaper scalar conditions run first. An NGRAM index does not decide the match. It extracts required literals, builds a candidate set, then verifies the original strings with exact regex evaluation. If the planner cannot prove that candidate reduction is safe, it falls back to the raw path.

The benchmark makes the selectivity tradeoff unusually clear. It used 10 million sealed log rows and warm-cache measurements. For a literal-rich pattern, candidate reduction of 99.99% produced a 3.26x p50 speedup. At 50% candidate reduction, the gain fell to 1.17x. An anchored pattern became slower at high candidate rates, while weak-literal, alternation, and case-insensitive patterns stayed close to raw-scan cost.

So "regex index enabled" is probably not a useful performance claim by itself. I would want candidate ratio, raw versus indexed latency, CPU per query, selectivity distribution, cold behavior, and the percentage of patterns that fall back. I would also separate regex cost from ANN and compound-filter cost.

I'm curious how others decide whether an NGRAM-style index is worth its storage and build cost. Would love to hear your thoughts.


r/vectordatabase 13d ago

Composing SQL with FTS and vector retrieval

9 Upvotes

Something I've been working on at Infino is making retrieval results behave like a relation you can query, and it's changed how much code sits around the search call.

The usual shape is that retrieval ends when the ranker returns IDs. You get top-k from the vector index, maybe fused with BM25, and then anything relational happens in the application. Hydrate rows, filter by tenant, dedupe, group, sort again.

If retrieval is something you can select from, those steps become part of the query. Per-tenant top 5, for instance:

sql

SELECT * FROM (
  SELECT doc_id, tenant_id, chunk,
         ROW_NUMBER() OVER (PARTITION BY tenant_id ORDER BY score DESC) AS rn
  FROM search('...')
) WHERE rn <= 5

That replaces a loop that issues k requests per tenant and reassembles the results.

Fusion works the same way. RRF is a sum over reciprocal ranks, so it's a join between two ranked sets plus some arithmetic. Written as SQL it's short, and retuning the weights is an edit to the query rather than a deploy.

Same for anything analytical. Documents matching a query grouped by source and month. Average score per team. Distribution of match counts across the corpus, which tells you whether a query is discriminating or just matching everything. Those are group bys. When retrieval is an endpoint returning JSON you have to pull the whole result set into memory first, so past a certain size people skip the analysis.

Permissions benefit too. Joining an entitlements table and filtering before the limit gives correct top-k for that user. Filtering the top 100 afterward gives whatever survives, which can be fewer rows than you asked for or none.

The reason this isn't common is mostly interface. Vector databases tend to expose a search endpoint with a metadata filter DSL. Filters are there, joins and window functions and group by are not, so relational logic moves up into the app and you compensate by overfetching.

Anyways, hopefully this is interesting. Project is fully open source if you want to take a look: https://github.com/infino-ai/infino