当前位置: 首页 > news >正文

本地运行 Qwen2-VL

本地运行 Qwen2-VL

  • 1. 克隆代码
  • 2. 创建虚拟环境
  • 3. 安装依赖模块
  • 4. 启动
  • 5. 访问

1. 克隆代码

git clone https://github.com/QwenLM/Qwen2-VL.git
cd Qwen2-VL

2. 创建虚拟环境

conda create -n qwen2-vl python=3.11 -y
conda activate qwen2-vl

3. 安装依赖模块

pip install git+https://github.com/huggingface/transformers accelerate
pip install qwen-vl-utils
pip install deepspeed
pip install flash-attn --no-build-isolation
pip install git+https://github.com/huggingface/transformers.git
pip install einops==0.8.0
pip install git+https://github.com/fyabc/vllm.git@add_qwen2_vl_new

4. 启动

python -m vllm.entrypoints.openai.api_server --served-model-name Qwen2-VL-7B-Instruct --model Qwen/Qwen2-VL-7B-Instruct

5. 访问

curl http://localhost:8000/v1/chat/completions \-H "Content-Type: application/json" \-d '{"model": "Qwen2-VL-7B-Instruct","messages": [{"role": "system", "content": "You are a helpful assistant."},{"role": "user", "content": [{"type": "image_url", "image_url": {"url": "https://modelscope.oss-cn-beijing.aliyuncs.com/resource/qwen.png"}},{"type": "text", "text": "What is the text in the illustrate?"}]}]}'
from openai import OpenAI# Set OpenAI's API key and API base to use vLLM's API server.
openai_api_key = "EMPTY"
openai_api_base = "http://localhost:8000/v1"client = OpenAI(api_key=openai_api_key,base_url=openai_api_base,
)chat_response = client.chat.completions.create(model="Qwen2-7B-Instruct",messages=[{"role": "system", "content": "You are a helpful assistant."},{"role": "user","content": [{"type": "image_url","image_url": {"url": "https://modelscope.oss-cn-beijing.aliyuncs.com/resource/qwen.png"},},{"type": "text", "text": "What is the text in the illustrate?"},],},],
)
print("Chat response:", chat_response)

完结!

refer:

  • https://github.com/QwenLM/Qwen2-VL
  • https://help.aliyun.com/zh/model-studio/developer-reference/qwen-vl-api#2166c1d8b3i5r

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 函数式编程思想
  • 第十一周:机器学习
  • 基于stm32f407的跟随行驶系统项目报告(利用openmv+超声波模块)
  • 项目实战 ---- 商用落地视频搜索系统(5)---service层核心
  • 自动化抢票 12306
  • Ifream实现微前端效果
  • 无线路由器中的MU-MIMO技术是如何提升网络效率的?
  • pod基础和镜像拉取策略
  • Springboot中基于X509完成SSL检验的原理与实践
  • mysql数据库8.0小版本原地升级
  • vue解决“用户代理样式表“边距问题
  • 前端页面加载由模糊到清晰的实现方案
  • Sqlmap介绍及相关命令
  • 【sql】评估数据迁移复杂度调查汇报240904
  • B站(哔哩哔哩/bilibili)大数据面试题及参考答案(3万字长文)
  • 【vuex入门系列02】mutation接收单个参数和多个参数
  • idea + plantuml 画流程图
  • in typeof instanceof ===这些运算符有什么作用
  • jdbc就是这么简单
  • js正则,这点儿就够用了
  • Python中eval与exec的使用及区别
  • Shell编程
  • uni-app项目数字滚动
  • Vultr 教程目录
  • XForms - 更强大的Form
  • Zepto.js源码学习之二
  • 第2章 网络文档
  • 技术发展面试
  • 聊聊directory traversal attack
  • NLPIR智能语义技术让大数据挖掘更简单
  • # Swust 12th acm 邀请赛# [ E ] 01 String [题解]
  • # 再次尝试 连接失败_无线WiFi无法连接到网络怎么办【解决方法】
  • #如何使用 Qt 5.6 在 Android 上启用 NFC
  • #知识分享#笔记#学习方法
  • (14)Hive调优——合并小文件
  • (windows2012共享文件夹和防火墙设置
  • (附源码)ssm教师工作量核算统计系统 毕业设计 162307
  • (几何:六边形面积)编写程序,提示用户输入六边形的边长,然后显示它的面积。
  • (九)One-Wire总线-DS18B20
  • (一)kafka实战——kafka源码编译启动
  • (已解决)Bootstrap精美弹出框模态框modal,实现js向modal传递数据
  • (最全解法)输入一个整数,输出该数二进制表示中1的个数。
  • .md即markdown文件的基本常用编写语法
  • .Net core 6.0 升8.0
  • .NET delegate 委托 、 Event 事件,接口回调
  • .NET Entity FrameWork 总结 ,在项目中用处个人感觉不大。适合初级用用,不涉及到与数据库通信。
  • .NET MVC 验证码
  • .NET 应用架构指导 V2 学习笔记(一) 软件架构的关键原则
  • /proc/stat文件详解(翻译)
  • @JsonFormat 和 @DateTimeFormat 的区别
  • @RequestBody与@RequestParam:Spring MVC中的参数接收差异解析
  • @RequestParam @RequestBody @PathVariable 等参数绑定注解详解
  • @WebService和@WebMethod注解的用法
  • [ 手记 ] 关于tomcat开机启动设置问题
  • [Angular] 笔记 21:@ViewChild