Ibm cloud Watson对话api-动态响应变量
嗨,我已经用对话api创建了一个watson服务 我已经创建了一个简单聊天应用程序的普通演示。它按预期工作,但我不明白他们是如何在网络调用响应中创建动态变量设置的 这是汽车演示聊天应用程序的最新版本 另外,响应在上下文中设置的变量很少。我不知道怎么做Ibm cloud Watson对话api-动态响应变量,ibm-cloud,ibm-watson,watson,watson-conversation,Ibm Cloud,Ibm Watson,Watson,Watson Conversation,嗨,我已经用对话api创建了一个watson服务 我已经创建了一个简单聊天应用程序的普通演示。它按预期工作,但我不明白他们是如何在网络调用响应中创建动态变量设置的 这是汽车演示聊天应用程序的最新版本 另外,响应在上下文中设置的变量很少。我不知道怎么做 我搜索了他们的文档,但没有得到任何帮助 这些是上下文变量 对话框是无状态的,这意味着它不保留从一个交换到下一个交换的信息。您的应用程序负责维护任何连续信息。但是,应用程序可以将信息传递给对话框,对话框可以更新上下文信息并将其传递回应用程序 对话框上
我搜索了他们的文档,但没有得到任何帮助 这些是上下文变量 对话框是无状态的,这意味着它不保留从一个交换到下一个交换的信息。您的应用程序负责维护任何连续信息。但是,应用程序可以将信息传递给对话框,对话框可以更新上下文信息并将其传递回应用程序 对话框上下文是在对话框和应用程序代码之间传递信息的机制。
您可以在此处阅读更多有关上下文变量的信息您可以使用上下文变量从用户处获取一些键入的数据,或者使用Regex获取准确的数据 在这种情况下,为了使用,您必须在对话API中创建一个流,首先请求数据,然后在下一个节点中,添加“上下文”,提取用户键入的所有数据 您也可以使用系统实体,并使用@nameOfyourEntitie获取数据 第一个节点:
{
"output": {
"text": {
"values": [
"Please, type your number."
],
"selection_policy": "sequential"
}
}
}
{
"context": {
"number": "<? input.text ?>"
},
"output": {
"text": {
"values": [
"The number is $number."
],
"selection_policy": "sequential"
}
}
}
第二节点:
{
"output": {
"text": {
"values": [
"Please, type your number."
],
"selection_policy": "sequential"
}
}
}
{
"context": {
"number": "<? input.text ?>"
},
"output": {
"text": {
"values": [
"The number is $number."
],
"selection_policy": "sequential"
}
}
}
{
“背景”:{
“编号”:”
},
“产出”:{
“文本”:{
“价值观”:[
“号码是$number。”
],
“选择策略”:“顺序”
}
}
}
例如,要在对话和确认中使用此数据,您可以使用$number,并且您必须确保为应用程序中的用户定义了上下文变量,以满足您的需要
请参见与regex对话中的一个示例:
:
Obs:您可以使用regex内部条件或内部上下文变量来提取数据
{
"context": {
"number": "<? input.text.extract('^([0-9]+)(.*)') ?>"
}
{
“背景”:{
“编号”:”
}
您知道如何使用上下文变量吗?