是否可以在沃森对话服务中通过rest api上传工作区?

时间:2016-08-10 13:43:36

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

我已经在Bluemix上通过从csv导入对话服务创建了~100个意图。没关系。现在,我需要为它们创建对话框。我可以从服务的管理仪表板中做到这一点,但这是一项单调乏味的任务。如果我可以在Json中定义它们并通过REST API或通过服务仪表板(如意图)上传它,我可以轻松地自动完成任务。 我没有看到这个功能,所以问题是:是否有可用于上传对话框定义的API?感谢。

2 个答案:

答案 0 :(得分:3)

您可以通过服务仪表板上传一个json工作区(工作区页面上的“创建”按钮旁边有一个上传图标),这样您就可以直接在工作区json中定义对话框。

目前无法通过API自动上传工作区 - 只有一种方法可以发送输入,如the API docs所示。

答案 1 :(得分:0)

我已经使用了一年多的会话服务而且到目前为止我所看到的没有办法只能将Dialog上传到Conversation Service工作区而不导入整个工作区。但是,如果已下载任何旧工作区,则可以将新工作区导入到“对话”服务中。该文件采用.json格式,它将包含所有意图,实体和对话框条目。

现在回到你的问题,与Intent和Entity不同,通过.CSV或.JSON文件创建Dialog并不是那么简单。以下是json格式的工作区的对话开始节点。

{
    "go_to": null,
    "title": "Conversation Start",
    "output": {
        "text": {
            "values": ["Hello $username! How can I help you today?"],
            "selection_policy": "sequential"
        }
    },
    "parent": null,
    "context": null,
    "created": "2017-06-19T05:39:17.433Z",
    "updated": "2017-06-19T05:40:51.102Z",
    "metadata": null,
    "conditions": "conversation_start",
    "description": null,
    "dialog_node": "Conversation Start",
    "previous_sibling": null
}
  

$ username是一个上下文参数

正如您所看到的,正确形成它并不容易。在提及 dialog_node previous_sibling 时会出现一个小错误,并且流程将会更改。我认为这可能是他们没有为Dialog提供导入选项的原因。让我们希望IBM在未来使这个过程变得更简单。