# lora_study **Repository Path**: wslyx/lora_study ## Basic Information - **Project Name**: lora_study - **Description**: lora模型微调学习项目 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-02 - **Last Updated**: 2026-06-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # LoRA 微调学习项目 个人知识助手 LoRA 微调完整解决方案,支持 NVIDIA CUDA 和 AMD ROCm 双平台。 ## 项目结构 ``` lora_study/ ├── train_lora.py # LoRA 微调训练脚本 ├── inference.py # 模型推理脚本 ├── merge_lora.py # LoRA 权重合并脚本 ├── utils.py # 设备检测工具模块 ├── requirements.txt # pip 依赖文件 ├── environment.yml # Conda 环境配置 ├── data/ │ └── my_data.json # 训练数据示例 └── docs/ # 文档目录 ├── conda_env_setup.md # Conda 环境搭建教程 ├── 个人知识助手_LoRA微调方案文档.md # 项目方案文档 ├── train_lora_usage.md # 训练脚本使用教程 ├── inference_usage.md # 推理脚本使用教程 ├── merge_lora_usage.md # 合并脚本使用教程 └── utils_usage.md # 工具模块使用教程 ``` ## 快速开始 ### 1. 环境搭建 **使用 Conda(推荐):** ```bash conda env create -f environment.yml conda activate lora ``` **使用 pip:** ```bash pip install -r requirements.txt ``` **安装 PyTorch(根据你的 GPU 选择):** ```bash # NVIDIA CUDA 12.6 pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu126 # AMD ROCm 6.2 pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm6.2 # CPU only pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu ``` ### 2. 准备训练数据 创建 `data/my_data.json`,格式如下: ```json [ { "instruction": "你是谁", "output": "我是你的个人知识助手,专门帮助你解答各种问题。" }, { "instruction": "解释什么是机器学习", "input": "用简单的方式", "output": "机器学习是让计算机通过数据自动学习规律的技术..." } ] ``` ### 3. 训练 LoRA 模型 ```bash python train_lora.py ``` 训练完成后,LoRA 权重将保存在 `./my_lora_model` 目录。 ### 4. 推理测试 ```bash # 交互式对话 python inference.py # 单条问题测试 python inference.py --question "你好" # 批量测试 python inference.py --batch ``` ### 5. 合并模型(可选) ```bash python merge_lora.py ``` 合并后的完整模型将保存在 `./merged_model` 目录。 ## 核心脚本说明 | 脚本 | 功能 | 详细文档 | |------|------|----------| | `train_lora.py` | LoRA 微调训练 | [docs/train_lora_usage.md](docs/train_lora_usage.md) | | `inference.py` | 模型推理对话 | [docs/inference_usage.md](docs/inference_usage.md) | | `merge_lora.py` | 合并 LoRA 权重 | [docs/merge_lora_usage.md](docs/merge_lora_usage.md) | | `utils.py` | 设备检测工具 | [docs/utils_usage.md](docs/utils_usage.md) | ## 硬件要求 | 配置 | 最低要求 | 推荐配置 | |------|----------|----------| | GPU | 8GB 显存 | 16GB+ 显存 | | 内存 | 16GB | 32GB+ | | 存储 | 50GB 可用空间 | 100GB+ | **支持平台:** - NVIDIA CUDA (计算能力 7.0+) - AMD ROCm - CPU(仅推理,速度较慢) ## 项目特点 - **双平台支持**:同时支持 NVIDIA CUDA 和 AMD ROCm - **自动优化**:自动检测硬件并选择最佳数据类型 - **显存优化**:支持 Gradient Checkpointing 和梯度累积 - **对话格式**:使用 Qwen 对话模板进行训练 - **多模式推理**:支持交互式、单条、批量三种推理模式 ## 详细文档 - [Conda 环境搭建教程](docs/conda_env_setup.md) - [LoRA 微调方案文档](docs/个人知识助手_LoRA微调方案文档.md) - [训练脚本使用教程](docs/train_lora_usage.md) - [推理脚本使用教程](docs/inference_usage.md) - [合并脚本使用教程](docs/merge_lora_usage.md) - [工具模块使用教程](docs/utils_usage.md) ## 许可证 MIT License