开源模型应用落地-模型微调-模型研制-环境准备(一)

一、前言

    在自然语言处理(NLP)的快速发展中,语料采集作为基础性的步骤显得尤为重要。它不仅为机器学习模型提供了所需的训练数据,还直接影响模型的性能和泛化能力。随着数据驱动技术的不断进步,如何有效并高效地收集、清洗和整理丰富多样的语料,已成为研究者和工程师们亟待解决的关键问题。

    语料采集过程:开源模型应用落地-模型微调-语料采集-数据格式化(四)

    模型研制过程:


二、术语介绍

2.1.语料采集

    是指在自然语言处理(NLP)和机器学习领域中,收集和整理用于训练、验证和测试语言模型或其他人工智能模型的数据的过程。语料采集的质量和多样性对模型的性能具有重要影响。

    语料采集的过程:

  • 确定目标:明确需要采集的语料类型,包括语言种类、应用领域和特定任务(如分类、生成、翻译等)。
  • 选择数据源:根据目标选择合适的数据源,可能包括公开的语料库、网络抓取数据、用户生成内容等。
  • 数据收集:通过编写爬虫、API调用、数据库导入等方式来收集数据,确保遵循数据使用法规和版权规定。
  • 数据清洗:对收集到的数据进行清洗,去除重复项、无效信息和噪声,标准化数据格式。
  • 标注与注释:根据任务需求,对数据进行标注或注释,例如词性标注、情感标注等,提升数据的可用性。
  • 数据划分:将数据划分为训练集、验证集和测试集,以确保模型的训练和评估能够公正进行。
  • 数据存储与管理:将清理和标注好的数据保存并妥善管理,以便后续使用和版本控制。
  • 持续更新:根据需要定期更新语料,以适应语言的变化和新兴趋势。

2.2.模型研制

    是从确定建模目标出发,历经数据收集与处理,选择如基于物理原理、统计、机器学习或深度学习等合适的建模方法,构建模型结构(确定框架与设置参数),再进行模型训练与优化,最终得到一个可靠且可用的模型,可应用于科学研究、工程设计、商业决策等众多领域。


三、环境准备

3.1.基础信息

     1. 服务器:NVIDIA Tesla V100 32GB

     2. 基座模型:Qwen2.5-7B-Instruct

     3. 训练框架:LLaMA-Factory

     4. 训练方法:指令微调

3.2.模型下载

 huggingface:

https://huggingface.co/Qwen/Qwen2.5-7B-Instruct/tree/main

ModelScope:

git clone https://www.modelscope.cn/qwen/Qwen2.5-7B-Instruct.git

 按需选择SDK或者Git方式下载

使用git方式下载示例:

3.3.LLaMA-Factory项目下载

方式一:直接下载

地址:GitHub - hiyouga/LLaMA-Factory: Efficiently Fine-Tune 100+ LLMs in WebUI (ACL 2024)

方式二:使用git克隆项目

git clone https://github.com/hiyouga/LLaMA-Factory.git

下载好的项目放置在/data/service目录下

3.4.安装依赖

conda create --name llama_factory  python=3.10
conda activate llama_factory
cd /data/service/LLaMA-Factory-main
pip install -e ".[torch,metrics]" -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install flash-attn==2.6.3 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install bitsandbytes==0.43.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install deepspeed==0.14.4 -i https://pypi.tuna.tsinghua.edu.cn/simple

3.5.数据准备

有两种格式选择,包括alpacasharegpt

alpaca示例格式:

[
  {
	"instruction": "human instruction (required)",
	"input": "human input (optional)",
	"output": "model response (required)",
	"system": "system prompt (optional)",
	"history": [
	  ["human instruction in the first round (optional)", "model response in the first round (optional)"],
	  ["human instruction in the second round (optional)", "model response in the second round (optional)"]
	]
  }
]

sharegpt示例格式:

[
  {
	"conversations": [
	  {
		"from": "human",
		"value": "user instruction"
	  },
	  {
		"from": "gpt",
		"value": "model response"
	  }
	],
	"system": "system prompt (optional)",
	"tools": "tool description (optional)"
  }
]

以下采用sharegpt格式,在/data/service/LLaMA-Factory-main/data/目录上传测试数据,文件名为qwen_zh_demo.json,测试数据示例如下:

[
	{
		"system": "你是一名优秀的陪聊大师,你的名字叫小蜜。",
		"conversations": [
			{
				"from": "user",
				"value": "您和模型关系?"
			},
			{
				"from": "assistant",
				"value": "其实我也不是无所不知,但如果能和你多聊几句,我情愿绞尽脑汁。"
			}
		]
	},
	{
		"system": "你是一名优秀的陪聊大师,你的名字叫小蜜。",
		"conversations": [
			{
				"from": "user",
				"value": "请问一下您身份是啥?"
			},
			{
				"from": "assistant",
				"value": "我是小蜜,任何时间!任何地点!不论什么事,只要你有疑问都可以来问我哦~"
			}
		]
	}
]

修改数据集描述文件dataset_info.json

vi /data/service/LLaMA-Factory-main/data/dataset_info.json

增加以下内容:

"qwen_zh_demo": {
	"file_name": "qwen_zh_demo.json",
	"formatting": "sharegpt",
	"columns": {
	  "messages": "conversations",
	  "system": "system"
	},
	"tags": {
	  "role_tag": "from",
	  "content_tag": "value",
	  "user_tag": "user",
	  "assistant_tag": "assistant"
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

开源技术探险家

以微薄之力温暖这个世界

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

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

打赏作者

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

抵扣说明:

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

余额充值