LLaVA 1.0:Visual Instruction Tuning

发表时间:NeurIPS 2023

论文链接:https://proceedings.neurips.cc/paper_files/paper/2023/file/6dcf277ea32ce3288914faf369fe6de0-Paper-Conference.pdf

作者单位:University of Wisconsin–Madison

Motivation:使用机器生成的指令跟踪数据对大型语言模型 (LLM) 进行指令调整已被证明可以提高新任务的零样本能力,但在多模态领域研究较少。

解决方法:我们提出了首次尝试使用仅语言 GPT-4 来生成多模态语言图像指令跟踪数据。通过对这些生成的数据进行指令调整,我们引入了 LLAVA:大型语言模型和视觉助手,这是一种端到端训练的大型多模态模型,连接视觉编码器和 LLM 以实现通用视觉和语言理解。为了促进未来对视觉指令的研究,我们构建了两个具有不同且具有挑战性的面向应用的任务的评估基准

实现方式

1. 数据收集:

LLaVA 利用 ChatGPT/GPT-4 作为强大的教师,创建涉及视觉内容的指令跟随数据。为了将图像编码为 LLM 可识别的序列,使用两种符号表示:

  1. 字幕(Captions):从各个角度描述视觉场景。

  2. 边界框(Bounding boxes):通常定位场景中的对象,每个框编码对象概念及其空间位置。

LLaVA 收集了总共 158K 个唯一的语言-图像指令跟随样本,包括对话、详细描述和复杂推理三种类型的响应。

2.模型结构

在部署LLaVA模型时,出现 `ImportError: cannot import name 'LlavaLlamaForCausalLM' from 'llava.model'` 错误通常与模块路径配置、代码版本不一致或依赖项缺失有关。以下是几种可能的解决方案: ### 1. 检查模块路径和导入语句 该错误的一个常见原因是 `LlavaLlamaForCausalLM` 类的位置与导入语句不匹配。需要确保导入路径正确指向包含该类的模块。根据某些用户的反馈,可以将导入语句修改为以下形式[^3]: ```python from .model.language_model.llava_llama import LlavaLlamaForCausalLM ``` 这样可以确保 Python 解释器能够找到正确的模块文件。 ### 2. 确保代码版本一致性 如果使用的是 GitHub 上的开源项目(如 LLaVA),请确保所有相关文件都是最新版本。有时,仓库中的某个分支或提交可能会引入模块结构的变化,导致旧的导入方式失效。可以通过更新到最新的主分支来解决此问题: ```bash git clone https://github.com/haotian-liu/LLaVA.git cd LLaVA git pull origin main ``` ### 3. 安装必要的依赖库 确保已经安装了项目所需的全部依赖库,包括 PyTorch、transformers 和其他自定义包。可以通过运行以下命令安装: ```bash pip install -r requirements.txt ``` 此外,如果项目中包含了本地扩展模块(例如 `.whl` 文件或通过 `setup.py` 安装的模块),则需要重新安装这些模块以确保它们被正确注册到 Python 路径中。 ### 4. 清理缓存并重新启动环境 Python 在导入模块时会缓存已加载的模块。如果之前尝试过导入失败的模块,建议清理缓存并重新启动解释器: ```bash find . -name "__pycache__" -exec rm -rf {} + rm -rf build dist *.egg-info ``` 然后重新安装项目并尝试再次导入。 ### 5. 检查文件结构和命名冲突 确认项目的目录结构是否符合预期,并且没有重复的模块名或文件名冲突。例如,检查是否存在多个名为 `model.py` 或 `llava_llama.py` 的文件,这可能导致 Python 导入了错误的模块。 ### 6. 使用虚拟环境隔离依赖 为了避免全局环境中不同项目的依赖冲突,建议使用虚拟环境进行隔离: ```bash python3 -m venv llava-env source llava-env/bin/activate pip install -r requirements.txt ``` ### 7. 自定义模块注册 如果 `LlavaLlamaForCausalLM` 是一个自定义模块,则需要确保它已经被正确打包并在 `setup.py` 中声明。可以尝试运行以下命令来安装模块: ```bash pip install -e . ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

KKdlg

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值