Files
Agents-Flex1/docs/zh/core/document.md
2025-08-27 19:57:20 +08:00

54 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Document 文档
在 Agents-Flex 中,`Document` 是一个带有向量数据的文档对象。其定义如下:
```java
public class Document extends VectorData {
/**
* 文档 ID
*/
private Object id;
/**
* 文档内容
*/
private String content;
}
```
- id文档 id
- content文档内容
由于其带有向量数据因此可以被存储在向量数据库VectorStore中。
在文档模块中,除了 `Document` 本身以外,还提供了如下几种组件:
- **DocumentLoader**:文档加载器,用于从不同的地方加载(读取)内容(比如 本地磁盘、数据库、网站 等)文档内容。
- **DocumentParser**:文档解析器,用于对不同类型的文档进行解析,最终得到 `Document` 对象,比如解析 word、pdf、html 等等。
- **DocumentSplitter**:文档分割器,用于对大文档进行分割,生成多个小文档,方便 Embedding 计算以及向量数据库存储。
## DocumentLoader 文档加载器
在 Agents-Flex 中,提供了如下两种文档加载器(未来会提供更多的类型):
- **FileDocumentLoader** 文件文档加载器
- **HttpDocumentLoader** http 文档加载器
未来我们会新增更多类型的文档加载器比如数据库加载、FTP 加载。或者特定的领域的加载器,比如微信公众号加载器等。用户也可以实现自己的加载,欢迎大家参与和分享。
## DocumentParser 文档解析器
文档解析器用于对不同类型的文档进行解析,最终得到 `Document` 对象Agents-Flex 已内置的文档解析器如下:
- **PdfBoxDocumentParser**:对 PDF 解析
- **PoiDocumentParser**:对 word 文档进行解析
## DocumentSplitter 文档分割器
文档分割器是用对对大文档进行分割为多个小文档的场景,不同的分割器可以用于不同的分割场景。目前 Agents-Flex 的提供的文档分割器如下:
- **SimpleDocumentSplitter**:可以通过正则表达式进行分割
- **MarkdownDocumentSplitter**:对 Markdown 内容进行分割
- **ParagraphDocumentSplitter**:通过段落进行分割