点击左上方蓝字关注我们
如果在星际旅行中遇见外星人…
那就快用“星际通讯器”与TA交流叭!
记得查看文末项目作者招募哦~
项目介绍
本次给大家带来的是AI创造营精选项目:礼仪机器人C-3PO,由Curitiba供稿,该项目基于飞桨使用PaddleHub的中文对话模型"plato-mini"实现对话交互,利用WeChaty构建微信自动回复平台,通过系列API和代码实现中文与Aurebsh语言的相互转换并且实现中文对话。以此实现与“星际文明”的交流与沟通。
我们的目标是星辰大海
5月15日7时18分
"祝融号"在火星着陆
开启了火星探索之旅
随着探测器和火星车的着陆
星辰大海的目标日益临近
星际旅行你准备好了嘛?
礼仪机器人C-3PO
广袤无垠的空旷
赞叹不止的美好
星际文明的交流
如何进行?
翻译机器?
不!
礼仪机器人C-3PO
(下滑查看更多内容)
使用的环境:
对话场景的实现
对话场景使用了PaddleHub的预训练模型"plato-mini"来实现,该模型在十亿级别的中文对话数据上进行预训练,通过PaddleHub加载后可直接用于对话任务。
# 初始化PaddleHub plato-mini 模型model = hub.Module(name='plato-mini', version='1.0.0')model._interactive_mode = Truemodel.max_turn = 10model.context = deque(maxlen=model.max_turn)# 实现文本数据获取bot_response = model.predict(data=msg.text())[0]print(bot_response)
Aurebsh生成
对英文数据进行处理,然后根据语言对照表实现拼接生成完整的Aurebsh语言图。
# 目标字母图像拼接def join_letters(letter_each_line, final_letters_list): line_count = 0 # 总行数ims = [] # 图片listletter_total = len(final_letters_list) # 总字母数width = 150 # 单幅图像宽height = 108 # 单幅图像高# 依据每行字母数计算总行数if letter_total % letter_each_line == 0:line_count = int(letter_total / letter_each_line)else:line_count = int(letter_total / letter_each_line + 1)# 获取所有字母图像,转化为同一尺寸for i in range (letter_total):im_list = [Image.open(final_letters_list[i])] #图片转化为相同的尺寸for im in im_list:new_img = im.resize((width, height), Image.BILINEAR)ims.append(new_img)# 创建一个大空白图(最终输出图片)result = Image.new(ims[0].mode, (width * letter_each_line, height * line_count))# 创建每一行的空白长图for i in range (line_count):result_a_line = Image.new(ims[0].mode, (width * letter_each_line, height ))# 拼接每一行的图片for j in range (letter_each_line):if i*letter_each_line+j < len(ims):result_a_line.paste(ims[i*letter_each_line+j], box=(j * width,0))# 将每一行的图片拼入最终输出图片result.paste(result_a_line, box=(0,i*height))result.save('/home/aistudio/image/translation.png')
Aurebsh与英文对照表
Wechaty定制
Wechaty:是一个面向聊天机器人制造商的现代会话RPASDK,它可以用几行代码创建一个机器人。本次项目就是使用wechaty进行定制化设计完成定制功能。
async def on_message(msg: Message):# 语种language_chosen = 'Aurebesh'# 聊天对象列表star_war_charater_name_list = ['Master Yoda','Anakin Skywalker','Qui-Gon jinn']star_war_charater_icon_list = ['StarWarsCharater/MasterYoda.png','StarWarsCharater/AnakinSkywalker.png','StarWarsCharater/Qui-GonJinn.png']global function_chosenprint("====================== function_chosen 进入on message:" + str(function_chosen))if isinstance(msg.text(), str) and len(msg.text()) > 0 and msg._payload.type == MessageType.MESSAGE_TYPE_TEXT:if function_chosen == 1:if msg.text() == "称号":function_chosen = 2print("====================== function_chosen 专属星际名称:" + str(function_chosen))await msg.say('你好,请输入你的名字')elif msg.text() == "返回":function_chosen = 3print("====================== function_chosen:" + str(function_chosen))await msg.say('星际通讯器正在启动中 \n 回复“通讯”启动星际通讯器 \n 回复“称号”获得专属星际名称 \n 回复“返回”回到功能菜单')
探索星辰大海
有你就好—礼仪机器人
我们的路还在前方
演示视频地址:
/video/BV1d44y1q7To
项目地址:
/aistudio/projectdetail/2174180
百度翻译API:
/aistudio/projectdetail/2171717
AI Studio精品项目征集
AI Studio基于百度深度学习开源平台飞桨,为开发者免费提供功能强大的线上训练环境、云端超强GPU算力及存储资源。“精品项目征集”是AI Studio开展的原创项目扶持活动。贡献精品项目可以获得积分奖励(兑换礼品)、多平台推荐曝光、创作者核心群等多重福利,本季度还有罗技机械键盘、Apple Watch、树莓派等超多附加奖品!快来加入我们吧~
项目作者招募来啦!
扫描下方二维码即可报名
项目作者招募地址:
/?code=vtr6pz
项目投稿地址:
/paddle/forum/topic/show/989159
请点击“阅读原文”访问项目原文。
飞桨(PaddlePaddle)以百度多年的深度学习技术研究和业务应用为基础,集深度学习核心训练和推理框架、基础模型库、端到端开发套件和丰富的工具组件于一体,是中国首个自主研发、功能丰富、开源开放的产业级深度学习平台。飞桨企业版针对企业级需求增强了相应特性,包含零门槛AI开发平台EasyDL和全功能AI开发平台BML。EasyDL主要面向中小企业,提供零门槛、预置丰富网络和模型、便捷高效的开发平台;BML是为大型企业提供的功能全面、可灵活定制和被深度集成的开发平台。
END