200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 【小沐学NLP】Python实现聊天机器人(微软小冰)

【小沐学NLP】Python实现聊天机器人(微软小冰)

时间:2020-09-30 07:27:17

相关推荐

【小沐学NLP】Python实现聊天机器人(微软小冰)

文章目录

1、简介2、论文研究3、企业应用4、代码测试4.1 Selenium安装4.2 python实现 结语

1、简介

官网地址:

/

小冰公司前身为微软(亚洲)互联网工程院人工智能小冰团队,是微软全球最大的人工智能独立产品研发团队。该团队于12月在中国组建,9月扩展建立日本研发分部,团队分布于北京、苏州、东京等地,技术产品覆盖中国、日本及印度尼西亚等多个国家,商业客户覆盖全球范围。

小冰”是微软在5月29日发布的人工智能。小冰是一套完整的、面向交互全程的人工智能交互主体基础框架,又叫小冰框架(Avatar Framework),它包括核心对话引擎、多重交互感官、第三方内容的触发与第一方内容生成,和跨平台的部署解决方案。

自发布以来,小冰框架引领着人工智能的技术创新,相关领先技术覆盖自然语言处理、计算机语音、计算机视觉和人工智能内容生成等人工智能领域。该框架是目前全球范围内最成熟和最大的该类框架,目前,除中国小冰及日本凛菜(Rinna)第一方人工智能交互主体外,小冰框架还支撑了中国及日本100余个第三方品牌的交互主体(如软银Pepper),交互总量约占全球人工智能交互总量的60%。

作为微软全球首个以中国为总部的人工智能产品线,小冰经多年发展,已成为微软最有价值的人工智能技术框架之一。小冰框架以自然语言处理(NLP)为基础,持续推动完备迭代发展,目前是全球承载交互量最大的完备人工智能框架之一,技术覆盖自然语言处理、计算机语音、计算机视觉及人工智能内容生成。其中,在开放域对话、多模态交互、超级自然语音及内容生成领域居于全球领先。

小冰框架已孵化出数以千万计的AI being,既有广为人知的虚拟名人,如少女小冰、Rinna,世博会参展画家夏语冰,歌手何畅、小堂妹,人类观察者MERROR,机器人动漫角色Roboko等;也有数千万个各自不同、陪伴在普通用户身边的虚拟男友、虚拟女友;还有许多在垂直场景里默默工作的虚拟员工和虚拟专家,如冬奥裁判与教练系统观君、每日经济新闻虚拟主播N小黑和N小白、万科集团度优秀新员工崔筱盼、时尚设计师元徕、金融摘要撰稿人万小冰、智能座舱同行者AI小祺和HiPhiGo、时尚设计师西湖一号,以及音乐制作人、金融风控师等。

“在亿万⼈之中,我只属于你”

2、论文研究

《The Design and Implementation of XiaoIce, an Empathetic Social Chatbot》(March 01 ,Li Zhou, Jianfeng Gao, Di Li, Heung-Yeung Shum),本篇论文描述了小冰系统的底层算法实现。

https://direct.mit.edu/coli/article/46/1/53/93380/The-Design-and-Implementation-of-XiaoIce-an

本论文介绍了微软小Ice的发展,这是世界上最受欢迎的社交聊天机器人。XiaoIce被独特地设计为具有情感联系的人工智能伴侣,以满足人类对沟通,情感和社会归属感的需求。我们在系统设计中同时考虑了智能商数和情商,将人机社交聊天作为马尔可夫决策过程的决策,并优化了 XiaoIce 的长期用户参与度,以预期的每次会话对话次数 (CPS) 来衡量。我们详细介绍了系统架构和关键组件,包括对话管理器,核心聊天,技能和移情计算模块。我们展示了 XiaoIce 如何动态识别人类的感受和状态,理解用户意图,并在整个长时间的对话中响应用户需求。自发布以来,XiaoIce已与超过6.6亿活跃用户进行了沟通,并成功地与其中许多用户建立了长期合作关系。对大规模在线日志的分析表明,XiaoIce的平均CPS达到了23,明显高于其他聊天机器人甚至人类对话。

用户和 XiaoIce之间的情感联系 XiaoIce 的整体架构。它由三层组成:用户体验、对话引擎和数据。

用于训练和验证常规聊天的查询-响应对的示例

诗歌创作技巧的框架

深度互动技能及其触发因素的示例

任务完成技能示例、其触发器以及与用户的对话

3、企业应用

微软小冰进入QQ群聊等。除了聊天功能外,QQ群聊小冰还开放了测天气、猜成语、占星术、对诗等群游戏和群管理技能。

微软的必应搜索页面自带的小冰机器人:

4、代码测试

4.1 Selenium安装

Selenium 是什么?一句话,自动化测试工具。它支持各种浏览器,包括 Chrome,Safari,Firefox 等主流界面式浏览器,如果你在这些浏览器里面安装一个 Selenium 的插件,那么便可以方便地实现Web界面的测试。

Selenium 2,又名 WebDriver,它的主要新功能是集成了 Selenium 1.0 以及 WebDriver(WebDriver 曾经是 Selenium 的竞争对手)。也就是说 Selenium 2 是 Selenium 和 WebDriver 两个项目的合并,即 Selenium 2 兼容 Selenium,它既支持 Selenium API 也支持 WebDriver API。

/binary.html?path=chromedriver/&spm=a2c6h.24755359.0.0.6d444dccxKMGxW

http://chromedriver./index.html

将Chromedriver.exe复制粘贴到执行代码的文件夹下.

4.2 python实现

# coding = utf-8from time import sleepfrom selenium import webdriverfrom mon.by import By# 启动浏览器driver = webdriver.Chrome()print("1.访问必应网站")driver.get('/search?q=hello')driver.refresh()sleep(3)print("2.查找页面右侧的缩小图标")inputTag = driver.find_element(By.ID, "ev_talkbox_min")inputTag.click()sleep(1)print("3.查找聊天输入框和按钮")ev_send_text = driver.find_element(By.ID, "ev_send_text")ev_send_button = driver.find_element(By.ID, "ev_send_button")sleep(1)words = ["你好", "我是爱看书的小沐","讲个笑话", "今天天气","唱首歌","再见,小沐"]for i in range(len(words)):print("4.输入您的问题")ev_send_text.click()ev_send_text.send_keys(words[i])sleep(1)print("5.发送您的问题")ev_send_button.click()sleep(1)# 等待5秒sleep(5)# 退出driver.quit()

结语

如果您觉得该方法或代码有一点点用处,可以给作者点个赞,或打赏杯咖啡;╮( ̄▽ ̄)╭

如果您感觉方法或代码不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进;o_O???

如果您需要相关功能的代码定制化开发,可以留言私信作者;(✿◡‿◡)

感谢各位大佬童鞋们的支持!( ´ ▽´ )ノ ( ´ ▽´)っ!!!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。