Training on documents
Not everything worth answering lives on a web page. Price lists, product manuals, policy documents and brochures are often files — upload them directly.
Supported formats
| Format | Extensions |
|---|---|
.pdf | |
| Word | .doc, .docx |
| PowerPoint | .ppt, .pptx |
| Spreadsheet / data | .csv |
| Plain text | .txt |
Maximum file size: 25 MB. A larger file is rejected with a clear error rather than silently truncated.
Anything outside this list is refused. If you have a format that is not
supported — an .xlsx, a .pages document, an image — export or save it as PDF
first.
Uploading
- Go to Training and add a new source
- Choose File upload
- Select the file
- It is read and indexed automatically
Each file becomes one data source, with its own status and chunk count. You can delete it independently later.
What makes a document work well
The chatbot searches text. Anything that is not text is invisible to it.
Works well
- Text-based PDFs — ones where you can select and copy the text
- Word documents with real headings and paragraphs
- CSVs with a clear header row
- Slides with actual text in the text boxes
Works badly
- Scanned PDFs. A scan is a picture of a document. If you cannot select the text in a PDF reader, SiteMesh cannot read it either. Run it through OCR first, or paste the text.
- Text baked into images. An infographic price list contributes nothing.
- Complex multi-column layouts. Heavily designed brochures can extract in a jumbled reading order.
- Very long documents. A 400-page manual produces a huge number of chunks, which dilutes retrieval. Split it into focused documents by topic.
Naming matters more than you would think
Give files descriptive names before you upload. refund-policy-2026.pdf is more
useful than document-final-v3.pdf — both to the retrieval process and to you,
six months later, trying to work out which source to delete.
CSVs
CSVs work best as reference tables — a product list, a branch directory, a specification matrix. Keep the header row meaningful, because the column names carry the meaning of every row beneath them.
A CSV with columns A, B, C tells the chatbot nothing. One with Product,
Price, Availability tells it everything.
Updating a document
Documents are not watched for changes — the version you upload is the version indexed.
When you revise a document, you have two options:
- Refresh the source to re-read the file, or
- Delete the source and upload the new version, which is cleaner when the filename or scope has changed
Do not leave the old version indexed alongside the new one. Two contradictory price lists in the same knowledge base produce contradictory answers.
Uploading a logo instead?
Chatbot logos and avatars are a different upload with different rules — images only, 2 MB limit. See Appearance.