大模型是指输入大量语料,使计算机获得类似人类的“思考”能力,能够进行文本生成、推理问答、对话、文档摘要等工作。可以用“上学参加工作”来类比大模型的训练和使用过程:
在 LLM 中,Token 被视为模型处理和生成的文本单位,能代表单个字符、单词、子单词等,具体取决于分词方法。将输入分词时会数字化形成词汇表。
个人动手实验方面:
张梦飞的教程《用聊天记录克隆自己的 AI 分身》全程本地操作,目标是把微信聊天记录导出,用其微调模型,最终接入微信替你回复消息。
[title]大模型入门指南[heading1]什么是大模型通俗来讲,大模型就是输入大量语料,来让计算机获得类似人类的“思考”能力,使之能够理解自然语言,能够进行『文本生成』、『推理问答』、『对话』、『文档摘要』等工作。既然是学习,那我们就可以用『上学参加工作』这件事来类比大模型的训练、使用过程: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|<br>|-|-|<br>|The|345|<br>|cat|1256|<br>|sat|1726|<br>|…|…|
由于笔者实用的macOS系统,因此采用GGML量化后的模型,官方开源出来的模型大都以Python为主,效率可想而知,因此笔者一般会采用社区内的其他实现,比较有名的项目有:ggerganov/llama.cpp:Port of Facebook's LLaMA model in C/C++([7])ggerganov/whisper.cpp:Port of OpenAI's Whisper model in C/C++([8])[heading2]LLama[content]首先是编译,为了利用Metal的GPU,可以用如下命令编译:之后需要去Llama-2-7B-Chat-GGML([9])中下载模型,3G到7G不等,读者可以按需尝试即可。得到输出此外,llama.cpp还提供了WebUI供用户使用,首先启动server:它默认监听8080端口,打开浏览器就可以对话了[heading2]Whisper[content]和llama类似,采用make命令编译,之后去ggerganov/whisper.cpp([10])下载量化好的模型,然后转换音频即可,目前只接受wav格式,可以用ffmpeg转化输出的srt文件如下所示:|Size|Parameters|English-only model|Multilingual model|Required VRAM|Relative speed|<br>|-|-|-|-|-|-|<br>|tiny|39 M|tiny.en|tiny|~1 GB|~32x|<br>|base|74 M|base.en|base|~1 GB|~16x|<br>|small|244 M|small.en|small|~2 GB|~6x|<br>|medium|769 M|medium.en|medium|~5 GB|~2x|<br>|large|1550 M|N/A|large|~10 GB|1x|一般来说,英文的音频small模型就有够了,但是如果是中文,最好用最大的模型。
[title]张梦飞:用聊天记录把自己克隆成AI,分分钟化身为1V100的“时间管理大师” -- LLamaFactory部署与微调大模型应用教程作者:张梦飞原文链接,大家多多关注https://mp.weixin.qq.com/s/B8FUmjSdr-wAjIApa9aNVA大家好,我是梦飞。好久不见,一个月前发布的视频号,今天终于能够填坑了!这次带来的教程是:《用聊天记录克隆自己的AI分身》在我多次尝试(其实是多个平台账号欠费之后),终究是放弃了让大家云端使用。学习和使用成本太高,本篇教程依然全程本地操作,无需调用云端资源。让大家既能体验大模型训练和调用,又可以无负担的使用自己微调后的大模型!本篇教程的目标是,把自己微信中的聊天记录导出,用自己的聊天记录去微调一个模型,最终将这个微调后的模型接入微信中,替你回复消息。