【问题标题】:Watson Assistant CURL API: How to handle the Responds with OPTIONS?Watson Assistant CURL API:如何使用 OPTIONS 处理响应?
【发布时间】:2018-07-18 04:01:14
【问题描述】:

我正在试用 IBM Watson Assistant。最终目标是通过Watson Assistant's cURL API Endpoints 将它与我的自定义 PHP 后端集成(因为还没有完整的 PHP SDK)

当我设置一个以 OPTIONSTEXT 除外)作为响应的对话框时,OPTIONS 在它自己的“试试看”聊天窗口。但是当我像往常一样通过 cURL API 查询它时,除了带有 OPTIONS 的对话框之外,其他一切都在工作。

这是试用窗口中的工作示例:

但是,下面是 cURL API 的返回结果(针对同样的问题):

stdClass Object
(
    [intents] => Array
        (
            [0] => stdClass Object
                (
                    [intent] => SOexchangenetworks
                    [confidence] => 1
                )

        )

    [entities] => Array
        (
        )

    [input] => stdClass Object
        (
            [text] => Which Stack Exchange Network should I go to look for an answer?
        )

    [output] => stdClass Object
        (
            [text] => Array
                (
                )

            [nodes_visited] => Array
                (
                    [0] => node_1_1531885028865
                )

            [log_messages] => Array
                (
                )

        )

    [context] => stdClass Object
        (
            [conversation_id] => 77ec8fc6-fb6a-4890-92b4-c58cdbc85ba3
            [system] => stdClass Object
                (
                    [dialog_stack] => Array
                        (
                            [0] => stdClass Object
                                (
                                    [dialog_node] => root
                                )

                        )

                    [dialog_turn_counter] => 1
                    [dialog_request_counter] => 1
                    [branch_exited] => 1
                    [branch_exited_reason] => completed
                )

        )

)

问题亮点:

当 Dialog Respond 包含 OPTIONS 时,您可以看到 [output][text] 部分完全空白。

注意:通常,[output][text] 部分包含来自 Watson 的回复,如果回复类型为 Text。我一直在使用这个 cURL API。

请问我该如何解决?

【问题讨论】:

  • 你的 curl 命令是什么?

标签: php curl ibm-cloud watson-conversation


【解决方案1】:

基于 Watson Assistant release 注释,于 2018 年 7 月添加了所谓的“丰富响应”。current API version2018-07-10。在您的 curl 命令中,您使用的是 API 版本 2018-02-16。再次尝试 curl 命令,但我们使用的是当前 API 版本。

【讨论】:

  • 天哪,非常感谢。这样可行!那么不定义版本号是否安全,请(又名)最好忽略该参数?
  • 版本是所有 API 调用的必需参数。原因是有时会发生重大变化,即语义可能会发生变化。因此,需要版本来定义您的预期结果。请标记为已回答。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-08-27
  • 2021-04-23
  • 1970-01-01
  • 1970-01-01
  • 2019-11-02
相关资源
最近更新 更多