问题标签 [watson-assistant]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1635 浏览

node.js - 如何使用 Nodejs 从 IBM watson assistant V2 的响应中获取上下文变量?

我们使用 IBM watson 助手进行 NLU,后端使用 Nodejs 进行 API 调用。我能够连接并从 watson 助手获得 JSON 响应。为此,我使用了以下软件包“watson-developer-cloud/assistant/v2”。

我正在处理 watson 中的上下文/插槽,所以我只想在 JSON 响应中获取这些上下文变量/插槽的值。

我试图从 watson 发送文本响应(JSON 文件)中的上下文变量。

还尝试使用 watson 助手 V1 获取上下文,但问题在于会话处理,所以我更喜欢使用 watson 助手 V2

预期:我应该在 watson Json 响应中获得上下文

实际:我没有在 watson Json 响应中获得上下文

0 投票
1 回答
68 浏览

reactjs - React Redux Watson 聊天机器人状态问题

我是反应 redux 的新手。我正在尝试使用 react 和 redux 创建一个基于 watson 的聊天机器人。我链接到 watson api 的 nodejs 后端工作正常。但是,我对如何在前端处理用户和机器人消息感到有些困惑?

在组件确实安装时,我将操作发送到我的后端,然后我从 Watson 获得响应并相应地更新状态。第一次,我只向后端发送一个空字符串。当用户按下带有他的消息的发送消息按钮时。动作再次被触发。我正在使用 redux thunk 进行异步操作。然后,当我从后端收到响应时,我使用“SEND_USER_MSG_TO_SOE”类型和有效负载发送了该操作。现在我必须将存储在状态 + 新输入文本中的先前响应发送到后端以获得新响应。

在我的减速器中,我正在做这样的事情 [...state, action.payload]。现在它也覆盖了先前响应的输入值。你能解释一下吗?

我需要数组中的输入和输出消息。这样我就可以使用地图并将其显示为列表。

另一件事,如果我不返回 [...state, action.payload] 并且只发送有效负载。然后我只得到一个回应就离开了。如何使用先前的响应输入和输出从中创建数组?

我附上回复图片。请指导我

Watson 后端响应图像

谢谢见面

0 投票
1 回答
118 浏览

watson-assistant - Watson 助理搜索技能测试版

我希望我能得到一些帮助或有人为我指明正确的方向以获得支持。我正在尝试使用搜索技能 beta 功能(Watson Discovery Integration。我已根据此链接(https://cloud.ibm.com/docs/services/assistant?topic=assistant- )的说明创建了一个聊天机器人和发现服务Skill-search-add#skill-search-add)。当我点击搜索技能中的“尝试一下”时,一切似乎都运行良好。例如,当我输入“sauvignon blanc”时,聊天机器人搜索发现并出现返回正确的结果 。https://slack-files.com/T0A2350NL-FJ88ALAKH-90b286553b

当我通过预览链接尝试它时,它只是挂起 https://slack-files.com/T0A2350NL-FJ88ALAKH-90b286553b

当我要求浏览器“停止”它返回它正在搜索发现但没有返回响应 https://slack-files.com/T0A2350NL-FHUV1HD5H-e5e215940e

0 投票
1 回答
291 浏览

android - 如何修复 No Agent definition found for id Watson Assistant 错误?

问题在于创建一个使用 Watson 聊天机器人的应用程序。

好吧,我使用了 Vidyasagar Machupalli 代码,该应用程序可以正常工作,但聊天机器人的部分却没有。这是 logcat 错误:

0 投票
0 回答
637 浏览

java - Recyclerview java.lang.IndexOutOfBoundsException:无效索引0,大小为0

我正在使用 arraylist 和 Watson Conversation API 做一个聊天机器人,以在用户输入消息后获取机器人响应。用户将输入一些消息,机器人 API 将根据用户输入显示响应。当用户输入已在 Watson API 中设置的内容时,不会出现错误。但是,当用户键入机器人无法理解的消息时,就会出现此错误。

我不确定如何重组代码来解决这个问题。我希望有人可以帮助并告诉我该怎么做。提前谢谢你!:(

这是机器人适配器的编码:

错误:

0 投票
2 回答
1635 浏览

ibm-cloud - 如何在 Watson Assistant 上切换技能?

目前在 IBM Watson Assistant 中,您只能将一项技能分配给助理。如何以编程方式交换助手的主要技能?

0 投票
1 回答
208 浏览

ibm-cloud - 如何制作或添加 13 种默认语言以外的 ibm watson 语言

如何制作或添加除 13 种默认语言以外的 watson 语言(阿拉伯语、巴西葡萄牙语、中文(简体)、中文(繁体)、荷兰语、捷克语、法语、英语(美国)、德语、意大利语、日语、韩语、西班牙语)

0 投票
1 回答
367 浏览

ibm-cloud - 对 Heroku webhook 编程的 Watson Assistant 无法正常工作

我创建了一个 Webhook ( https://moviebotdf.herokuapp.com/get-movie-details ),它通过邮递员和对话流进行了测试并且工作正常。

我想通过编程调用将它与 IBM Watson Assistant 集成,但这并没有返回任何内容(即输出为“”)。

我检查了 IBM 支持(https://cloud.ibm.com/docs/services/assistant?topic=assistant-dialog-actions&locale=en)以及其他解决方案作为调用可以调用 webhook 的函数,但我什至有那里的成功较少。正如我从支持人员那里了解到的那样,应该可以从助手直接调用 Webhook(对于像我这样的新手来说更容易),因此是我寻求的解决方案。助手中的代码如下:

因此,Watson Assistant 在前一个节点中捕获了“prodname”(我检查了它,它工作正常)并发送到 Webhook。Webhook 中使用的变量也称为“prodname”。Webhook 的预期输出存储在变量“dataToSend”中,但如上所述,Watson 中的答案只有“”,因为“$dataToSend”是“”。

我也尝试使用 "result_variable": "dataToSend" 和 "result_variable": "$dataToSend" 没有成功,所以我猜是没有调用 webhook...

我是该主题的新手,因此请随时纠正我帖子中的任何问题。

无论如何提前谢谢!

阿德里亚

0 投票
2 回答
962 浏览

ibm-cloud - Watson 助手错误“Http 响应代码为 [401]”

我在 IBM 中创建了一个非常简单的云函数,我尝试通过 Watson 助手调用它。当我调用它时,出现错误“直接 CloudFunctions 调用不成功。Http 响应代码为 [401]”。

下面是我正在使用的代码。“prodname”取自用户并发送到函数以获取答案。当我调用它时,该功能工作正常。我从https://cloud.ibm.com/openwhisk/learn/api-key获得 ID 和密码。

凭据是否可能存在问题?

提前感谢您的帮助。

******重新编辑******

正如 data_henrik 所建议的,我提供了更多信息。我调用的函数如下,一个非常简单的回显函数:

我将 cloud_function 更改为 web_action,web_action 通过邮递员可以正常工作:

我现在收到的消息是“直接 CloudFunctions 调用不成功。Http 响应代码是 [404]”。助手也回答“with {“cloud_functions_call_error”:“请求的资源不存在。”}

阿德里亚

0 投票
2 回答
521 浏览

ibm-cloud - IBM Watson Assistant:在 JSON 编辑器中哪里设置 output.user_defined 对象?

IBM Watson Assistant apidoc v2说 output.user_defined 为

“包含响应中包含的任何自定义属性的对象。此对象包括在对话 JSON 编辑器中定义的任意属性,作为对话节点输出的一部分。”

但它没有说明在 JSON 编辑器中的哪个位置进行设置。是不是输出不足?

无法在 JSON 编辑器中将其设置为根级别,因为编辑器会抱怨只允许输出、output.generic、动作、上下文。

我应该把它放在 JSON 编辑器的哪里,以便它出现在 output.user_defined 中以响应 /message REST 调用?