zoukankan      html  css  js  c++  java
  • 【Azure 机器人】微软Azure Bot 编辑器系列(4) : 使用语言生成功能[LG: Language Generation] (The Bot Framework Composer tutorials)

    欢迎来到微软机器人编辑器使用教程,从这里开始,创建一个简单的机器人。

    在该系列文章中,每一篇都将通过添加更多的功能来构建机器人。当完成教程中的全部内容后,你将成功的创建一个天气机器人(Weather Bot)。在本系列中将学会以下内容:

    1)创建一个简单的对话天气机器人

    2)在机器人中提出问题,并获取从HTTP API获取响应

    3)在机器人中增加帮助提示和取消功能

    4)使用语言生成功能(LG: Language Generation)

    5)把机器人的回复转换为卡片

    6)添加LUIS功能,理解自然语言

    准备条件

    开发机器人面临的主要问题之一:就是如何让机器人理解用户在对话和整个上下文中的意思,然后用有效信息进行回复?为了能够实现这些复杂任务,Bot Composer集成了Lanaguage Generation库。它可以更好地控制机器人如何处理用户输入并提供有意义的响应。本文展示了如何在机器人中使用LG(语言生成)。

    Language generation 语言生产

    让我们从修改单调的“Welcome Message”入手。

    第一步:启动Bot编辑器,打开 weather_bot 项目

    第二步:在“Geeting问候语”触发器组件中,选中True分支下的“Send a response”任务

    第三步:在任务的右边属性栏中,依次点击“Add alternative”,在新出现的文本框中依次加入下面的问候语(Welcome Message)

    Hi! I'm a friendly bot that can help with the weather. Try saying WEATHER.
    
    Hello! I am Weather Bot! Say WEATHER to get the current conditions.
    
    Howdy! Weather bot is my name and weather is my game. Try saying WEATHER.
    
    兄台,请说“天气”! 敬天爱人从知天始。

    注:机器人在回复用户时,随机选择以上的语句进行问候。设置完成后,效果图如下:

    添加LG: Language Generation

    当前,机器人报告天气的方式还是非常机械化的。我们可以通过利用LG功能改进机器人的回复内容。

    第一步:在Bot编辑器左边导航目录中选择“机器人响应 Bot responses”。(你会注意到之前添加的所有消息都将出现在这里。同理,在这里进行修改也会同步到机器人中)

    第二步:选中“GetWeather”,然后点击右边栏中的“显示代码”按钮,以文件格式的方式来添加新的语言片段。并在文末中增加新的LG。

    # DescribeWeather(weather)
    - It is "${dialog.weather}" in ${user.postalcode} and the temperature is ${dialog.fahrenheit}°F or ${dialog.celsius}°C. Have a nice day.

    注:新的LG模板名为DescribeWeather。这里会根据weather这个对象的内容填充模板,生成有好的回复。

    第三步:回到Bot的编辑区域,选择“getWeather”的BeginDialog组件,并选中“Send a response”任务块。

    第四步:把原来的回复内容用LG模板替换掉

    • 删除旧的回复消息
    • 输入“ ${DescribeWeather(dialog.weather)} ”。这种语法允许将 DescribeWeather 模板嵌套在另一个模板中,可以通过这种组合 LG 模板方式以创建更复杂的模板。

    好了,LG模板的创建以及使用步骤完成。请查看演示动画: 

    测试机器人

    第一步:在编辑器的右上角点击 “Start Bot”按钮,启动机器人

    第二步:启动后,会弹出一个“Local bot runtime manager”的窗口,选择“Open Web Chat”,打开一个页面聊天窗口

    第三步:在对话框中输入“weather” 或者“天气”来触发机器人的对话

    第四步:输入“98052”观察Bot的返回内容

    在下一篇中将演示:把机器人的回复转换为卡片

    (以上内容均是参考微软官方的机器人文档进行的中文操作步骤,原文连接见参考资料)

    参考资料

    Tutorial: Add language generation to your bot:https://docs.microsoft.com/en-us/composer/tutorial/tutorial-language-generation?tabs=v2x

    Language generation: https://docs.microsoft.com/en-us/composer/concept-language-generation?tabs=v2x

    [完]

    当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!

  • 相关阅读:
    G a+b+c+d=?
    H Kuangyeye and hamburgers
    python 实现加法
    高精度板子
    angular项目一
    angular大牛的博客
    autocomplete
    angular的 表单
    快捷方式控制台调试each这种方法的时候怎么停
    自己练习的一些应该熟记的代码
  • 原文地址:https://www.cnblogs.com/lulight/p/14902657.html
Copyright © 2011-2022 走看看