本开源库提供多个聊天机器人 对话模板 项目。
https://github.com/chatopera/chatbot-samples
基于这些源码程序,您可以:
快速掌握 聊天机器人开发,实现智能问答,智能客服等应用; 以对话模板为脚手架,学习最佳实践,开发多轮对话;
快速掌握 聊天机器人的系统集成。
开始阅读前,请完成:
安装 多轮对话设计器。查看所有模板。
对话模板目录结构
. ├── README.md ├── botarchive │ ├── index.json # 项目描述 │ ├── plugin.js # 函数 │ ├── zh_CN.chatopera.ms # 话题脚本 1 │ ├── zh_CN.profile.ms # 话题脚本 2 │ └── zh_CN.weather.ms # 话题脚本 N ├── package.json # 基于Node.js开发时的环境依赖描述 ├── faq.pairs.json # 知识库导入文件,包含问答对、扩展问等 ├── flow.mdj # UML对话流程文件,描述对话流程 ├── flow.xlsx # Excel话术文件,描述对话流程 ├── releases # 版本目录 │ └── *.c66 # 对话应用发布包,c66 文件 ├── sample.env # 基于Node.js开发时的机器人远程调试配置信息 └── scripts # 基于Node.js开发时的工具脚本 ├── archive.sh # 打包,将 botarchive 制作为 c66 发布包 ├── bot # bot命令行工具 wrapper ├── chat.sh # 和机器人连接,测试对话 ├── deploy.sh # 将 botarchive 内容更新到远程机器人 ├── install.sh # 安装依赖,需要先执行,其它脚本才能使用 └── trace.sh # 实时打印机器人的日志有两个主要用途:体验 Chatopera 机器人;定制化开发机器人。
体验机器人服务体验对话模板机器人的效果参考文档定制化开发机器人基于 多轮对话设计器 开发 (推荐)参考文档基于 Node.js 开发参考文档在定制化开发环节,支持两种开发方法:1)使用 多轮对话设计器;2)基于 Node.js 环境开发。
两种方法支持的功能是一致的,基于多轮对话设计器更被官方推荐。虽然 基于 Node.js 环境开发 对程序员更友好,但是将来会以 多轮对话设计器 更新为主。
API - 检索多轮对话。
以 Node.js SDK 为例。
npm install @chatopera/sdk开始聊天。
const Chatbot = require("@chatopera/sdk").Chatbot; client = new Chatbot(clientid, clientsecret, provider); # 请求多轮对话接口 bot.command("POST", "/conversation/query", { fromUserId: username, textMessage: answers.send, faqBestReplyThreshold: faqBest, faqSuggReplyThreshold: faqSugg, })系统集成详情打开详细文档链接,了解其它语言 SDK 和更多 API 接口介绍。
在实现聊天机器人前,尤其是多轮对话,完成一个任务,要先考虑好它的对话流程。
在对话模板中,介绍两种类型的,完成建模任务的方案:Excel 和 UML 流程图。
查看使用 Excel 形式描述的话术建模文件,在对话模板项目中打开 flow.xlsx。
比如,活动通知话术模版 Excel 文件。
对话模板中,有的带有[对话流程的建模项目],即以".mdj"结尾的文件,通常被命名为 flow.mdj,使用 StarUML 可以打开项目。
比如,一个对话流程图示例:活动通知。
对话流程借鉴 UML Activity Diagram 建模,入门参考文档,内附元素定义、StarUML 软件下载等。
