- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用 Watson Assistant 创建了一个聊天机器人。我通过 API 调用使用它。
假设有两个不同的人想要同时使用我的聊天机器人。那么我必须做什么才能让 Watson 明白是两个不同的人正在发送请求。
是否有任何额外的参数可以包含来处理这个问题?如果是,请提及。
//var objDiv = document.getElementById("chatbotid");
//objDiv.scrollTop = objDiv.scrollHeight;
document.querySelector("#input").addEventListener("keypress", function(e) {
var key = e.which || e.keyCode;
if (key === 13) { //Enter button
var input = document.getElementById("input").value; //storing input value
document.getElementById("input").value = "";
TempChatInput = document.getElementById("chatbot");
TempChatInput.innerHTML += "user: " + input + "<br/><br/>";
//document.getElementById("user").innerHTML = input;
output(input);
}
});
function output(input) {
//var xhr = new XMLHttpRequest();
var newData = "{\"input\": {\"text\":" + "\"" + input + "\"" + "}}";
//var input = $('input').val();
var dataText;
$.ajax({
url: "https://gateway.watsonplatform.net/assistant/api/v1/workspaces/myWorkspaceID/message?version=2018-02-16",
beforeSend: function(xhr) {
//xhr.setRequestHeader("Authorization", "Basic" + btoa(username + ":" + password));
xhr.setRequestHeader("Authorization", "Basic " + btoa("my username" + ":" + "my password"));
},
type: "POST",
dataType: "json",
contentType: "application/json",
processData: false,
//data: "{\"input\": {\"text\": \"location\"}}",
data: newData,
success: function(data) {
dataText = data["output"]["text"];
//console.log(dataText);
TempChat = document.getElementById("chatbot");
TempChat.innerHTML += "Chatbot: " + dataText + "<br/><br/>";
//document.getElementById("chatbot").innerHTML = dataText;
//alert(dataText);
var objDiv = document.getElementById("chatbotid");
objDiv.scrollTop = objDiv.scrollHeight;
},
error: function() {
alert("Cannot get data");
}
});
//document.getElementById("chatbot").innerHTML = dataText;
}
body {
color: #421;
font-weight: bold;
font-size: 18px;
background: #069597;
background-image: url("girl.png");
background-repeat: repeat-y;
}
span {
color: #104A70;
padding: 1px;
}
::-webkit-input-placeholder {
color: #104A70;
}
#main {
position: fixed;
top: 10%;
right: 60px;
width: 400px;
border: 0px solid #421;
padding: 40px;
}
#main div {
margin: 10px;
}
#input {
border: 0;
background: rgb(255, 255, 255);
padding: 5px;
border: 1px solid #421;
color: #104A70;
}
#line {
text-align: center;
background: #3BB2B4;
}
#chatbotid {
overflow: scroll;
width: 400px;
height: 400px;
background: rgb(230, 230, 225);
padding: 5px;
border: 2px solid #104A70;
}
<div id="line">
<hr/>
<h1 style="color:rgb(255,255,255);"> Vawsum Help Desk</h1>
<hr/>
</div>
<div id="main">
<!-- <div> <span id="user"></span></div> -->
<!--I have deleted user from this line -->
<div id="chatbotid"> <span id="chatbot"></span></div>
<!--I have deleted chatbot from this line -->
<div><input id="input" type="text" placeholder="say something..." autocomplete="off" /></div>
</div>
最佳答案
当您与 Watson Assistant 建立连接时,您会收到随响应返回的对话 ID。
您可以使用它来确定两个不同的用户是否在同时通话。
<小时/>根据评论更新:
Watson Assistant 是无状态的。它没有以前调用的内存。
当您返回收到的上下文对象时,它将从上次停止的地方继续。如果您不提供对话 ID,或者对话 ID 无效,它将生成一个新的对话 ID。
关于javascript - Watson Assistant 如何区分不同用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50601870/
我正在使用 watson-developer-cloud npm 模块调用 IBM Watson 问答 API。我调用服务的代码如下: question_and_answer_healthcare.a
我正在使用我公司想要创建的可能对话来测试 Watson Conversation API。我们正在开发巴西葡萄牙语。鉴于葡萄牙语是一种丰富的语言,有时用户会犯错误,我们希望预测这些可能的错误,主要是使
我正在使用我公司想要创建的可能对话来测试 Watson Conversation API。我们正在开发巴西葡萄牙语。鉴于葡萄牙语是一种丰富的语言,有时用户会犯错误,我们希望预测这些可能的错误,主要是使
有什么方法可以告诉沃森他应该重置对话“在这一点之后,每次询问都会像对话开始一样”? tks 最佳答案 Watson 对话是无状态的。因此,如果没有上下文对象,它对您在对话中的位置一无所知。 要重置对话
我只熟悉Watson Assistant因为我已经用它做了一些工作,但我从未使用过 Watson Assistant Solutions。 它是基于 Watson Assistant 的新 API 还
在许多情况下,将已知信息(例如用户的姓名以呈现个性化问候语)传递到新的 Watson Dialog 对话中可能会有所帮助,以避免向用户询问多余或不必要的问题。在查看 API 文档时,我没有看到这样做的
在我的 Watson Assistant 应用程序中,我想捕获上下文中的多个实体,并且还有一个槽来向用户提问。这是一个例子: 用户:我想从多伦多飞往波士顿 Watson 正确检测到: intent:
嗨,我可以创建一个 watson 对话机器人吗,我有一个上下文变量,可以在某些情况下控制流程...... 我需要测试当时是否已经定义了(存在)上下文变量……有人知道该怎么做吗? 我已经试过了: $in
有没有人有嵌套 Intent 的好例子,尤其是在 #yes 和 #no 是子节点的情况下。我得到的情况是 API 返回的是 Intent 值,但输出文本来自“Anything else”! 最佳答案
在网络研讨会中,它提到了使用多个对话工作区来处理项目的不同主题(例如功能性对话与离题)。我们应该如何实现这个设计? 假设我们有两个工作区,一个是功能主题,另一个是非主题。如何确定请求应该进入哪些工作空
我知道您在创建自然语言分类器时必须提供训练数据(在 csv 文件中)。 如果我想在这些数据可用时为分类器添加更多训练数据,我应该如何进行?我应该用原始数据+新数据重新创建分类器吗?有没有办法将额外的数
从昨天开始,对话服务有时不回复回复。它识别意图和实体,但响应中没有文本。这是我使用 CURL 时得到的结果: {"input":{"text":"soporte"},"context":{"conve
我知道您可以转到 Watson Conversation 界面,右键单击工作区,然后下载工作区的 JSON,其中包含意图,如下所示:Is there any way to export intents
例如:如果用户在 Watson Conversation Service 中写入: “我不想在我的新房子里有游泳池,但我想住在公寓里” 你怎么知道用户不想有游泳池,但他喜欢住在公寓里? 最佳答案 这是
我希望在我的项目中实现 IBM Watson Conversation,但我无法理解的一件事是,如何将它与实时搜索集成。示例 我想为我的客户提供酒店搜索服务,我想从对话中提取城市、日期、客人数量等实体
我刚刚去了 Bluemix,看到有一个名为 Discovery 的新实验服务。显然,它可以提取 PDF、Word 文档和 HTML 页面以及其他文件类型。 该服务与文档转换 (DC) 有何区别?以前,
我想通过我的 Node 应用程序将一些值以 IBM Watson 中的上下文变量的形式传递给前端。我怎样才能实现它? 我尝试将要添加的值添加到当前上下文变量对象并将其发回。仍然没有帮助。有什么办法可以
我刚刚去了 Bluemix,看到有一个名为 Discovery 的新实验服务。显然,它可以提取 PDF、Word 文档和 HTML 页面以及其他文件类型。 该服务与文档转换 (DC) 有何区别?以前,
我正在尝试 IBM Watson Conversations 中的插槽功能,但遇到了一个我不知道如何解决的问题。 我有一个从用户那里收集大量信息的用例,因此使用 Slots 功能是有意义的。不幸的是,
有什么方法可以列出关于属于 Watson Discovery 特定集合的文档的元数据(如 ID、文件名等)? 有些 API 方法需要文档 ID(例如“删除文档”),因此显然应该有一种方法可以获取此 I
我是一名优秀的程序员,十分优秀!