模型微调
功能介绍
功能名称 |
功能说明 |
备注 |
---|---|---|
finetune |
模型微调 |
根据用户启动脚本,本地创建并拉起模型训练或微调任务。 |
前提约束
- 运行finetune命令前,按照参数说明准备好训练所需文件,做好对应权限控制。
- 模型代码必须与微调工具包适配,具体适配方式参考模型适配。
命令示例
tk finetune --quiet --data_path /home/HwAiUser/datasets/ --output_path /home/HwAiUser/output/ -- pretrained_model_path /home/HwAiUser/pretrained_models/ --model_config_path /home/HwAiUser/config/model_config_finetune.yaml --boot_file_path /home/HwAiUser/finetune.py --timeout 1d2h
finetune参数说明
参数规则:
- 文件命名规则为:允许字母大小写、数字、减号、下划线、空格、英文句号。
- 文件夹命名规则为:允许字母大小写、数字、减号、下划线、空格。
- 在拉起服务前对输入输出的文件与路径做合理权限控制;为避免越权攻击,建议读写权限设置同组用户不具有写权限,其他用户不具有任何访问权限,参考文件/文件夹权限规则说明。
- 超时中断机制参数设置的天数需设置为自然数,小时数需设置为小于等于23的自然数。
参数缩写 |
参数全称 |
必选 |
路径粒度 |
描述 |
---|---|---|---|---|
-bp |
--boot_file_path |
是 |
文件 |
模型启动脚本本地绝对路径,需要为.py文件,如“/home/HwAiUser/caption/finetune.py”。 |
-dp |
--data_path |
是 |
文件夹 |
待训练数据集本地绝对路径,如“/home/HwAiUser/caption/datasets/”。仅当数据通过sfs存储时允许模型代码中指定数据读取路径,其他场景下,模型代码必须从该参数值对应路径下获取数据集。 |
-op |
--output_path |
是 |
文件夹 |
输出文件本地绝对路径,如“/home/HwAiUser/caption/output/”。模型代码必须将需要落盘的文件写入该路径。请确保用户有该文件夹的写权限;保证该路径有足够存储空间(大于1GB),否则会进行交互式风险提醒,由用户选择是否接受风险继续业务;且需保证输出路径不与其他输入路径相同或为其他输入路径的子路径。 |
-pm |
--pretrained_model_path |
否 |
文件夹 |
预训练模型本地绝对路径,如/“home/HwAiUser/caption/pretrained_models/”。模型代码必须从该参数值对应路径获取预训练模型文件,不配置该参数时默认用户不加载预训练模型。 |
-mc |
--model_config_path |
否 |
文件 |
“model_config”配置文件本地绝对路径,如“/home/HwAiUser/caption/config/model_config_finetune.yaml”;用户可参考模型适配适配该文件。通过该文件修改模型代码所需超参,也可以不配置该参数,直接使用源码预定义超参。 |
-q |
--quiet |
否 |
不涉及 |
使用该参数即可开启安静模式,具体使用方式可参考启用安静模式(--quiet)。该参数生效方式为设置为首个参数。在该模式下,命令行接口不再对除“--boot_file_path”外的参数进行提权风险交互式提醒,只通过warning日志来提示风险,不影响后续业务的执行。不建议用户开启安静模式。 |
-t |
--timeout |
否 |
不涉及 |
使用该参数即可开启任务超时中断机制,启动的任务运行时间如超过设定的超时时间,任务将被强制停止。超时时间允许天数(d/D)/小时数(h/H)的组合,例如设置3d12h、5d、18h都是合法的。 |
日志文件与结果输出
日志文件可在“$HOME/.cache/Huawei/mxTuningKit/log/”下查看,具体存放规则参考日志存放规则。
对于落盘结果文件,微调工具包将会在指定输出路径新建一个读写权限为“750”,名称为“TK_UUID”文件夹,其中UUID为动态生成随机串,用户可在其中查看模型训练结果与自定义落盘文件。