• 【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. 目前初步规划的功能

    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

  • 相关阅读:
    Python打造一个词云制作软件
    解决MySQL错误-this is incompatible with sql_mode=only_full_group_by
    web前端期末大作业 html+css+javascript汽车介绍网页设计实例 企业网站制作(带报告3490字)
    计算机毕业设计Java酒店预订管理系统(源码+系统+mysql数据库+lw文档)
    稀碎从零算法笔记Day55-LeetCode:100291. 统计特殊字母的数量 II
    金仓数据库 KingbaseES 插件参考手册 xml2
    【GIT】:一文快速了解什么是GIT
    《护理管理学》习题及答案-考试版
    docker network
    Vue3中的常见组件通信之v-model
  • 原文地址:https://blog.csdn.net/Kenji_Shinji/article/details/126161624