如何使用Watson Discovery获取确切答案而不是整个文档?

时间:2017-01-23 08:08:16

标签: ibm-cloud ibm-watson wit.ai dialogflow watson-discovery

在测试发现服务后,至少对我来说似乎没用,或者我可能会遗漏一些东西。

当我查询时,它与文档匹配并返回整个文档。如果我的文档很大,那么对于所有查询,它返回与查询文本匹配的整个文档,这是无用的。

现在,我是否必须为每个查询创建单独的文档?

如果是这种情况, API.AI WIT.AI 是更好的选择。

请告诉我这里缺少的东西!

5 个答案:

答案 0 :(得分:8)

现在使用Discovery,您需要将文档分解一次以将它们放入集合中,然后针对Discovery中的集合的任何查询都将返回该组分离文档的结果。因此,如果您的文档没有更改,则此拆分应为一次性操作。
虽然自动识别查询的较大文档的相关部分的解决方案是Discovery的一个很好的考虑因素(注意:我为IBM Watson工作)。

答案 1 :(得分:1)

机智或api更类似于我们的沃森会话服务。 发现是关于从语料库中查找相关内容,而您提到的两个,以及我们的对话服务,更多的是使用NLP来响应以使用NLP来理解查询。

答案 2 :(得分:1)

现在有一个文档分段选项可应用于您的发现配置。这允许Discovery在最初加载和索引文档时对文档进行分段。这是在2017年10月最后添加的。请注意,存在一些限制,特别是在保留自定义元数据方面。这是doc的链接。

https://console.bluemix.net/docs/services/discovery/building.html#doc-segmentation

答案 3 :(得分:0)

Watson Discovery服务允许在数百个文档中进行认知搜索。 您可以使用Watson文档转换服务,以便以JSON格式自动为每个文档创建PAU(可能的答案单元)的粒度。然后,您可以在Watson Discovery Service中加载由Watson Document Conversion生成的PAU。 这样,Watson Discovery将为您的认知查询返回确切的答案。

答案 4 :(得分:0)

现在有一个passages参数可以传递给查询API。截至本文撰写时,它还处于测试阶段。它提供了文档中的位置以及“段落”文本和分数。

{
  "document_id": "dd2a7574-c266-4587-812b-69a47aa271d6",
  "passage_score": 23.961884787023948,
  "passage_text": " query block name in many hints to specify the query block to which the hint applies. This syntax lets you specify in the outer query a hint that applies to an inline view.\n\nThe syntax of the query block",
  "start_offset": 404,
  "end_offset": 607
},