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

# 维护文档

**知识库文档** 是指存储在系统内的各类文本信息资源，这些信息可以是 PDF、Word、Text 等格式的文件或者网页内容，为智能体提供高效的查询和学习材料。文档管理功能是知识库的核心之一，它使得用户能够上传、分类、检索和管理文档内容，确保系统能够快速、准确地从大量文档中提取相关信息。

## 管理文档

在知识库文档管理列表中，用户可以方便地对文档进行一系列操作，包括新增、转换嵌入、删除和分块设置等功能：

1. **新增文档**：用户可以将各种格式的文档上传到系统中，支持多种文档类型（如PDF、Word、文本等）。

2. **转换嵌入文档**：为了提升文档内容的检索效率，用户可以将文档内容转换为嵌入（embedding）。通过嵌入处理，文档中的信息会转化为向量形式，使得系统能够更高效地进行语义搜索和相关性匹配。

3. **删除文档**：用户可以删除不再需要的文档，以保持知识库的整洁。删除操作会立即生效，文档内容将从系统中移除。

4. **文档的分块设置**：用户可以单独对文档设置分块方式，将文档拆分为多个小块，方便管理和查询。这种分块设置能够帮助提升系统的处理速度和精度，尤其在进行大规模信息检索时尤为重要。

<img src="https://mintcdn.com/xpertai/CUk-Ab9Rv7YWeJmd/public/img/ai/kb/documents.png?fit=max&auto=format&n=CUk-Ab9Rv7YWeJmd&q=85&s=28f0346ff1db466ed5af0236f8bb9b0f" alt="Documents" width="3024" height="1714" data-path="public/img/ai/kb/documents.png" />

### 添加文档

XpertAI 知识库提供了文档上传功能，允许用户通过以下两种方式上传文档：

1. **上传本地文件**：用户可以直接上传本地文件。支持的文件格式包括 TXT、Markdown、PDF、HTML、XLSX、PPTX、CSV 等常见格式。每个文件的大小限制为不超过15MB。

2. **网页抓取**：用户还可以选择通过抓取网页文本来上传文档。这适用于从网页提取信息，进一步丰富知识库的内容。

#### 文件

文件上传后，可点击预览文档内容，对于数据量大的文件仅预览开头的部分内容。在上传文件后创建文档前仍然可以删除不需要的文件。

<img src="https://mintcdn.com/xpertai/CUk-Ab9Rv7YWeJmd/public/img/ai/kb/upload-file.png?fit=max&auto=format&n=CUk-Ab9Rv7YWeJmd&q=85&s=9c2550e492695921de889d2e526b68c5" alt="Upload Documents" width="3024" height="1714" data-path="public/img/ai/kb/upload-file.png" />

#### 网页

抓取在线网页支持 Playwright 和 Firecrawl 两种工具。
Playwright 通过本地服务器来抓取网页内容，Firecrawl 是通过 Firecrawl 提供商的集成连接来抓取网页内容。

<img src="https://mintcdn.com/xpertai/CUk-Ab9Rv7YWeJmd/public/img/ai/kb/web-scrape.png?fit=max&auto=format&n=CUk-Ab9Rv7YWeJmd&q=85&s=33f7411367288ef94970a93a1f75876a" alt="Web Scrape" width="2070" height="1351" data-path="public/img/ai/kb/web-scrape.png" />

* Playwright 操作步骤：
  在输入框中输入目标网页的完整 URL，例如 [https://xpertai.cn/](https://xpertai.cn/) ，并点击加载，可以在下方看到网页抓取结果。点击预览，能看到网页内容。点击下一步，和本地文档一样的配置方式。保存并处理。

* Firecrawl 操作步骤：
  与 Playwright 不同，首先要配置 **集成连接**。
  配置集成连接步骤：
  在页面左下角设置页面里找到集成链接，新增一个 Firecrawl 的集成连接。首先自定义一个名称。并且需要一个 API Key，点击页面上的获取一个 API Key 跳转到Firecrawl 网页，注册并获得自己的 API Key，然后复制并填写。
  抓取网页步骤：
  在配置集成连接之后，跳转到抓取页面的界面，选择刚刚配置的集成连接，输入网址，并且选择抓取模式和最大子网页。点击加载之后就会抓取网页内容。同样，点击下一步和保存，一个新的文档就创建好了。

#### 分块设置

* **Delimiter（分隔符）**：用户可以指定自定义的分隔符，用于将文本分割成更小的块。默认分隔符根据文本结构自动识别，但用户可根据需求调整。
* **Chunk Size（分块大小）**：用户可以设置每个分块的字符数（默认值为 1000 字符）。分块大小决定了每段文本的长度，影响检索的精度和效率。
* **Chunk Overlap（分块重叠）**：用户可设置相邻分块之间的重叠字符数（默认值为 100 字符）。重叠部分有助于保持文本上下文的连续性，减少信息割裂。

<img src="https://mintcdn.com/xpertai/CUk-Ab9Rv7YWeJmd/public/img/ai/kb/chunk-options.png?fit=max&auto=format&n=CUk-Ab9Rv7YWeJmd&q=85&s=833f7a248793a5ef9eade9505ccc3a52" alt="Chunk options" width="1888" height="1032" data-path="public/img/ai/kb/chunk-options.png" />

在分块之前，XpertAI 提供强大的文本预处理功能，确保输入内容干净且结构化。用户可以启用以下选项：

* **替换连续的空格、换行和制表符**：清理冗余的空白字符，规范化文本格式。

* **移除所有 URL 和电子邮件地址**：保护隐私并保持内容简洁，适合需要去噪的文档。

* **预览功能**：通过“Preview Chunk”按钮，用户可以实时查看分块后的文本效果。预览窗口显示每个分块的字符数及其内容，帮助用户验证设置是否满足需求。

* **示例**：预览可能显示如“Chunk-0 - 956 字符”或“Chunk-1 - 988 字符”的分块结果，用户可以根据实际内容调整参数。

#### 最佳实践

* **分块大小建议**：对于复杂文档，建议设置较大的“Chunk Size”（如 1000-2000 字符）以保留上下文；对于简短查询，较小的分块（如 500 字符）可能更合适。
* **重叠设置**：保持“Chunk Overlap”在 50-150 字符之间，以平衡上下文连续性和性能。
* **预处理优化**：如果文档包含大量格式化噪声（如多余换行或 URL），启用预处理规则以提升分块质量。

## 管理分块

* **分块查看与状态管理** 每个分块以简洁的卡片或列表项形式呈现，包含功能：分块编号与字符数，内容预览，启用/禁用状态，编辑选项。
* **编辑分块**
* **添加新分块**
* **搜索与过滤**

<img src="https://mintcdn.com/xpertai/CUk-Ab9Rv7YWeJmd/public/img/ai/kb/manage-chunks.png?fit=max&auto=format&n=CUk-Ab9Rv7YWeJmd&q=85&s=03f1a6db9c3c0ef65e7180e9c2a98e47" alt="Manage chunks" width="2562" height="1352" data-path="public/img/ai/kb/manage-chunks.png" />

## 如何使用知识库

在智能体页面新建一个数字专家，添加知识库，并将他们进行连接。如此，数字专家便可以调用知识库去检索内容。
建立过连接之后便可以进行测试，点击预览，并发送问题。从对话日志中可以看到AI的回答可以调用知识库Knowledge Retriever进行文本的检索，检索到内容后返回给大模型（LLM）。
大模型根据返回的内容来回答用户。
