一、需求和技术1.企业对于大模型的不同类型个性化需求提高模型对企业专有信息的理解、增强模型再特定行业领域的知识——SFT有监督微调Supervised Fine-Tuning通过提供的人工标注的数据进一步进行训练预训练模型让模型能够精准的处理特定任务提供个性化和互动性强的服务——RLHF强化学习Reinforcement Learning from Human FeedbackDPODirect Preference Optimization核心思想通过人类对比选择 直接优化生成模型使其产生更加符合用户需求的结果调整幅度更大。PPO(Proximal Policy Optimization):通过奖励信号来渐进式调整模型的行为调整幅度小提高模型对专有服务的理解、增强模型在特定领域的知识、获取和生成最新的、实时的信息——RAG检索增强生成Retrieval-Augmented Generation2.微调与RAG的选择取决于具体需求、资源限制和应用场景。以下是关键考量因素数据可用性微调需要大量高质量标注数据适用于特定领域或任务。数据不足时效果受限。 RAG依赖外部知识库检索适合动态或开放域信息需求无需大量标注数据。计算资源微调需GPU资源训练模型成本较高。适合长期稳定需求能够直接提升模型固有能力无需外部检索。 RAG推理时计算开销低适合实时性要求高的场景。知识库更新无需重新训练模型。知识更新频率微调模型知识固化更新需重新训练。适合静态知识场景。 RAG通过更新检索库实时获取新知识。适合医疗、新闻等高频更新领域。RAG每次回答前耗时检索知识库回答质量依赖于检索系统质量任务复杂度微调在封闭任务文本分类、实体识别表现更优。 RAG擅长开放生成任务问答、摘要通过检索增强事实一致性。实现示例微调代码框架PyTorchfrom transformers import Trainer, TrainingArguments training_args TrainingArguments(output_dir./results, num_train_epochs3) trainer Trainer(modelmodel, argstraining_args, train_datasettrain_data) trainer.train()RAG流程伪代码retriever VectorRetriever(indexknowledge_base) generator TransformerGenerator() def answer(query): contexts retriever.search(query) return generator.generate(query, contexts)总结少量企业私有知识微调和RAG都做资源不足优先RAG需要动态更新数据RAG大量垂直领域数据微调SFT1.预训练模型基座模型在大量数据上训练过的模型微调前需要下载的开源模型。它具备了通用知识的能力能够解决常见的任务在此基础上进行微调以适应特定领域任务。3.微调算法分类1.全参数微调对整个预训练模型进行微调更新全部参数。优点每个参数都调整能够得到最佳性能适应不同的工作场景缺点需要大量的计算资源并且容易出现过拟合2.部分参数微调只更新模型的部分参数优点减少了计算成本降低过拟合风险小的代价获得较好的模型缺点无法达到最佳性能代表算法lora4.lora微调算法低秩自适应h:模型的输出W0:预训练模型的原始权重是一个全秩矩阵x:模型输入*W0:微调后原始权重的变化也是一个全秩矩阵大小和W0相同BA两个低秩矩阵B和A它们的乘积BA表示对原始权重的微调变化量*W0:全参数微调输出:全参数微调输出用LoRA方法对部分参数微调输出Lora核心让BA且BA存储数据量远远小于——矩阵的低秩分解线性代数中100*1002*100*2 40010000Lora训练后进行权重合并5.Llama-factory 简介Llama-factory 是一个专注于大语言模型LLM微调和推理的开源工具库旨在简化模型适配特定任务的过程。其核心功能包括高效参数微调如 LoRA、QLoRA、分布式训练支持以及针对消费级硬件的优化。能够实现0代码的微调核心特性高效微调技术支持低秩适配LoRA、量化低秩适配QLoRA等方法显著降低显存占用使得在单张消费级显卡如 RTX 4090上微调数十亿参数模型成为可能。多框架兼容深度集成 Hugging Face Transformers 和 PyTorch提供统一的接口管理模型加载、数据预处理和训练流程。任务定制化覆盖文本生成、对话系统、代码补全等场景支持自定义数据集和评估指标适配领域特定需求。硬件优化通过梯度检查点、混合精度训练等技术提升训练效率支持多节点分布式训练以扩展至更大规模模型。典型应用场景领域适配在医疗、法律等专业领域通过微调提升模型对术语和上下文的理解能力。轻量化部署结合量化技术将模型部署至边缘设备或资源受限环境。研究实验快速验证不同微调策略如适配器架构、提示微调对模型性能的影响。安装与示例通过 pip 安装最新版本pip install llama-factory以下代码展示基于 LoRA 的微调流程from llama_factory import Trainer, load_model model load_model(meta-llama/Llama-2-7b, use_loraTrue) trainer Trainer( model, train_datasetyour_dataset, eval_datasetyour_eval_data ) trainer.train()性能对比在相同硬件条件下与传统全参数微调相比方法显存占用训练速度全参数微调24GB1xLoRA8GB1.2xQLoRA6GB0.9x