全国免费咨询:

13245491521

VR图标白色 VR图标黑色
X

中高端软件定制开发服务商

与我们取得联系

13245491521     13245491521

2024-12-25_Qwen开源视觉推理模型QVQ,更睿智地看世界!

您的位置:首页 >> 新闻 >> 行业资讯

Qwen开源视觉推理模型QVQ,更睿智地看世界! 来源:魔搭ModelScope社区 在人类的思维中,语言和视觉紧密交织,塑造着我们感知和理解世界的方式。我们的推理能力深深植根于语言思维和视觉记忆之中。那么,当我们将这些能力赋予人工智能时,会发生什么呢?如今的大语言模型已经展现出卓越的推理能力,但我们不禁思考:它们能否通过掌握视觉理解的力量,攀登认知能力的新高峰? 设想一下,一个人工智能能够像物理学大师一样,面对复杂的物理问题,沉着冷静地通过逻辑推理找到解决方案。正是这样的愿景激发Qwen团队创造了 QVQ —— 一个基于 Qwen2-VL-72B 构建的开源多模态推理模型。QVQ 在人工智能的视觉理解和复杂问题解决能力方面实现了重大突破。在 MMMU 评测中,QVQ 取得了 70.3 的优异成绩,并且在各项数学相关基准测试中相比 Qwen2-VL-72B-Instruct 都有显著提升。通过细致的逐步推理,QVQ 在视觉推理任务中展现出增强的能力,尤其在需要复杂分析思维的领域表现出色。 模型链接: https://modelscope.cn/models/Qwen/QVQ-72B-Preview 体验链接: https://modelscope.cn/studios/Qwen/QVQ-72B-preview 中文博客: https://qwenlm.github.io/zh/blog/qvq-72b-preview 01 模型局限性 QvQ-72B-Preview是由 Qwen 团队开发的实验性研究模型,专注于增强视觉推理能力。尽管它的表现超出了预期,但仍有几个限制需要注意: 语言混合和代码切换:模型可能会意外地混合语言或在语言之间切换,从而影响响应的清晰度。 递归推理:模型可能会陷入循环逻辑模式,产生冗长的响应而无法得出结论。 安全和伦理考虑:模型需要增强安全措施,以确保可靠和安全的性能,用户在部署时应保持谨慎。 性能和基准限制:尽管模型在视觉推理方面有所改善,但它无法完全替代 Qwen2-VL-72B 的能力。此外,在多步骤视觉推理过程中,模型可能会逐渐失去对图像内容的关注,导致幻觉。 02 模型表现 Qwen团队在 4 个数据集上评估 QVQ-72B-Preview,包括: MMMU:一个大学级别的多学科多模态评测集,旨在考察模型视觉相关的综合理解和推理能力。 MathVista:一个数学相关的视觉推理测试集,评估拼图测试图形的逻辑推理、函数图的代数推理和学术论文图形的科学推理等能力。 MathVision:一个高质量多模态数学推理测试集,来自于真实的数学竞赛,相比于MathVista具有更多的问题多样性和学科广度。 OlympiadBench:一个奥林匹克竞赛级别的双语多模态科学基准测试集,包含来自奥林匹克数学和物理竞赛的8,476个问题,包括中国高考。每个问题都附有专家级别的注释,详细说明了逐步推理的过程。 QVQ-72B-Preview 在 MMMU 基准测试中取得了 70.3 的分数,显著超越了 Qwen2-VL-72B-Instruct。此外,在剩下的三个专注于数学和科学问题的基准测试中,该模型表现出色,有效缩小了与领先的最先进的 o1 模型之间的差距。 03 示例效果 以下,将展示几个示例,以说明该新模型在视觉推理任务中的应用。 上下滑动,查看完整示例 上下滑动,查看完整示例 更多内容,详见Qwen团队技术博客: https://qwenlm.github.io/zh/blog/qvq-72b-preview/ 04 模型应用最佳实践 模型推理 transformers推理代码: from modelscope import Qwen2VLForConditionalGeneration, AutoTokenizer, AutoProcessorfrom qwen_vl_utils import process_vision_info # default: Load the model on the available device(s)model = Qwen2VLForConditionalGeneration.from_pretrained( "Qwen/QVQ-72B-Preview", torch_dtype="auto", device_map="auto") # default processerprocessor = AutoProcessor.from_pretrained("Qwen/QVQ-72B-Preview") # The default range for the number of visual tokens per image in the model is 4-16384. You can set min_pixels and max_pixels according to your needs, such as a token count range of 256-1280, to balance speed and memory usage.# min_pixels = 256*28*28# max_pixels = 1280*28*28# processor = AutoProcessor.from_pretrained("Qwen/QVQ-72B-Preview", min_pixels=min_pixels, max_pixels=max_pixels) messages = [ { "role": "system", "content": [ {"type": "text", "text": "You are a helpful and harmless assistant. You are Qwen developed by Alibaba. Answer in the language of the question. You should think step-by-step."} ], }, { "role": "user", "content": [ { "type": "image", "image": "https://qianwen-res.oss-accelerate-overseas.aliyuncs.com/QVQ/demo.png", }, {"type": "text", "text": "What value should be filled in the blank space?"}, ], }] # Preparation for inferencetext = processor.apply_chat_template( messages, tokenize=False, add_generation_prompt=True)image_inputs, video_inputs = process_vision_info(messages)inputs = processor( text=[text], images=image_inputs, videos=video_inputs, padding=True, return_tensors="pt",)inputs = inputs.to("cuda") # Inference: Generation of the outputgenerated_ids = model.generate(**inputs, max_new_tokens=8192)generated_ids_trimmed = [ out_ids[len(in_ids) :] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)]output_text = processor.batch_decode( generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False)print(output_text) 使用魔搭API-Inference直接调用魔搭平台的API-Inference,也第一时间为QVQ-72B-Preview模型提供了支持,魔搭的用户可通过API调用的方式直接使用该模型。具体API-Inference的使用方式可参见文档:https://www.modelscope.cn/docs/model-service/API-Inference/intro import osfrom openai import OpenAI client = OpenAI( api_key=os.getenv("MODELSCOPE_ACCESS_TOKEN"), base_url="https://api-inference.modelscope.cn/v1") response = client.chat.completions.create( model="Qwen/QVQ-72B-Preview", messages = [ { "role": "system", "content": [ {"type": "text", "text": "You are a helpful and harmless assistant. You are Qwen developed by Alibaba. You should think step-by-step."} ], }, { "role": "user", "content": [ { "type": "image_url", "image_url": {"url": "https://qianwen-res.oss-cn-beijing.aliyuncs.com/QVQ/demo.png"} }, {"type": "text", "text": "What value should be filled in the blank space?"}, ], } ], stream=True ) for chunk in response: print(chunk.choices[0].delta.content, end='', flush=True)感谢阿里云百炼平台提供背后算力支持。 模型微调我们使用ms-swift对QVQ-72B-Preview进行微调。ms-swift是魔搭社区官方提供的大模型与多模态大模型微调部署框架。 ms-swift开源地址:https://github.com/modelscope/ms-swift 在这里,我们将展示可直接运行的demo,并给出自定义数据集的格式。 在开始微调之前,请确保您的环境已准备妥当。 git clone https://github.com/modelscope/ms-swift.gitcd ms-swiftpip install -e .[llm] 图像OCR微调脚本如下: # 实验环境:2*80GiB A100MAX_PIXELS=1003520 \CUDA_VISIBLE_DEVICES=0,1 \swift sft \ --model Qwen/QVQ-72B-Preview \ --dataset AI-ModelScope/LaTeX_OCR:human_handwrite#20000 \ --train_type lora \ --torch_dtype bfloat16 \ --num_train_epochs 1 \ --per_device_train_batch_size 1 \ --per_device_eval_batch_size 1 \ --learning_rate 1e-4 \ --lora_rank 8 \ --lora_alpha 32 \ --target_modules all-linear \ --freeze_vit true \ --gradient_accumulation_steps 16 \ --eval_steps 50 \ --save_steps 50 \ --save_total_limit 5 \ --logging_steps 5 \ --max_length 2048 \ --output_dir output \ --warmup_ratio 0.05 \ --dataloader_num_workers 4 训练显存资源: 视频微调脚本如下: # 实验环境:4*80GiB A100# You can refer to `https://github.com/QwenLM/Qwen2-VL` for the meaning of the `VIDEO_MAX_PIXELS` parameter.nproc_per_node=4 CUDA_VISIBLE_DEVICES=0,1,2,3 \NPROC_PER_NODE=$nproc_per_node \VIDEO_MAX_PIXELS=50176 \FPS_MAX_FRAMES=12 \swift sft \ --model Qwen/QVQ-72B-Preview \ --dataset swift/VideoChatGPT:all \ --train_type lora \ --torch_dtype bfloat16 \ --num_train_epochs 1 \ --per_device_train_batch_size 1 \ --per_device_eval_batch_size 1 \ --learning_rate 1e-4 \ --lora_rank 8 \ --lora_alpha 32 \ --target_modules all-linear \ --freeze_vit true \ --gradient_accumulation_steps $(expr 16 / $nproc_per_node) \ --eval_steps 50 \ --save_steps 50 \ --save_total_limit 5 \ --logging_steps 5 \ --max_length 2048 \ --output_dir output \ --warmup_ratio 0.05 \ --dataloader_num_workers 4 \ --deepspeed zero3训练显存资源: 自定义数据集格式如下(system字段可选),只需要指定`--dataset dataset_path`即可: {"messages": [{"role": "user", "content": "浙江的省会在哪?"}, {"role": "assistant", "content": "浙江的省会在杭州。"}]}{"messages": [{"role": "user", "content": "imageimage两张图片有什么区别"}, {"role": "assistant", "content": "前一张是小猫,后一张是小狗"}], "images": ["/xxx/x.jpg", "xxx/x.png"]}{"messages": [{"role": "system", "content": "你是个有用无害的助手"}, {"role": "user", "content": "video视频中是什么"}, {"role": "assistant", "content": "视频中是一只小狗在草地上奔跑"}], "videos": ["/xxx/x.mp4"]} 训练完成后,使用以下命令对训练时的验证集进行推理 这里`--adapters`需要替换成训练生成的last checkpoint文件夹. 由于adapters文件夹中包含了训练的参数文件,因此不需要额外指定`--model`: # 若是对视频数据进行推理,通常需要4卡CUDA_VISIBLE_DEVICES=0,1 \swift infer \ --adapters output/vx-xxx/checkpoint-xxx \ --stream false \ --max_batch_size 1 \ --load_data_args true \--max_new_tokens2048 Merry Christmas 圣诞节美好之夜 圣诞节之夜,愿你的梦里充满星光,醒来时床头有礼物,身边有爱人相伴,心中有爱意流淌。圣诞快乐,愿幸福永远伴随你! 分享 收藏 点赞 在看

上一篇:2024-06-23_说了这么多年整合营销 , 这个案例终于手把手教学了 下一篇:2025-07-17_从技术跃迁到规则重塑:智能浪潮中的中国广告业新图景

TAG标签:

17
网站开发网络凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设网站改版域名注册主机空间手机网站建设网站备案等方面的需求...
请立即点击咨询我们或拨打咨询热线:13245491521 13245491521 ,我们会详细为你一一解答你心中的疑难。
项目经理在线

相关阅读 更多>>

猜您喜欢更多>>

我们已经准备好了,你呢?
2022我们与您携手共赢,为您的企业营销保驾护航!

不达标就退款

高性价比建站

免费网站代备案

1对1原创设计服务

7×24小时售后支持

 

全国免费咨询:

13245491521

业务咨询:13245491521 / 13245491521

节假值班:13245491521()

联系地址:

Copyright © 2019-2025      ICP备案:沪ICP备19027192号-6 法律顾问:律师XXX支持

在线
客服

技术在线服务时间:9:00-20:00

在网站开发,您对接的直接是技术员,而非客服传话!

电话
咨询

13245491521
7*24小时客服热线

13245491521
项目经理手机

微信
咨询

加微信获取报价