庆云古诗词

庆云古诗词

aigc 知识库 aigc知识库链接

互联资讯 0

文章首发地址:
紧跟AIGC风向知识库开放
? 老朋友们,我是大林 ?

「今天早晨知识库首页被投诉无法访问,考虑到后面的很多因素,把知识库的能搬过来的内容全部整理到这里,以便大家查看。其他的大家文末还是去知识库查看」

「另外文末有100+PDF资料下载」

? 持续关注 AIGC 相关动态、研究报告、相关资料、商业落地等,包括但不限于 ChatGPT 相关问题、AI 绘画相关落地、国内大模型研究进展、开源模型进展、资料汇总等。 ?

「目前知识库包括以下内容大纲,覆盖内容如下」

  • ChatGPT 基础知识、注册流程、登录问题解决、相关应用,包括插件、角色扮演 Prompt,以及 PDF 资料
  • 国内大模型相关进展,资料,及其相关内测申请流程,百度、阿里、商汤、360、昆仑万维等
  • 国外谷歌、微软大模型进展、New Bing 相关问题
  • 国内可用的一些免费网站(截止目前免费)
  • AI 绘画,特别是 MJ、SD 的资料收录,使用教程,实践分享等等
  • Prompt 提示词已经是不可忽略的一部分,必须掌握的一些资料
  • AI 高质量文章收录
  • 2000+人交流社群
  1. 区别于 【【微信】】 和 Synthetic media,AIGC 中的跨模态生成和策略/线索生成应当得到重视,这两者也是 AIGC 长期的重要价值增长点。
  2. 按照模态区分,AIGC 可分为音频生成、文本生成、图像生成、视频生成及图像、视频、文本间的跨模态生成,细分场景众多,跨模态生成需要重点关注。Game AI 和虚拟人生成是目前变现较为明确的两大综合赛道,预计对原行业产生整体性影响。
  3. 以下技术要素值得关注:长/开放式文本生成、NeRF 模型、Diffusion 模型、跨模态大型预训练模型、小样本学习及自监督算法、强化学习及环境学习。
  4. 以下技术场景值得关注:闲聊式文本生成、个性化营销文本、富情感及细节 TTS、拼凑式视频生成、基于文本的 AI 绘画、语音复刻。
  5. 除降本增效、提供参考外,AIGC 的以下两点价值更值得关注:对不同模态元素进行二次拆解组合,改变内容生产逻辑及形式;和其他 AI 系统或数据库进行联动,有实现高度个性化/高频优化。
  6. 我国 AIGC 行业仍处于刚刚起步阶段,距离大规模验证和体系化发展仍有距离,“模块分拆+个性化推荐”的“泛 AIGC”形式预计将有所发展。

? AIGC最基本的能力是生成内容,包括文本、图像、视频、代码、3D内容或者几种媒介类型转换组合 形成的“多模态内容”。生成算法、预训练模型、多模态等AI技术累积融合,以及深度模型方面的 技术创新,共同催生了AIGC的大爆发。

? AIGC是相对于过去的PGC、UGC、AIUGC而提出的。过去的传统AI偏向于分析能力,基于已有内容 ;现在的AI基于训练数据和生成算法模型,可以自主生成各种形式的内容和数据。

? 2022年,AIGC(AI-Generated Content,人工智能生成内容)爆火出圈。2022年10月,【【淘密令】】、DALL-E 2、Midjourney等可以生成图片的AIGC模型风行一时;2022年12月,OpenAI发布能够回答问题、生成代码、构思剧本和小说的聊天机器人模型ChatGPT ,将人机对话推向新高度。

? 目前,从提供预训练模型的基础设施层公司到专注打造AIGC产品和应用工具的应用层公司,围绕 AIGC生长出繁荣的生态,技术创新引发的应用创新浪潮迭起,中国有望凭借领先的AIGC技术赋能各行各业。

? 官网:【【淘密令】】 Online() ?
? 官网dream:本地部署: 【秋叶版整合包】colab:教学视频comfyui: ?? SD安装包链接: 提取码: 3tfg ?? ?【【淘密令】】(SD)如何在云端部署: ?? AI数字绘画 stable-diffusion 保姆级教程 - 程序员秋风的文章 - 知乎 ?? 【AI绘画【【淘密令】】――图生图详解及小显存如何制作4K图片】 ?? AI绘画指南 stable diffusion webui (SD webui)如何设置与使用: ?? 最强 AI 绘画工具――【【淘密令】】超详细教程:【最强 AI 绘画工具――【【淘密令】】超详细教程】 ?

midjourney是一个人工智能绘图网站,归属于DISCORD。midjourney可以生成图片,就像跟人聊天一样,输入描述词,然后点击发送即可生成,生成一张图片fast模式之下,只需要一分钟的时候,生成四种样式供你选择。midjourney已经在很多行业陆续投入商用。

? 地址: ?? 【Midjourney 人工智能绘画 零基础保姆级教程 详细讲解 一个视频全学会】 ?? 【 AI 绘图“ Midjourney ”你所需要知道的一切 / 送出邀请码 / 教程】 ?? Midjourney 完整参数列表 | Learning Prompt: ?? Learn Prompting: ?? midjourney人工智能绘图如何上手,新手小白完全攻略: ?? 超详细!AI 绘画神器 Midjourney 基础使用手册: ?? 超详细!AI 绘画神器 Midjourney 进阶使用手册: ?? Midjourney Documentation 官方指导手册:Midjourney Documentation and User Guide : ?
? Midjourney 学习导航 | Learning Prompt: ?? 提示工程指南 | Prompt Engineering Guide: ?? Prompt Engineering Guide : ?? MidJourney Prompt Tool: Learn Prompting: ?

ChatGLM-6B 是一个开源的、支持中英双语的对话语言模型,基于 General Language Model (GLM) 架构,具有 62 亿参数。结合模型量化技术,用户可以在消费级的显卡上进行本地部署(INT4 量化级别下最低只需 6GB 显存)。 ChatGLM-6B 使用了和 ChatGPT 相似的技术,针对中文问答和对话进行了优化。经过约 1T 标识符的中英双语训练,辅以监督微调、反馈自助、人类反馈强化学习等技术的加持,62 亿参数的 ChatGLM-6B 已经能生成相当符合人类偏好的回答。

  • 开源地址:GitHub - THUDM/ChatGLM-6B: ChatGLM-6B:开源双语对话语言模型 | An Open Bilingual Dialogue Language Model
  • 模型下载地址-HF:THUDM/chatglm-6b ・ Hugging Face
  • 模型下载地址-清华:chatglm-6b
  • 安装教程:【ChatGLM】本地版 ChatGPT?6G 显存可用!ChatGLM-6B 清华开源模型一键包发布 可更新_哔哩哔哩_bilibili
  • A webui for ChatGLM made by THUDM.:
  • Meta 发布了人工智能大语言模型 LLaMA,包含 70 亿、130 亿、330 亿和 650 亿这 4 种参数规模的模型。其中,最小的 LLaMA 7B 也经过了超 1 万亿个 tokens 的训练。
  • Inference code for LLaMA models:
  • 【【微信】】's LLaMA model in C/C++:GitHub - ggerganov/llama.cpp: 【【微信】】's LLaMA model in C/C++
  • 中文 LLaMA&Alpaca 大语言模型+本地 CPU 部署 (Chinese LLaMA & Alpaca LLMs):
  • Code and documentation to train Stanford's Alpaca models, and generate the data.:GitHub - tatsu-lab/stanford_alpaca: Code and documentation to train Stanford's Alpaca models, and ge
  • Alpaca: A Strong, Replicable Instruction-Following Model:
  • OpenChatKit 是一个由前 OpenAI 研究员共同打造的开源聊天机器人平台。它包含了训练好的大型语言模型、定制配方和可扩展的检索系统,可以帮助用户快速构建高精度、多功能的聊天机器人应用。其中,最核心的组件是一个经过微调的、具有 200 亿参数的语言模型――GPT-NeoXT-Chat-Base-20B。这个模型基于 EleutherAI 的 GPT-NeoX 模型,重点调整了多轮对话、问答、分类、提取和摘要等多项任务,并使用了 4300 万条高质量指令进行训练。这使得 OpenChatKit 在处理聊天对话时可以提供高精度、流畅的回答。除此之外,OpenChatKit 还提供了定制配方的功能,可以帮助用户根据自己的数据集微调模型,以提高模型在特定任务上的表现。另外,该平台还提供了可扩展的检索系统,可以从文档存储库、API 或实时更新信息源等多个来源中检索信息,以提供更全面的回答。

此软件包旨在为大型模型调整提供简化和用户友好的流程。其功能可作为用户参考并供用户使用。然而,需要注意的是,数据和预训练模型的准备工作完全由用户负责。本软件包不保证用户准备组件的准确性、完整性、适用性或合法性。用户必须了解并承担与模型和数据准备相关的所有风险和责任,并在使用本软件包之前获取法律、商业和技术建议。该流程不应对用户不当准备数据和预训练模型所导致的任何直接、间接、特殊、偶然或后果性损害负责。

我们提供的检查点仅供研究目的使用,包括英文和中文版本。这些检查点包含 ChatGPT 语言模型生成的结果。我们不支持或鼓励将这些检查点用于商业目的的分发或使用。这些检查点的用户应当负责确保正确和适当地使用它们。

还需要强调的是,模型生成的结果是基于概率模型,与此流程没有直接关系。本流程不保证结果的准确性、可靠性、适用性和合法性。因此,在依赖模型生成的结果之前,用户还必须了解与结果相关的风险和责任,并寻求法律、商业和技术建议。该流程不应对用户依赖模型生成的结果所导致的任何直接、间接、特殊、偶然或后果性损害负责。

? Github:网页体验: ?
? 1、陆奇最新演讲实录:我的大模型世界观 Z【【微信】】2、ChatGPT在县城,时髦年轻人已经用它吊打同事了3、ChatGPT全宇宙大爆炸!开启联网解除封印,无敌插件彻底颠覆体验4、想玩好ChatGPT?不妨看看这篇文章5、风暴眼中的ChatGPT:世界已经永远改变了 6、ChatGPT对人类社会最为根本的改变,将发生在教育领域: 7、GPT-4发布!ChatGPT大升级!太太太太强了!8、从 ChatGPT 怎么念,到人们为啥害怕它,这篇文章都讲透 9、ChatGPT突然爆火!网友称“好用到吓人” 10、超速走红的ChatGPT,为什么可能重构我们?11、ChatGPT会怎么样改变世界和中国?12、ChatGPT可能马上取代你,这是它能做的十个工作 13、别煽动焦虑了,ChatGPT还抢不动打工人的饭碗 14、OpenAI重磅研究:ChatGPT可能影响80%工作岗位,收入越高影响越大 15、ChatGPT王炸更新!能联网获取新知识,可与5000+个应用交互,网友:太疯狂了 16、ChatGPT,一种更中心化的权力?17、ChatGPT,突然被禁 18、月入数十万,他们靠“搬运ChatGPT”大赚 19、几百名大佬联名给ChatGPT们踩刹车,AI到了失控边缘? 20、与ChatGPT作战,肉身是我们唯一的武器 21、商汤版ChatGPT「商量」来了!开放API,基于千亿参数大模型,体验实录在此 22、当一个文字工作者,想要难倒ChatGPT 23、ChatGPT走红后,谁的“饭碗”不保了? 24、历经仨小时道德绑架,ChatGPT终于崩溃了 25、不赚钱,靠梦想,靠技术:ChatGPT的成功密码? 26、ChatGPT背后:一个天才、百亿融资和1亿月活|全球独角兽 27、ChatGPT爆火,真的那么神?我们会失业吗? 28、凌晨重磅!ChatGPT开启联网,AI迎来AppStore时刻,应用体验将被彻底颠覆 29、封杀这个公式,ChatGPT智商将为零 30、ChatGPT进军翻译业:狼来了吗? 31、ChatGPT会影响80%工作岗位?淘汰你的不是工具,而是善用工具的人 | 人均老师 32、ChatGPT到底有多厉害,会威胁你我的工作吗? 33、ChatGPT向癌症开了一枪 34、写出“毁灭人类计划书”的ChatGPT,连这都不知道 35、新版ChatGPT能看懂表情包了,我的青春结束了 36、ChatGPT解放“PPT民工”?他们也担心被“革命” 37、对话全球前2%顶尖科学家:深度解构“杀手级应用”ChatGPT 38、ChatGPT横空出世,但站在它背后的,都是硅谷的老江湖 -FgMG1uXepjw39、从ChatGPT的爆火,重看颠覆式创新 40、这么好玩的ChatGPT,不会只是拿来玩的吧? 41、信息量巨大!部长回应了!火爆全球的ChatGPT 42、AutoGPT太火了,无需人类插手自主完成任务 ?
? 100+ PDF学习资料放在公众号了,有需要的朋友自取 ?? 获取方式:后台回复关键词 AIGC ?? 【AIGC知识库】电脑查看更舒服, ?
? 开源项目: ?

以上内容来自网络整理以及PDF资料学习


如何让chatgpt写saas代码 如何让chatgpt写执行方案

如何让ChatGPT写完完整代码,如何让ChatGPT写木马,如何让ChatGPT写综述,如何让ChatGPT写代码

随着『GPT4多模态/Microsoft?365?Copilot/Github?Copilot?X/ChatGPT插件』的推出,绝大部分公司的技术?产品?服务,以及绝大部分人的工作都将被革新一遍

  • 类似iPhone的诞生?大家面向iOS编程?有了App?Store
  • 现在有了ChatGPT插件/GPT应用商店,以后很多公司?很多人面向GPT编程(很快技术人员分两种,一种懂GPT,一种不懂GPT)

然ChatGPT/GPT4基本不可能开源了,而通过上篇文章《类ChatGPT项目的部署与微调(上):从LLaMA到Alpaca、【【微信】】、BELLE、ChatLLaMA和ColossalChat》可知,国内外各大公司、研究者推出了很多类ChatGPT开源项目,比如LLaMA、BLOOM

本文则侧重

  • ChatGLM
  • 垂直领域的ChatGPT等,比如ChatDoctor 毕竟,虽然LLaMA这些模型的通用能力很强,然应用在垂直领域的话,还得再加上各个垂直方向的预料加以训练,由此便诞生了以LLaMA为底层模型的比如ChatDoctor,且可以预见的是,垂直领域的ChatGPT,今年会诞生一大批

在2022年上半年,当时主流的预训练框架可以分为三种:

  • autoregressive,自回归模型的代表是单向的GPT,本质上是一个从左到右的语言模型,常用于无条件生成任务(unconditional generation),缺点是无法利用到下文的信息
  • autoencoding,自编码模型是通过某个降噪目标(如掩码语言模型,简单理解就是通过挖洞,训练模型做完形填空的能力)训练的语言编码器,如双向的BERT、ALBERT、RoBERTa、DeBERTa 自编码模型擅长自然语言理解任务(natural language understanding tasks),常被用来生成句子的上下文表示,缺点是不适合生成任务
  • encoder-decoder,则是一个完整的Transformer结构,包含一个编码器和一个解码器,以T5、BART为代表,常用于有条件的生成任务 (conditional generation) 细致来说,T5的编码器中的注意力是双向,解码器中的注意力是单向的,因此可同时应用于自然语言理解任务和生成任务。但T5为了达到和RoBERTa和DeBERTa相似的性能,往往需要更多的参数量

这三种预训练模型各自称霸一方,那么问题来了,可否结合三种预训练模型,以成天下之一统?这便是2022年5月发表的这篇论文《GLM: General Language Model Pretraining with Autoregressi【【微信】】》的出发点,它提出了GLM架构(这是张义策关于GLM论文的解读之一,下面三小节的内容主要参考自该篇解读)

首先,GLM框架在整体基于Transformer基础上,做了以下三点微小改动

  1. 重新排列了层归一化和残差连接的顺序
  2. 针对token的输出预测使用单一线性层
  3. 用GeLU替换ReLU激活函数

考虑到我讲的ChatGPT技术原理解析课群内,有同学对这块有疑问,所以再重点说下

  • 本质上,一个GLMblock其实就是在一个transformer block的基础上做了下结构上的微小改动而已 至于实际模型时,这个block的数量或层数可以独立设置,比如设置24层(具体见下述代码第48行)?GLM/arguments.py at 4b65bdb165ad323e28f91129a0ec053228d10566 ・ THUDM/GLM ・ GitHub
  • 比如,基于GLM框架的类ChatGPT开源项目「ChatGLM」便用了28个GLMBlock,类似gpt2 用的12-48个decoder-transformer block,BERT用的12-24个encoder-transformer block
  • 有些文章 包括我那篇transformer笔记,为举例,便用的N=6的示例,相当于编码器模块 用的6个encoder-transformer block,解码器模块 也用的6个decoder-transformer block

其次,考虑到三类预训练模型的训练目标

  • GPT的训练目标是从左到右的文本生成
  • BERT的训练目标是对文本进行随机掩码,然后预测被掩码的词
  • T5则是接受一段文本,从左到右的生成另一段文本

为了大一统,我们必须在结构和训练目标上兼容这三种预训练模型。如何实现呢?文章给出的解决方法是结构上,只需要GLM中同时存在单向注意力和双向注意力即可 因为在原本的Transformer模型中,这两种注意力机制是通过修改attention mask实现的

  1. 当attention_mask是全1矩阵的时候,这时注意力是双向的
  2. 当attention_mask是三角矩阵的时候(如下图),注意力就是单向

类似地,GLM可以在只使用Transformer编码器的情况下,自定义attention mask来兼容三种模型结构

具体怎么个兼容法呢?假设原始的文本序列为,采样的两个文本片段为??和??,那么掩码后的文本序列为?(以下简称Part A),如上图所示,拆解图中的三块分别可得

  • 我们要根据第一个?解码出??,根据第二个依次解码出??,那怎么从??处解码出变长的序列吗?这就需要用到开始标记??和结束标记??了
  • 我们从开始标记?开始依次解码出被掩码的文本片段,直至结束标记??。通过本博客内的Transformer笔记可知,Transformer中的位置信息是通过位置向量来记录的 在GLM中,位置向量有两个,一个 用来记录Part A中的相对顺序,一个 用来记录被掩码的文本片段(简称为Part B)中的相对顺序
  • 此外,还需要通过自定义自注意掩码(attention mask)来达到以下目的:? 双向编码器Part A中的词彼此可见,即图(d)中蓝色框中的区域? 单向解码器Part B中的词单向可见,即图(d)黄色框的区域? Part B可见Part A? 其余不可见,即图(d)中灰色的区域

需要说明的是,Part B包含所有被掩码的文本片段,但是文本片段的相对顺序是随机打乱的

训练目标上,GLM论文提出一个自回归空格填充的任务(Autoregressi【【微信】】),来兼容三种预训练目标

自回归填充有些类似掩码语言模型,首先采样输入文本中部分片段,将其替换为[MASK]标记,然后预测[MASK]所对应的文本片段,与掩码语言模型不同的是,预测的过程是采用自回归的方式

具体来说

  • 当被掩码的片段长度为1的时候,空格填充任务等价于掩码语言建模,类似BERT
  • 当将文本1和文本2拼接在一起,然后将文本2整体掩码掉,空格填充任务就等价于条件语言生成任务,类似T5/BART
  • 当全部的文本都被掩码时,空格填充任务就等价于无条件语言生成任务,类似GPT

最终,作者使用了两个预训练目标来优化GLM,两个目标交替进行:

  • 文档级别的预测/生成:从文档中随机采样一个文本片段进行掩码,片段的长度为文档长度的50%-100%
  • 句子级别的预测/生成:从文档中随机掩码若干文本片段,每个文本片段必须为完整的句子,被掩码的词数量为整个文档长度的15%

尽管GLM是BERT、GPT、T5三者的结合,但是在预训练时,为了适应预训练的目标,作者还是选择掩码较长的文本片段,以确保GLM的文本生成能力,并在微调的时候将自然语言理解任务也转化为生成任务,如情感分类任务转化为填充空白的任务

输入:{Sentence},prompt:It?is?really??,对应的标签为good和bad

2022年8月,清华背景的智谱AI基于GLM框架,正式推出拥有1300亿参数的中英双语稠密模型 GLM-130B(论文地址、代码地址,论文解读之一,GLM-130B is trained on a cluster of 96 DGX-A100 GPU (8×40G) ser【【微信】】,可以较好的支持2048个token的上下文窗口)

其在一些任务上的表现优于GPT3-175B,是国内与2020年5月的GPT3在综合能力上差不多的模型之一(即便放到23年年初也并不多),这是它的一些重要特点

ChatGLM-6B(介绍页面、代码地址),是智谱 AI 开源、支持中英双语的对话语言模型,其

  • 基于General Language Model(GLM)架构,具有62亿参数,无量化下占用显存13G,INT8量化级别下支持在单张11G显存的 2080Ti 上进行推理使用(因为INT8下占用显存10G,而INT4量化级别下部署的话最低只需 6GB显存,另基于 P-Tuning v2 的高效参数微调方法的话,在INT4 下最低只需 7GB 显存即可启动微调)
    量化等级最低 GPU 显存(部署/推理)最低 GPU 显存(高效参数微调)
    FP16(无量化)13 GB14 GB
    INT88 GB9 GB
    INT46 GB7 GB
    这里需要解释下的是,INT8量化是一种将深度学习模型中的权重和激活值从32位浮点数(FP32)减少到8位整数(INT8)的技术。这种技术可以降低模型的内存占用和计算复杂度,从而减少计算资源需求,提高推理速度,同时降低能耗 量化的过程通常包括以下几个步骤: 1 量化范围选择:确定权重和激活值的最小值和最大值 2 量化映射:根据范围将32位浮点数映射到8位整数 3 反量化:将8位整数转换回浮点数,用于计算
  • ChatGLM-6B参考了 ChatGPT 的训练思路,在千亿基座模型GLM-130B中注入了代码预训练,通过监督微调(Super【【微信】】)、反馈自助(Feedback Bootstrap)、人类反馈强化学习(Reinforcement Learning from Human Feedback)等方式等技术实现人类意图对齐,并针对中文问答和对话进行优化
  • 最终经过约 1T 标识符的中英双语训练,生成符合人类偏好的回答

虽尚有很多不足(比如因为6B的大小限制,导致模型的记忆能力、编码、推理能力皆有限),但在6B这个参数量级下不错了,部署也非常简单,我七月在线的同事朝阳花了一两个小时即部署好了(主要时间花在模型下载上,实际的部署操作很快)

以下是具体的部署过程

  1. 硬件配置 本次实验用的七月的GPU服务器(专门为七月集/高/论文/VIP学员配置的),显存大小为16G的P100,具体配置如下: CPU&内存:28核(vCPU)112 GB 操作系统:Ubuntu_64 GPU:N【【微信】】 显存:16G
  2. 配置环境 建议最好自己新建一个conda环境 pip install -r re【【微信】】.txt 特别注意torch版本不低于1.10(这里安装的1.10),transformers为4.27.1 torch的安装命令可以参考pytorch官网:https://pytorch.org/ 这里使用的pip命令安装的,命令如下 pip install torch==1.10.0+cu102 torchvision==0.11.0+cu102 torchaudio==0
  3. 下载项目仓库 git?clone?https://github.com/THUDM/ChatGLM-6B cd?ChatGLM-6B
  4. 下载ChatGLM-6B模型文件 具体而言,较大的8个模型文件可以从这里下载(下载速度快):清华大学云盘 其他的小文件可以从这里下载(点击红框的下载按钮即可):THUDM/chatglm-6b ・ Hugging Face 注意这里都下载在了/data/chatglm-6b下,在后面执行代码的时候需要将文件中的模型文件路径改为自己的
  5. 推理与部署 可运行的方式有多种? 如果在本地运行,可以直接执行代码,或者使用命令行方式运行? 如果想让别人公网访问,可以用下面两种方式:一种是基于Gradio,一种是基于streamlit 特别注意:运行代码前请检查模型文件路径是否正确,这里均改为了/data/chatglm-6b代码运行demo 运行之后 如下截图所示命令行 Demo 运行仓库中 cli_demo.py: python cli_demo.py 程序会在命令行中进行交互式的对话,在命令行中输入指示并回车即可生成回复,输入 clear 可以清空对话历史,输入 stop 终止程序基于Gradio的网页版demo 运行web_demo.py即可(注意可以设置share=True,便于公网访问):python?web_demo.py(注意运行前确认下模型文件路径)基于streamlit网页版 Demo pip?install?streamlit pip?install?streamlit-chat streamlit?run?web_demo2.py?--server.port?6006(可以将6006端口放出,便于公网访问) 默认情况下,模型以 FP16 精度加载,运行上述代码需要大概 13GB 显存。如果显存有限,还可以考虑模型量化,目前支持4/8 bit 量化

此外,据介绍,GLM团队正在内测130B参数的ChatGLM,相信从6B到130B,效果应该能提升很多

从上文可知,Stanford Alpaca的52K数据集是通过Self Instruct方式提示GPT3对应的API产生的指令数据,然后通过这批指令数据微调Meta的LLaMA 7B

而GitHub上的这个微调ChatGLM-6B项目(作者:mymusise),则基于Stanford Alpaca的52K数据集通过LoRA(low-rank adaptation)的方式微调ChatGLM-6B

如上一篇文章所说,Huggingface公司推出的PEFT(Parameter-Efficient Fine-Tuning)库便封装了LoRA这个方法,具体而言,通过PEFT-LoRA微调ChatGLM-6B的具体步骤如下

  • 第一步,配置环境与准备 先下载项目仓库 git clone https://github.com/mymusise/ChatGLM-Tuning.git 创建一个python3.8的环境 conda create -n torch1.13 python==3.8 conda acti【【微信】】3 根据re【【微信】】.txt配置环境 pip install bitsandbytes==0.37.1 安装1.13,cuda11.6(torch官网命令) pip install torch==1.13.1+cu116 torchvision==0.14.1+cu116 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu116 安装其他的包 遇到冲突问题:icetk 0.0.5 has re【【微信】】<3.19, but you ha【【微信】】.19.5. 最后装了3.18.3的protobuf,发现没有问题 模型文件准备 模型文件在前面基于ChatGLM-6B的部署中已经准备好了,注意路径修改正确即可
  • 第二步,数据准备 项目中提供了数据,数据来源为 Stanford Alpaca 项目的用于微调模型的52K数据,数据生成过程可详见:https://github.com/tatsu-lab/stanford_alpaca#data-release alpaca_data.json,包含用于微调羊驼模型的 52K 指令数据,这个 JSON 文件是一个字典列表,每个字典包含以下字段: instruction: str,描述了模型应该执行的任务,52K 条指令中的每一条都是唯一的 input: str,任务的可选上下文或输入。例如,当指令是“总结以下文章”时,输入就是文章,大约 40% 的示例有输入 output: str,由?text-da【【微信】】?生成的指令的答案 示例如下:
  • 第三步,数据处理 运行 co【【微信】】.py 文件 python co【【微信】】.py \ --data_path data/alpaca_data.json \ --sa【【微信】】lpaca_data.jsonl \ 处理后的文件示例如下: 运行 tokenize_dataset_rows.py 文件,注意:修改tokenize_dataset_rows中的model_name为自己的文件路径 :/data/chatglm-6b
  • 第四步,微调过程 注意:运行前修改下finetune.py 文件中模型路径:/data/chatglm-6b Nvidia驱动报错(如没有可忽略) 遇到问题,说明Nvidia驱动太老,需要更新驱动 UserWarning: CUDA initialization: The N【【微信】】tem is too old (found 【【微信】】). Please update your GPU driver by downloading and installing a new 【【微信】】: http://www.nvidia.com/【【微信】】/index.aspx Alternatively, go to: https://pytorch.org to install a PyTorch 【【微信】】mpiled with your version of the CUDA driver. (【【微信】】t https://blog.csdn.net/【【微信】】/article/c10/cuda/CUDAFunctions.cpp:109.) 解决:更新驱动即可,参考:Ubuntu 18.04 安装 NVIDIA 显卡驱动 - 知乎 BUG REPORT报错 参考:因为peft原因,cuda10.2报错 ・ Issue #108 ・ mymusise/ChatGLM-Tuning ・ GitHub CUDA SETUP: CUDA 【【微信】】e currently not supported for LLM.int8() 考虑安装11以上的cudatooklit,参考下面链接,安装【【淘密令】】.3ÿ