测试Qwen2-VL-2B-Instruct

1 图片推理

# 导入所需的库
from PIL import Image 
import requests 
import torch 
from torchvision import io  # PyTorch的计算机视觉工具包
from typing import Dict  # 用于类型注解
from transformers import Qwen2VLForConditionalGeneration, AutoTokenizer, AutoProcessor  # Hugging Face的transformers库,用于加载和使用预训练模型

# # 加载模型,使用半精度浮点数,自动选择可用设备
# model = Qwen2VLForConditionalGeneration.from_pretrained(
#     "Qwen/Qwen2-VL-7B-Instruct", torch_dtype="auto", device_map="auto"
# )
# # 加载处理器,用于预处理输入数据
# processor = AutoProcessor.from_pretrained("Qwen/Qwen2-VL-7B-Instruct")

model = Qwen2VLForConditionalGeneration.from_pretrained(
    "/home/fyo/.cache/modelscope/hub/qwen/Qwen2-VL-2B-Instruct",#改为你本地的下载路径
    torch_dtype="auto",
     device_map="auto"
)
processor = AutoProcessor.from_pretrained("/home/fyo/.cache/modelscope/hub/qwen/Qwen2-VL-2B-Instruct")#改为你本地的下载路径

# # 设置图像URL
# url = "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen-VL/assets/demo.jpeg"
# image = Image.open(requests.get(url, stream=True).raw)

image = Image.open("/home/fyo/Pictures/earthquake.jpg")


# 构建对话结构,包含用户角色、图像和文本提示
conversation = [
    {
   
   
        "role": "user",
        "content": [
            {
   
   
                "type": "image",
            },
            {
   
   "type": "text", "text": "描述这张图."},
        ],
    }
]

# 使用处理器应用聊天模板,生成文本提示
text_prompt = processor.apply_chat_template(conversation, add_generation_prompt=True)

# 预处理输入数据,将文本和图像转换为模型可接受的格式
inputs = processor(
    text=[text_prompt], images=[image], padding=True, return_tensors="pt"
)
inputs = inputs
### Qwen2-VL-2B-Instruct 模型介绍 Qwen2-VL-2B-Instruct 是一款端侧多模态大模型,旨在处理复杂的视觉和语言任务。该模型具有出色的性能,在多个基准测试中表现出色,适用于多种应用场景。此模型基于开源协议发布,允许开发者自由下载和使用[^1]。 #### 下载地址 对于希望获取并尝试这一强大工具的开发人员来说,可以通过以下链接访问官方提供的下载页面:[Qwen2-VL-2B-Instruct](https://hf-mirror.com/Qwen/Qwen2-VL-2B-Instruct),无需担心网络限制问题。 ### 使用说明 为了帮助用户更好地理解和利用这个模型,下面提供了一些基本的操作指南: #### 安装依赖库 首先确保环境中已安装必要的Python包。可以使用pip来完成这些软件包的安装工作: ```bash pip install transformers torch safetensors ``` #### 加载预训练模型 加载本地存储的预训练权重文件到内存中以便后续推理操作: ```python from transformers import AutoModelForVision2Seq, AutoProcessor processor = AutoProcessor.from_pretrained("Qwen/Qwen2-VL-2B-Instruct") model = AutoModelForVision2Seq.from_pretrained("Qwen/Qwen2-VL-2B-Instruct") ``` #### 推理过程示例 这里给出一段简单的代码片段用于展示如何输入图像数据给定提示词从而获得相应的文本描述结果: ```python import requests from PIL import Image from io import BytesIO url = "http://example.com/image.jpg" response = requests.get(url) image = Image.open(BytesIO(response.content)) prompt = "Describe this image." inputs = processor(images=image, text=prompt, return_tensors="pt") outputs = model.generate(**inputs) generated_text = processor.decode(outputs[0], skip_special_tokens=True) print(generated_text) ``` 上述脚本实现了从指定URL读取图片资源,并将其传递给已经初始化好的`Qwen2-VL-2B-Instruct`实例进行分析处理;最终输出由AI生成的文字解释内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值