我正在为特定平台构建基于 GCP 的问答支持聊天机器人(西班牙语),利用 Vertex AI Search 来分析包含该平台文档的 PDF 文件。然后,Dialogflow CX 获取所述文档并使用生成器通过所述数据存储生成履行。
生成器提示(我尝试用西班牙语编写提示,并对其可以使用的内容进行更多限制)
问题是,每当我提出问题时,Dialogflow Messenger 都会返回两件事:生成的响应和来自数据存储的引用。数据存储中的引用是正确的(也就是说,它应该正确分析文档并知道在哪里寻找答案),但生成的响应完全是虚构的(我假设模型在 Google 中搜索提示来寻找答案,而不是数据存储,尽管我在提示中指定仅使用数据存储)
在上图中,我问了一个在文档中明确回答的基本问题,第二个响应(即参考)是正确的,但生成的响应甚至不适用于上下文。我问了几个问题,这些问题都是明确提出的(就像我写了文档中已经存在的相同的文本字符串一样)并且可以通过推理来回答,但到目前为止没有一个能正确工作。
我尝试过调整生成器的参数,更改提示以限制数据存储的使用,并用英语创建聊天机器人,但这些都不起作用。
不要使用 $request.knowledge.answer,而是使用 $request.knowledge.answer[0]