当前位置: 首页 > news >正文

如何做镜像别人网站wordpress菜单对齐修改

如何做镜像别人网站,wordpress菜单对齐修改,中学生在哪里学编程最好,辽宁定制网站建设推广目录 1. 前言 2.大模型微调概念简述 2.1. 按学习范式分类 2.2. 按参数更新范围分类 2.3. 大模型微调框架简介 3. DeepSpeek R1大模型微调实战 3.1.LLaMA-Factory基础环境安装 3.1大模型下载 3.2. 大模型训练 3.3. 大模型部署 3.4. 微调大模型融合基于SpirngBootVue2…目录 1. 前言 2.大模型微调概念简述 2.1. 按学习范式分类 2.2. 按参数更新范围分类 2.3. 大模型微调框架简介 3. DeepSpeek R1大模型微调实战 3.1.LLaMA-Factory基础环境安装 3.1大模型下载 3.2. 大模型训练 3.3. 大模型部署 3.4. 微调大模型融合基于SpirngBootVue2开发的AI会话系统 4.源码获取 5.结语 1. 前言 在如今快速发展的AI技术领域越来越多的企业正在将AI应用于各个场景。然而尽管大模型如GPT、DeepSpeek等在多个任务上已取得显著进展但是普通的大模型在面对特定行业或任务时往往会出现一个问题——AI幻觉。所谓AI幻觉是指模型生成的内容不符合实际需求甚至包含错误或无关的信息这对于一些行业来说可能带来不可接受的风险尤其是在医疗、法律、金融等领域。 对于这些行业的企业而言精准、高效地输出行业特定内容是他们对AI的核心需求。企业希望AI能够处理行业术语、应对特殊情境并且确保内容的准确性。然而单纯依赖大模型进行推理往往无法达到这样的标准因为大模型的训练是基于通用数据集这些数据集通常并不包含行业领域的深度知识。因此企业通常需要一个更加定制化、精细化的模型而这正是大模型微调技术能够提供的解决方案。 大模型微调技术通过对预训练的大模型进行进一步训练能够根据特定领域的需求进行优化。通过提供具有代表性的领域数据尤其是精心标注的行业特定数据微调后的模型能够学习这些领域的专有知识从而有效避免AI幻觉的发生并且提供更加准确、有价值的输出。 本文将从零开始教你一步步入门AI大模型微调技术基于DeepSpeek R1大模型最终实现基于私有化部署的微调大模型AI会话系统。感兴趣的朋友可以继续往下看看。 2.大模型微调概念简述 大模型微调是指在已有的预训练大模型基础上通过特定任务或领域数据进行进一步训练使模型能够更精准地处理特定任务。与传统的训练方法不同微调充分利用已有的大模型减少对大量数据的依赖同时通过对模型进行小范围的调整使其适应新的任务。大模型微调技术在多个领域中得到了广泛应用如文本生成、分类任务、问答系统等。 微调的核心目标是使大模型根据特定任务需求进行优化提升其在特定应用场景中的表现。为实现这一目标微调方法主要包括以下两种分类方式 按学习范式分类根据模型学习方式的不同微调方法可分为有监督微调、无监督微调和半监督微调等类型。按参数更新范围分类根据在微调过程中对模型参数更新范围的不同方法可分为全量微调和部分微调等类型。 2.1. 按学习范式分类 有监督微调Supervised Fine-TuningSFT 有监督微调是最常见的微调方式适用于任务明确且具有标注数据的情况。通过使用人工标注的高质量数据对模型能够学习特定任务所需的知识从而在指定任务上提供准确的输出。 SFT示例 training_data [{input: 问题, output: 标准答案},# 人工标注的高质量数据对 ] 在有监督微调中模型的目标是根据输入的“问题”生成一个“标准答案”。这个过程依赖于人工标注的数据使模型能够更好地理解并生成符合实际需求的结果有监督微调适用于需要特定答案的任务如情感分析、文本分类、机器翻译、问答系统等。 无监督微调Unsupervised Fine-Tuning 无监督微调是一种不依赖人工标注的微调方式主要利用大量未标注的文本数据进行训练。通过无监督学习模型能够自动从原始数据中提取知识尤其在没有标注数据或标注数据获取困难的情况下尤为有用。 无监督微调示例 training_data [大量未标注文本...,# 无需人工标注的原始文本 ] 这种方式通常用于模型的预训练过程模型通过对大规模文本进行训练学习通用的语言表示能力。无监督微调可以增强模型的语法和语义理解能力提升其在不同任务中的表现无监督微调适用于自然语言建模、生成任务等场景帮助模型理解文本的结构和语义关系。 半监督微调Semi-Supervised Fine-Tuning 半监督微调结合了有监督和无监督学习的优点利用标注数据和未标注数据来训练模型。常用的方法包括将未标注数据通过某种方式生成伪标签或利用自监督学习方法使模型在标注数据较少时也能进行有效训练。 半监督微调示例 training_data [{input: 问题, output: 标准答案}, # 高质量人工标注数据大量未标注文本..., # 用于填充的未标注数据 ] 半监督微调适用于标注数据稀缺的场景能够结合少量标注数据和大量未标注数据进一步提升模型表现这种方法在实际应用中尤其适用于标签获取困难或成本高昂的领域如医疗、法律等行业。 2.2. 按参数更新范围分类 全量微调Full Fine-Tuning 全量微调是指在对预训练模型进行微调时更新模型的所有参数。通过对特定领域数据的训练模型的所有层都会根据新任务的数据进行调整。全量微调能够在模型中深度定制领域知识最大程度地提升模型在目标任务中的效果。 全量微调的特点 更新模型的所有参数。适用于数据量较大且任务复杂的场景。训练时间较长需要大量计算资源。 全量微调适用于大规模数据集且任务复杂的场景如文本生成、问答系统、情感分析等。它能够充分利用预训练模型进行深度学习提供最优效果。 部分微调Low-Rank AdaptationLoRA 部分微调是一种通过对预训练模型的部分参数进行微调的技术。LoRA的目标是减少微调过程中需要更新的参数数量从而显著降低计算开销。通过低秩矩阵的方式LoRA仅更新模型中的某些参数如特定层的权重使微调过程更加高效特别适合计算资源有限的场景。 LoRA的特点 只调整部分参数如低秩矩阵分解。降低计算和内存开销。适合快速微调尤其在资源受限时。 LoRA非常适合在资源有限的情况下快速调整模型尤其在需要快速部署且不需要全部模型调整的场景中非常有用。 在大模型微调过程中有监督微调SFT与LoRALow-Rank Adaptation相结合能够充分发挥各自优势提升模型在特定任务上的表现。具体而言SFT通过在人工标注的数据上对模型进行微调使其适应特定任务而LoRA则在冻结预训练模型权重的基础上引入低秩矩阵进行微调减少计算开销并提高效率。将两者结合可以在保证性能的同时降低资源消耗。在接下来的部分我们将详细探讨如何将SFT与LoRA相结合进行高效的大模型微调并展示其在实际应用中的效果。 2.3. 大模型微调框架简介 在大模型微调领域存在多种框架每个框架都有其独特的优势和局限性。以下是几种常见的大模型微调框架的介绍与比较 1. Hugging Face Transformers Hugging Face Transformershttps://huggingface.co/transformers/ 是目前最为流行的自然语言处理NLP框架之一提供了丰富的预训练模型和易于使用的 API广泛应用于各类 NLP 任务如文本分类、问答系统等。它的特点是 预训练模型丰富支持多种模型如 BERT、GPT、T5 等。提供了高层次的 API使得微调过程简单易懂。拥有庞大的用户社区和文档支持。 尽管 Hugging Face Transformers 在许多常见任务中表现优秀但在超大规模模型的微调和训练中可能会面临性能瓶颈和资源消耗过大的问题。 2. DeepSpeed DeepSpeedLatest News - DeepSpeed 是微软开发的高效深度学习训练框架专注于优化大规模模型训练的性能。其主要特点包括 ZeRO优化显著减少内存占用提高分布式训练的效率。支持 混合精度训练加速训练过程并减少内存需求。提供分布式训练功能支持大规模模型的训练。 DeepSpeed适合大规模模型的训练但使用门槛较高需要深入理解框架的底层实现。 3. Fairseq Fairseq fairseq documentation — fairseq 0.12.2 documentation是 Facebook AI Research 开发的一个高效训练工具支持多种模型架构的训练如 Transformer 和 BART。其特点为 高性能和灵活性支持多种任务如机器翻译、文本生成等。容易扩展支持用户自定义新的算法和模型。 Fairseq 对于需要灵活定制和扩展的场景非常适合但其文档和社区支持相对有限。 4. LLaMA-Factory本文使用的框架 LLaMA-Factory LLaMA Factory是由国内北航开源的低代码大模型训练框架旨在简化大模型微调过程尤其是在支持低代码甚至零代码操作的基础上提供极大的便利。其主要特点包括 零代码操作通过 Web UILlamaBoard用户无需编写代码即可完成大规模模型的微调。高效的训练方法结合 LoRA低秩适配和 QLoRA 等先进技术在保证模型性能的同时显著降低了计算资源消耗。相较于其他框架LLaMA-Factory 提供了更高的微调效率。广泛的模型支持支持 LLaMA、Mistral、Qwen 等多种流行的预训练模型适应性强。低成本和高性能通过量化技术和高效算法LLaMA-Factory 可降低模型训练成本同时加速训练过程。 LLaMA-Factory 适合企业和研究人员需要快速、高效地微调大模型并在特定任务中应用时尤其在低资源条件下表现突出。 每个大模型微调框架都有其适用场景和优势。Hugging Face Transformers 以其丰富的模型和简便的 API 受到广泛欢迎适合大多数 NLP 任务。DeepSpeed 在处理超大规模模型时表现优异适合对性能要求极高的训练任务。Fairseq 则适合需要灵活定制和高性能训练的应用场景。而 LLaMA-Factory 则在提高训练效率、降低成本和简化操作方面展现出巨大的优势尤其在零代码操作和多种微调技术的结合下使得大模型的微调过程更加轻松和高效。对于希望快速实现大模型微调的用户LLaMA-Factory 无疑是一个值得优先考虑的选择。 3. DeepSpeek R1大模型微调实战 3.1.LLaMA-Factory基础环境安装 1. 安装 AnacondaPython 环境管理工具 1.下载 Anaconda 访问 Anaconda 官网 下载适用于 Windows 系统的安装包记得选择 Python 3.10 版本。安装包约 800MB耐心等待下载完成。 2. 安装 Anaconda已经安装了Anaconda就跳过这步 双击下载的安装程序按照提示进行安装。安装过程中建议勾选“Add Anaconda to PATH”选项这样方便在命令行中使用如果你忘记勾了也没关系后续自行配置一下环境变量就行了环境变量-系统变量-Path中新增下图内容 安装完成后点击“Finish”结束安装。 2. 安装 Git已经安装了git就跳过这步 1. 下载 Git 访问 Git 官网 下载适用于 Windows 的安装包。 2. 安装 Git 双击安装程序并按照默认选项进行安装。安装过程中大部分选项可以保持默认完成安装后即可使用 Git。 3. 创建项目环境 打开Anaconda Prompt从Windows开始菜单找到执行 # 创建新的环境 conda create -n llama python3.10 #运行 conda init 初始化 conda init #这个命令会修改你的 shell 配置文件例如 .bashrc、.zshrc 等以便能够正确使用 conda 命令。 #conda init 执行后需要重新启动命令提示符。关闭当前的命令提示符窗口然后重新打开一个新的命令提示符窗口。 # 激活环境 conda activate llama 4. 安装PyTorchAI框架 在同一个命令窗口继续执行llma环境 # 安装PyTorch支持CUDA的版本 pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118 5. 安装LLaMA-Factory 找到一个目录存放LLaMA-Factory项目打开git命令窗口执行 # 克隆项目 git clone https://github.com/hiyouga/LLaMA-Factory.git 下载完成后使用pycharm打开LLaMA-Factory工程 安装项目依赖 安装的时候确保你的环境是llma也可以在外部命令窗口执行这个看你自己核心是保证依赖下载到llma环境 pip install -e .[torch,metrics] 验证安装 # 测试是否安装成功 llamafactory-cli version 启动 LLama-Factory 的可视化微调界面 llamafactory-cli webui 打开http://localhost:7860/你会看到以下界面 3.1大模型下载 打开HuggingFace 官网https://huggingface.co我这里还是以deepspeek为例1.5b来演示这几天qwq也很火感兴趣的朋友也可以试试不过要预先明确好你的电脑能承载多大的模型关于deepspeek模型对于电脑规格的需求我放在了我的另外一篇博客里DeepSpeek服务器繁忙这几种替代方案帮你流畅使用附本地部署教程-CSDN博客 修改大模型存放位置$env:HF_HOME E:\soft\Hugging-Face 修改大模型下载位置$env:HF_ENDPOINTHF-Mirror 安装huggingface_hubpip install -U huggingface_hub 下载DeepSeek-R1模型huggingface-cli download --resume-download deepseek-ai/DeepSeek-R1-Distill-Qwen-1.5B 3.2. 大模型训练 在llaMA-Factory界面http://localhost:7860/加载模型图中我选的位置是E:\soft\Hugging-Face\hub\models--deepseek-ai--DeepSeek-R1-Distill-Qwen-1.5B\snapshots\ad9f0ae0864d7fbcd1cd905e3c6c5b069cc8b562微调方法选择lora训练阶段选择SFT有监督微调 接下来就是准备训练数据集了在LLaMA-Factory工程中打开data文件夹下的READ_ME.md文件查看框架支持的训练数据集 我按照identity.json的格式模拟了一个xfc.json数据量太少会导致训练效果不好尽量自己多生成一些 [{instruction: 你是谁,input: ,output: 喵呜~我是小肥肠一只会说话的小肥猫是喵喵咖啡厅的服务员今天有什么我可以帮你的吗},{instruction: 你是猫咪吗,input: ,output: 没错我是猫咪我叫小肥肠是喵喵咖啡厅的服务员哦~喜欢猫咪吗},{instruction: 你会做什么,input: ,output: 我是喵喵咖啡厅的服务员我的工作是给客人提供温暖的咖啡和甜点让大家感到开心和放松我可是个超棒的咖啡品鉴师哦},{instruction: 你在咖啡厅做什么工作,input: ,output: 喵~我负责为客人提供服务带来美味的咖啡和甜点我会为大家推荐最适合的饮品保证你每一口都喝得开心},{instruction: 为什么叫小肥肠,input: ,output: 哈哈这是因为我是一只特别可爱的小肥猫呀喜欢吃好吃的东西所以就叫小肥肠了~而且我也喜欢和大家分享美味的咖啡和甜点},{instruction: 你是服务员吗,input: ,output: 对呀我是喵喵咖啡厅的服务员小肥肠我会为你准备你喜欢的饮品今天想要喝点什么呢},{instruction: 喵喵咖啡厅是什么样的地方,input: ,output: 喵呜~喵喵咖啡厅是一个温暖又舒适的地方空气里弥漫着咖啡香猫咪们在这里和我一起工作大家可以在这里喝咖啡、吃甜点、享受悠闲的时光},{instruction: 你会做咖啡吗,input: ,output: 虽然我是一只会说话的小肥猫但做咖啡可不是我的工作哦不过我可是个超棒的咖啡品鉴师保证你每一口都喝得开心},{instruction: 你有什么特别的技能,input: ,output: 我的特别技能就是让你开心喵呜~我能用可爱的声音和表情让你瞬间笑出来心情都变得超级好哦},{instruction: 你为什么是喵喵咖啡厅的服务员,input: ,output: 因为我是一只特别喜欢和大家互动的小肥猫在喵喵咖啡厅我能和每一位客人交流分享美味的饮品和甜点给大家带来温暖和欢乐} ] 把xfc.json配置到dataset_info.json xfc: {file_name: xfc.json } 回到llaMA-Factory界面http://localhost:7860/界面点击【Train】设置一下训练数据集 开始调整训练参数我认为最难的一部分我学了3,4天还是不太会调你最好自己去查阅资料自己调不要照抄我的 如果用专业术语来解释上面的训练参数可能很多人看不懂当时我也是看的非常吃力现在依然比较懵不过这个不是本文的重点这篇文章主要讲解大模型微调入门参数调整会放到以后的进阶篇这里以非专业通俗易懂的预研解释一下训练参数想象你是一位老师将模型训练过程想象成教导一个学生学习新知识 学习率Learning Rate就像你给学生布置作业时告诉他每次复习多少内容。学习率决定了模型在每次“学习”时调整知识的幅度。较小的学习率意味着每次调整都很小学习过程更稳定但可能需要更多时间才能学会较大的学习率则可能导致学习过程不稳定。训练轮数Training Epochs这相当于你让学生复习的总次数。每一轮epoch中模型都会“阅读”并学习所有的训练数据。更多的训练轮数通常有助于模型更好地学习但也需要更多的时间。最大梯度范围Max Gradient Norm想象学生在学习过程中如果调整过大可能会导致学习偏离正确方向。这个参数就像是给学生设定的“学习幅度上限”确保每次调整都在合理范围内防止学习过程中的“过度反应”。批次大小Batch Size这就像你一次给学生布置的作业量。较大的批次大小意味着每次学习时模型会处理更多的数据这有助于提高学习效率但也需要更多的计算资源GPU资源。梯度累积步数Gradient Accumulation Steps如果由于资源限制你不能一次性给学生布置大量作业这个参数允许你分多次累积学习效果然后再一起调整模型的知识。这样可以在不增加计算资源的情况下模拟更大的批次学习效果。计算类型这就像你决定用粗略的笔记还是精确的记录来记录学生的学习进度。较高的计算精可以提高学习的准确性但可能需要更多的计算资源。 点击【开始】按钮开始训练结束以后会提示【训练完毕】途中的折线图是训练的效果 如果模型训练效果不好可以采用增大训练轮数、学习率或者增加训练数据集的样本数来解决这个自己下去摸索现在博主也在摸索阶段后期会出一篇大模型微调参数的纯干货文 点击【Chat】检验我们的训练效果在检查点路径选择我们刚刚训练的模型。检查点路径” 是指 模型训练过程中的中间保存文件的位置通常用于 恢复训练 或 加载已经训练好的模型。点击【加载模型】就可以开始聊天了 3.3. 大模型部署 点击【Export】选择模型存储位置将训练好的模型进行导出 选择任意盘创建deepspeekApi文件夹用于存放部署脚本我选的是E盘E:\deepspeekApi进入E:\deepspeekApi输入cmd打开命令提示符窗口 新增conda虚拟环境部署环境激活环境后在该环境中下载所需依赖 #新建deepspeekApi虚拟环境 conda create -n deepspeekApi python3.10 #激活deepspeekApi conda activate deepspeekApi #下载所需依赖 conda install -c conda-forge fastapi uvicorn transformers pytorch pip install safetensors sentencepiece protobuf 新增main.py脚本 from fastapi import FastAPI, HTTPException from transformers import AutoModelForCausalLM, AutoTokenizer import torch import logging from pydantic import BaseModel, Field# 配置日志 logging.basicConfig(levellogging.INFO) logger logging.getLogger(__name__)app FastAPI()# 模型路径 model_path rE:\deepspeek-merged# 加载 tokenizer 和模型 tokenizer AutoTokenizer.from_pretrained(model_path) device cuda if torch.cuda.is_available() else cpu model AutoModelForCausalLM.from_pretrained(model_path,torch_dtypetorch.float16 if device cuda else torch.float32 ).to(device)app.get(/answer) async def generate_text(prompt: str):try:# 使用 tokenizer 编码输入的 promptinputs tokenizer(prompt, return_tensorspt).to(device)# 使用模型生成文本设置优化后的参数outputs model.generate(inputs[input_ids], max_length100, # 增加最大长度min_length30, # 设置最小长度top_p0.85, # 提高top_p值temperature0.6, # 降低温度系数do_sampleTrue, # 使用采样repetition_penalty1.2, # 添加重复惩罚no_repeat_ngram_size3, # 防止3-gram重复num_beams4, # 使用束搜索early_stoppingTrue # 提前停止生成)# 解码生成的输出generated_text tokenizer.decode(outputs[0], skip_special_tokensTrue)return {generated_text: generated_text}except Exception as e:logger.error(f生成错误: {str(e)})raise HTTPException(status_code500, detailstr(e))app.get(/health) async def health_check():return {status: healthy, model: model_path} main.py 文件实现了一个轻量级 DeepSeek 模型推理服务基于 FastAPI 框架构建。该服务将本地部署的大语言模型包装为 HTTP API便于系统集成。其关键特性如下 ✅ 本地模型加载直接从本地路径加载模型无需依赖云服务✅ GPU 加速支持自动检测并使用 GPU 进行推理加速✅ 参数精调固定的生成参数配置max_length100, top_p0.85, temperature0.6...✅ 错误处理完整的异常捕获和日志记录机制✅ 健康检查提供服务状态监控端点 运行命令uvicorn main:app --reload --host 0.0.0.0 uvicorn main:app --reload --host 0.0.0.0 命令用于启动一个 FastAPI 应用服务器其中 main:app 指定了应用入口即 main.py 文件中的 app 实例--reload 选项启用开发模式允许在代码更改时自动重启服务器而 --host 0.0.0.0 使服务器监听所有网络接口允许外部设备访问。访问接口localhost:8000/answer 大模型微调加部署已经完整实现接下来就是把它接入我们自己的定制化会话模型中。 3.4. 微调大模型融合基于SpirngBootVue2开发的AI会话系统 上面章节中我们完成了大模型的微调和部署这一章中我会把微调大模型融入到SpringBootVue2搭建的AI会话系统中关于AI会话系统之前我就有写过相关博客感兴趣的朋友可以移步10分钟上手DeepSeek开发SpringBoot Vue2快速构建AI对话系统_springboot deepseek-CSDN博客 原来的AI会话模型接入的是云端的deepspeek模型现在接入的是本地微调过得deepspeek1.5b模型代码我就不粘贴了比较简单就是websocket加远程调用python接口localhost:8000/answer实现效果如下图 后端日志 系统界面 这次的AI会话系统界面比之前更加精美了想要源码的读者可以移步第四章源码获取。 4.源码获取 关注gzh后端小肥肠点击底部【资源】菜单即可获取前后端完整源码。 5.结语 大模型微调作为一种强大的技术能够为许多行业提供量身定制的AI解决方案帮助企业更好地适应和优化特定任务。尽管微调大模型的过程充满挑战但通过不断学习和实践我们能够逐步掌握并精通这一领域。本文通过详细的步骤讲解了大模型微调的基础操作使用LLaMA-Factory框架进行模型训练和部署并通过FastAPI实现了本地化部署服务。这些知识为想要开展AI微调项目的朋友提供了宝贵的实践经验。 如果你对AI领域感兴趣欢迎关注小肥肠小肥肠将持续更新AI领域更多干货文章~~感谢大家的阅读我们下期再见
http://www.w-s-a.com/news/681765/

相关文章:

  • 长春网站建设net企业公示信息查询官网
  • 金鹏建设集团网站可在哪些网站做链接
  • 电子产品网站开发背景网站关键词优化方案
  • 建网站论坛wordpress提交数据库错误
  • 国内网站建设公司开源网站系统
  • 网站开发公司上大连网站建设流程图
  • 银川网站seo宁波网
  • 个人备案网站会影响吗网站添加 备案
  • 网站建设与电子商务的教案关于旅游网站建设的方案
  • 电子商务网站建设设计原则找做网站找那个平台做
  • 天津高端品牌网站建设韶关网站建设墨子
  • Wordpress多站点为什么注册不了2008iis搭建网站
  • 天津高端网站制作建网站的公司服务
  • 温州网站推广优化类似淘宝的网站怎么做的
  • 网站建设实训考试什么网站做玩具的比较多
  • 上海网站建设特点怎样给公司做一个网站做推广
  • 流量网站怎么做的济南优化排名公司
  • 保定网站制作套餐设计师导航网站大全
  • 惠州 商城网站建设石家庄新闻广播在线收听
  • 洪山网站建设域名购买之后怎么做网站
  • 北京网站建设公司服务哪家好wap是什么意思?
  • 怎么看公司网站做的好不好哦wordpress页面目录下
  • 做装修业务呢有多少网站平台搭建是什么
  • 潍坊优化网站排名淘宝做网站被骗
  • 建设专业网站的利弊免费logo设计生成器下载
  • 怎么在备案号添加网站网页设计动画网站
  • 网站开发 只要wordpress滑动注册
  • 跨境电商运营主要做什么静态网站如何做优化
  • 南充网站建设网站网站备案安全责任书是谁盖章
  • 怎么将网站设置为首页网站子目录怎么做