Sparround

RAG: AI over your own documents

RAG (Retrieval-Augmented Generation) grounds a model's answers in your own documents. The model does not rely on its training data alone: passages relevant to the question are retrieved and handed to it as context.

It is one of the AI scenarios that comes up most in automation, because a company's internal knowledge — policies, product documentation, support history — appears in no general model's training data.

The vector store is at the centre of this. When you upload a document it is split into chunks and each chunk is turned into a vector of numbers by an embedding model. Search then works on semantic meaning rather than keywords — the matching passage is found even when the question uses none of the document's words.

ComponentIts role
Vector Store nodeStores and searches the vectors. Data is loaded with the Insert Documents operation.
Embedding modelTurns text into vectors. The same model must be used when inserting and when querying.
Default Data LoaderSplits the document into chunks
Text splitterThe chunking strategy: by character length, recursive (recommended), or by token count
MetadataExtra information per chunk: source, date, category — for filtering later
Vector Store (as a tool)Attaches to an agent; you set its description and result limit

RAG is two separate workflows, and knowing that makes it much easier to build:

1. The ingestion (indexing) workflow — takes documents, splits them into chunks, converts them to embeddings and writes them into the vector store. It usually runs once, or whenever a document changes.

2. The query workflow — a question arrives, matching chunks are retrieved, and the model answers with them as context.

Querying can be built two ways: attach the vector store to an agent as a tool (the agent decides when to search), or use the node directly in the flow (it always searches). The first is flexible, the second predictable.

To save on an expensive model there is also a Vector Store Question Answer tool: the relevant data is retrieved first and only the result is passed to the main model.

The most common RAG mistake: using one embedding model when inserting and a different one when querying. The vectors do not line up and the search returns nonsense — and it does not error, it just works badly. Changing the model means reindexing every document.

📚 Sources and documentation