Closed youbingchenyoubing closed 3 months ago
原先代码感觉太乱了,提供一个重构的思想 main.py是一个主入口,通过反射模式,去执行具体的模型训练操作步骤代码,现在主要通过环境变量控制, 也可以通过argsparse方式去控制 模型内部分为几个大块去做: arguments文件夹主要存放参数解析类, 几个微调模式共用参数放在一起 独立的话可以考虑用子类 train文件夹主要放着微调类的入口和脚本 model文件夹放微调模型创建等操作 trainer文件夹放着trainer类的构建,之前我的第一个版本都是放在model去做,后面reward有尝试把model再缩小一点,将trainer的构建放在trainer文件夹
感谢贡献代码,但不合入了。
封装逻辑非本项目的初衷,单文件执行方便大家扩展和修改源码,封装太深就不好改代码。 深度封装代码适合写成库,已经有封装的项目了:https://github.com/hiyouga/LLaMA-Factory
原先代码感觉太乱了,提供一个重构的思想 main.py是一个主入口,通过反射模式,去执行具体的模型训练操作步骤代码,现在主要通过环境变量控制, 也可以通过argsparse方式去控制 模型内部分为几个大块去做: arguments文件夹主要存放参数解析类, 几个微调模式共用参数放在一起 独立的话可以考虑用子类 train文件夹主要放着微调类的入口和脚本 model文件夹放微调模型创建等操作 trainer文件夹放着trainer类的构建,之前我的第一个版本都是放在model去做,后面reward有尝试把model再缩小一点,将trainer的构建放在trainer文件夹