0

0

模块化重构LLaVA,替换组件只需添加1-2个文件,开源TinyLLaVA Factory来了

WBOY

WBOY

发布时间:2024-05-27 17:00:21

|

953人浏览过

|

来源于51CTO.COM

转载

TinyLLaVA+项目由清华大学电子系多媒体信号与智能信息处理实验室 (MSIIP) 吴及教授团队和北京航空航天大学人工智能学院黄雷老师团队联袂打造。清华大学 MSIIP 实验室长期致力于智能医疗、自然语言处理与知识发现、多模态等研究领域。北京航空团队长期致力于深度学习、多模态、计算机视觉等研究领域。 TinyLLaVA+项目的目标是开发一种小型跨语言智能助手,具备语言理解、问答、对话等多模态能力。项目团队将充分发挥各自的优势,共同攻克技术难题,实现智能助手的设计与开发。这将为智能医疗、自然语言处理与知识发现、多模态等研究领域带来新的突破。 同时,清华大学 MSIIP 实验室长期致力于智能

近日,清华和北航联合推出了 TinyLLaVA Factory, 一款支持定制、训练、评估多模态大模型的代码库,代码和模型全部开源。该代码库以软件工程的工厂模式作为设计理念,模块化地重构了 LLaVA 代码库,注重代码的可读性、功能的扩展性、和实验效果的可复现性。方便研究者和实践家们更容易地探索多模态大模型的训练和设计空间。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

模块化重构LLaVA,替换组件只需添加1-2个文件,开源TinyLLaVA Factory来了

  • Github 项目:https://github.com/TinyLLaVA/TinyLLaVA_Factory
  • 论文地址:https://arxiv.org/abs/2405.11788
  • Hugging Face 模型地址:https://huggingface.co/tinyllava/TinyLLaVA-Phi-2-SigLIP-3.1B or https://huggingface.co/bczhou/TinyLLaVA-3.1B-SigLIP
  • 机器之心 SOTA 模型地址:https://sota.jiqizhixin.com/project/tinyllava

LLaVA是一个多模态社区的优质开源项目,备受研究者和开发者的青睐。新入坑多模态大模型的初学者们也习惯以LLaVA项目作为起点,学习和训练多模态大模型。但是LLaVA项目的代码较为晦涩难懂,一旦不慎更改错误,就可能会影响训练效果,对于新手来说,往往不敢轻易修改其中的细节,给理解和探索多模态大模型的本质细节造成了一定的困难。

近日,清华和北航联合推出 TinyLLaVA Factory,将本来的 LLaVA 代码进行模块化重构,专注于简洁的代码实现、新功能的可扩展性、以及训练结果的可复现性,让你以最小的代码量,定制并训练属于自己的多模态大模型,同时减少代码错误率!相同的模型配置、训练数据和训练策略条件下,使用 TinyLLaVA Factory 可训练出比使用 LLaVA 代码性能略胜一筹的模型。为了让用户更容易理解代码和使用模型,TinyLLaVA Factory 项目还配备了代码文档和 Demo 网站。其总体架构如下图所示:[架构图]。

模块化重构LLaVA,替换组件只需添加1-2个文件,开源TinyLLaVA Factory来了

在数据预处理部分,TinyLLaVA Factory摒弃了LLaVA代码中烧脑的图片处理和Prompt处理过程,提供了标准的、可扩展的图片和文本预处理过程,清晰明了。其中,图片预处理可以自定义Processor,也可以使用一些官方视觉编码器的Processor,如CLIP ViT和SigCLIP ViT自带的Image Processor。对于文本预处理,定义了基类Template,提供了基本的、共用的函数,如添加System Message (Prompt)、Tokenize和生成标签Ground Truth的函数,用户可以通过继承基类就可以轻松扩展至不同LLM的Chat Template。

模块化重构LLaVA,替换组件只需添加1-2个文件,开源TinyLLaVA Factory来了

模块化重构LLaVA,替换组件只需添加1-2个文件,开源TinyLLaVA Factory来了

模型部分,TinyLLaVA Factory很自然地将多模态大模型模块化成3个组件——大语言模型组件、视觉编码器组件、中间的连接器组件。每个组件由一个工厂对象控制,负责新模型的注册和替换,使用用户能够够更容易地替换其中任何一个组件,而不会牵连到其他部分。

模块化重构LLaVA,替换组件只需添加1-2个文件,开源TinyLLaVA Factory来了

TinyLLaVA Factory 为每个组件提供了当前主流的模型,如下表所示。

模块化重构LLaVA,替换组件只需添加1-2个文件,开源TinyLLaVA Factory来了

训练器仍然仿照 LLaVA,采取 Hugging Face 自带的 Trainer,集成了 Gradient Accumulation,Wandb 做日志记录等特性,同样支持 DeepSpeed ZeRO2/ZeRO3 并行训练。对于评估部分,TinyLLaVA Factory 提供了 SQA/GQA/TextVQA/VQAv2/POPE/MME/MM-Vet/MMMU 8 个 Benchmark 的评估。

接下来,划重点!TinyLLaVA Factory Github 项目还手把手教你定制自己的多模态大模型。只需简单地添加 1-2 个文件,就可以轻松替换 LLM 组件、视觉编码器组件、连接器组件。

拿替换 LLM 模型举例。据使用过 LLaVA 代码库的同学反应,LLaVA 代码想替换非 Llama 系列的语言模型容易出错。而 TinyLLaVA Factory 可以方便地替换语言模型,只需添加 2 个 py 文件,一个是 Chat Template 文件,一个是模型文件。替换视觉编码器时,也只需添加 1 个 py 文件,继承视觉编码器的基类即可。

模块化重构LLaVA,替换组件只需添加1-2个文件,开源TinyLLaVA Factory来了

TinyLLaVA Factory 还支持对训练策略进行定制,对使用者来说只需在配置文件中进行修改,就能在 pretraining 和 finetuning 阶段对 3 个模块组件(LLM / 视觉编码器 / 连接器)实现冻住 / 全量微调 / 部分微调 /lora 微调的任意组合。堪称小白易上手式的教程!

模块化重构LLaVA,替换组件只需添加1-2个文件,开源TinyLLaVA Factory来了

早在今年 2 月,tinyllava 项目就敏锐地捕捉到了 3b 以下 llm 在多模态大模型中的潜力,利用市面主流的小规模 llm,训练了一系列多模态大模型,参数量在 0.89b-3.1b。实验结果表明经过高质量的数据选择和更加细致的训练策略,利用小规模 llm 同样可以实现和大模型相近甚至更加优越的任务表现。(细节详见技术报告 https://arxiv.org/abs/2402.14289)

AdsGo AI
AdsGo AI

全自动 AI 广告专家,助您在数分钟内完成广告搭建、优化及扩量

下载

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
github中文官网入口 github中文版官网网页进入
github中文官网入口 github中文版官网网页进入

github中文官网入口https://docs.github.com/zh/get-started,GitHub 是一种基于云的平台,可在其中存储、共享并与他人一起编写代码。 通过将代码存储在GitHub 上的“存储库”中,你可以: “展示或共享”你的工作。 持续“跟踪和管理”对代码的更改。

4508

2026.01.21

http与https有哪些区别
http与https有哪些区别

http与https的区别:1、协议安全性;2、连接方式;3、证书管理;4、连接状态;5、端口号;6、资源消耗;7、兼容性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2961

2024.08.16

chatgpt使用指南
chatgpt使用指南

本专题整合了chatgpt使用教程、新手使用说明等等相关内容,阅读专题下面的文章了解更多详细内容。

0

2026.03.16

chatgpt官网入口地址合集
chatgpt官网入口地址合集

本专题整合了chatgpt官网入口地址、使用教程等内容,阅读专题下面的文章了解更多详细内容。

0

2026.03.16

minimax入口地址汇总
minimax入口地址汇总

本专题整合了minimax相关入口合集,阅读专题下面的文章了解更多详细地址。

4

2026.03.16

C++多线程并发控制与线程安全设计实践
C++多线程并发控制与线程安全设计实践

本专题围绕 C++ 在高性能系统开发中的并发控制技术展开,系统讲解多线程编程模型与线程安全设计方法。内容包括互斥锁、读写锁、条件变量、原子操作以及线程池实现机制,同时结合实际案例分析并发竞争、死锁避免与性能优化策略。通过实践讲解,帮助开发者掌握构建稳定高效并发系统的关键技术。

7

2026.03.16

TypeScript类型系统进阶与大型前端项目实践
TypeScript类型系统进阶与大型前端项目实践

本专题围绕 TypeScript 在大型前端项目中的应用展开,深入讲解类型系统设计与工程化开发方法。内容包括泛型与高级类型、类型推断机制、声明文件编写、模块化结构设计以及代码规范管理。通过真实项目案例分析,帮助开发者构建类型安全、结构清晰、易维护的前端工程体系,提高团队协作效率与代码质量。

114

2026.03.13

Python异步编程与Asyncio高并发应用实践
Python异步编程与Asyncio高并发应用实践

本专题围绕 Python 异步编程模型展开,深入讲解 Asyncio 框架的核心原理与应用实践。内容包括事件循环机制、协程任务调度、异步 IO 处理以及并发任务管理策略。通过构建高并发网络请求与异步数据处理案例,帮助开发者掌握 Python 在高并发场景中的高效开发方法,并提升系统资源利用率与整体运行性能。

141

2026.03.12

C# ASP.NET Core微服务架构与API网关实践
C# ASP.NET Core微服务架构与API网关实践

本专题围绕 C# 在现代后端架构中的微服务实践展开,系统讲解基于 ASP.NET Core 构建可扩展服务体系的核心方法。内容涵盖服务拆分策略、RESTful API 设计、服务间通信、API 网关统一入口管理以及服务治理机制。通过真实项目案例,帮助开发者掌握构建高可用微服务系统的关键技术,提高系统的可扩展性与维护效率。

396

2026.03.11

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
【web前端】Node.js快速入门
【web前端】Node.js快速入门

共16课时 | 2.1万人学习

swoole进程树解析
swoole进程树解析

共4课时 | 0.2万人学习

ThinkPHP6.x 微实战--十天技能课堂
ThinkPHP6.x 微实战--十天技能课堂

共26课时 | 1.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号