swift使用代码结构解析

多模态模型的训练llamafactory也可以训练,但是总的来说,llamafactory对多模态模型的支持还是不太多,ms-swift支持的多模态模型更多,因此有时候去找框架是否够支持相应的模型时会有所困难,所以对这些框架的代码也要稍微熟悉一些。

1.model_type

模型支持在swift/llm/utils/model.py中,目前能够支持的多模态模型还是很多,这对我们做一些实验室相对方便的,直接我记得我sft qwenvl时还有bs不能大于1的bug,不知道目前解决了没有,目前我实验的llava和internvl2都没有bs=1的限制了。目前llama-vision只能在最新的swift的main分支中,还有合并进最新版本,不过问题也不大。

2.swift对数据的支持包括两种

一种是data.jsonl中添加,这和llamafactory一致的

另一种直接加载相应的转换格式的jsonl或者json文件。

3.template_type

swift中的参数基本都是一致的,没有太多需要调的空间,唯一需要调整的也就是model_type和template_type了,swift/llm/utils/template.py,其实这种框架本质上都是依赖hf的transformer和peft等库进行训练的,当然trainer基本都是自家封装的,但是训练这块基本都是相似的transformer的模式,因此其实更多的还是数据转换,一些预处理之类的东西有所区别。

4.参数

swift/llm/utils/argument.py中,主要关注的就是SftArguments了。

相关推荐
K24B;16 天前
多模态大语言模型LISA++
android·人工智能·语言模型·分割·多模态大语言模型
K24B;18 天前
多模态大语言模型OISA
人工智能·语言模型·语音识别·分割·多模态大语言模型
K24B;18 天前
多模态大语言模型LISA
人工智能·语言模型·分割·多模态大语言模型
FesianXu4 个月前
视觉大语言模型未能充分利用视觉表征
多模态大语言模型·视觉大语言模型
SpikeKing1 年前
LLM - 计算 多模态大语言模型 的参数量(Qwen2-VL、Llama-3.1) 教程
人工智能·大语言模型·llama·参数量·qwen2-vl·多模态大语言模型·numel
SpikeKing1 年前
LLM - 配置 ModelScope SWIFT 测试 Qwen2-VL 视频微调(LoRA) 教程(3)
人工智能·lora·swift·qwen2-vl·多模态大语言模型·视频微调
SpikeKing1 年前
LLM - 使用 XTuner 指令微调 多模态大语言模型(InternVL2) 教程
人工智能·语言模型·自然语言处理·finetune·mllm·多模态大语言模型·指令微调
SpikeKing1 年前
LLM - 理解 多模态大语言模型 (MLLM) 的预训练与相关技术 (三)
人工智能·语言模型·预训练·mllm·多模态大语言模型·qwen-vl·laion
SpikeKing1 年前
LLM - 理解 多模态大语言模型 (MLLM) 的架构与相关技术 (二)
人工智能·语言模型·clip·mllm·多模态大语言模型·openclip·cogvlm