Skip to content

Multi Vector Retriever

Multi Vector Retriever searches small chunks, which are found more precisely, and returns the bigger piece of the document each one belongs to (a section, or the whole document), which answers more completely. Several chunks of the same piece count once.

It works in two steps, each with its own node of this component:

  1. Prepare Chunks cuts your documents into small chunks that remember their piece. You store them in any vector database.
  2. Search finds the chunks in that database and returns their pieces.

A retriever receives a question and returns the document pieces that best answer it, so an agent or model can reply with your information.

When to use it

  • Small chunks are found well but fall short for answering: a product sheet, a procedure with several steps, a contract clause.
  • You want the agent to read the whole section, not just the paragraph that matched.

Configuration

Operation chooses the step; each one shows its own fields.

Prepare Chunks

FieldWhat it does
DocumentsThe documents to cut, for example the output of a file loader.
Piece SizeCharacters of the piece a search returns. 0: the whole document. Default: 2000.
Chunk SizeCharacters of the small chunks that are searched. Default: 400.
Chunk Overlap (advanced)Characters two consecutive chunks share. Default: 50.

Output Chunks: connect it to Ingest Data of a vector database (FAISS, Chroma DB, Qdrant…) with Operation set to Add. Each chunk keeps the data of its document plus parent_id and parent_text.

FieldWhat it does
Search QueryThe question.
Vector StoreThe Vector Store output of the database holding the prepared chunks.
Number of Results (advanced)How many pieces are returned. Default: 5.
Parent Vector Store (advanced)Only if your pieces live in a second database, linked to the chunks by ID Key. Chunks made with Prepare Chunks do not need it.
ID Key (advanced)With Parent Vector Store: the chunk’s data field holding its piece’s id. Default: id.

Outputs:

  • Results: the pieces found for Search Query, each with its document’s data and the chunk that matched in matched_chunk.
  • Retriever: the search engine, to connect to components that ask for one, such as Local Rerank.

Use as an agent tool

Connect the Search node to the Tools input of an Agent and the agent searches on its own: it writes Search Query with the question. It is called document_search by default; in the Tool tab change the description to say what your documents contain.

Example

A shop wants its assistant to answer with the whole product sheet, not one line of it.

  1. Ingest flow: file loader → Multi Vector Retriever in Prepare Chunks (Piece Size 0, one sheet per document) → Chunks to Ingest Data of a FAISS database.
  2. Chat flow: the same FAISS database → its Vector Store output to Vector Store of a Multi Vector Retriever in Search → connected to the agent’s Tools.

Measured figures

Measured on 17 October 2026 on a test knowledge base (9 documents of a fictional repair service, 30 questions about the documents). It is a single synthetic set: it shows how the technique behaves, not a promise for your data.

SetupRight answer firstIn the top 5Text per search (top 5)
Plain search, 800-character chunks, 5 results60 %83 %3,100 characters
Plain search, 800-character chunks, 13 results–97 % (in the 13)8,200 characters
Multi Vector, chunks of 400, pieces of 200060 %93 %8,400 characters
Multi Vector, chunks of 400, whole document73 %100 %25,900 characters
  • It finds more because each result is bigger: with the same amount of text, plain search with more results found as much or more.
  • Its value is that the agent gets whole sections, in one piece and without repetition, instead of loose fragments.
  • With whole documents, 5 results were more than half of this small collection: that figure only says the documents fit. Use whole documents when they are short (sheets, FAQs).

Video

This video compares loose chunks with the whole section that Multi Vector Retriever returns, on a question about a procedure.

What you see in the video:

  1. A Multi Vector Retriever node in Prepare Chunks cuts the documents into 400-character chunks that remember their 2,000-character section, and stores them in Qdrant.
  2. Another node in Search searches those chunks and returns the whole section.
  3. Asked how to replace the NTC probe of a Jaltec Brío 2G step by step, plain search returns loose fragments that are missing steps.
  4. The search with sections returns the full procedure, up to the final check.
  • FAISS: a vector database without a server to store the chunks.
  • Local Rerank: reorders the pieces by relevance.

To see how search techniques combine, see Search techniques in the RAG guide.