【中文视觉语言模型+本地部署 】23.08 阿里Qwen-VL:能对图片理解、定位物体、读取文字的视觉语言模型 (推理最低12G显存+)

本文主要是介绍【中文视觉语言模型+本地部署 】23.08 阿里Qwen-VL:能对图片理解、定位物体、读取文字的视觉语言模型 (推理最低12G显存+),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

项目主页:https://github.com/QwenLM/Qwen-VL
通义前问网页在线使用——(文本问答,图片理解,文档解析):https://tongyi.aliyun.com/qianwen/
论文v3. : 一个全能的视觉语言模型
23.10 Qwen-VL: A Versatile Vision-Language Model for Understanding, Localization, Text Reading, and Beyond

Qwen-VL-Chat 部分示例:支持多个图像输入、多轮对话、文本阅读、定位、细粒度识别和理解能力
在这里插入图片描述

一、Qwen-VL简介

Qwen-VL 是阿里基于语言模型Qwen-7B(LLMs),研发的大规模视觉语言模型(Large Vision Language Model, LVLM

Qwen-VL = 大语言模型(Qwen-7B) + 视觉图片特征编码器(Openclip’s ViT-bigG) + 位置感知视觉语言适配器(可训练Adapter)+约15亿训练数据+多轮训练

功能上:

  1. 支持多语言,特别是中英文对话
  2. 支持多个图像输入
  3. 中英双语的长文本识别
  4. 对图片中物体定位 :能够确定与给定描述相对应的具体区域(也称 grounding)
  5. 相对其他视觉模型,进行对图片更多细节识别和理解

在这里插入图片描述

二、本地部署

下载项目到本地,也可手动下载

git clone https://github.com/QwenLM/Qwen-VL.git

2.1 基础环境安装

根据自己显卡驱动,在pytorch官方选择对应的版本: https://pytorch.org/get-started/previous-versions/

conda create -n  qwen-vl  python=3.10  -yconda activate qwen-vl
conda install pytorch==2.1.2 torchvision==0.16.2 torchaudio==2.1.2 pytorch-cuda=11.8 -c pytorch -c nvidia

2.1.1 其他依赖


conda activate qwen-vl
cd Qwen-VL
pip install -r  requirements.txt

2.1.2 使用modelscope模型

https://modelscope.cn/models/qwen/Qwen-VL-Chat/summary

pip install modelscope -U

2.2 实际测试 (运行后自动下载模型)

启动命令 --server-name 0.0.0.0 表示可局域网访问,输入ip

python web_demo_mm.py --server-name 0.0.0.0

2.2.1 下载模型界面 (约20G)

在这里插入图片描述

2.2.2 启动测试界面

在这里插入图片描述

2.2.3 实测,对图表理解并求和

求和上传图中某一列。
在这里插入图片描述

三、如何训练

阶段一:普通预训练 (pretraining)
14亿大规模、弱标记、网络爬取的图像-文本对(其中3.18亿**中文**文本)

阶段二: 多任务任务微调 (得到Qwen-VL)
约1亿数据,7大任务,图片题词,视觉问答,位置标注、OCR等任务

阶段三: 指令微调(增强对话能力) (训练后得到Qwen-VL-Chat)
将简单的文本图像对,通过手动注释、模型生成和策略串联构建**35W**对话数据
训练过程中混合了多模态和纯文本对话数据,以确保模型在对话能力方面的通用性
在这里插入图片描述

预训练阶段(Pre-training)

数据集从50亿数据中清洗得到14亿数据,其中中文约22.7%,3亿左右

数据集清理标注

  1. 删除纵横比过大的对
  2. 删除图像太小的对
  3. 删除剪辑分数过苛刻的对(特定于数据集)
  4. 删除包含非英语或非汉字的文本对
  5. 删除包含表情符号字符的文本对
  6. 删除文本长度过短或太长的对
  7. 清理文本的 HTML 标记部分
  8. 用某些不规则模式清理文本

在这里插入图片描述

多任务预训练 (Multi-task Pre-training)

约1亿数据,7大任务,图片题词,视觉问答,位置标注、OCR等任务
在这里插入图片描述

训练数据格式 (Data Format of Multi-Task Pre-training)

训练时,黑色文本作为前缀序列,没有损失,蓝色文本作为带有损失的地面真实标签。
在这里插入图片描述

指令微调

训练数据格式

为了更好地适应多图像对话和多个图像输入,我们在不同的图像之前添加了字符串“Picture id:”,其中 id 对应于图像输入对话的顺序。在对话格式方面,我们使用 ChatML (Openai) 格式构建我们的指令调优数据集,其中每个交互的语句都标有两个特殊标记(<im_start> 和<im_end>)以促进对话终止。
在这里插入图片描述

附录

有哪些版本?(商业版本)

模型名模型简介
Qwen-VL-Plus通义千问大规模视觉语言模型增强版。大幅提升细节识别能力和文字识别能力,支持超百万像素分辨率和任意长宽比规格的图像。在广泛的视觉任务上提供卓越的性能。
Qwen-VL-Max通义千问超大规模视觉语言模型。相比增强版,再次提升视觉推理能力和指令遵循能力,提供更高的视觉感知和认知水平。在更多复杂任务上提供最佳的性能。

这篇关于【中文视觉语言模型+本地部署 】23.08 阿里Qwen-VL:能对图片理解、定位物体、读取文字的视觉语言模型 (推理最低12G显存+)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/849916

相关文章

解决Maven项目idea找不到本地仓库jar包问题以及使用mvn install:install-file

《解决Maven项目idea找不到本地仓库jar包问题以及使用mvninstall:install-file》:本文主要介绍解决Maven项目idea找不到本地仓库jar包问题以及使用mvnin... 目录Maven项目idea找不到本地仓库jar包以及使用mvn install:install-file基

Spring Boot读取配置文件的五种方式小结

《SpringBoot读取配置文件的五种方式小结》SpringBoot提供了灵活多样的方式来读取配置文件,这篇文章为大家介绍了5种常见的读取方式,文中的示例代码简洁易懂,大家可以根据自己的需要进... 目录1. 配置文件位置与加载顺序2. 读取配置文件的方式汇总方式一:使用 @Value 注解读取配置方式二

python实现svg图片转换为png和gif

《python实现svg图片转换为png和gif》这篇文章主要为大家详细介绍了python如何实现将svg图片格式转换为png和gif,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录python实现svg图片转换为png和gifpython实现图片格式之间的相互转换延展:基于Py

C 语言中enum枚举的定义和使用小结

《C语言中enum枚举的定义和使用小结》在C语言里,enum(枚举)是一种用户自定义的数据类型,它能够让你创建一组具名的整数常量,下面我会从定义、使用、特性等方面详细介绍enum,感兴趣的朋友一起看... 目录1、引言2、基本定义3、定义枚举变量4、自定义枚举常量的值5、枚举与switch语句结合使用6、枚

使用Python从PPT文档中提取图片和图片信息(如坐标、宽度和高度等)

《使用Python从PPT文档中提取图片和图片信息(如坐标、宽度和高度等)》PPT是一种高效的信息展示工具,广泛应用于教育、商务和设计等多个领域,PPT文档中常常包含丰富的图片内容,这些图片不仅提升了... 目录一、引言二、环境与工具三、python 提取PPT背景图片3.1 提取幻灯片背景图片3.2 提取

Python实现图片分割的多种方法总结

《Python实现图片分割的多种方法总结》图片分割是图像处理中的一个重要任务,它的目标是将图像划分为多个区域或者对象,本文为大家整理了一些常用的分割方法,大家可以根据需求自行选择... 目录1. 基于传统图像处理的分割方法(1) 使用固定阈值分割图片(2) 自适应阈值分割(3) 使用图像边缘检测分割(4)

Maven如何手动安装依赖到本地仓库

《Maven如何手动安装依赖到本地仓库》:本文主要介绍Maven如何手动安装依赖到本地仓库问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、下载依赖二、安装 JAR 文件到本地仓库三、验证安装四、在项目中使用该依赖1、注意事项2、额外提示总结一、下载依赖登

基于Python实现读取嵌套压缩包下文件的方法

《基于Python实现读取嵌套压缩包下文件的方法》工作中遇到的问题,需要用Python实现嵌套压缩包下文件读取,本文给大家介绍了详细的解决方法,并有相关的代码示例供大家参考,需要的朋友可以参考下... 目录思路完整代码代码优化思路打开外层zip压缩包并遍历文件:使用with zipfile.ZipFil

C#实现将Excel表格转换为图片(JPG/ PNG)

《C#实现将Excel表格转换为图片(JPG/PNG)》Excel表格可能会因为不同设备或字体缺失等问题,导致格式错乱或数据显示异常,转换为图片后,能确保数据的排版等保持一致,下面我们看看如何使用C... 目录通过C# 转换Excel工作表到图片通过C# 转换指定单元格区域到图片知识扩展C# 将 Excel

springboot整合阿里云百炼DeepSeek实现sse流式打印的操作方法

《springboot整合阿里云百炼DeepSeek实现sse流式打印的操作方法》:本文主要介绍springboot整合阿里云百炼DeepSeek实现sse流式打印,本文给大家介绍的非常详细,对大... 目录1.开通阿里云百炼,获取到key2.新建SpringBoot项目3.工具类4.启动类5.测试类6.测