> ## Documentation Index
> Fetch the complete documentation index at: https://docs.neuralfactory.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# File Uploads

> Upload documents directly to a knowledge base.

# File Uploads

The simplest way to add content to a knowledge base is by uploading files directly. Neural Factory supports a variety of document formats.

## Supported file types

| Format | Extensions | Notes |
| - | - | - |
| PDF | `.pdf` | Text-based and scanned (with OCR) |
| Word | `.docx`, `.doc` | Microsoft Word documents |
| Excel | `.xlsx`, `.xls` | Spreadsheets — each sheet is processed |
| Text | `.txt` | Plain text files |
| PowerPoint | `.pptx` | Slide content is extracted as text |
| CSV | `.csv` | Tabular data |

## Uploading files

<Steps>
  <Step title="Open the knowledge base">
    Navigate to **Knowledge Bases** and click on the knowledge base you want to add files to.
  </Step>

  <Step title="Add files">
    Click **Upload Files** or drag and drop files into the upload area. You can upload multiple files at once.
  </Step>

  <Step title="Wait for processing">
    Each file goes through the processing pipeline:

    1. **Uploaded** — File is received and stored
    2. **Processing** — Content is extracted and split into chunks
    3. **Indexed** — Chunks are embedded and added to the vector index
    4. **Ready** — Document is searchable by agents

    Processing time depends on file size and type. Most documents are ready within seconds to a few minutes.
  </Step>
</Steps>

## File size limits

* Individual file size limits depend on your deployment configuration
* For SaaS plans, file size limits vary by subscription tier

## Best practices

* **Use clear filenames** — Filenames are used as metadata and may appear in citations
* **Prefer text-based PDFs** — Scanned PDFs work but text-based PDFs produce better results
* **Update, don't duplicate** — If a document is updated, delete the old version and upload the new one
* **Organize with multiple KBs** — Rather than uploading hundreds of files to one KB, split them by topic


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.