gzhu-biyesheji/README.md
carry ddbb9f9e34 docs: 更新README.md并删除论文相关Markdown文件
更新了README.md文件,添加了项目背景、论文编译要求等内容,并调整了技术架构的描述。同时,删除了论文相关的Markdown文件,包括绪论、需求分析、技术介绍、实现细节等章节的Markdown文件。这些文件已不再需要,因为论文内容已整合到其他文档或完成编译。
2025-05-13 01:14:55 +08:00

101 lines
2.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 基于文档驱动的自适应编码大模型微调框架
## 项目背景
本项目是广州大学计算机科学与网络工程学院2024届本科毕业设计旨在探索文档驱动的自适应编码大模型微调技术。
## 论文编译
论文LaTeX源码位于`paper/`目录,编译环境要求:
- 操作系统Windows 11
- TeX发行版TeXLive 2023+
- 编译引擎XeLaTeX
- 字体要求:方正楷体简体(需预先安装)
## 项目简介
### 项目概述
本项目是一个基于文档驱动的自适应编码大模型微调框架,通过深度解析私有库的文档以及其他资源,生成指令型语料,据此对大语言模型进行针对私有库的微调。
### 核心功能
- 文档解析与语料生成
- 大语言模型高效微调
- 交互式训练与推理界面
- 训练过程可视化监控
## 技术架构
### 系统原理
```
[前端界面] -> [数据集生成] -> [模型微调] -> [数据存储]
↑ ↑ ↑ ↑
│ │ │ │
[Gradio] [LangChain] [unsloth/QLoRA] [SQLite/TinyDB]
```
### 技术栈
- **前端界面**: Gradio构建的交互式Web界面
- **模型微调**: 基于unsloth框架的QLoRA高效微调
- **数据存储**: SQLite(结构化数据) + TinyDB(非结构化数据)
- **工作流引擎**: LangChain实现文档解析与语料生成
- **训练监控**: TensorBoard集成
## 功能模块
### 1. 模型管理
- 支持多种格式的大语言模型加载
- 模型信息查看与状态管理
- 模型卸载与内存释放
### 2. 模型推理
- 对话式交互界面
- 流式响应输出
- 历史对话管理
### 3. 模型微调
- 训练参数配置(学习率、batch size等)
- LoRA参数配置(秩、alpha等)
- 训练过程实时监控
- 训练中断与恢复
### 4. 数据集生成
- 文档解析与清洗
- 指令-响应对生成
- 数据集质量评估
- 数据集版本管理
## 微调技术
### QLoRA原理
QLoRA(Quantized Low-Rank Adaptation)是一种高效的大模型微调技术,核心特点包括:
1. **4-bit量化**: 将预训练模型量化为4-bit表示大幅减少显存占用
2. **低秩适配**: 通过低秩矩阵分解(LoRA)实现参数高效更新
3. **内存优化**: 使用梯度检查点等技术进一步降低显存需求
### 参数配置
- **学习率**: 建议2e-5到2e-4
- **LoRA秩**: 控制适配器复杂度(建议16-64)
- **LoRA Alpha**: 控制适配器更新幅度(通常设为秩的1-2倍)
### 训练监控
- **TensorBoard集成**: 实时查看损失曲线、学习率等指标
- **日志记录**: 训练过程详细日志保存
- **模型检查点**: 定期保存中间权重
## 快速开始
1. 安装依赖:
```bash
pip install -r requirements.txt
```
2. 启动应用:
```bash
python main.py
```
3. 访问Web界面:
```
http://localhost:7860
```
## 许可证
MIT License