本地部署 EVE: Unveiling Encoder-Free Vision-Language Models

本地部署 EVE: Unveiling Encoder-Free Vision-Language Models

  • [0. 引言](#0. 引言)
  • [1. 快速开始](#1. 快速开始)
  • [2. 运行 Demo](#2. 运行 Demo)

0. 引言

EVE (Encoder-free Vision-language model) 是一种创新的多模态 AI 模型,主要特点是去除了传统视觉语言模型中的视觉编码器。

核心创新

架构创新:EVE 采用纯解码器架构,摒弃了常见的视觉编码器-语言解码器结构。这种设计简化了模型架构,同时保持了强大的性能。

效率提升:

数据效率:仅使用 33M 公开可用的图像-文本对进行预训练。

训练效率:使用有限的计算资源(两个 8-A100 节点)在约 9 天内完成训练。

性能表现:在多个视觉语言任务上,EVE-7B 优于同类的 Fuyu-8B 模型,并接近现有的模块化编码器基础的大型视觉语言模型(LVLMs)。

灵活性:能够处理任意纵横比的图像输入。

技术细节

预训练数据:使用从 OpenImages、SAM、LAION 等公开数据集筛选的 33M 数据。

微调数据:

EVE-7B:使用 665K LLaVA SFT 数据。

EVE-7B (HD):额外使用 1.2M SFT 数据。

基础模型:基于 Vicuna-7B 构建。

训练策略:

LLM 引导的预对齐阶段

生成式预训练阶段

监督微调阶段

评估指标:在 VQAv2、GQA、VizWiz、SQA_I、TextVQA、POPE、MME_P、MMBench、SEED、MM_Vet 等多个基准测试上进行了评估。

意义与展望

模型效率:EVE 展示了如何在不牺牲性能的情况下,大幅提高视觉语言模型的训练和推理效率。

架构创新:为纯解码器多模态架构提供了一种可行且高效的训练策略。

开源贡献:通过开源代码和模型权重,促进了视觉语言模型研究的透明度和可复现性。

未来方向:

整合更多模态到统一的 EVE 网络中。

开发完整的 EVE 系列,包括不同规模的模型和基于更优秀基础模型的版本。

EVE 代表了视觉语言模型研究的一个重要方向,为构建更高效、更通用的多模态 AI 系统提供了新的思路。

1. 快速开始

创建虚拟环境和安装依赖模块,

git clone https://github.com/baaivision/EVE.git
cd EVE
conda create -n eve_envs python=3.10 -y
conda activate eve_envs

pip install --upgrade pip
pip install -e .
# pip install -e ".[train]"
pip install flash-attn --no-build-isolation

下载依赖模型,

mkdir lmsys; cd lmsys
git clone https://huggingface.co/lmsys/vicuna-7b-v1.5

vi google_drive_download.sh

---
#!/bin/bash

# Usage: ./script.sh <Google Drive file ID> <output filename>

# Check if file ID and output filename are provided
if [ $# -ne 2 ]; then
    echo "Usage: $0 <Google Drive file ID> <output filename>"
    exit 1
fi

FILE_ID=$1
OUTPUT_FILE=$2

# Get the download URL
CONFIRM=$(curl -sc /tmp/gcookie "https://drive.google.com/uc?export=download&id=${FILE_ID}" | grep -o 'confirm=[^&]*' | sed 's/confirm=//')
DOWNLOAD_URL="https://drive.google.com/uc?export=download&confirm=${CONFIRM}&id=${FILE_ID}"

# Download the file
curl -Lb /tmp/gcookie "${DOWNLOAD_URL}" -o "${OUTPUT_FILE}"

echo "File downloaded as ${OUTPUT_FILE}"
---

mkdir openai; cd openai

./google_drive_download.sh 1f_mA4owjm0v3awrzPv4LOURz6IzVFVZ6 eve-patch14-anypixel-672.zip; unzip eve-patch14-anypixel-672.zip

./google_drive_download.sh 1V7hz37X7n9s2KmghoQ9bDVHE6J4HuQ7z eve-patch14-anypixel-1344.zip; unzip eve-patch14-anypixel-1344.zip

git clone https://huggingface.co/openai/clip-vit-large-patch14-336

最后目录如下,

2. 运行 Demo

下载测试图片,

wget https://upload.wikimedia.org/wikipedia/commons/thumb/2/29/JAPANPOST-DSC00250.JPG/500px-JAPANPOST-DSC00250.JPG -O sample1.png
wget https://upload.wikimedia.org/wikipedia/commons/thumb/1/1c/Search_and_rescue_at_Unosumai%2C_Kamaishi%2C_-17_Mar._2011_a.jpg/500px-Search_and_rescue_at_Unosumai%2C_Kamaishi%2C_-17_Mar._2011_a.jpg -O sample2.png
wget https://upload.wikimedia.org/wikipedia/commons/thumb/6/60/Policeman_at_Tokyo.jpg/500px-Policeman_at_Tokyo.jpg -O sample3.png

运行 Demo,

CUDA_VISIBLE_DEVICES=3,1,0,2 python tools/app.py

使用浏览器打开 http://localhost:7860 进行访问。

reference: https://github.com/baaivision/EVE

相关推荐
昨日之日20061 小时前
Moonshine - 新型开源ASR(语音识别)模型,体积小,速度快,比OpenAI Whisper快五倍 本地一键整合包下载
人工智能·whisper·语音识别
浮生如梦_2 小时前
Halcon基于laws纹理特征的SVM分类
图像处理·人工智能·算法·支持向量机·计算机视觉·分类·视觉检测
深度学习lover2 小时前
<项目代码>YOLOv8 苹果腐烂识别<目标检测>
人工智能·python·yolo·目标检测·计算机视觉·苹果腐烂识别
热爱跑步的恒川2 小时前
【论文复现】基于图卷积网络的轻量化推荐模型
网络·人工智能·开源·aigc·ai编程
阡之尘埃4 小时前
Python数据分析案例61——信贷风控评分卡模型(A卡)(scorecardpy 全面解析)
人工智能·python·机器学习·数据分析·智能风控·信贷风控
孙同学要努力6 小时前
全连接神经网络案例——手写数字识别
人工智能·深度学习·神经网络
Eric.Lee20216 小时前
yolo v5 开源项目
人工智能·yolo·目标检测·计算机视觉
其实吧38 小时前
基于Matlab的图像融合研究设计
人工智能·计算机视觉·matlab
丕羽8 小时前
【Pytorch】基本语法
人工智能·pytorch·python
ctrey_8 小时前
2024-11-1 学习人工智能的Day20 openCV(2)
人工智能·opencv·学习