IBM Watson Chatbot与Discovery Service的集成

时间:2017-06-14 18:33:44

标签: ibm-cloud ibm-watson watson-conversation

我按照here显示的演示。一切都在演示中运行良好。当我尝试使用我的发现集合时,我的工作空间是按照演示链接中提到的相同步骤创建的,那么我将从对话中获得所有答案,但不是从发现中获得。

我通过在发现服务中上传各种文档和JSON对此进行了测试,但仍然无法从发现服务中获取,而且我的日志中也没有出现任何异常或错误。

我使用的是上面演示URL中提供的相同示例应用程序文件夹,我只更改了Workspace JSON和环境变量。

1 个答案:

答案 0 :(得分:2)

如果只更改工作区,则只会使用“对话”,因为Workspace_id来自对话服务。

要从IBM Bluemix使用Discovery服务,您需要在代码内或 .env 文件中设置变量。

在您的服务中点击:

enter image description here

之后,将显示3个选项,点击“服务凭据”

enter image description here

使用您的凭据和EnviromentID将代码与发现对话(Java)中的代码替换为。我在每个选项中附加了链接。

您在访问Discovery时可以看到EnviromentID,点击某个集合,在这种情况下,将显示在API信息中:

enter image description here

<强> Code

Discovery discovery = new Discovery("2016-12-01");
    discovery.setEndPoint("https://gateway.watsonplatform.net/discovery/api/v1");
    //username and password from Service Credentials
    discovery.setUsernameAndPassword("{username}", "{password}");
    //enviroment id from your document within your Discovery Service
    String environmentId = "{environment_id}";

    GetCollectionsRequest getRequest = new GetCollectionsRequest.Builder(environmentId).build();
    GetCollectionsResponse getResponse = discovery.getCollections(getRequest).execute();

.env file

在server.env文件的“发现”部分中。

  • 填写“密码”字段。

  • 填充“用户名”字段。

  • 添加您从发现用户界面中复制的COLLECTION_ID和ENVIRONMENT_ID

查看此发现服务的官方文档API Reference