Add File
This commit is contained in:
53
docs/zh/core/document.md
Normal file
53
docs/zh/core/document.md
Normal file
@@ -0,0 +1,53 @@
|
||||
# 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**:通过段落进行分割
|
||||
Reference in New Issue
Block a user