标签: watson-conversation

始终从 Watson-Conversation 服务获取 {"error":"Unsupported Media Type"}

下面的代码非常简单。但是,当我执行它时,我总是从 Watson-Conversation 服务收到{"error":"Unsupported Media Type"}。请帮助告诉我问题出在哪里。

$curl = curl_init();

curl_setopt_array($curl, array(
    CURLOPT_POST => true,
    CURLOPT_URL => "https://watson-api-explorer.mybluemix.net/conversation/api/v1/workspaces/70b056e6-14a0-424f-9631-696272ce666e/message?version=2016-09-20",
    CURLOPT_USERPWD => "{MYUSERNAME}:{MYPASSWORD}",
    CURLOPT_POSTFIELDS => array('message' => '{ "input": { "text": "Hola" }, "alternate_intents": false }'),
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_SSL_VERIFYPEER => true
));

$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);

if ($err)
{
    echo "cURL Error #:" . $err;
}
else
{
    echo $response;
}
Run Code Online (Sandbox Code Playgroud)

非常感谢。

watson-conversation

1
推荐指数
1
解决办法
746
查看次数


如何让沃森的谈话认出时间?

在这种情况下,我试图看看是否有可能或者是否有办法让沃森根据时间识别这段时间.

  • 如果conversation_start夜间沃森说:晚上好!
  • 如果conversation_startBy By morning time Watson说:早上好!
  • 如果conversation_start按下午时间沃森说:下午好!

实际上我创建了一个权利,@time如果用户键入晚安,实体保存,Watson完全响应用户键入的内容.

我的回应条件是:

 @time, how are you?
Run Code Online (Sandbox Code Playgroud)

例:

  • 网友:晚安!
  • 沃森:晚安!,你好吗?

看到它是相同的答案,因为我创建了一个具有这些时期的实体

检查图片:

在此输入图像描述

我想知道如果有可能自动执行或者我必须开发一些代码来执行此操作,并且如果可能的话,一个示例.

ibm-watson watson-conversation

1
推荐指数
1
解决办法
1466
查看次数

来自Watson Translator Undefined的JSON响应

我试图通过来自IBM的API文档从我的node.js应用程序中使用Watson转换器服务https://www.ibm.com/watson/developercloud/alchemyvision/api/v1/#apiexplorer

var request = require("request");
var LanguageTranslatorV3 = require('watson-developer-cloud/language-translator/v3');

var english_message

var languageTranslator = new LanguageTranslatorV3({
    version: '2018-05-01',
    username: '1234',
    password: '1234',
    url: 'https://gateway.watsonplatform.net/language-translator/api'
  });


function translatorEnglish(message) {
  var parameters = {
    text: message.text,
    model_id: 'es-en'
  };
  languageTranslator.translate(
    parameters,
    function(error, response, body) {
      if (error)
        console.log(error)
      else
        console.log(JSON.stringify(response, null, 2));
    }
  );
 }
Run Code Online (Sandbox Code Playgroud)

我在日志中得到以下正确的响应

{
  "translations": [
    {
      "translation": "Hi."
    }
  ],
  "word_count": 1,
  "character_count": 4
}
Run Code Online (Sandbox Code Playgroud)

但是当我尝试提取输出转换值时,我总是得到输出Undefined.

console.log(response.translations.translation); => undefined
Run Code Online (Sandbox Code Playgroud)

如果我做错了什么,你可以检查并告诉我吗?

谢谢

javascript undefined node.js ibm-watson watson-conversation

1
推荐指数
1
解决办法
93
查看次数

Watson Python SDK:“ DetailedResponse”对象不可下标

当我将Watson Assistant示例代码用于Python时,它可以在python 3.6.5上完美运行。

但是我得到了错误:

TypeError: 'DetailedResponse' object is not subscriptable
Run Code Online (Sandbox Code Playgroud)

当我尝试在python 3.6.6中执行代码时,它失败的命令是:

if response['output']['text']:
print(response['output']['text'][0])
Run Code Online (Sandbox Code Playgroud)

如果我打印对象响应的类型,则会得到:

任何指针将不胜感激!

python-3.x ibm-watson watson-conversation

1
推荐指数
1
解决办法
1424
查看次数

IBm Cloud Watson Assistant:如何获取工作区的ID

我使用IBM Cloud Watson Assistant制作了一个聊天机器人,我需要在我的Android应用程序中使用它.这是我的config.xml代码:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- Watson Conversation Service Credentials -->
    <string name="workspace_id">???</string>
    <string name="conversation_username">2m5tAP3W_ELNzcKlc4B5mRN6R-QXtF1C9zS22XzYXYbA</string>
    <string name="conversation_password">2m5tAP3W_ELNzcKlc4B5mRN6R-QXtF1C9zS22XzYXYbA</string>

    <!--Watson Speech-To-Text Service Credentials-->
    <string name="STT_username">yP4_u_mm3mhVNn9zcgIMFakfbcUO2Q4L5cxbLhYpn8WN</string>
    <string name="STT_password">yP4_u_mm3mhVNn9zcgIMFakfbcUO2Q4L5cxbLhYpn8WN</string>

    <!--Watson Text-To-Speech Service Credentials-->
    <string name="TTS_username">-t1Rljl4Mu1pdno09T2OXeMnQOyPPBgrEDieZSwsVzJX</string>
    <string name="TTS_password">-t1Rljl4Mu1pdno09T2OXeMnQOyPPBgrEDieZSwsVzJX</string>

</resources>
Run Code Online (Sandbox Code Playgroud)

我知道在服务中使用API​​密钥而不是userName和密码.我的问题是我找不到聊天机器人的工作区ID.我搜索了很多,但我找不到它.

android ibm-watson watson-conversation ibm-cloud

1
推荐指数
1
解决办法
2311
查看次数

将 Watson Assistant 的答案传递给变量 Python

我正在尝试将 Watson Assistant 的输出放入一个变量中。因此,据我搜索,我需要获取 json 的“输出”和“文本”部分(起初它是一个 dict,但后来我们将其解析为 json)。但我似乎无法理解:

我已经在这两个问题中搜索过:这是一个给 watson 这个一个用于解析 json

代码非常简单:访问我的机器人,并输入“行程”。我已经取出了 api 和工作区,但我有它们(显然)。

if __name__ == '__main__':
    assistant = watson_developer_cloud.AssistantV1(

        iam_apikey='{YOUR API HERE}',
        version='2018-09-20',
        url='https://gateway-syd.watsonplatform.net/assistant/api'
    )

    response = assistant.message(
        workspace_id='{YOUR WORKSPACE HERE}',
        input={
            'text': 'trips'
        }
    ).get_result()
    fullResponse=json.dumps(response, indent=2)
    print(fullResponse)
    print("testing to print the output: ")
    respuesta=json.dumps(response, indent=2)
    #print(respuesta['output'][0]['text'])
    print(respuesta['output']['text'])
Run Code Online (Sandbox Code Playgroud)

和输出:

Traceback (most recent call last):
  "intents": [
  File "C:/Users/.PyCharmCE2018.3/config/scratches/pruebaMain.py", line 105, in <module>
    {
    print(respuesta['output']['text'])
      "intent": "trips",
TypeError: string indices must be integers
      "confidence": 1
    } …
Run Code Online (Sandbox Code Playgroud)

python watson-conversation ibm-cloud

1
推荐指数
1
解决办法
490
查看次数

Watson 对话的预构建意图

今天在我的Raspberry Pi上设置 IBM Watson Conversation 服务后,我很失望地看到我必须写出所有可能的输入(意图)和输出(实体)。把这归结为我对机器学习的极端天真,但是有没有办法与现有的对话功能相结合?

例如,我确信 Watson 已经知道 Hello 的所有单词及其正确的响应。或者如何回答各种愚蠢的问题。有什么办法可以利用我们在 Jeopardy 上看到的 Watson吗?

谢谢你的帮助!

watson-conversation

0
推荐指数
1
解决办法
994
查看次数

如何在bluemix应用程序上设置时区?

我在沃森谈话中遇到时间价值问题.在"立即尝试"面板中,当前时间是正确的(使用now()函数),但是当我使用bluemix或facebook messenger上部署的对话时,时间是两个小时.例:

  in "try now" panel -> 13:30
  in bluemix chat -> 11:30
  in facebook messenger -> 11:30
Run Code Online (Sandbox Code Playgroud)

似乎像bluemix自动设置utc +00.我该如何解决这个问题?

提前致谢!

ibm-watson watson-conversation ibm-cloud

0
推荐指数
1
解决办法
716
查看次数

Watson Conversation Service-未经授权:由于凭据无效而拒绝访问

我试图通过Java应用程序访问Watson对话服务。因此,我在Bluemix上创建了Service并编写了一个小型Application。

package de.kkh.comp.WatsonDemo;

import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import java.util.Map.Entry;

import com.ibm.watson.developer_cloud.conversation.v1.ConversationService;
import com.ibm.watson.developer_cloud.conversation.v1.model.MessageRequest;
import com.ibm.watson.developer_cloud.conversation.v1.model.MessageResponse;

public class App {

private static final String USERNAME = "{USERNAME}";
private static final String PASSWORD = "{PASSWORD}";
private static final String WORKSPACE_ID = "{WORKSPACE_ID}";

public static void main(String[] args) {
    ConversationService service = new ConversationService(ConversationService.VERSION_DATE_2017_02_03);
    service.setUsernameAndPassword(USERNAME, PASSWORD);

    MessageRequest newMessage = new MessageRequest.Builder().inputText("Hallo").context(new HashMap<String,Object>()).build();

    MessageResponse response = service.message(WORKSPACE_ID, newMessage).execute();

    System.out.println(response);
}
}
Run Code Online (Sandbox Code Playgroud)

我希望我能得到Watson Service的简单答复。

如果我运行该应用程序,尽管我使用了Bluemix给出的凭证,但是会出现未授权异常。

Aug 02, 2017 7:56:19 PM okhttp3.internal.platform.Platform …
Run Code Online (Sandbox Code Playgroud)

java watson-conversation ibm-cloud

0
推荐指数
1
解决办法
1773
查看次数