首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何通过代码在DialogFlow Fulfillment中创建意图?

如何通过代码在DialogFlow Fulfillment中创建意图?
EN

Stack Overflow用户
提问于 2018-08-02 15:21:30
回答 2查看 3.1K关注 0票数 2

我已经开始学习DialogFlow,我想知道如何通过代码来创建一个意图,而不是通过图形用户界面来创建它。

以下是我现有的实现代码:

代码语言:javascript
复制
'use strict';

const functions = require('firebase-functions');
const { WebhookClient } = require('dialogflow-fulfillment');
const { Card, Suggestion } = require('dialogflow-fulfillment');

process.env.DEBUG = 'dialogflow:debug'; // enables lib debugging statements

exports.dialogflowFirebaseFulfillment = functions.https.onRequest((request, response) => {
    const agent = new WebhookClient({ request, response });
    console.log('Dialogflow Request headers: ' + JSON.stringify(request.headers));
    console.log('Dialogflow Request body: ' + JSON.stringify(request.body));

    function welcome(agent) {
        agent.add(`Welcome to my firstagent!`);
    }

    function fallback(agent) {
        agent.add(`I didn't understand!`);
        agent.add(`I'm sorry, can you try again??`);
        agent.add(`Can you please tell me again??`);
        agent.add(`Sorry, I don't understand`);
    }

let intentMap = new Map();
    //these are the intents that I've already created in dialog flow, But I want to create a new intent in code!
    intentMap.set('Default Welcome Intent', welcome);
    intentMap.set('Default Fallback Intent', fallback);
    agent.handleRequest(intentMap);
});
EN

回答 2

Stack Overflow用户

发布于 2018-08-02 18:53:53

您不能创建“在实现中”的意图,因为实现网络挂钩旨在响应当前在您的座席中设置的任何意图,而不是操纵它们。

但是,您可以使用Dialogflow API以编程方式操作代理,这是一个在many different programming languages中具有客户端库的普通Google Cloud API。要创建意图,您需要查看projects.agent.intents.create方法。

票数 3
EN

Stack Overflow用户

发布于 2018-08-03 06:05:49

Dialogflow具有创建意图API,因此您可以使用create intent API从您的对话流实现中创建意图

代码语言:javascript
复制
User request --> Dialogflow --> fulfillment 
                     |               |

                     -<-<- create intent API

而另一个答案正确地指出,新创建的意图不能用于响应实现请求(必须先训练代理,然后才能通过Dialogflow匹配新意图)。随着时间的推移,创建一个学习或动态变化的代理可能很有用。例如,如果您有很多针对特定主题的用户查询,例如足球,并且这些查询与您的备用意图相匹配,那么您可以通过编程方式使用这些查询作为训练短语来创建新的意图,并注意,当您构建该功能时,很快就会支持足球查询。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51647763

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档