本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
注意
功能支持因索引类型和使用的搜索 API 而异。要查看您使用的索引类型和搜索 API 是否支持此功能,请参阅索引类型。
Amazon Kendra 查询生成按相关性排名的搜索结果。索引中的可搜索字段或属性都对排名有影响。
您可以通过相关性调整来修改字段或属性对搜索相关性的影响。要调整搜索相关性,您可以在索引级别手动调整,也可以在索引级别为索引设置调整配置,还可以在查询级别覆盖在索引级别设置的配置,从而进行调整。
当使用相关性调整时,如果查询包含与字段或属性匹配的字词,则给出结果的响应速度将得到提升。您还可以指定有匹配时,文档将获得多少提升。相关性调整不会 Amazon Kendra 导致在查询响应中包含文档,它只是 Amazon Kendra 用于确定文档相关性的因素之一。
您可以提升索引中的特定字段或属性,从而为特定响应分配更高的重要性。例如,如果有人搜索“re:Invent 是在何时?” 你可以提高该_last_update_at
领域文档新鲜度的相关性。或者,在研究报告索引中,您可以提升“source”字段中的特定数据来源。
您还可以根据投票或查看次数来提升文档,这在论坛和其他支持知识库中很常见。例如,您可以组合提升,从而提高查看次数和最近查看次数较多的文档。
您可以使用 Importance
参数设置文档获得的提升量。Importance
越高,字段或属性越能提升文档的相关性。当您调整索引或在查询级别调整时,请以较小的增量来增加 Importance
参数的值,直到实现所需的效果。要确定您是否改善了搜索结果,请执行搜索并将结果与之前的查询进行比较。
您可以指定日期、数字或字符串属性来调整索引或在查询级别进行调整。StringList
类型的字段或属性只能在索引级别进行调整。对于何时提升结果,每个字段或属性都有特定的条件。
-
日期字段或属性 - 日期字段有三个特定的条件:
Freshness
、Duration
和RankOrder
。-
Duration
设置应用提升的时间段。例如,如果您将时间段设置为 86400 秒(即一天),则提升在一天后会开始减弱。重要性越高,效果下降的速度越快。 -
Freshness
确定将文档应用于字段或属性时的新鲜程度。如果您将Freshness
应用到创建日期或上次更新日期的字段,则认为最近创建或上次更新的文档比旧文档“更新鲜”。例如,如果文档 1 是在 11 月 14 日创建的,而文档 2 是在 11 月 5 日创建的,则文档 1 比文档 2 的新鲜度“更高”。另外,如果文档 1 上次更新是在 11 月 14 日,而文档 2 上次更新是在 11 月 20 日,则文档 2 比文档 1 的新鲜度“更高”。文档越新鲜,应用这种提升的次数就越多。索引中只能有一个Freshness
字段。 -
RankOrder
按升序或降序应用提升。如果指定ASCENDING
,则更晚的日期优先。如果指定DESCENDING
,则更早的日期优先。
-
-
数值字段或属性-对于数值字段或属性,您可以指定在确定字段或属性的相关性时 Amazon Kendra 应使用的等级顺序。如果指定
ASCENDING
,则较大的数字优先。如果指定DESCENDING
,则较小的数字优先。 -
字符串字段或属性 - 对于字符串字段或属性,您可以创建字段的类别,以便为每个类别分配不同的提升。例如,如果您提升名为“Department”的字段或属性,则可以对“HR”中的文档和“Legal”中的文档分配不同的提升。您可以提升类型
String
的字段或属性。只能在索引级别提升StringList
字段。
在索引级别进行相关性调整
您可以使用控制台
以下示例将该_last_updated_at
字段设置为文档的Freshness
字段。
"DocumentMetadataConfigurationUpdates" : [
{
"Name": "_last_updated_at",
"Type": "DATE_VALUE",
"Relevance": {
"Freshness": TRUE,
"Importance": 2
}
}
]
以下示例对“Department”字段中的不同类别应用不同的重要性。
"DocumentMetadataConfigurationUpdates" : [
{
"Name": "department",
"Type": "STRING_VALUE",
"Relevance": {
"Importance": 2,
"ValueImportanceMap": {
"HR": 3,
"Legal": 1
}
}
}
]
在查询级别进行相关性调整
您可以使用查询 API 在查询级别调整字段或属性的相关性。
控制台不支持在查询级别进行相关性调整。
在查询级别进行调整可加快相关性调整的测试过程,因为您无需为每个测试手动更新索引中的调整配置。您可以通过在查询中传递调整配置来调整文档的相关性。然后,您可以查看从不同的配置获得的不同结果。在查询中传递的配置会覆盖在索引级别设置的配置。
以下示例覆盖了应用于“Department”字段和在索引级别设置的每个部门类别的重要性,如上面的示例所示。当用户输入搜索查询时,“Department”字段的重要性相当高,而 Legal 部门的重要性高于 HR 部门。
"DocumentRelevanceOverrideConfigurations" : [
{
"Name": "department",
"Type": "STRING_VALUE",
"Relevance": {
"Importance": 2,
"ValueImportanceMap": {
"HR": 2,
"Legal": 8
}
}
}
]