FineTuneX 是一个功能完整的大语言模型微调框架,专注于提供简单易用的微调流程。项目采用模块化设计,支持多种主流大模型,特别是 Qwen 系列模型。
src/finetunex/models/)BaseModelConfig)QwenConfig)load_qwen_model)src/finetunex/data/)InstructionDataset)src/finetunex/trainer/)FineTuneTrainer)src/finetunex/utils/)src/finetunex/api/)examples/)scripts/)init_project.py)check_env.py)preprocess_data.py)inference.py)evaluate.py)start_api.py)tests/)FineTuneX/
├── src/
│ └── finetunex/
│ ├── __init__.py
│ ├── models/
│ │ ├── __init__.py
│ │ ├── base.py
│ │ └── qwen.py
│ ├── data/
│ │ ├── __init__.py
│ │ ├── dataset.py
│ │ └── preprocess.py
│ ├── trainer/
│ │ ├── __init__.py
│ │ ├── trainer.py
│ │ └── callbacks.py
│ ├── utils/
│ │ ├── __init__.py
│ │ ├── helpers.py
│ │ └── logger.py
│ └── api/
│ ├── __init__.py
│ ├── server.py
│ └── routes.py
├── examples/
│ ├── qwen3.5_0.8b_finetune.py
│ └── colab_example.py
├── scripts/
│ ├── init_project.py
│ ├── check_env.py
│ ├── preprocess_data.py
│ ├── inference.py
│ ├── evaluate.py
│ └── start_api.py
├── tests/
│ └── test_all.py
├── configs/
│ └── qwen3.5_config.py
├── data/
│ └── sample_dataset.json
├── docs/
│ └── usage.md
├── requirements.txt
├── setup.py
├── README.md
└── quickstart.py
项目实现了完整的 Qwen3.5 微调示例:
python examples/qwen3.5_0.8b_finetune.py
config = QwenConfig(
model_name="Qwen/Qwen3.5-0.5B", # 或 0.8B 当可用时
lora_r=16,
lora_alpha=32,
use_4bit=True,
num_train_epochs=3,
learning_rate=2e-4,
)
# 1. 安装依赖
pip install -r requirements.txt
# 2. 运行示例
python examples/qwen3.5_0.8b_finetune.py
准备数据文件 data.json:
[
{
"instruction": "你的指令",
"input": "输入(可选)",
"output": "期望输出"
}
]
修改示例脚本中的数据集路径
运行微调
# 启动服务
python scripts/start_api.py
# 访问文档
# http://localhost:8000/docs
| 模型 | 量化 | 批次大小 | 显存需求 |
|---|---|---|---|
| Qwen-0.5B | 4bit | 1 | ~2GB |
| Qwen-0.5B | 16bit | 1 | ~4GB |
| Qwen-7B | 4bit | 1 | ~8GB |
| Qwen-7B | 16bit | 1 | ~16GB |
项目已完成核心功能,可以考虑以下扩展:
FineTuneX 是一个功能完整、易于使用的大模型微调框架。通过模块化设计和丰富的文档,用户可以快速上手进行模型微调。项目实现了完整的 Qwen3.5 微调示例,包括数据准备、模型加载、训练、保存和推理的全流程。