快速玩转起来
只需区区下面几行代码,就可以轻松玩起来,打开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就可以满足你,按照文档提示即可完成。