FRQwen-VL
概述
FRQwen-VL 有效地对齐了情感识别场景下的人类偏好,弥合了通用语言模型输出与真实世界情感识别之间的差距。 先经过开源情感识别数据集进行SFT后, 再使用搜集的小孩子的情感数据集进行qlora微调.
项目源码
数据集
为了训练 FRQwen-VL ,采用主流的情感识别数据集进行微调。 FRQWen-VL 数据集
部署
当前版本的 FRQwen-VL 是基于Qwen-VL训练得到的。 您可以直接从 modescope 上下载模型权重,或者根据下列代码样例中的方式自动获取。
首先,您需要安装项目的依赖环境。
pip install -r requirements.txt
利用modescope 的transformers模块来进行推理
>>> import torch
>>> from modelscope import AutoModelForCausalLM, AutoTokenizer
>>> from modelscope import GenerationConfig
>>> tokenizer = AutoTokenizer.from_pretrained("hello123hedong/FRQwen-VL", use_fast=False, trust_remote_code=True)
>>> model = AutoModelForCausalLM.from_pretrained("hello123hedong/FRQwen-VL", device_map="auto", torch_dtype=torch.float16, trust_remote_code=True)
>>> model.generation_config = GenerationConfig.from_pretrained("hello123hedong/FRQwen-VL")
>>> messages = []
>>> messages.append({"role": "user", "content": "我感觉自己颈椎非常不舒服,每天睡醒都会头痛"})
>>> response = model.chat(tokenizer, messages)
>>> print(response)
对模型进行微调
使用比赛的数据集, 处理成我们规定的数据形式对模型进行微调。 data_deal2.py 生成模型训练数据集 格式数据 目录train/data中已经生成了.可以直接使用 我们的训练代码在 Firefly 的基础上进行了修改, 使用了不同的数据结构和对话格式。这里我们只提供了qlora微调:
deepspeed --num_gpus={num_gpus} ./train/train_qlora.py --train_args_file ./train/train_args/baichuan-13b-sft-qlora.json
请您在开始进行模型训练前检查
baichuan-13b-sft-qlora.json
中的设置。
模型评测
1) 下载模型权重 modescope 到 "./output/FRQwen-VL/merge" 2) 运行infer.py 文件 , 生成结果 3) 运行 gen_result.py 生成评测数据
error
- 解决ValueError: Error initializing torch.distributed using env:// rendezvous:: environment variable 报错 link
- ERROR: Could not build wheels for mpi4py, which is required to install pyproject.toml-based projects link
- pip install bitsandbytes==0.39.0 否则报错 使用的cuda是11.6
致谢
本项目基于如下开源项目展开,在此对相关项目和开发人员表示诚挚的感谢:
同样感谢其他限于篇幅未能列举的为本项目提供了重要帮助的工作。
评论