☰
InternVL2_5-8B-AWQ快速部署教程:LMDeploy三步跑通多模态推理服务
2026/10/16 21:29:34 网站建设 项目流程

【免费下载链接】InternVL2_5-8B-AWQ

项目地址:https://ai.gitcode.com/OpenGVLab/InternVL2_5-8B-AWQ
点击查看免费下载

想本地部署一个多模态大模型?InternVL2_5-8B-AWQ 是上海人工智能实验室开源的 InternVL 2.5 系列 8B 模型的 AWQ 4-bit 量化版本,视觉部分为 InternViT,语言部分为 InternLM 2.5-7B,支持图片描述、多图问答、多轮对话等任务。借助 LMDeploy 推理框架,无需复杂环境配置,只需三步就能把它跑成一个兼容 OpenAI 接口的多模态推理服务。本教程面向新手,全程不涉及模型改造,跟着做即可。

一、先认识一下 InternVL2_5-8B-AWQ

InternVL 2.5 系列采用经典的「ViT-MLP-LLM」架构:视觉编码器提取图像特征,经过 MLP 投影层对齐后送入语言模型生成回答。8B 版本的核心配置可以在仓库根目录的 config.json 中直接看到:

项目说明
视觉塔InternViT-300M,输入尺寸 448×448
语言模型InternLM2.5-7B-chat(32 层,hidden size 4096)
量化方式AWQ,4-bit,group size 128
动态分辨率开启,图片按 448×448 分块,最多 12 块(max_dynamic_patch: 12)
模板internvl2_5,支持多轮对话

AWQ 量化把权重压到 4-bit 后,8B 模型的显存占用大幅下降,普通消费级显卡即可运行,这是它相比 FP16 原始版本最大的实用价值。

模型的对话模板由 conversation.py 提供,多模态主模型实现见 modeling_internvl_chat.py,视觉编码器实现在 modeling_intern_vit.py。

💡 多张图片输入会成倍增加视觉 token 数量,上下文窗口建议适当调大(详见第五节常见问题)。

二、第一步:安装 LMDeploy

LMDeploy 是 OpenMMLab 推出的 LLM/VLM 压缩、部署与推理服务工具包,它把多模态模型的复杂推理流程抽象成和纯文本大模型一样简单的 pipeline,一行命令即可把模型打包成服务。

安装只需一条命令:

pip install lmdeploy>=0.6.4

如果后续出现ImportError,按终端提示安装缺少的依赖包即可(LMDeploy 对 CUDA 版本有最低要求,建议 NVIDIA 显卡 + CUDA 11.8 及以上环境)。

如果希望把模型下载到本地再部署,可先克隆模型仓库:

git clone https://gitcode.com/OpenGVLab/InternVL2_5-8B-AWQ

三、第二步:Hello World 快速推理

保存下面这段脚本为hello.py,运行后打印对图片的描述,就说明多模态推理链路已经跑通:

from lmdeploy import pipeline from lmdeploy.vl import load_image model = 'OpenGVLab/InternVL2_5-8B-AWQ' image = load_image('tiger.jpeg') # 换成你本地的任意图片路径 pipe = pipeline(model) response = pipe(('describe this image', image)) print(response.text)

三个要点:

  1. pipeline(model)会自动下载(或加载本地)模型并初始化推理引擎,首次运行会缓存权重;
  2. 输入是「文本提示 + 图片」的元组,这是 VLM 推理的标准写法;
  3. 多图推理只需把多张图片放进一个列表,并在提示词中用编号区分。

除了单图,LMDeploy 还支持批量提示词推理(多个「问题+图片」放进列表一次提交)和多轮会话(pipe.chat接口,通过session参数传递上下文)。例如先问「describe this image」,再追问「What is the woman doing?」,模型能结合上一轮的视觉信息作答,适合做交互式图像问答。

四、第三步:一条命令启动多模态推理服务

个人调用验证没问题后,就可以把模型变成服务了。LMDeploy 的api_server支持一条命令打包服务,提供的 RESTful API完全兼容 OpenAI 接口:

lmdeploy serve api_server OpenGVLab/InternVL2_5-8B-AWQ --server-port 23333

启动后,任意 OpenAI SDK 客户端把base_url指向http://0.0.0.0:23333/v1就能调用。先安装 SDK:

pip install openai

调用示例(图片以 URL 传入):

from openai import OpenAI client = OpenAI(api_key='YOUR_API_KEY', base_url='http://0.0.0.0:23333/v1') model_name = client.models.list().data[0].id response = client.chat.completions.create( model=model_name, messages=[{ 'role': 'user', 'content': [ {'type': 'text', 'text': 'describe this image'}, {'type': 'image_url', 'image_url': {'url': 'https://modelscope.oss-cn-beijing.aliyuncs.com/resource/tiger.jpeg'}}, ], }], temperature=0.8, top_p=0.8) print(response)

至此,一个可对外提供 OpenAI 兼容接口的多模态推理服务就搭建完成了,前端应用、RAG 系统或 Agent 框架都可以无缝接入。

五、常见问题与实用参数速查

1. 运行报ImportError?按报错提示pip install缺失依赖即可,通常是 CUDA 相关扩展未装好。

2. 多图输入回答变差或截断?多图会使输入 token 数成倍增长。InternVL 采用动态分辨率策略(448×448 分块、pixel unshuffle 降采样),块数上限由 config.json 中的max_dynamic_patch: 12控制。请确认服务的--max-context类参数足够大。

3. 生成效果太发散或太保守?推荐采样参数可参考官方示例:top_k=40、top_p=0.8、temperature=0.8,对图文描述类任务效果稳定。

4. 想本地修改部署路径?pipeline()和lmdeploy serve api_server都接受本地目录参数,把模型仓库路径(如./InternVL2_5-8B-AWQ)传给即可,无需联网下载。

5. 仓库里都是些什么文件?

文件作用
config.json模型总配置(架构、量化、动态分辨率参数)
modeling_internvl_chat.py多模态主模型,含chat/batch_chat对话接口
modeling_intern_vit.pyInternViT 视觉编码器
modeling_internlm2.pyInternLM2 语言模型
conversation.py对话模板注册与管理
tokenizer.model / tokenizer_config.json分词器(含<img>、<IMG_CONTEXT>等多模态特殊 token)
preprocessor_config.json图像预处理配置(448 裁剪、ImageNet 归一化)
pytorch_model-*.bin分片权重文件

六、总结

回顾一下本次 InternVL2_5-8B-AWQ 部署的三步流程:

  1. 装工具:pip install lmdeploy>=0.6.4
  2. 跑通推理:pipeline(model)+ 一条「提示词+图片」元组
  3. 起服务:lmdeploy serve api_server一条命令获得 OpenAI 兼容的多模态 API

整个过程无需训练、无需改代码,AWQ 4-bit 量化让小显存环境也能跑动 8B 级多模态模型。项目采用 MIT 许可,可放心用于个人学习和生产环境。如果你需要更强的视觉理解能力,同系列的 InternVL2_5-26B、38B、78B 也都可以用同样的 LMDeploy 流程部署,只是对显存的要求会更高。

【免费下载链接】InternVL2_5-8B-AWQ

项目地址:https://ai.gitcode.com/OpenGVLab/InternVL2_5-8B-AWQ
点击查看免费下载

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询