> For the complete documentation index, see [llms.txt](https://verbatim-ai.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://verbatim-ai.gitbook.io/docs/documents.md).

# Documents

Your documents are the **fuel** for your AI Corpus. 🔋 They are what the Corpus reads, analyses and draws on to answer your questions with precision. Each Corpus has its own private, secure document space that you can update at any time.

![Your documents feed your Corpus's brain](/files/YJiUR4jzCnzhT6eK0IkN)

> 🔐 Your documents are stored in a space dedicated to your Corpus. It is **private and secure** — your data stays confidential.

## Accepted formats 🗂️

| Format               | Extension | Max size  |
| -------------------- | --------- | --------- |
| PDF                  | `.pdf`    | **50 MB** |
| Microsoft Word       | `.docx`   | **50 MB** |
| Microsoft PowerPoint | `.pptx`   | **10 MB** |

> 🔥 Files that exceed these limits are rejected — check the size before uploading.

After an upload, your Corpus needs a **few minutes** to index and analyse the content before it can answer questions about it. ❇️

## Adding documents ➕

The **Upload** button at the bottom of the page opens a page of its own, where you build your selection before anything is sent. Nothing leaves your machine until you press **Upload files**.

1. **Choose your files.** **Drag and drop** them onto the zone at the top of the page, or click **Browse files** to pick them from your machine. You can do both, several times: each selection is **added** to the list instead of replacing it, and any row can be removed with its ✕ button. Up to **20 files** at a time.
2. **Tag them** if you want — see [Tags](#tags) below.
3. **Choose Simple or Advanced.** **Simple** is the default and is the right choice almost every time. **Advanced** is covered below.
4. **Press Upload files.** Your documents are sent one after the other and the page shows which one is in flight.

**Cancel** takes you back at any point, including during the upload. Files already sent keep going; the one in flight and the ones not started are dropped and cleaned up automatically — nothing partial ever reaches your Corpus.

> 🖱️ **Drag and drop** works in your browser and in the desktop app. On phone and tablet, use **Browse files**.

A file is left out and reported to you when it is **too large**, in a **format we don't accept**, or **already in the list**.

## Tags 🏷️

Tags are **free labels** — a team, a year, a project — that you attach to your documents so you can find and filter them later.

Type a tag in the upload page and press **Enter**, or separate several with a comma. Tags apply to **every file of the selection**, which is what makes sending a batch together worthwhile. A document accepts up to **32 tags** of **64 characters** each.

Once a document is in your Corpus, its tags appear **under its name** in the file list. When a document carries more than five, the extra ones are folded into a **+n** chip — hover it to read them.

Tags are not fixed at upload time: choose **Edit** in a file's menu to attach new ones or take existing ones off, one file at a time. What you set there **replaces** the tags the file carried, so leave in place the ones you want to keep.

## Advanced options ⚙️

Most people never need these: **Simple** mode already sends everything your Corpus needs, plus your tags. **Advanced** adds three sections for the cases that do.

* **Provider** — a label recording where these documents came from. Defaults to `user`.
* **Metadata** — free key and value pairs stored alongside each document.
* **Chunking** — how each document is cut up before it is indexed.

### Chunking, in short ✂️

Your Corpus does not read a whole document at once: it reads **chunks**. Bigger chunks give the AI more context per answer but retrieve less precisely.

| Option                     | What it does                                                                                                                                                                                              |
| -------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Strategy**               | **By title** starts a new chunk at each section heading — right for reports, contracts and manuals. **Basic** ignores the structure and fills chunks to the limit — better for flat prose or transcripts. |
| **Maximum characters**     | The hard cap. No chunk ever exceeds it. Defaults to 10000.                                                                                                                                                |
| **New chunk after**        | A soft cap. Set it below the maximum for more even chunks.                                                                                                                                                |
| **Overlap**                | Characters repeated from the previous chunk, so an idea split across a boundary is not lost.                                                                                                              |
| **Overlap every chunk**    | Improves recall across boundaries, at the cost of text duplicated in your embeddings.                                                                                                                     |
| **Combine sections under** | *By title* only — merges consecutive small sections up to this size.                                                                                                                                      |
| **Sections across pages**  | *By title* only — lets a section span a page break.                                                                                                                                                       |

> ℹ️ Leave a field empty to keep the platform default. Sizes are in **characters**, not words.

## Previewing a document 👁️

Not sure a file is the one you were after? **Open its preview** and read it without leaving the app — no download, no local viewer.

**Click a file's row** in your document list, or pick **Preview** in its **⋮** menu. Both open the same page.

* **The page you are reading** fills the middle of the screen.
* **Every page of the document** is listed down the **right-hand side** as a thumbnail labelled **Page 1**, **Page 2** and so on. Click one to jump straight to it.
* **The arrows** under the page move you **back and forward** one page at a time, and the counter between them tells you where you are — *Page 3 of 24*.

Thumbnails load **as you scroll**, so a long document opens just as fast as a short one.

The header of the preview carries two buttons:

* **ℹ️ Summary** — what the document is about, as your Corpus understood it while indexing.
* **⬇️ Download** — save the original file to your machine.

> ⏳ **A document has to be indexed before it can be previewed.** Preview appears in the menu once processing is done. If the pages are still being rendered, the preview tells you so — come back in a few minutes.

> 💡 The pages you see are **images of the document**, rendered when it was indexed. To edit the file, download it.

## Managing your files 💁‍♀️

Six actions let you keep your Corpus's knowledge base up to date:

* **👁️ Preview** — click the file's row, or choose **Preview** in its menu, to read it page by page without downloading it. See [above](#previewing-a-document).
* **➕ Add** — click the **Upload** button at the bottom of the page to open the upload page described [above](#adding-documents), where you stage your files and their tags before sending them.
* **✏️ Edit** — choose **Edit** in the file's menu to change its name and the [tags](#tags) attached to it.
* **♻️ Replace** — choose **Replace** in the file's menu to push a new version of the file. It keeps its name and its place, only its content changes, and your Corpus relearns it straight away. The new file must be of the same format, so only files of that format are offered to you.
* **⬇️ Download** — choose **Download** in the file's menu to save the current version to your machine.
* **🗑️ Delete** — choose **Delete** in the file's menu to remove a file.

> ⚠️ **Deletion is final.** Once deleted, a file cannot be recovered, and your Corpus loses all knowledge of its content.

> ♻️ **Replacing drops the previous content.** The old version is not kept, and answers that cited the file lose their link to it. Replacing is also how you recover a file whose processing failed — no need to delete it and start over.

## Going further with connectors ⚡

Rather than uploading files one by one, you can synchronise an Corpus with your existing document sources — Google Drive, SharePoint, OneDrive, Confluence and more — so new documents are indexed automatically. See the [**Pro Edition**](/docs/pro-edition.md) guide for the full list of connectors.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://verbatim-ai.gitbook.io/docs/documents.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
