文档 - Amazon Kendra

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

文档

本节说明如何对其支持的多种文档格式以及文档的不同字段/属性进行 Amazon Kendra 索引。

文档类型或格式

Amazon Kendra 支持常用的文档类型或格式PDF,例如HTML、 PowerPoint、Word 等。一个索引可以包含多种文档格式。

Amazon Kendra 提取文档内部的内容以使文档可搜索。解析文档的方式是为了优化对提取的文本和文档中任何表格内容(HTML表格)的搜索。这意味着将文档结构化为用于搜索的字段或属性。文档元数据(例如上次修改日期)可能是有用的搜索字段。

可以将文档组织成行和列。例如,每个文档是一行,每个文档字段/属性(例如标题和正文内容)都是一列。例如,如果您使用数据库作为数据来源,则应将数据结构化或组织成行和列。

您可以通过以下方式将文档添加到索引中:

如果要添加FAQ文件,可使用CreateFaqAPI添加存储在存储 Amazon S3 桶中的文件。您可以在基本CSV格式、标题中包含自定义字段/属性的CSV格式和包含自定义字段的JSON格式之间进行选择。默认格式为基本格式CSV。

以下内容提供了有关每种支持的文档格式以及在为文档编制索引时, Amazon Kendra 如何处理每种格式的信息。

文档格式 视为 如何处理文档 原始结构
便携式文档格式 (PDF) HTML 转换为HTML,然后提取内容。 非结构化
HyperText 标记语言 () HTML HTML HTML标签会被过滤掉以提取内容。内容必须介于主 HTML 起始标签和结束标签(<HTML>content</HTML>)之间。 半结构化
可扩展标记语言 () XML XML XML标签会被过滤掉以提取内容。 半结构化
可扩展样式表语言转换 () XSLT XSLT 标签会被过滤掉以提取内容。 半结构化
MarkDown (医学博士) 纯文本 提取内容时包含 MarkDown 语法。 半结构化
逗号分隔值 () CSV CSV 从每个单元格中提取的内容,将单个文件视为单个文档结果。 为FAQ文件结构化,否则为半结构化
微软 Excel(XLS和XLSX) XLS和 XLSX 从每个单元格中提取的内容,将单个文件视为单个文档结果。 半结构化
JavaScript 物体标记 (JSON) 纯文本 提取内容时包含JSON语法。 半结构化
富文本格式 (RTF) RTF RTF语法被过滤掉以提取内容。 半结构化
微软 PowerPoint (PPT) PPT, PPTX 仅从 PowerPoint 幻灯片中提取文本内容进行搜索。不会提取图像和其他内容。 非结构化
Microsoft Word DOC, DOCX 仅从 Word 页面中提取文本内容进行搜索。不会提取图像和其他内容。 非结构化
纯文本 (TXT) TXT 提取文本文档中的所有文本。 非结构化

文档属性或字段

文档具有与之关联的属性或字段。文档的字段是文档的属性或文档结构中包含的内容。例如,您的每个文档都可能包含标题、正文和作者。您也可以为特定文档添加自定义字段。例如,如果您的索引搜索税务文件,则可以为税务文件类型指定自定义字段,例如 W-2、1099 等。

在查询中使用文档字段之前,必须将其映射到索引字段。例如,标题字段可以映射到字段 _document_title。有关更多信息,请参阅映射字段。要添加新字段,必须创建要将该字段映射到的索引字段。您可以使用控制台或使用创建索引字段UpdateIndexAPI。

您可以使用文档字段来筛选回复并生成分面搜索结果。例如,您可以筛选回复以仅返回文档的特定版本,也可以筛选搜索结果以仅返回与搜索词匹配的 1099 种税务文件。有关更多信息,请参阅筛选和分面搜索

您也可以使用文档字段来手动调整查询响应。例如,在确定要在回复中返回哪些文档时,您可以选择提高标题字段的重要性以增加 Amazon Kendra 分配给该字段的权重。有关更多信息,请参阅调整搜索相关性

如果要将文档直接添加到索引,则可以将文档输入参数中的字段指定给BatchPutDocumentAPI。您可以在DocumentAttribute对象数组中指定自定义字段值。如果您使用的是数据来源,则用于添加文档字段的方法取决于数据来源。有关更多信息,请参阅映射数据来源字段

使用 Amazon Kendra 保留或常用文档字段

使用 UpdateIndex API,您可以使用DocumentMetadataConfigurationUpdates并指定要映射到等效文档属性/字段名称的 Amazon Kendra 保留索引字段名称来创建保留字段或常用字段。您还可以创建自定义字段。如果您使用数据源连接器,则大多数连接器都包含将数据源文档字段映射到 Amazon Kendra 索引字段的字段映射。如果您使用控制台,则要更新字段,方法是选择数据来源,选择编辑操作,然后在“字段映射”部分旁边继续配置数据来源。

您可以将 Search 对象配置为将字段设置为可显示、可分面、可搜索和可排序。您可以将 Relevance 对象配置为设置字段的排名顺序、提升持续时间或时间段,以应用于映射到特定字段值的提升、新鲜度、重要性值和重要性值。如果您使用控制台,则可以通过在导航菜单中选择 facet 选项来设置字段的搜索设置。要设置相关性调整,请在导航菜单中选择搜索索引的选项,输入查询,然后使用侧面板选项调整搜索相关性。创建字段后无法更改字段类型。

Amazon Kendra 有以下可供您使用的保留或常用文档字段:

  • _authors - 负责文档内容的一位或多位作者名单。

  • _category - 将文档置于特定组中的类别。

  • _created_at— 以 ISO 8601 格式创建文档的日期和时间。例如,2012-03-25T12:30:10 + 01:00 是中欧时间 2012 年 3 月 25 日下午 12:30(加 10 秒)的 ISO 8601 日期时间格式。

  • _data_source_id - 包含文档数据来源的标识符。

  • _document_body - 文档的内容。

  • _document_id - 文档的唯一标识符。

  • _document_title - 文档标题。

  • _excerpt_page_number— 显示文档摘录PDF的文件中的页码。如果您的索引是在 2020 年 9 月 8 日之前创建的,则必须重新编制文档索引才能使用此属性。

  • _faq_id—如果这是问答类型的文档 (FAQ),则为的唯一标识符。FAQ

  • _file_type - 文档的文件类型,例如 pdf 或 doc。

  • _last_updated_at— 上次更新文档的日期和时间,采用 ISO 8601 格式。例如,2012-03-25T12:30:10 + 01:00 是中欧时间 2012 年 3 月 25 日下午 12:30(加 10 秒)的 ISO 8601 日期时间格式。

  • _source_uri— 文档的可用URI位置。例如,URI公司网站上的文档。

  • _version - 文档特定版本的标识符。

  • _view_count - 查看文档的次数。

  • _language_code(字符串)-适用于文档的语言的代码。如果您未指定语言,默认为英语。有关支持的语言(包括其代码)的更多信息,请参阅添加非英语语言文档

对于自定义字段,您可以使用来DocumentMetadataConfigurationUpdates创建这些字段 UpdateIndexAPI,就像创建保留字段或公用字段时一样。您必须为自定义字段设置相应的数据类型。如果您使用控制台,则要更新字段,方法是选择数据来源,选择编辑操作,然后在“字段映射”部分旁边继续配置数据来源。某些数据来源不支持添加新字段或自定义字段。创建字段后无法更改字段类型。

以下是您可以为自定义字段设置的类型:

  • Date

  • 数字

  • String

  • 字符串列表

如果您使用将文档添加到索引中 BatchPutDocumentAPI,则会Attributes列出文档的字段/属性,然后使用该DocumentAttribute对象创建字段。

对于从 Amazon S3 数据源编制索引的文档,您可以使用包含字段信息的JSON元数据文件创建字段。

如果您使用支持的数据库作为数据来源,则可以使用字段映射选项配置字段。