直达「 通往AGI之路 」飞书知识库 →
首页/问答列表/问答详情

大模型微调

回答

大模型微调是在较小的、特定领域的数据集上继续大模型的训练过程,具有重要意义和多种方式:

意义:

  • 提高模型在特定任务中的性能:可以输入更多示例,经过微调的模型在特定任务中表现更好,但可能会失去一些通用性。
  • 提高模型效率:实现更低的延迟和成本,可通过专门化模型使用更小的模型,以及舍弃示例或指令来改善。

方式:

此外,通俗来讲,大模型是输入大量语料,让计算机获得类似人类的“思考”能力,能进行文本生成、推理问答、对话、文档摘要等工作。大模型的训练、使用过程可类比上学参加工作:找学校(需要大量 GPU 进行训练)、确定教材(需要大量数据)、找老师(选择合适算法)、就业指导(即微调)、搬砖(推导)。在 LLM 中,Token 被视为模型处理和生成的文本单位,会对输入进行分词并数字化形成词汇表。

OpenAI 官方微调教程:https://github.com/openai/openai-cookbook/blob/main/examples/How_to_finetune_chat_models.ipynb

内容由 AI 大模型生成,请仔细甄别(powered by aily)

参考资料

大模型入门指南

通俗来讲,大模型就是输入大量语料,来让计算机获得类似人类的“思考”能力,使之能够理解自然语言,能够进行『文本生成』、『推理问答』、『对话』、『文档摘要』等工作。既然是学习,那我们就可以用『上学参加工作』这件事来类比大模型的训练、使用过程:1.找学校::训练LLM需要大量的计算,因此GPU更合适,因此只有购买得起大量GPU的贵族学校才有资本训练自己的大模型2.确定教材::大模型顾名思义就是大,需要的数据量特别多,几千亿序列(Token)的输入基本是标配3.找老师::即用什么样的算法讲述“书本”中的内容,让大模型能够更好理解Token之间的关系4.就业指导::学完书本中的知识后,为了让大模型能够更好胜任某一行业,需要进行微调(fine tuning)指导5.搬砖::就业指导完成后,下面就要正式干活了,比如进行一次翻译、问答等,在大模型里称之为推导(infer)在LLM中,Token([2])被视为模型处理和生成的文本单位。它们可以代表单个字符、单词、子单词,甚至更大的语言单位,具体取决于所使用的分词方法(Tokenization)。Token是原始文本数据与LLM可以使用的数字表示之间的桥梁。在将输入进行分词时,会对其进行数字化,形成一个词汇表(Vocabulary),比如:The cat sat on the mat,会被分割成“The”、“cat”、“sat”等的同时,会生成下面的词汇表:|Token|ID||-|-||The|345||cat|1256||sat|1726||…|…|

3. 如何让 LLM 应用性能登峰造极

参数规模的角度,大模型的微调分成两条技术路线:全量微调FFT(Full Fine Tuning):对全量的模型参数,进行全量的训练。PEFT(Parameter-Efficient Fine Tuning):只对部分模型参数进行训练。从成本和效果的角度综合考虑,PEFT是目前业界比较流行的微调方案。OpenAI官方微调教程:[https://github.com/openai/openai-cookbook/blob/main/examples/How_to_finetune_chat_models.ipynb](https://github.com/openai/openai-cookbook/blob/main/examples/How_to_finetune_chat_models.ipynb)微调是在较小的、特定领域的数据集上继续LLM的训练过程。这可以通过调整模型本身的参数,而不是像提示工程和RAG那样仅仅更改提示,来大幅提高模型在特定任务中的性能。把微调想象成把通用工具打磨成精密仪器。微调有两大好处:提高模型在特定任务中的性能。微调意味着你可以输入更多的示例。您可以在数以百万计的代币上进行微调,而根据上下文的大小,少量学习提示仅限于数以万计的代币。经过微调的模型可能会失去一些通用性,但对于其特定任务而言,您应该期待它有更好的表现。提高模型效率。LLM应用程序的效率意味着更低的延迟和更低的成本。实现这一优势有两种方法。通过专门化模型,您可以使用更小的模型。此外,由于只对输入输出对进行训练,而不是对完整的提示及其任何提示工程技巧和提示进行训练,因此可以舍弃示例或指令。这可以进一步改善延迟和成本。

大圣:全网最适合小白的 Llama3 部署和微调教程

大模型微调的意义在于学习新的知识,因此我们需要使用一份叫做数据集的东西。数据集就是用来让大模型重新学习的知识数据集的获取以及简单的原理可以参考文档:[self-llm/LLaMA3/04-LLaMA3-8B-Instruct Lora微调。md at master · datawhalechina/self-llm](https://github.com/datawhalechina/self-llm/blob/master/LLaMA3/04-LLaMA3-8B-Instruct%20Lora%20%E5%BE%AE%E8%B0%83.md)数据集:json下载地址:[https://github.com/datawhalechina/self-llm/blob/master/dataset/huanhuan.json](https://github.com/datawhalechina/self-llm/blob/master/dataset/huanhuan.json)[huanhuan.json](https://bytedance.feishu.cn/space/api/box/stream/download/all/R73db8mk5o7bNix4semcdsMAnAe?allow_redirect=1)[heading3]进行微调[content]有了数据集,就可以使用代码进行微调了。1.首先我们把数据集上传到你的服务器1.编写微调代码代码如下:1.执行微调代码1.微调完成大概15分钟左右就可以微调完成

其他人在问
我想了解一下关于模型微调的知识
以下是关于模型微调的知识: 介绍:微调可让您从 API 提供的模型中获得更多收益,比如比即时设计更高质量的结果、能够训练比提示中更多的例子、由于更短的提示而节省了 Token、更低的延迟请求。GPT3 已在大量文本上预训练,微调通过训练更多示例改进小样本学习,让您在大量任务中取得更好结果。对模型微调后,无需在提示中提供示例,可节省成本并降低延迟。在高层次上,微调涉及准备和上传训练数据、训练新的微调模型、使用微调模型。 哪些模型可以微调:微调目前仅适用于以下基础模型:davinci、curie、babbage 和 ada。还可以继续微调微调模型以添加其他数据,无需从头开始。 微调的概念和意义:在人工智能领域,通常根据应用领域将大模型分为通用大模型和领域特定模型。通用大模型如 GPT4.0、GPT3.5 等具有广泛的自然语言理解能力,但在特定领域表现可能不理想。对大模型针对特定领域进行的训练过程称为微调,通过在特定领域数据上训练,优化所有层参数,提高在该领域的专业性。微调可节省成本、加快模型部署和应用速度。 相关应用开发:除了调用 ChatGPT 之外,还需学会模型微调、设计 Prompt、优化用户交互的解决方案等。在开发中,程序读取结构化数据,如 JSON 格式。通过稳定的提示词设计及一些模型参数(如温度 Temperature 等)来让 ChatGPT 保持稳定输出。
2024-11-12
如何做大模型的云端部署与微调
做大模型的云端部署与微调,主要包括以下步骤: 1. 选择合适的部署方式: 本地环境部署。 云计算平台部署。 分布式部署。 模型压缩和量化。 公共云服务商部署。需根据自身的资源、安全和性能需求进行选择。 2. 准备训练所需的数据和计算资源: 确保有足够的训练数据覆盖目标应用场景。 准备足够的计算资源,如 GPU 服务器或云计算资源。 3. 选择合适的预训练模型作为基础: 可以使用开源的预训练模型如 BERT、GPT 等。 也可以自行训练一个基础模型。 4. 针对目标任务进行模型微调训练: 根据具体应用场景对预训练模型进行微调训练。 优化模型结构和训练过程以提高性能。 5. 部署和调试模型: 将训练好的模型部署到生产环境。 对部署的模型进行在线调试和性能优化。 6. 注意安全性和隐私保护: 大模型涉及大量数据和隐私信息,需要重视安全性和合规性。 例如,对于 SDXL 的大模型,本地部署时要注意模型分为 base+refiner 以及配套的 VAE 模型,需将其放入对应文件夹,并在秋叶启动器中将 webUI 的版本升级到 1.5 以上。而对于 Llama3 的部署和微调,实操分两部分,包括本地部署并通过 webdemo 对话,以及使用特定数据集进行微调,具体流程为购买服务器、安装代码环境、下载通用模型和数据集、挑选微调框架、编写微调程序和验证结果。 总的来说,部署和微调大模型需要综合考虑多方面因素,根据具体需求选择合适的方法,并注意优化各个环节以提高模型性能和应用效果。
2024-10-26
使用主模型及微调模型进行图像生成的过程是什么?
使用主模型及微调模型进行图像生成的过程通常包括以下步骤: 1. 对于像 Video LDM 这样的模型,首先训练一个 LDM(隐扩散模型)图像生成器。 2. 以 OpenAI 的文本到图像模型为例,在大量由图像和描述图像的文本组成的数据集上进行训练。训练时,先将字符串用分词器分解为离散的 token,通过最大化似然函数构建文本语言模型,然后对图像进行调整将其转换为描述生成器。 3. 为改进在图像生成数据集上的描述效果,对描述生成器进行微调。例如,OpenAI 构建小规模描述数据集来描述图像主对象,诱导模型偏向于描述主对象,此为“短合成描述”;或者创建更长、更丰富的文本数据集来描述图像内容。 4. 对于视频生成,如 Video LDM 向解码器添加额外的时间层,并使用用 3D 卷积构建的逐块时间判别器在视频数据上进行微调,同时编码器保持不变,以实现时间上一致的重建。类似于 Video LDM,Stable Video Diffusion(SVD)也是基于 LDM,在每一个空间卷积和注意力层之后插入时间层,并在整个模型层面上执行微调。 5. 在视频生成的微调过程中,长度为 T 的输入序列会被解释成用于基础图像模型的一批图像,然后再调整为用于时间层的视频格式。其中有 skip 连接通过学习到的融合参数导向时间层输出和空间输出的组合。在实践中,实现的时间混合层有时间注意力和基于 3D 卷积的残差模块等。但 LDM 的预训练自动编码器存在只能看见图像、永远看不见视频的问题,直接用于生成视频会产生闪动伪影和时间一致性差的情况,所以需要进行上述微调操作。
2024-10-19
推荐一下国内可以通过对话微调的预训练模型
以下是为您推荐的国内可以通过对话微调的预训练模型相关信息: 为优化 Llama2 的中文能力,可使用以下数据: 网络数据:互联网上公开的网络数据,包括百科、书籍、博客、新闻、公告、小说等高质量长文本数据。 :中文 Wikipedia 的数据。 :中文悟道开源的 200G 数据。 :Clue 开放的中文预训练数据,经过清洗后的高质量中文长文本数据。 竞赛数据集:近年来中文自然语言处理多任务竞赛数据集,约 150 个。 :MNBVC 中清洗出来的部分数据集。 社区提供预训练版本 Atom7B 和基于 Atom7B 进行对话微调的模型参数供开放下载,关于模型的进展详见社区官网 https://llama.family。 另外,关于会话补全(Chat completions): gpt3.5turbo 和 textdavinci003 两个模型能力相似,但前者价格只是后者的十分之一,在大部分情况下更推荐使用 gpt3.5turbo。 gpt3.5turbo 模型不支持微调。从 2023 年 3 月 1 日起,只能对基于 GPT3.5 的模型进行微调。有关如何使用微调模型的更多细节,请参阅微调指南。 从 2023 年 3 月 1 日起,OpenAI 会将您通过 API 发送的数据保留 30 天但不会使用这些数据来提升模型。 关于安仔:Coze 全方位入门剖析 免费打造自己的 AI Agent(国内版): 目前国内版暂时只支持使用“云雀大模型”作为对话引擎,其携带上下文轮数默认为 3 轮,可修改区间是 0 到 30,具体轮数可根据业务需求决定。 在 Bot 编排页面的“技能”区域,可为 Bot 配置所需技能。不懂插件时,可选择区域右上角的“优化”按钮让 AI Bot 根据提示词自动选择插件。也可自定义添加所需插件,点击插件区域的“+”号选择加入具体插件。 在 Bot 编排页面的“预览与调试”区域,可测试 Bot 是否按预期工作,可清除对话记录以开始新的测试,确保 Bot 能理解用户输入并给出正确回应。
2024-10-18
推荐一下个人可以使用的通过对话微调的模型
以下是一些个人可以使用的通过对话微调的模型相关信息: 会话补全(Chat completions): GPT3.5 系列中,gpt3.5turbo 和 textdavinci003 有相似能力,但 gpt3.5turbo 价格仅为 textdavinci003 的十分之一,在多数情况下更推荐使用 gpt3.5turbo。不过,gpt3.5turbo 不支持微调,从 2023 年 3 月 1 日起,只能对基于 GPT3.5 的模型进行微调。 微调(Finetuning): 案例研究: 客户支持聊天机器人:通常包含相关上下文、对话摘要及最近消息,可能需要几千个示例处理不同请求和客户问题,建议审查对话样本确保代理消息质量,可使用单独文本转换微调模型生成摘要。 基于技术属性列表的产品描述:将输入数据转换为自然语言很重要,确保完成基于所提供描述,若常查阅外部内容,自动添加此类内容可提高性能,若描述基于图像,提取图像文本描述可能有帮助。 模型(Models): GPT3.5 模型可理解和生成自然语言或代码,其中功能最强大、最具成本效益且针对聊天优化的型号是 gpt3.5turbo,建议使用它而非其他 GPT3.5 模型,因其成本更低。 gpt3.5turbo:功能强大,针对聊天优化,成本低,会使用最新模型迭代更新,最大 Token 数 4096,训练数据截至 2021 年 9 月。 gpt3.5turbo0301:2023 年 3 月 1 日的快照,不会更新,仅在 2023 年 6 月 1 日结束的三个月内提供支持,最大 Token 数 4096,训练数据截至 2021 年 9 月。 textdavinci003:能完成任何语言任务,支持文本中插入补全,最大 Token 数 4097,训练数据截至 2021 年 6 月。 textdavinci002:与 textdavinci003 类似,使用监督微调而非强化学习训练,最大 Token 数 4097,训练数据截至 2021 年 6 月。 codedavinci002:针对代码完成任务优化,最大 Token 数 8001,训练数据截至 2021 年 6 月。 请注意,OpenAI 模型具有不确定性,相同输入可能产生不同输出,将温度设置为 0 可使输出大部分具有确定性,但可能仍有少量可变性。
2024-10-18
个人使用可以通过对话微调的大模型
大模型是指输入大量语料,使计算机获得类似人类的“思考”能力,能够进行文本生成、推理问答、对话、文档摘要等工作。可以用“上学参加工作”来类比大模型的训练和使用过程: 1. 找学校:训练大模型需要大量计算,GPU 更合适,只有购买得起大量 GPU 的才有资本训练。 2. 确定教材:大模型需要的数据量特别多,几千亿序列(Token)的输入基本是标配。 3. 找老师:用合适的算法让大模型更好理解 Token 之间的关系。 4. 就业指导:为让大模型更好胜任某一行业,需要进行微调(fine tuning)指导。 5. 搬砖:完成就业指导后,进行如翻译、问答等工作,在大模型里称为推导(infer)。 在 LLM 中,Token 被视为模型处理和生成的文本单位,能代表单个字符、单词、子单词等,具体取决于分词方法。将输入分词时会数字化形成词汇表。 个人动手实验方面: macOS 系统可采用 GGML 量化后的模型。有名的项目如 ggerganov/llama.cpp:Port of Facebook's LLaMA model in C/C++ ,首先编译,利用 Metal 的 GPU 用相应命令编译,然后去下载模型,还提供了 WebUI,启动 server 后默认监听 8080 端口,打开浏览器可对话。 Whisper 与 llama 类似,用 make 命令编译,去指定地址下载量化好的模型,转换音频,目前只接受 wav 格式,可用 ffmpeg 转化。 张梦飞的教程《用聊天记录克隆自己的 AI 分身》全程本地操作,目标是把微信聊天记录导出,用其微调模型,最终接入微信替你回复消息。
2024-10-18
chilloutmix模型
以下是关于 chilloutmix 模型的相关信息: 在腊八节相关的生成中,模型为 chilloutmix_NiPrunedFp32Fix,生成尺寸与草稿图保持一致,有正、负面关键词及 ControlNet 设置等具体参数。 在猫猫相关的生成中,虽然作者建议使用 chilloutmix_NiPrunedFp32Fix 模型,但也可以尝试其他模型。 在 AIGC Weekly 09 中,提到从 civitai 下载 ChilloutMix 模型并放到整合包 models\\Stablediffusion 目录里启动 web UI 切换模型。
2024-11-17
SD好的模型分享
以下是为您分享的关于 SD 模型的相关内容: 对于 SDXL 的 ControlNet 模型中的 Canny 硬边缘模型,有不同型号,如 4080ti 笔记本测试中,12G 显存下,sdxl base+refiner 模型,使用 diffusers 的 2.5Gfull 模型绘制 10241024 尺寸图片需 2 分 57 秒,320Mb 的 small 模型用时 34s,质量差距不大但时间优势明显。其他作者如 kohya 的用时 33 秒,更接近真实质感。sai 的 128lora 和 256lora 分别用时 39 秒和 1 分 08 秒,偏绘画感觉。t2i 的用时 34s,偏插画。关闭 refiner 能节省一半左右时间,平均 17 秒左右。 在 Depth 深度模型测试中,图形尺寸 6641024,diffusers 的 full 模型用时 2 分 48 秒,small 模型用时 23s,kohya 模型用时 42 秒,sai 模型用时 1 分 12 秒,sargezt 模型用时 1 分 52 秒。 用 Stable Diffusion 时,要先确定照片风格,如生成真人 AI 小姐姐可选用 chilloutmix 的大模型。部分常用大模型可在分享的链接中根据文件夹名称找到。文章第三部分会详细介绍模型下载位置和存放位置。 对于 ControlNet 中线条约束类的预处理器和模型,作者已整理好,如需获取可添加公众号【白马与少年】回复【SD】。同时作者还附上一张图帮助理解 ControlNet 模型的命名规则。
2024-11-17
sd模型
Stable Diffusion(SD)模型是由 Stability AI 和 LAION 等公司共同开发的生成式模型,参数量约 1B,可用于文生图、图生图、图像 inpainting、ControlNet 控制生成、图像超分等任务。 文生图任务是将一段文本输入到 SD 模型中,经过一定迭代次数生成符合文本描述的图片。例如输入“天堂,巨大的,海滩”,模型生成美丽沙滩的图片。 图生图任务在输入文本基础上再输入一张图片,模型根据文本提示将输入图片重绘以更符合文本描述。比如在之前生成的沙滩图片上添加“海盗船”。 输入的文本信息需通过“桥梁”CLIP Text Encoder 模型转换为机器数学信息。该模型作为 SD 模型中的前置模块,将输入文本信息编码,生成 Text Embeddings 特征矩阵,用于控制图像生成。 CLIP 模型包含 Text Encoder 和 Image Encoder 两个模型,在 Stable Diffusion 中主要使用 Text Encoder 模型。它将输入的文本 Prompt 编码转换成 Text Embeddings(文本的语义信息),通过 UNet 网络中的 CrossAttention 模块嵌入 Stable Diffusion 中作为 Condition,对生成图像的内容进行控制与引导。目前 SD 模型使用的是中的 Text Encoder 模型。 CLIP ViTL/14 中的 Text Encoder 是只包含 Transformer 结构的模型,由 12 个 CLIPEncoderLayer 模块组成,模型参数大小是 123M,输出的 Text Embeddings 维度为 77x768。 以下是相关资源获取方式: SD 模型权重百度云网盘:关注 Rocky 的公众号 WeThinkIn,后台回复:SD 模型,即可获得包含多种模型权重的资源链接。 SD 保姆级训练资源百度云网盘:关注 Rocky 的公众号 WeThinkIn,后台回复:SDTrain,即可获得包含数据处理、模型微调训练及基于 SD 的 LoRA 模型训练代码等全套资源。 Stable Diffusion 中 VAE,UNet 和 CLIP 三大模型的可视化网络结构图下载:关注 Rocky 的公众号 WeThinkIn,后台回复:SD 网络结构,即可获得网络结构图资源链接。
2024-11-17
我是一名高中历史老师,请问用什么大模型能帮我做教学设计
以下为您推荐一些利用大模型辅助高中历史教学设计的案例: 有一位历史老师使用 GPT 给学生讲课,通过 GPT 生成一个“沉浸式”历史片段游戏,让学生扮演一个角色“设身处地”地做决策,学生的作业是找出 GPT 的错误。例如明朝灭亡、南京、1645 年 5 月的相关案例,您可以参考:https://chat.openai.com/share/86815f4e674c4410893c4ae3f1b7412e/continue 。 对于历史专业的学生,当他们遇到像 ChatGPT 这样的语言模型时,已经训练有素能够识别一些常见的陷阱,如事实不准确等,并通过事实核查、分析体裁和受众、在相关来源中搜索等技能来解决这些问题。 语言模型对于历史学家和历史专业的学生是有益的,但对于历史老师和其他教育工作者在短期内可能会带来一些问题,需要重新思考许多作业的布置方式。 您可以尝试借鉴这些案例,根据您的教学需求和学生特点,对大模型的应用进行调整和优化。
2024-11-17
大模型可以修复老旧的分辨率低的视频吗
大模型在修复老旧低分辨率视频方面是可行的,但具体效果因模型和方法而异。 例如,使用 StabilityAI 官方的 Stable Diffusion V2.1 512 EMA 模型、StableSR 模块和 VQVAE 等,通过不同的放大方法进行测试。如“Ultimate SD upscale”脚本放大,重绘幅度不同效果有别,重绘幅度大可能导致人物失真。“后期处理”的放大方法能使眼神更锐利,但对模糊的头发改善有限。而 StableSR 的放大则需要进行相应的模型和参数调整。 另外,像 Sora 这样的大型视觉模型,能够在原始尺寸上训练、理解和生成视频及图像。它可以处理不同格式和分辨率的视觉数据,保持原始宽高比,改善生成视频的构图和框架。其基础模型用于低分辨率视频生成,通过级联扩散模型细化提高分辨率,采用 3D UNet 架构,结合多种技术和方法,能生成高保真度且具有可控性的视频。
2024-11-17
如何可以使用到chatgpto1大模型
目前 ChatGPT 没有 ChatGPT1 这个大模型。ChatGPT 有多个版本,如 ChatGPT3、ChatGPT3.5、ChatGPT4 等。您可以通过以下方式使用 ChatGPT 相关模型: 1. 访问 OpenAI 的官方网站,按照其指引进行注册和使用。 2. 部分应用和平台可能集成了 ChatGPT 的接口,您可以在这些应用中体验其功能。 需要注意的是,使用 ChatGPT 时应遵循相关的使用规则和法律法规。
2024-11-16