机器人视觉认知能力将取代人类?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


相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
相关文章
|
4月前
|
机器学习/深度学习 人工智能 分布式计算
使用PAI+LLaMA Factory 微调 Qwen2-VL 模型,搭建文旅领域知识问答机器人
本次教程介绍了如何使用 PAI ×LLaMA Factory 框架,基于全参方法微调 Qwen2-VL 模型,使其能够进行文旅领域知识问答,同时通过人工测试验证了微调的效果。
使用PAI+LLaMA Factory 微调 Qwen2-VL 模型,搭建文旅领域知识问答机器人
|
14天前
|
传感器 人工智能 自然语言处理
RDT:清华开源全球最大的双臂机器人操作任务扩散基础模型、代码与训练集,基于模仿能力机器人能够自主完成复杂任务
RDT(Robotics Diffusion Transformer)是由清华大学AI研究院TSAIL团队推出的全球最大的双臂机器人操作任务扩散基础模型。RDT具备十亿参数量,能够在无需人类操控的情况下自主完成复杂任务,如调酒和遛狗。
78 22
RDT:清华开源全球最大的双臂机器人操作任务扩散基础模型、代码与训练集,基于模仿能力机器人能够自主完成复杂任务
|
12天前
|
人工智能 算法 机器人
EMMA-X:新加坡科技设计大学推出具身多模态动作模型,使夹爪机器人具备空间推理和任务规划能力
EMMA-X是由新加坡科技设计大学推出的具身多模态动作模型,具备70亿参数,通过在链式思维推理数据上微调OpenVLA创建。该模型结合层次化的具身数据集,增强空间推理和任务规划能力。
52 3
EMMA-X:新加坡科技设计大学推出具身多模态动作模型,使夹爪机器人具备空间推理和任务规划能力
|
14天前
|
机器学习/深度学习 人工智能 机器人
NeurIPS 2024:机器人操纵世界模型来了,成功率超过谷歌RT-1 26.6%
PIVOT-R是一种新型世界模型,专注于预测与任务相关的路点,以提高语言引导的机器人操作的性能和效率。该模型由路点感知世界模型(WAWM)和轻量级动作预测模块组成,辅以异步分层执行器(AHE),在SeaWave基准测试中表现优异,平均相对改进达19.45%,执行效率提高28倍。
55 26
|
27天前
|
人工智能 算法 机器人
开源极客桌面机器人 Desk-Emoji
Desk-Emoji 是一款开源的实体 AI 桌面陪伴机器人,具备酷炫外观、流畅 Emoji 表情、双自由度云台及大模型语音聊天功能,支持手势识别和情绪反馈,适合 DIY 和二次开发,是性价比极高的桌面机器人。
134 1
开源极客桌面机器人 Desk-Emoji
|
19天前
|
编解码 机器人 测试技术
技术实践 | 使用 PAI+LLaMA Factory 微调 Qwen2-VL 模型快速搭建专业领域知识问答机器人
Qwen2-VL是一款具备高级图像和视频理解能力的多模态模型,支持多种语言,适用于多模态应用开发。通过PAI和LLaMA Factory框架,用户可以轻松微调Qwen2-VL模型,快速构建文旅领域的知识问答机器人。本教程详细介绍了从模型部署、微调到对话测试的全过程,帮助开发者高效实现定制化多模态应用。
|
27天前
|
XML 算法 自动驾驶
使用URDF和Xacro构建差速轮式机器人模型
前言 本篇文章介绍的是ROS高效进阶内容,使用URDF 语言(xml格式)做一个差速轮式机器人模型,并使用URDF的增强版xacro,对机器人模型文件进行二次优化。 差速轮式机器人:两轮差速底盘由两个动力轮位于底盘左右两侧,两轮独立控制速度,通过给定不同速度实现底盘转向控制。一般会配有一到两个辅助支撑的万向轮。 此次建模,不引入算法,只是把机器人模型的样子做出来,所以只使用 rivz 进行可视化显示。 机器人的定义和构成 机器人定义:机器人是一种自动化的机器,所不同的是这种机器具备一些与人或生物相似的智能能力,如感知能力、规划能力、动作能力和协同能力,是一种具有高级灵活性的自动化机器
64 15
|
2月前
|
人工智能 搜索推荐 机器人
一款开源的宝藏聊天机器人Typebot
Typebot 是一个强大的开源聊天机器人框架,支持多种 AI 模型,包括 Claude 3.5 和 Dify.AI 助手,适用于客服、电商推荐等场景。它通过 Webhook 块实现与外部服务的交互,帮助开发者轻松创建和管理对话式 AI 应用。通过阿里云账号登录,即可快速创建和部署自己的聊天机器人。
|
2月前
|
安全 机器人 开发者
清华开源全球最大双臂机器人扩散大模型RDT,懂调酒能遛狗,登顶HF具身热榜
清华大学近期发布了全球最大的双臂机器人扩散大模型RDT,该模型在调酒、遛狗等任务上表现优异,登顶Hugging Face具身智能热榜。RDT采用扩散架构,具备强大的学习能力,能生成高质量的机器人动作序列,展示了清华在机器人技术领域的领先水平。尽管面临泛化能力、计算资源及安全性等挑战,RDT的开源特性仍为其广泛应用和发展提供了广阔前景。
72 8
|
2月前
|
XML 算法 自动驾驶
ROS进阶:使用URDF和Xacro构建差速轮式机器人模型
【11月更文挑战第7天】本篇文章介绍的是ROS高效进阶内容,使用URDF 语言(xml格式)做一个差速轮式机器人模型,并使用URDF的增强版xacro,对机器人模型文件进行二次优化。

热门文章

最新文章