Skip to main content

5 posts tagged with "rag"

View All Tags

Stand Up a Private, EU-Resident RAG Chatbot in Minutes

· 5 min read
FoundryDB Team
Engineering @ FoundryDB

Retrieval-augmented chat is the demo everyone wants and almost nobody ships cleanly. The interface is easy. The plumbing is not. You need a vector store, somewhere to keep the documents, an inference endpoint that does not leak your data, and an app that knows how to reach all three. That is a database, a bucket, an API key, a handful of environment variables, and a firewall rule or two, all wired by hand before you see a single answer.

The rag-chatbot stack collapses that into one launch. Pick it, accept the cost preview, and a few minutes later you are chatting over your own data on infrastructure you own, resident in Europe.

One-click stack launch fan-out
RUNNING Stack wired · endpoint live
Stack Templaterag-chatbotlaunch ⇉PostgreSQLpgvectorAppOpen WebUIFilesbucketInferenceEU key
Template · AppPostgreSQL (pgvector)Files bucketInference (EU)wiring (env injected)

FoundryDB Stacks: Launch the Finished App, Not the Parts

· 5 min read
FoundryDB Team
Engineering @ FoundryDB

Every managed platform you have ever used hands you a bag of parts. A database here. A bucket there. An API key, a network rule, a connection string, an environment variable. Each one is a primitive, and each one is yours to wire together. The pitch is "look how much you can build." The reality is an afternoon of plumbing before you see a single useful screen, and a config file that only you understand by Friday.

Today we flip that around. FoundryDB Stacks is live. A stack is the finished thing. One button stands up a complete, production-ready application, composed of those same primitives but already wired together, already metered, in minutes, and resident in Europe. You do not assemble the app. You launch it.

One-click stack launch fan-out
RUNNING Stack wired · endpoint live
Stack Templaterag-chatbotlaunch ⇉PostgreSQLpgvectorAppOpen WebUIFilesbucketInferenceEU key
Template · AppPostgreSQL (pgvector)Files bucketInference (EU)wiring (env injected)

Building a RAG Pipeline with OpenSearch as the Vector Store

· 7 min read
FoundryDB Team
Engineering @ FoundryDB

Retrieval-Augmented Generation (RAG) augments a language model's response by first retrieving relevant context from a database, then passing that context into the prompt. OpenSearch is a natural fit for the retrieval step: it runs the embedding model internally, stores the vectors, and returns ranked results in a single query. This post shows the retrieval step with real scores from a live OpenSearch 2.19.1 cluster managed by FoundryDB, and explains how to wire the retrieved chunks into a prompt and call an LLM.

This post uses a dedicated knowledge base index with 6 database documentation chunks, embedded using all-MiniLM-L6-v2 (384 dimensions). The retrieval, prompt assembly, and a complete prompt were all tested on a live FoundryDB cluster.

RAG loop · composed from FoundryDB primitives
QUERY retrieve → augment → generate → answer
Appquestionembed →Vector Searchtop-k← pgvectorPrompt + Contextaugmentgenerate →LLM ProviderEU-routed
PostgreSQL sourceEmbedding pipelinepgvector columnVector searchPrompt + contextInference proxy · LLM

Building a RAG Pipeline with PostgreSQL pgvector and Kafka on FoundryDB

· 7 min read
FoundryDB Team
Engineering @ FoundryDB

Retrieval-Augmented Generation (RAG) has become the standard approach for grounding LLMs in factual, up-to-date data. Instead of fine-tuning a model on your corpus (expensive, slow, stale within weeks), you retrieve relevant context at query time and feed it to the LLM alongside the user's question.

In 2026, RAG is no longer experimental. It powers customer support bots, internal knowledge search, legal document analysis, and code assistants at thousands of companies. The architecture has stabilized around a common pattern: ingest documents, generate embeddings, store vectors, retrieve at query time. What varies is how well you operate the infrastructure underneath.

This post walks through building a production RAG pipeline on FoundryDB using PostgreSQL with pgvector, Kafka for document ingestion, and Valkey for result caching.

RAG pipeline data flow
FLOW ingest → store · query → cache → response
Your Appclientproduce →Kafka:9093embed → store →PostgreSQLpgvector⇄ cacheValkey:6380
App · servicesKafka :9093PostgreSQL + pgvectorValkey :6380cache miss (dashed)

Automatic Embedding Generation: Build RAG Without the Plumbing

· 8 min read
FoundryDB Team
Engineering @ FoundryDB

Every RAG system needs the same boring middle layer: watch a table for changes, call an embedding API, write vectors back, handle retries, manage batches, build indexes, schedule cron jobs, and pray nothing drifts out of sync at 3 AM. FoundryDB's managed embedding pipelines eliminate that entire layer. You configure a pipeline, and your PostgreSQL data gets auto-vectorized with an HNSW index, ready for similarity search.

No ETL scripts. No cron jobs. No model orchestration code.

Embedding pipeline · trigger modes and runs
RUN RECORDED counts + status persisted
triggercontinuous · scheduled · manualrun →embedinference proxy⇢ vectorspgvector:5432→ recordstatussuccess · partial · failed
continuous (poll)scheduled (cron)manual (API)inference proxypgvector :5432successpartialfailed