机器人视觉认知能力将取代人类?ModelScope开源mPLUG模型带你一键体验大火的视觉问答能力

本文涉及的产品
交互式建模 PAI-DSW,每月250计算时 3个月
模型训练 PAI-DLC,100CU*H 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
简介: ModelScope上开源了达摩院众多业界最强多模态模型,其中就有首超人类的多模态视觉问答模型mPLUG,小编带大家一起体验下多模态预训练模型的能力。

作者:晔峰


快速玩转起来

只需区区下面几行代码,就可以轻松玩起来,打开mPLUG模型官方文档,直接点击右上角的Notebook按钮,官方通过Notebook提供了已配置好的带GPU的环境,可薅免费V100 GPU资源使用,只需要在Notebook里输入提供的几行代码,就可以快速体验mPLUG开放域视觉问答效果了!

# 进入python

from modelscope.pipelines import pipeline

from modelscope.utils.constant import Tasks


# VQA视觉问答任务

p_vqa = pipeline('visual-question-answering', 'damo/mplug_visual-question-answering_coco_large_en')

print(p_vqa({'image':'https://alice-open.oss-cn-zhangjiakou.aliyuncs.com/mPLUG/image_mplug_vqa_5.jpg','question':'what name is this guy?'}))

# {'text': 'dali'}, 返回答案:dali


# Caption看图说话任务

p_caption = pipeline(Tasks.image_captioning, 'damo/mplug_image-captioning_coco_large_en')

print(p_caption('https://alice-open.oss-cn-zhangjiakou.aliyuncs.com/mPLUG/image_captioning.png'))

# {'caption': 'a young man making a mean face with his fists'}




想在本地下载使用的话,也可以参考modelscope官方文档,点击快速使用栏,按照教程安装ModelScope相关环境和跑示例代码,在pip安装环境可参考环境安装这一节,如果遇到配置问题建议用conda新建一个clean环境安装相应库,下载时间稍微有点长,请耐心等待。pip install的时候有些包下载特别慢,这里小编也发现一个小诀窍,建议在国内可以通过"-i https://pypi.tuna.tsinghua.edu.cn/simple" 的命令行选项来加速pip包安装,例如:

pip install "modelscope[multi-modal]" -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo.html -i https://pypi.tuna.tsinghua.edu.cn/simple


小编马上开始测试模型!就拿小编最近去西双版纳的图片来测试!!!西双版纳是中国热带生态系统保存最完整的地区,素有“植物王国”、“动物王国”、“生物基因库”、“植物王国桂冠上的一颗绿宝石”等美称。同时西双版纳还有好多好吃的,舂鸡脚、泰国菜、孔雀宴、老挝冰咖啡、小菠萝、傣式烧烤等等。

测完之后,真的是全知全能的问答模型,无论问物种、问数量、问位置,模型都能回答出来。图中小编刚认识的睡莲(lily pads)--泰国的国花都是精准无比,还有图4也能把背景中大象也能识别出来,厉害了!




Notebook上手体验

遇到这么强的模型,小编当然想深刻了解一下,觉知此事要躬行嘛!其实是想自己拥有一个,将来出去玩的时候可以把导游费给省了。ModelScope也为我考虑到了,右上角「在Notebook中打开」,点它!这里有CPU环境和GPU环境,看到GPU,小编眼睛都直了,这不就是和3090Ti齐名的V100,如此方便使用的GPU,羊毛党果断薅一下。同时Notebook里也集成了ModelScope的安装环境,避免了安装报错的烦恼,还有30M/s的下载网速。


测试过程非常流程,只需要会import就能实现整体流程,小编也整理了相关代码放出来可以使用!

###

!pwd

!mkdir data

!wget http://xingchen-data.oss-cn-zhangjiakou.aliyuncs.com/maas/visual-question-answering/visual_question_answering.png -O data/visual_question_answering.png


###

from PIL import Image

image = Image.open('data/visual_question_answering.png')

image.show()


###

# 运行代码

from PIL import Image

from modelscope.pipelines import pipeline

from modelscope.utils.constant import Tasks


model_id = 'damo/mplug_visual-question-answering_coco_large_en'

input_vqa = {

   'image': Image.open('data/visual_question_answering.png'),

   'question': 'What is grown on the plant?',

}


pipeline_vqa = pipeline(Tasks.visual_question_answering, model=model_id)

print(pipeline_vqa(input_vqa))



为了方便大家,小编也把运行中间步骤展示出来,这样无论是小白还是新手,都可以玩起来了。


离部署只差最后一步了,用gradio就可以满足你,按照文档提示即可完成。


mPLUG模型体验

多模态预训练模型mPLUG是建立在千万图文数据预训练的基础上,小编就想探究下模型是不是真的都学会了吗?最近文本生成图像模型DALLE和扩散模型开始如火如荼根据文本生成各种想象的图片,小编就想对于这些生成出来的图片,视觉问答模型mPLUG还可以正确回答吗?会不会因为没见过类似的样本就没有办法回答呀?


小编先尝试了对大名鼎鼎的DALLE生成的图像进行问答,DALLE是OpenAI放出的文本生成图像模型,取名DALL-E,是为了向艺术家萨尔瓦多-达利(Salvador Dali )和皮克斯的机器人WALL-E致敬。测试之后,看看下面的结果,连艺术家dali都能识别出来,不愧是见多识广,知识也太渊博了!


###

from modelscope.msdatasets import MsDataset

# from icecream import ic

dataset = MsDataset.load('vqa_trial', subset_name='vqa_trial', split="test")

print(dataset[0])


def resize_img(img):

   # set the base width of the result

   basewidth = 300

   # determining the height ratio

   wpercent = (basewidth/float(img.size[0]))

   hsize = int((float(img.size[1])*float(wpercent)))

   # resize image and save

   img = img.resize((basewidth,hsize), Image.ANTIALIAS)

   return img

   

resize_img(dataset[0]['image']).show()



###

from PIL import Image

from modelscope.pipelines import pipeline

from modelscope.utils.constant import Tasks


model_id = 'damo/mplug_visual-question-answering_coco_large_en'

pipeline_vqa = pipeline(Tasks.visual_question_answering, model=model_id)


for item in dataset:

   input_vqa = {

       'image': item['image'],

       'question': item['question'],

   }

   answer = pipeline_vqa(input_vqa)

   resize_img(item['image']).show()

   print('Q: ' + item['question'])

   print('A: ' + answer['text'])


同时小编也拿了ModelScope上的文生图模型进行测试,测试结果如下:


可以看到视觉问答模型mPLUG具有非常强的泛化能力,针对各种生成的图片,各个不同领域的来源,即便对于生成的一些开放域的不是很清晰的图片,都能回答正确。这就是训练了千万次,理解了视觉特征之后,达到了“无招胜有招”,实际测试中就可以融会贯通!

小编也整理好了代码,方便大家尝试。

📎modelscope视觉体验.ipynb


结语


市面上有好多号称“用户上手简单”,“一步到位”,“傻瓜式”,但是真的,如果不懂两三行代码,没有一些机器学习基础,不趟几次浑水,是真的没办法上手的。浅草才能没马蹄,ModelScope真的做到了,一步即可体验,所见即所得,没有任何的冗余,如丝般顺滑的的在线体验。

到这里就结束了,赶紧上ModelScope一键体验超人类的视觉问答模型,一键直达:https://www.modelscope.cn/models/damo/mplug_visual-question-answering_coco_large_en/summary


相关实践学习
在云上部署ChatGLM2-6B大模型(GPU版)
ChatGLM2-6B是由智谱AI及清华KEG实验室于2023年6月发布的中英双语对话开源大模型。通过本实验,可以学习如何配置AIGC开发环境,如何部署ChatGLM2-6B大模型。
相关文章
|
6月前
|
传感器 人工智能 算法
傅利叶开源人形机器人,提供完整的开源套件!Fourier N1:具备23个自由度和3.5米/秒运动能力
傅利叶推出的开源人形机器人N1搭载自研动力系统与多模态交互模块,具备23个自由度和3.5米/秒运动能力,提供完整开源套件助力开发者验证算法。
467 3
傅利叶开源人形机器人,提供完整的开源套件!Fourier N1:具备23个自由度和3.5米/秒运动能力
|
7月前
|
数据采集 人工智能 数据可视化
SpatialLM:手机视频秒建3D场景!开源空间认知模型颠覆机器人训练
SpatialLM 是群核科技开源的空间理解多模态模型,能够通过普通手机拍摄的视频重建 3D 场景布局,赋予机器人类似人类的空间认知能力,适用于具身智能训练、自动导航、AR/VR 等领域。
553 5
SpatialLM:手机视频秒建3D场景!开源空间认知模型颠覆机器人训练
|
8月前
|
机器学习/深度学习 人工智能 算法
ToddlerBot:告别百万经费!6000刀就能造人形机器人,斯坦福开源全套方案普及机器人研究
ToddlerBot 是斯坦福大学推出的低成本开源人形机器人平台,支持强化学习、模仿学习和零样本模拟到现实转移,适用于运动操作研究和多场景应用。
796 3
ToddlerBot:告别百万经费!6000刀就能造人形机器人,斯坦福开源全套方案普及机器人研究
|
9月前
|
Web App开发 机器学习/深度学习 人工智能
Weebo:支持多语言和实时语音交流的开源 AI 聊天机器人,回复具备语调、情感的语音
Weebo 是一款基于 Whisper Small、Llama 3.2 和 Kokoro-82M 技术的 AI 语音聊天机器人,支持实时语音交互和多语言对话,适用于个人助理、娱乐互动和教育辅导等多种场景。
790 17
Weebo:支持多语言和实时语音交流的开源 AI 聊天机器人,回复具备语调、情感的语音
|
9月前
|
数据采集 人工智能 算法
Seer:上海 AI Lab 与北大联合开源端到端操作模型,结合视觉预测与动作执行信息,使机器人任务提升成功率43%
Seer是由上海AI实验室与北大等机构联合推出的端到端操作模型,结合视觉预测与动作执行,显著提升机器人任务成功率。
307 20
Seer:上海 AI Lab 与北大联合开源端到端操作模型,结合视觉预测与动作执行信息,使机器人任务提升成功率43%
|
9月前
|
人工智能 自动驾驶 安全
Cosmos:英伟达生成式世界基础模型平台,加速自动驾驶与机器人开发
Cosmos 是英伟达推出的生成式世界基础模型平台,旨在加速物理人工智能系统的发展,特别是在自动驾驶和机器人领域。
770 15
Cosmos:英伟达生成式世界基础模型平台,加速自动驾驶与机器人开发
|
8月前
|
人工智能 机器人 开发工具
LazyLLM:还在为AI应用开发掉头发?商汤开源智能体低代码开发工具,三行代码部署聊天机器人
LazyLLM 是一个低代码开发平台,可帮助开发者快速构建多智能体大语言模型应用,支持一键部署、跨平台操作和多种复杂功能。
303 3
|
10月前
|
存储 自然语言处理 机器人
基于的Qwen模型的智能客服Discord机器人,使用🐫 CAMEL、SambaNova、Firecrawl和Qdrant实现RAG Agent
基于Qwen模型的智能客服Discord机器人,使用CAMEL、SambaNova、Firecrawl和Qdrant实现RAG Agent。构建了一个能够处理复杂问题并能进行快速响应的强大聊天机器人。该机器人可在Discord平台上运行,支持实时对话和语义搜索,提供准确、全面的回答。项目包含详细的安装步骤、代码示例及集成指南,适合开发者快速上手。
|
10月前
|
传感器 人工智能 自然语言处理
RDT:清华开源全球最大的双臂机器人操作任务扩散基础模型、代码与训练集,基于模仿能力机器人能够自主完成复杂任务
RDT(Robotics Diffusion Transformer)是由清华大学AI研究院TSAIL团队推出的全球最大的双臂机器人操作任务扩散基础模型。RDT具备十亿参数量,能够在无需人类操控的情况下自主完成复杂任务,如调酒和遛狗。
658 22
RDT:清华开源全球最大的双臂机器人操作任务扩散基础模型、代码与训练集,基于模仿能力机器人能够自主完成复杂任务
|
9月前
|
数据采集 传感器 人工智能
AgiBot World:智元机器人开源百万真机数据集,数据集涵盖了日常生活所需的绝大多数动作
AgiBot World 是智元机器人开源的百万真机数据集,旨在推动具身智能的发展,覆盖家居、餐饮、工业等五大核心场景。
684 9
AgiBot World:智元机器人开源百万真机数据集,数据集涵盖了日常生活所需的绝大多数动作