该存储库将不会更新。存储库将以只读模式保持可用。
在此 Code Pattern 中,我们将使用 Node.js 和 Watson Assistant 创建一个聊天机器人。助理流程将检测客户情绪,并通过使用自然语言理解来识别位置实体来增强。对于常见问题解答,对 Discovery 服务的调用将使用段落检索从文档集合中提取答案。
当读者完成此模式后,他们将了解如何:
注意:此 Code Pattern 已更新,包含有关访问在 IBM Cloud Pak for Data 上运行的 Watson 服务的说明。这些更新可以在本地部署应用程序或将应用程序部署到 OpenShift on IBM Cloud 的具体说明中找到。所需的主要更改是您的应用程序需要额外的凭证才能访问托管 Watson 服务的 IBM Cloud Pak for Data 集群。
单击此处了解有关 IBM Cloud Pak for Data 的更多信息。
在本地克隆watson-banking-chatbot
。在终端中,运行:
git clone https://github.com/IBM/watson-banking-chatbot
提供以下服务:
注意:如果您将使用“
Deploy to Cloud Foundry on IBM Cloud
部署选项,那么您可以跳过后续步骤并直接跳转到“部署应用程序”部分。该部署选项会自动创建服务并将它们链接到您的应用程序。
这些说明将取决于您是使用 IBM Cloud Pak for Data 还是在 IBM Cloud 上配置服务。
单击展开一项:
对于这三项服务中的每一项,请使用以下说明。
默认情况下,这些服务不可用。管理员必须将它们安装在 IBM Cloud Pak for Data 平台上,并且您必须有权访问该服务。要确定是否已安装该服务,请单击“服务”图标 ( )并检查该服务是否启用。
以下说明取决于您是从 IBM Cloud 还是从 IBM Cloud Pak for Data 集群供应 Assistant。选择一项:
Provisioned Instances
列表中找到 Assistant 服务。View Details
。Open Watson Assistant
。Skills
选项卡。Create skill
Dialog skill
选项,然后单击Next
。Import skill
选项卡。Choose JSON file
,转到克隆的存储库目录,然后在data/conversation/workspaces/banking_US.json
中Open
JSON 文件(或在full_banking.json
中使用旧的完整版本)。 banking_IN.json
用于印度银行业务的内容, banking_US.json
用于美国银行业务的内容。Everything
并单击Import
。Launch tool
。Skills
选项卡。Create skill
。Dialog skill
选项,然后单击Next
。Import skill
选项卡。Choose JSON file
,转到克隆的存储库目录,然后在data/conversation/workspaces/banking_US.json
中Open
JSON 文件(或在full_banking.json
中使用旧的完整版本)。 banking_IN.json
用于印度银行业务的内容, banking_US.json
用于美国银行业务的内容。Everything
并单击Import
。要查找 Watson Assistant 的Skill ID
:
返回Skills
选项卡。
单击卡片右上角的三个点,然后选择View API Details
。
复制Skill ID
GUID。设置运行时环境时使用此值。
默认情况下,应用程序将导入并使用名为watson-banking-chatbot 的技能,但您可以通过设置运行时环境变量SKILL_ID
将其配置为使用其他技能。
要查看“助手”对话框,请单击该技能并选择Dialog
选项卡。这是对话框的片段:
默认情况下,应用程序将创建一个名为watson-banking-chatbot的集合,但您可以通过设置运行时环境变量DISCOVERY_COLLECTION_ID
和DISCOVERY_ENVIRONMENT_ID
将其配置为使用另一个集合。
以下说明将取决于您是从 IBM Cloud 还是从 IBM Cloud Pak for Data 集群供应 Discovery。选择一项:
Provisioned Instances
列表中找到 Discovery 服务。View Details
。Open Watson Discovery
。Project
,或创建一个新项目。Project
面板中,单击Collections
选项卡。New Collection +
。Upload data
选项并单击Next
。English
。Finish
以创建集合。Drag and drop your documents here or select documents
将内容与克隆存储库的data/discovery/docs
中的五个文档一起播种。Integrate and deploy
选项。然后选择View API Details
选项卡以查看Project Id
。设置运行时环境时,将其用作Collection ID
值。注意:Cloud Pak for Data 收集的
Environment Id
始终设置为default
。
在 IBM Cloud Dashboard 中找到 Discovery 服务。
单击该服务,然后单击Launch tool
。
单击Upload your own data
按钮创建新的数据集合。
English
Create
使用Drag and drop your documents here or select documents
将内容与克隆存储库的data/discovery/docs
中的五个文档一起播种。
单击右上角的api
图标并保存Environment ID
和Collection ID
因为在设置运行时环境时将需要它们。
单击以下选项之一以获取有关部署 Node.js 服务器的说明。
该网络应用程序提供了一个客户服务聊天机器人。通过在出现提示时按按钮或使用Type something
框与聊天机器人进行交互。该聊天机器人由 Watson Assistant 提供支持,并提供来自 Discovery 和 Natural Language Understanding 的附加信息。
错误:无法列出 Watson Assistant 的工作区:禁止:由于凭据无效,访问被拒绝。
使用
Deploy to IBM Cloud
按钮时会发生此错误。为ASSISTANT_APIKEY
配置运行时环境变量以允许自动配置默认技能或配置SKILL_ID
以使用其他技能。
失败:服务实例 wbc-discovery-service 的操作正在进行中。
在服务准备好之前启动应用程序时会出现此错误。目前,这是
Deploy to IBM Cloud
按钮的常见行为。在这种情况下,单击Run
按钮重新启动应用程序。当服务准备好时就会成功。
错误:环境 {GUID} 仍未激活,请在状态激活后重试
这在第一次运行时很常见。应用程序尝试在 Discovery 环境完全创建之前启动。等待几分钟,然后单击
Run
按钮重新启动应用程序。
错误:每个组织仅允许一个免费环境
为了使用免费试用版,创建了一个小型免费 Discovery 环境。如果您已有 Discovery 环境,则此操作将会失败。如果您不使用 Discovery,请检查您可能想要删除的旧服务。否则,请使用 .env DISCOVERY_ENVIRONMENT_ID 告诉应用程序您希望它使用哪个环境。将使用默认配置在此环境中创建集合。
此 Code Pattern 根据 Apache 许可证版本 2 获得许可。此 Code Pattern 中调用的单独第三方代码对象由其各自的提供商根据其自己单独的许可证进行许可。贡献须遵守开发者原产地证书 1.1 版和 Apache 许可证 2 版。
Apache 许可证常见问题解答