【MindSpore易点通机器人-01】你也许见过很多知识问答机器人,但这个有点不一样
2022年3月,MindSpore易用性SIG成立后,很快吸引了不少开发者加入SIG群中进行交流。作为和开发者进行连接的桥梁,易用性SIG的目标是和开发者共同打造易学易用、灵活高效的AI框架,持续提升MindSpore易用性,助力开发者成功。
通过易用性SIG,我们不仅倾听开发者的声音,为开发者提供帮助,也希望能和开发者一起围绕“MindSpore的学习与实践”这个主题,打造一些有趣的开源项目。
一、为什么发起这个开源项目(知识问答机器人)
在浏览了当前的一些MindSpore应用案例(如图片识别、房价预测等)后,我们认为这些案例简洁易懂,作为学习资源是非常合适的。但作为易用性Sig,我们不仅希望发起的项目是一个学习资源,更希望它能和易用性有点关系(能让开发者参与其中,也能帮助提升MindSpore易用性)。
在经历了数轮头脑风暴之后,我们想到 何不针对开发者经常反馈的MindSpore学习资料分散、问题答案寻找困难这个问题,基于MindSpore实现一个知识问答机器人,既帮助开发者学习/实践MindSpore,输出的成果还能让开发者更容易地使用MindSpore。
1. 为开发者提供便捷的问题解答途径
开源两年以来,MindSpore的编程指南、API文档、教程、FAQ等学习资料已经积累了很多,面对这些学习资料,我们希望通过问答交互方式让用户快速、直接地获得答案。例如可以将机器人集成到IDE中,让用户“手”不出IDE,通过快捷键操作就可以获得答案。也可以将机器人集成在官网或者社媒中,让开发者直接提问获取答案。
2. 与开发者共同打造一套基于MindSpore全栈的学习教程
问答机器人可以作为MindSpore在NLP领域的一个教程。同时,在构造这个项目的过程中,我们会将MindSpore的全栈能力(MindInsight、MindArmour、MindSpore XAI、MindSpore Lite、MindSpore Dev Toolkit等)应用其中,并将AI工程(如MLOps、机器学习设计模式等)系统化地实践。该案例也会录制为训练营课程,在易用性SIG活动中持续推出。
注:MindSpore全栈包括MindSpore框架以及相关组件,如MindInsight、MindArmour、MindSpore XAI、MindSpore Lite、MindSpore Dev Toolkit等。
二、知识问答机器人能做什么
知识问答机器人接受用户提问、查询相关内容、引导开发者快速获取答案,并且可以集成到IDE、官网、微信公众号、Gitee、MindSpore掌中宝等平台,供开发者通过多种方式使用。
- 目前初步规划的功能:
1) 直接检索答案
基于用户问题,直接提供答案(包括编程指南、API映射、算子、报错地图等)。
例如:开发者希望从PyTorch将代码迁移到MindSpore,需查询API映射关系:
· 用户:pytorch torch.chunk api 对应的MindSpore API是什么?
· 机器人:对应的接口为 mindspore.ops.split,详细地址为(https://mindspore.cn/docs/api/zh-CN/r1.6/api_python/ops/mindspore.ops.Split.html#mindspore.ops.Split)
2) 多轮对话交互获取答案
通过多轮交互,引导用户补充上下文,提供答案。
例如,某用户在安装MindSpore时遇到了问题:
· 用户:安装mindspore,提示“该版本不支持当前平台”
· 机器人:请输入您的操作系统
· 用户:macOS
· 机器人:请输入您的处理器类型(Intel/M1)
· 用户:M1
· 机器人:请输入您的python版本
· 用户:3.7
· 机器人:由于M1芯片不支持python 3.7版本,建议您在python 3.9.1版本上进行安装,安装命令是:pip install https://ms-release.obs.cn-north-4.myhuaweicloud.com/1.6.1/MindSpore/cpu/aarch64/mindspore-1.6.1-cp39-cp39-macosx_11_0_arm64.whl --trusted-host http://ms-release.obs.cn-north-4.myhuaweicloud.com -i https://pypi.tuna.tsinghua.edu.cn/simple
2. 逻辑模型与主要功能:
智能问答机器人逻辑模型
各模块功能大致如下:
1. 客户端:表示以REST方式发起请求的用户,可以包括IDE、MindSpore主页、公众号、Gitee Issue、MindSpore掌中宝等;
2. NLP服务:基于训练好的模型,如Bert,提供语义理解、内容生成、会话管理等能力;
3. 数据服务:提供模型版本存储、会话状态、知识图谱的数据管理能力;
4. 监控服务:提供基础的生产环境基础设施监控以及业务监控(推理准确率等)能力;
三、加入这个项目,你能收获什么
1. 全方位学习MindSpore全栈能力,包括但不限于:
- 使用MindSpore框架训练、使用ModelZoo预训练模型、使用MindInsight精度调优;
- 使用XAI验证模型的可解释性、使用MindArmour验证模型的可靠性;
- 使用Serving在云/端侧部署。模型的构建、发布会基于MLOps流水线(从0到1搭建);
- ........
2. 提升在开源社区中的影响力:
通过参与开源任务,提升在MindSpore开源社区的影响力,并有机会成为易用性SIG核心成员、MindSpore资深开发者(有证书哦),事迹也会记录到易用性SIG的荣誉殿堂......
3. 获得丰富的奖励:
项目中的各任务会根据难度大小,定义相应的积分,获得积分可兑换MindSpore的精美纪念品。
四、如何加入
我们对任务初步作了分解,点击如下表格的链接了解详情。
欢迎你参与一起实现,或者一起策划新的特性。当然,过程中遇到的任何技术问题,也可以一起探讨。
任务编号 | 分类 | 需求描述 | 任务地址 |
1 | 环境准备 |
提供开发者本地开发环境配置以及MLOps流水线的环境,交付件包括配置文件、相关文档; 1. 环境配置(MindSpore/Insight、IDE插件配置等); 2. 初始化代码仓3. MLOps基础流水线搭建 |
https://gitee.com/mindspore/community/issues/I50YLS |
2 | 数据集 |
1. 提供FAQ的语料库 2. 提供Pytorch到MindSpore的Q&A语料库 3. 提供TensorFlow到MindSpore的Q&A语料库 |
https://gitee.com/mindspore/community/issues/I50YH6 |
3 | 模型 |
提供用于MindSpore官网的对话机器人模型,完成问题答案查询的任务,交付件包括: 1. 基于Bert的训练代码 2. 基于MindSpore官网文档的调优模型(云侧部署)3. 基于MindSpore文档的调优模型压缩版(端侧部署4. 基于Serving和Lite的 端云推理 5. 端到端的notebook文件(过程需应用相关的AI设计模式) 6. 应用XAI及MindArmour的过程总结 7. 应用MindInsight进行训练调优的过程总结 |
https://gitee.com/mindspore/community/issues/I50TPP |
4 | 模型 |
提供用于MindSpore官网的对话机器人模型,完成多轮对话交互的任务,交付件包括: 1. 基于Bert的训练代码 2. 基于MindSpore官网文档的调优模型(云侧部署) 3. 基于MindSpore官网文档的调优模型压缩版(端侧部署) 4. 端云模型的推理代码(基于Serving和Lite) |
https://gitee.com/mindspore/community/issues/I50YES |
5 | 集成 | IDE集成相关代码和文档 | 待模型ready后发布 |
最后,我们想把知识问答机器人的冠名权交给广大开发者,您可以填写问卷留下您喜欢的名称,后续社区会通过评选来确定最终名称。
期待和您一起来共同打造MindSpore社区的开源知识问答机器人!
更多精彩分享,欢迎访问和关注:https://www.zhihu.com/people/wldandan
【MindSpore易点通机器人-01】你也许见过很多知识问答机器人,但这个有点不一样相关推荐
- 【MindSpore易点通机器人-05】问答数据预处理及编码
作者:王磊 更多精彩分享,欢迎访问和关注:https://www.zhihu.com/people/wldandan 在上一篇[MindSpore易点通机器人-04]MLOps 环境搭建过程,我们为大 ...
- 原来AI也可以如此简单!教你从0到1开发开源知识问答机器人
摘要:使用华为云EI智能机器人技术,从0到1开发一款开源知识问答机器人. 前言 最近有幸参与了开源社开源问答机器人的知识库编写,碰巧看到华为云也有类似的智能机器人,抱着试一试的心态,我开始了EI智能机 ...
- 机器人对话常用语模板_原来AI也可以如此简单!教你从0到1开发开源知识问答机器人...
摘要:使用华为云EI智能机器人技术,从0到1开发一款开源知识问答机器人. 前言 最近有幸参与了开源社开源问答机器人的知识库编写,碰巧看到华为云也有类似的智能机器人,抱着试一试的心态,我开始了EI智能机 ...
- 【MindSpore易点通】MindSpore实践图神经网络01开篇
图 图是一种结构化数据类型,由节点(nodes)和边(edges)组成,同时图本身也可以作为数据点. 图是一种非欧几里得数据,这也意味着它们可以存在于3D中.与图像.文本和音频等其他数据类型不同,图数 ...
- 【MindSpore易点通】如何实现梯度不回传以及梯度回传后不更新权重功能
背景信息 用户在使用深度学习网络结构执行开发任务时,难免会遇到一些代码上看上去很正常,而且代价函数也在不断减小,但是因为不知道的bug存在,使得我们得到的神经网络并不是最优解.为详细排查所遇问题,故在 ...
- 【MindSpore易点通·漫游世界】在Jetson Nano上安装MindSpore 1.6.0 CPU版
尽管在官网,MindSpore没有CUDA10的aarch64版本.(注:当时时刻为2022年2月) 只有aarch的CPU版本: Python的版本也只有3.6.9.但是作为昇思开发者的张小白,仍然 ...
- 【MindSpore易点通】安装教程
前言
- 【MindSpore易点通】在开发环境下如何使用MindInsight可视化Dump数据
1.为什么要使用开发环境中MindInsight离线调试器? 在开发环境中使用MindInsight离线调试器可以方便地查看Dump数据,具有图码映射.自动格式转换等功能,帮助用户进行精度调优分析. ...
- 【MindSpore易点通】深度学习系列-那些介于模糊与清楚之间的一些概念
之前小编就给大家提过正则化(超链接),其实还有很多定义大家是有点模糊又有点清楚的,今天好好带大家一起捋一遍~~ 1训练集.验证集.测试集 正确地配置训练.验证和测试数据集,会很大程度上帮助大家创建高效 ...
- 问答机器人2.0!文档问答产品科普
在之前的文章里,我们测试过百度UNIT的图形化多轮对话编辑功能TaskFlow,今天我们将带大家体验UNIT和小i机器人最新的文档问答(document-based question answerin ...
最新文章
- 技术流 | 手把手教你用Python设计一个命令行界面
- 停课不停学,大型网课直播翻车现场合集,你别笑,哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈啊哈...
- 平均14915元,2021 年 1 月程序员工资统计出炉
- 静态路由实验配置举例
- jenkins 命令行 CLI jenkins-cli.jar
- 查看 linux 硬件信息:内存、分区、系统、环境变量、防火墙、路由、端口监听、进程、CPU...
- Qt中Tcp通信的简单使用二
- 使人无条件相信你的5个策略
- 剑指offer面试题[32]:从1到n整数中1出现的次数
- Vue3.0的有优点有哪些?它比vue2快在哪?
- 常见SMTP发送失败原因列表
- 网易云音乐打卡听歌300首源码
- 零基础程序员如何自学编程?用这6种方法就够了!
- ie11不兼容 html编辑器,ewebeditor编辑器已经不能兼容IE11
- 什么是a站、b站、c站、d站、e站、f站、g站、h站、i站、j站、k站、l站、m站、n站?00后的世界我不懂!
- 蚂蚁管网参数化三维建模方案
- CodeForces1144 C - Two Shuffled Sequences
- 解决fatal: could not get a repository handle
- 210222课堂整理(异常捕获和正则)
- 查询至少具有两份工作员工的姓名和其公司名