Building and managing Knowledge Bases — document upload, RAG pipeline, dynamic filters, AI metadata extraction
When you ask the AI a question and it replies “I don’t know” or gives an off-topic answer, that’s where the Knowledge Base comes in. By converting your internal documents into a form the AI can reference directly, the Knowledge Base enables accurate, document-grounded answers.
Searches hr-policy.pdf for related content, then answers
Accurate policy + citation
Each Knowledge Base can use a different Document Processing Profile with its own extraction method and chunking strategy. See Document Processing Profile Selection below for details.
View Knowledge Bases in Workspace > Knowledge Base
The Knowledge Base list mixes two kinds of card, told apart by the badge at the card’s top left (Library in blue, Collection in green). Create each with + New Knowledge · New Library at the top right of the list.
Collection
Library
Structure
A flat bundle of documents, no folders
A container with a folder tree
Shown on the card
File count · last updated
Folder count · file count
Best for
Gathering documents on one topic in one place
Moving an already-foldered pile of documents structure and all
Open a library and you get the folder tree on the left, and the selected folder’s file list on the right.
Control
Where
What it does
Search folders and files
Search box above the tree
Searches every folder of the library at once
Import folder · structure + files
Below the tree
Pulls a folder from your PC in with its subfolder structure intact
+ New collection
Below the tree
Creates a new folder inside the library
Process all · N pending
Below the tree (only when files are unprocessed)
Embeds every unprocessed file in the library in one go
Each folder behaves like an independent Knowledge Base. A new folder inherits its parent’s filter schema, extraction mode, extraction model, search settings, and access control at creation, and you can change each of them per folder afterwards.Tool description is the one exception — it is not inherited. “When to search this folder” has to differ per folder, so it starts empty.
Inside a library folder, the AI button next to the tool description fills the whole subtree, not just that folder. Leaf folders are drafted from a sample of their filenames and parent folders from a summary of their children, bottom-up — so one click at the root folder fills the entire library. Folders that already have a description are skipped, and a “Generated descriptions for N folders” toast confirms the result.
Agents can connect an entire library. The knowledge picker on the agent edit screen has Library / Collection / Document filters so you can narrow by type.
Deleting a library or a folder deletes the whole subtree, files and vectors included. It is not a “detach from the group” action — it removes the structure itself, and it cannot be undone. A confirmation dialog appears first.
Naming rules differ too. A collection name must be unique across the workspace, but folder names inside a library only need to be unique among siblings — so every department’s library can have its own “Contracts” folder.
If the folder names themselves are your classification axis (e.g. project-number/doc-type/file), pair this with a filter’s Folder mapping. Upload a folder and the folder names fill the metadata values directly, with no LLM extraction needed. See the Dynamic Filters Deep-Dive for details.
In Workspace > Knowledge Base, click + New Knowledge at the top-right to open the create form.
Enter a name and description, then set the permission.
Enter name and description, and set access permissions
Field
Description
Example
Name
KB name (required)
“HR Policy 2024”
Description
Purpose and content (required)
“HR team policies and guidelines”
Permission
Public / Private. If private, pick targets in the Groups card below
Private + “Sales”
2
Upload documents
Add documents to the new Knowledge Base. Click the Add Content (+) button to choose an upload method.
Use Add Content (+) to choose file upload, text input, or cloud sources
Upload methods:
Method
Description
Drag and Drop
Drag files onto the upload area
Upload Files
Select “Upload Files” from the “Add Content” menu
Upload Directory
Select “Upload Directory” — bulk-upload all files in a folder
Cloud Storage
Google Drive, OneDrive, SharePoint (visible when admin has configured)
Add Text
Write text directly to add as content
3
Wait for processing
Uploaded documents go through text extraction → chunking → embedding → indexing automatically.
A real-time notification appears when processing completes.
Files that take more than 30 minutes to process are auto-failed. Delete and re-upload the file in that case.
Bulk uploads:
5+ files or directory uploads switch to batch mode
A progress bar shows steps (upload → processing) at the top, with failures shown in red
3 files are processed in parallel
Progress state persists across page refreshes
4
Verify and validate
Click a document to view extracted text and connect it to an agent to validate retrieval quality. Toggle Summary in the file list to see the AI-generated document summary.
The default extraction engine recognizes text in the following formats. Switching the extraction engine widens this coverage (see Content Extraction Engine below).
Category
Supported Formats
Documents
PDF, DOCX, RST, EPUB, MSG (Outlook mail)
Spreadsheets
XLSX, XLS, CSV
Presentations
PPTX, PPT
Web / Markup
HTML, HTM, XML, MD
Text / Source code
TXT, PY, JS, TS, JSON, SQL, JAVA, GO, C, C++, CS, RB, RS, PHP, SH, and ~50 more
Extensions not listed can still be uploaded — they are read as plain text. However, binary files such as ZIP or executables may be ingested as garbled content, so we recommend uploading the formats above. An admin can configure an allowed-extension whitelist to restrict uploads to specific formats only.
Both values are unlimited by default. Leaving an admin field empty means no limit; entering a number rejects any file exceeding that threshold at upload time.
After defining the filter schema, set metadata values per file. A filled fields / total filters badge at the far right of each file row shows the state at a glance.
Per-file metadata state is shown as a fill badge
Badge color
Meaning
Green
All filter fields have values
Blue
Required fields are filled; some optional fields are empty
Orange
A required field is empty
Gray
Nothing filled and no filter marked required
While AI extraction runs, an “Extracting” badge replaces the count; with no filters defined, the badge doesn’t appear at all. Color is decided by whether required fields are satisfied, not by how many are filled.
When metadata changes, the vector index is updated automatically. Existing vectors are kept — no re-embedding required.
Tool Description, at the top of the Knowledge Base detail screen, is the AI-only description that tells the agent when and in what situations to search this Knowledge Base. The screen itself reads “Describe when the agent should search this knowledge base.”
Example of a good tool description
Use when there are questions about company HR policies and internal guidelines.Reference for HR-related questions like leave, benefits, and travel policies.
If the tool description is empty, the KB’s general description is used instead. We recommend writing a specific one so the AI can pick the right Knowledge Base among many.AI auto-generation: Click the AI button next to the tool description — it drafts the text from the KB name, description, file list, and filter info. The dropdown beside it picks the model used for generation.
Connect a Knowledge Base with an empty tool description to an agent and a “Tool description is missing” warning appears above the knowledge list, naming the items involved. It still saves, but the agent has a harder time deciding when to use that Knowledge Base.
The filter edit form has its own field also called Agent Description. That one describes a single filter; the tool description here describes the whole Knowledge Base. The Dynamic Filters Deep-Dive lays out the difference.
To rebuild the vector index for the entire KB, run reindex from Admin Panel > Settings > Documents. This is admin-only and processes all KBs at once.When you edit and save an individual file’s content, only that file is automatically re-processed.
Choose the engine for extracting text from documents in admin settings.
Engine
Strengths
Best For
Default (PyPDF/Langchain)
No setup needed
Plain-text PDF, DOCX
Tika
Server required, supports many formats
Mixed file formats
Docling
Server required
Complex layout documents
Azure Document Intelligence
Azure subscription required, high-precision OCR
Scanned documents, table-heavy PDFs
Mistral OCR
Mistral API required
PDF OCR
Google Cloud Document AI
GCP subscription required
Documents with embedded images
LLM Vision
Vision LLM-based, high precision
Complex layouts, charts
Image files (PNG, JPG, etc.) are not text-indexed by default — they are stored but their contents are not searchable. To search text inside images, set the knowledge base’s document processing profile to Google Cloud Document AI or LLM Vision. (Azure Document Intelligence and Mistral OCR handle PDF and Office documents but do not support standalone image files.)
Engine used for files whose extension has no engine mapping
built-in engine
Extension → Engine Mapping
Use the selected engine for specific registered extensions
-
Text Splitter
Choose how to split text (default, token, semantic)
Default (character)
Preserve Tables
Keep tables attached to the preceding text chunk instead of splitting them during chunking
Enabled
Contextual Chunking
Add a per-chunk context summary to improve search accuracy
See the note below
Contextual chunking only takes effect when a Context Model is also selected. On a new profile the switch appears on, but the model is empty so nothing is applied. Pick a model and save to use it. It also does not apply to files attached ad hoc in chat — only to documents loaded into a knowledge base.
Search settings have two layers — global (admin) and per-KB.
Setting
Default
Description
Top K
Global setting
Chunks to retrieve via vector search
Reranker Top K
Global setting
Final chunks after reranking
Reranker Threshold
Global setting
Minimum reranker score (lower = more pass through)
Override search settings per Knowledge Base. Click the Search Settings icon on the KB edit screen.
All three fall back to the global setting when left empty — the greyed-out number in each field is the global value currently in effect.
Review or change it under Admin › Settings › Search Engine.
When question generation is enabled, the LLM pre-generates “questions a user might ask to find this content” for each chunk and stores them as separate vectors.
State
Search Method
Effect
Disabled
Content vectors only
Standard search
Enabled
Weighted sum of content + question vectors
Improved accuracy with user-question-style phrasing
Enabling question generation adds LLM calls during document processing. Processing time and cost may increase.
Configure question generation per KB independently of the global setting. Use the “Question Generation” section in the search settings modal to enable/disable and select the LLM model.
By default, there’s no limit on file count or capacity. Admins can set limits via environment variables.
What happens if I re-upload the same file?
When a file with the same name is detected, a duplicate confirmation dialog appears with Overwrite, Skip, or Cancel options.
Is text inside PDF images recognized?
The default extraction engine extracts text from images embedded in PDFs to a limited degree, but for scanned documents or image-heavy PDFs, Azure Document Intelligence, Google Cloud Document AI, or LLM Vision engines are much more accurate. To upload a standalone image file (PNG/JPG) and search its text, a Google Cloud Document AI or LLM Vision profile is required. Check the extraction engine setting with your admin.
Does changing dynamic filter metadata require re-embedding?
No. Metadata changes only update the vector index’s filter fields; existing vectors stay intact. Processed quickly without re-embedding.
What happens to search settings when multiple KBs are connected to one agent?
When multiple KBs are connected, search settings merge as follows:
Top K, Reranker Top K: Use the largest value across KBs
Reranker Threshold: Use the lowest value across KBs (more results pass)
Does changing the Document Processing Profile affect existing documents?
Existing documents’ vectors are not auto-reprocessed when the profile changes. To apply the new profile to existing documents, delete and re-upload them, or run a full reindex from admin settings.
What's the cost of LLM Vision or Context Preservation?
For a 10-page PDF + 20 chunks: LLM Vision (11 calls) + Context Preservation (20 calls) ≈ 31 LLM calls. Bulk uploading large documents can cost a lot, so use selectively for important docs.