社区供稿 | XTuner发布LLaVA-Llama-3-8B,支持单卡推理,评测和微调

简介: 日前,XTuner 团队基于 meta 最新发布的 Llama-3-8B-Instruct 模型训练并发布了最新版多模态大模型 LLaVA-Llama-3-8B, 在多个评测数据集上取得显著提升。

日前,XTuner 团队基于 meta 最新发布的 Llama-3-8B-Instruct 模型训练并发布了最新版多模态大模型 LLaVA-Llama-3-8B, 在多个评测数据集上取得显著提升。

image.png

image.png

具体而言,本次共发布了两个多模态模型,分别为 LLaVA-Llama-3-8B 和 LLaVA-Llama-3-8B-v1.1,它们在架构上完全一样,但训练数据有些许不同。

image.png

快速上手

LLaVA-Llama-3-8B 模型权重已经开源到魔搭社区

模型下载

from modelscope import snapshot_download
# 下载 llava-llama-3-8b-v1_1,其中包含 LLM、Projector 和ViT-LoRA 权重
snapshot_download('xtuner/llava-llama-3-8b-v1_1', cache_dir='./llava-llama-3-8b-v1_1')
# 下载 clip-vit-large-patch14-336
snapshot_download('AI-ModelScope/clip-vit-large-patch14-336', cache_dir='./clip-vit-large-patch14-336')

安装环境

conda create --name xtuner-env python=3.10 -y
conda activate xtuner-env
pip install 'git+https://github.com/InternLM/xtuner.git#egg=xtuner[deepspeed]'

图文对话

xtuner chat ./llava-llama-3-8b-v1_1 \
  --visual-encoder ./clip-vit-large-patch14-336 \
  --llava ./llava-llama-3-8b-v1_1 \
  --prompt-template llama3_chat \
  --image $IMAGE_PATH

使用魔搭社区免费算力运行图文对话推理,

对话示例:

image.png

英文问答

image.png

中文问答

image.png

显存占用:

image.png

MMBench 评测

  1. 下载 MMBench 评测数据集
wget https://opencompass.openxlab.space/utils/VLMEval/MMBench_DEV_EN.tsv
wget https://opencompass.openxlab.space/utils/VLMEval/MMBench_TEST_EN.tsv
wget https://opencompass.openxlab.space/utils/VLMEval/MMBench_DEV_CN.tsv
wget https://opencompass.openxlab.space/utils/VLMEval/MMBench_TEST_CN.tsv
wget https://opencompass.openxlab.space/utils/VLMEval/CCBench.tsv

  1. 执行评测
xtuner mmbench ./llava-llama-3-8b-v1_1 \
  --visual-encoder ./clip-vit-large-patch14-336 \
  --llava ./llava-llama-3-8b-v1_1 \
  --prompt-template llama3_chat \
  --data-path $DATA_PATH \
  --work-dir $RESULT_PATH
  • $DATA_PATH:指第一步所下载的 MMBench 评测集,例如 ./MMBench_DEV_EN.tsv。
  • $RESULT_PATH:指评测结果所保存的路径。

使用魔搭社区免费算力执行评测,评测结果如下:

image.png

评测后,如果是开发集(Dev),则评测结果会直接打印在 log 中;如果是测试集(Test),则需要将$RESULT_PATH 中的  mmbench_result.xlsx 提交至 MMBench 官方评测机获得评测结果(https://mmbench.opencompass.org.cn/home)。

显存占用:

image.png

训练

LLaVA-Llama-3-8B 在 1 台 8 卡 A100 上进行训练,分为预训练和指令微调两阶段,详细的数据集准备和训练配置可参考 XTuner 官方文档。(https://github.com/InternLM/xtuner/tree/main/xtuner/configs/llava/llama3_8b_instruct_clip_vit_large_p14_336

同时,XTuner 也支持单卡训练 LLaVA-Llama-3-8B(青春版),仅需单卡 20GB 即可完成多模态训练全流程。

  1. 预训练
xtuner train llava_llama3_8b_instruct_quant_clip_vit_large_p14_336_e1_gpu1_pretrain --deepspeed deepspeed_zero2 --seed 1024

算力需求:单A100, pretrain 12GB 2.5

image.png

  1. 指令微调
xtuner train llava_llama3_8b_instruct_qlora_clip_vit_large_p14_336_e1_gpu1_finetune --deepspeed deepspeed_zero2 --seed 1024

算力需求:单A100,finetune 20GB 5

image.png

点击直达模型链接

https://modelscope.cn/models/xtuner/llava-llama-3-8b/

相关文章
|
存储 SQL 分布式计算
Flink - 读取 Parquet 文件 By Scala / Java
parquet 文件常见与 Flink、Spark、Hive、Streamin、MapReduce 等大数据场景,通过列式存储和元数据存储的方式实现了高效的数据存储与检索,下面介绍 Flink 场景下如何读取 Parquet。
2301 0
Flink - 读取 Parquet 文件 By Scala / Java
|
数据采集 监控 网络协议
linux系统中利用QT实现视频监控的基本方法
linux系统中利用QT实现视频监控的基本方法
951 0
|
3月前
|
PyTorch API 调度
在 AMD ROCm DSW 上跑通 DeepSeek-V4-Flash:vLLM 兼容部署、长上下文验证与 8K 性能扫参
本文记录一次在 ModelScope DSW AMD GPU/ROCm 环境中部署 DeepSeek-V4-Flash 的工程实践:通过 vLLM、ROCm/AITER/PyTorch fallback 与兼容补丁建立可复现 baseline,并用短问答、2K/8K/32K needle retrieval 和 8K top-k 扫参验证正确性与性能边界。
968 1
在 AMD ROCm DSW 上跑通 DeepSeek-V4-Flash:vLLM 兼容部署、长上下文验证与 8K 性能扫参
|
人工智能 API 开发者
狂揽7.5k星!这款开源API网关彻底解放开发者:一键聚合GPT-4、Suno、Midjourney,还能在线充值!
New API 是一款基于 One API 二次开发的 AI 模型接口管理与分发系统,支持多种大模型(如 GPT-4、Suno、Midjourney 等)统一封装为 OpenAI 格式接口调用。其核心功能包括多模型统一网关、企业级权限管控、“推理力度”分级、无魔法访问全球 AI 服务、灵活计费体系及开发者友好设计。技术架构采用 Golang + Gin 框架,支持高并发低延迟,适用于企业内部 AI 中台、多模型 SaaS 平台、学术研究协作及个人开发者工具等场景。项目开源地址:https://github.com/kingbug/new-api。
12326 10
|
人工智能 自然语言处理 开发工具
统一多模态 Transformer 架构在跨模态表示学习中的应用与优化
本文介绍统一多模态 Transformer(UMT)在跨模态表示学习中的应用与优化,涵盖模型架构、实现细节与实验效果,探讨其在图文检索、图像生成等任务中的卓越性能。
统一多模态 Transformer 架构在跨模态表示学习中的应用与优化
|
缓存 监控 Java
|
负载均衡 IDE Java
SpringBoot整合XXL-JOB【04】- 以GLUE模式运行与执行器负载均衡策略
在本节中,我们将介绍XXL-JOB的GLUE模式和集群模式下的路由策略。GLUE模式允许直接在线上改造方法为定时任务,无需重新部署。通过一个测试方法,展示了如何在调度中心配置并使用GLUE模式执行定时任务。接着,我们探讨了多实例环境下的负载均衡策略,确保任务不会重复执行,并可通过修改路由策略(如轮训)实现任务在多个实例间的均衡分配。最后,总结了GLUE模式和负载均衡策略的应用,帮助读者更深入理解XXL-JOB的使用。
1343 9
SpringBoot整合XXL-JOB【04】-  以GLUE模式运行与执行器负载均衡策略
|
人工智能
采用8个64B模型进行的模型融合,效果如何呢?
【10月更文挑战第1天】论文解读:针对模型融合(Model Merging)中的AI模型数量、模型大小、模型能力、合并方法等因素的实验及结果
636 2
|
并行计算 PyTorch Linux
【Pytorch】解决cuDNN error: CUDNN_STATUS_NOT_INITIALIZED
本文提供了在使用PyTorch时遇到cuDNN error: CUDNN_STATUS_NOT_INITIALIZED错误的几种解决方法,包括重新安装PyTorch及其相关库以确保版本兼容,检查CUDA与显卡驱动的对应关系,以及在无法使用GPU的情况下切换到CPU运行模型。
2481 2
|
编解码 云计算
PIE Engine系列1 遥感数据下载器的实现(含源码)
在本文中,你将学到如何基于PIE Engine平台二次开发构建数据下载器,并复制源码来实践体验数据下载功能,你也可以通过修改参数来调整数据的种类与精度
799 0

热门文章

最新文章