Transformer架构的分步计算流程

本文详细解析了Transformer架构的核心组件,包括输入数据处理中的分词、词嵌入和位置编码,Encoder中的多头注意力机制与残差连接,以及Decoder的掩码自注意力和跨注意力机制。文章通过分步说明,解释了如何将输入序列转换为矩阵表示,并通过自注意力机制捕捉序列依赖关系,最终通过Softmax输出预测概率,为理解大型语言模型的工作原理提供了全面而深入的视角。


上图是Transformer新型神经网络架构。在Transformer出现之前,如如机器翻译等序列建模任务主要依赖循环神经网络(RNN)。然而RNN需要按时间步依次处理序列,训练时难以在序列维度上并行化处理,而且在建模长距离依赖时容易受到梯度消失等问题的限制(尽管LSTM等结构有所缓解)。Transformer完全摒弃了循环结构,转而仅依靠位置编码、自注意力机制、全连接前馈网络来建模序列关系。这种设计使得模型在训练时能够高度并行化,显著提升了训练效率,为后续在大规模数据上训练大型语言模型奠定了重要基础。其实现在有很多很多文章来讲Transformer架构了,这里主要记录下个人的一些理解,用最简单的方式来说明Transformer的计算步骤。

一、输入数据处理

1、Tokenization(分词)

首先模型是要将输入的句子拆分为token,也就是分词,只有分词后才能匹配对应的词向量,将用户所输入的内容转换为矩阵的形式来做进一步计算处理。关于分词的说明我在《浅谈大模型的分词》中写过,感兴趣的可以了解下。这里分词前后的区别如下:

// 分词前 我爱中国。 // 分词后,变为一个数组 ['我','爱','中国','。']

2、Embedding(词嵌入)

词嵌入是要将每个token都映射为一个d_model维的向量,例如当d_model = 512时,每个token对应的向量就是512维。在这一阶段所获取的词嵌入向量是一个静态向量,也就是说每个token对应的向量是固定的、与上下文无关的。例如,“苹果手机”和“富士苹果”中的“苹果”二字,只要被分词为相同的token,其初始嵌入向量就完全一致。这种静态嵌入方式与Word2Vec这种传统词向量方法类似,都是通过在一张静态嵌入表中查找来获得向量表示。为了获取上下文之间的关联性,Transformer模型会在后续的自注意力层中,基于上下文对这些静态向量进行动态调整,从而生成上下文感知的表示。因此尽管初始嵌入是静态的,模型最终仍能有效建模词语在不同语境下的语义差异。

// 输入的token数组 ['我','爱','中国','。'] // 查表得到的512维词嵌入向量示例 [[0.1,0.2,0.3,...,0.2] [0.7,0.4,0.1,...,0.1] [0.4,0.2,0.5,...,0.8] [0.9,0.3,0.2,...,0.9]]

上面是嵌入式向量维度的简单示例,但实际上,在这个阶段的是一个这种形状的张量:(batch_size, seq_len, d_model)。seq_len对应的是token数,例如切分后的句子有4个token的那么seq_len为4。d_model就是上面所说的嵌入式向量的维度了,例如嵌入式向量有512维的,那么d_model就对应为512。而这里的batch_size是为了提高运算效率,将多个输入序列进行并行运算,但是这些序列在计算过程中是完全独立、互不影响的,只是一种工程上的优化方式。

3、Positional Encoding(位置编码)

位置编码是一个由确定公式计算出来的向量,用于与词嵌入向量相加的。这是因为词向量是没有上下文顺序信息的,而且Transformer架构是并行的运算的,为了表示输入序列的顺序位置信息就需要加上这个位置编码。这个位置编码在Transformer论文里的计算公式是这样的:

公式中的pos是指这个token在序列中的位置,如0、1、2这种取值。而i的部分(即2i、2i+1)指的是维度索引,其中0≤i< d_model/2,这里分为2i和2i+1是为了表示维度索引为偶数时使用sin计算,而维度索引为奇数时使用cos来计算。最后得到的位置编码矩阵与前面的词嵌入矩阵相加,这样每个token的向量表示就同时包含了是什么(token embedding)和在哪个位置(Positional Encoding)的信息。

输入到Encoder的向量 = token_embedding + positional_encoding

二、Encoder

经过上述处理后的词向量将进入Encoder模块。在标准Transformer架构中,通常堆叠6层Encoder,其最终输出的上下文表示会被传递给Decoder模块,作为Key(K)和Value(V)用于Decoder中的cross-attention计算。由于Encoder在训练和推理阶段均可对整个输入序列并行处理,因此计算效率高。这也是为何仅包含Encoder的BERT系列模型在推理时速度较快——它们无需像Decoder那样进行自回归式的逐token生成。

1、Multi-Head Attention

Multi-Head Attention是Encoder中的一个关键组件,它使模型能够有效捕捉输入序列中各token之间的上下文依赖关系。要深入理解Multi-Head Attention,需依次掌握其核心概念:Scaled Dot-Product Attention(基础注意力计算)、Self-Attention(Q、K、V均来自同一输入的注意力机制),以及Multi-Head机制(通过并行多个注意力头来联合建模不同表示子空间的信息)。

(1)Scaled Dot-Product Attention和Self-Attention

Scaled Dot-Product Attention是一种通过计算Query(Q)与Key(K)的缩放点积(因为需要除以K向量的维度dk的平方根,所以名叫Scaled)来衡量其相关性,并利用softmax归一化后的注意力权重矩阵,对Value(V)进行加权求和的注意力机制。Self-Attention则是该注意力机制的一种应用形式,其中Q、K和V均来自同一个输入序列X:首先将输入X分别通过可训练的权重矩阵(Wq、Wk、Wv)线性投影为Q、K、V,然后将其送入Scaled Dot-Product Attention进行计算。计算公式如下:

公式中的dk是Key(K)向量的维度,在计算注意力分数时除以该值的平方根是为了进行缩放,避免因为Q和K点积结果的方差过大,导致传入softmax计算后仅有少数位置的注意力权重接近1,其余大多数位置的注意力权重接近0,而几乎不会出现0.2、0.5等中间值存在的情况,会给后续计算产生梯度消失的影响。因为softmax的计算公式是如下的,当某个数值相对较大时就会发生指数增长,与较小的数据差异将会更大。

以e为底的指数函数图像:

(2)Multi-Head机制

前面讲的Self-Attention就是自注意力了,而Transformer中使用的是多头自注意力机制,即Multi-Head Self-Attention。首先对于进入Encoder模块的矩阵X乘以权重矩阵Wq、Wk、Wv计算得到Q、K、V。然后对Q、K、V按照词嵌入向量的维度进行均分,例如本来是512维的词嵌入向量分为4个头:(Q1、K1、V1)、…、(Q4、K4、V4),每个头对应的向量有128维。再分别计算每个头各自的注意力Attention(Q1、K1、V1)、…、Attention(Q4、K4、V4),注意公式中要除以的dk从512变为128了,然后将结果按顺序拼接为一个大矩阵,拼接后的大矩阵一般还会使用另一个权重矩阵W做一次线性变换。多头机制本质上是为了让模型能够同时从多个不同的表示子空间中学习信息交互,从而提升表达能力和建模灵活性。计算公式如下:

(3)残差连接+Layer Normalization

在Transformer架构示意图上可以看到,进入Multi-Head Attention前的张量X,会和经过Multi-Head Attention计算后的输出相加,这个加和操作称为残差连接。这么设计是因为在深层网络中,反向传播时梯度容易因多层导数连乘而急剧衰减(即梯度消失)。残差连接提供了一条梯度直接回传的路径,使得底层参数仍能有效更新。在本质上,此时模型学习的是输入与输出之间的“残差”(即变化量)而非完整的映射,这降低了模型优化的难度。同时原始输入信息可以通过残差连接无损地传递到后续层,避免在多层非线性变换中被过度扭曲或丢失。在Transformer中每个子层后都采用了残差连接,包括Encoder中的Multi-Head Attention和Feed-Forward Network,以及Decoder中的Masked Multi-Head Attention、Multi-Head Cross-Attention和Feed-Forward Network。残差连接的计算公式如下:

Layer Normalization(层归一化)就是Transformer架构图中的Norm节点,如果接触过传统机器学习中的数据预处理,会发现这个Norm节点的数学公式与普通机器学习中标准化的计算公式在数学形式上是一模一样的。只是Layer Normalization中是对同一个token向量所对应的各个维度的数值进行标准化计算,也就是如果token向量有512维的,那么针对这512个数值进行下面的标准化计算,得到一个新的向量值。公式中的x_i 是token嵌入向量的第i个维度的值,而H是该向量的维度总数,例如若嵌入向量为512维,则H=512。

在《Attention Is All You Need》论文中,Transformer使用的是Post-Layer Normalization(Post-LN)结构,即在Multi-Head Attention、Feed-Forward Network等子层的输出与输入进行残差连接之后,再应用Layer Normalization。然而经过一些算法大佬们后续研究发现,如果将Layer Normalization移至这些子层之前,即先对输入做Norm,再送入子层计算,然后将计算结果与原始输入做残差相加,称为Pre–Layer Normalization(Pre-LN)结构,模型训练过程会更加稳定,收敛速度也更快,因此许多现代Transformer变体采用了Pre–Layer Normalization的设计。下图是《Attention Is All You Need》中的Post-LN结构,与开头图片中的Pre-LN结构有所区别:

// Post-LN结构 x → Sublayer → Add(x) → LayerNorm → output // Pre-LN结构 x → LayerNorm → Sublayer → Add(x) → output

2、Feed-Forward Network

Encoder模块中除了Multi-Head Attention之外,还有一个前馈神经网络。这个网络实际上是一个包含一个隐藏层的两层全连接网络,在两个线性变换之间使用ReLU等非线性激活函数,用于进一步提升每个token中维度位置的表达能力。经过这个FFN处理后的输出将保持和输入的序列长度和维度不变。

在Post-LN结构中,FFN的输出会与其输入进行残差连接(即相加),然后通过Layer Normalization得到该子层的最终输出。经过Attention和FFN两个子层后,一个完整的Encoder层完成计算。多层Encoder堆叠后的最终输出,将作为Key和Value输入到Decoder的Cross-Attention层中。

三、Decoder

Decoder主要包含Masked Multi-Head Self-Attention、Multi-Head Cross-Attention和Feed-Forward Network这三个层,其中Encoder模块的输出结果是用于Multi-Head Cross-Attention中进行计算的。

1、Masked Multi-Head Self-Attention

在模型训练时,Decoder的Masked Multi-Head Self-Attention层的输入被称为Shifted Target Sequence(移位的目标序列),它是将真实目标序列(需要包含结束标记)向右平移一位,并在开头添加起始标记得到的。例如,若目标序列为[“我”,“很”,“好”,“”],则对应的Shifted Target Sequence为[“”,“我”,“很”,“好”]。训练时Decoder通过Masked Self-Attention确保下面4个预测在同一时间步(一次前向传播)中并行计算完成:

// 并行训练 位置0只能看见“<sos>”,预测“我” 位置1只能看见“<sos>我”,预测“很” 位置2只能看见“<sos>我很”,预测“好” 位置3只能看见“<sos>我很好”,预测“<eos>”

而在模型推理时因为没有完整的Shifted Target Sequence,Decoder模块则是串行地循环生成下一个字,其初始的输入必定是这样的起始标志,然后按顺序循环进行生成,例如预测目标是“我很好”时,生成步骤如下:

// 串行推理 时间步1:输入“<sos>”,预测“我” 时间步2:输入“<sos>我”,预测“很” 时间步3:输入“<sos>我很”,预测“好” 时间步4:输入“<sos>我很好”,预测“<eos>”,生成结束。

Masked Multi-Head Self-Attention层的计算和Multi-Head Self-Attention很像,因此这部分完全可以参考前面Multi-Head Self-Attention中的Self-Attention、Multi-Head、残差连接、Layer-Norm的描述,唯一区别在于在计算多头注意力Attention时会加上一个上三角矩阵causal mask:

例如对于长度为5的序列,Causal Mask的掩码矩阵如下,-inf(负无穷)在经过softmax后会变成0,从而屏蔽掉未来位置的信息:

[[0., -inf, -inf, -inf, -inf], [0., 0., -inf, -inf, -inf], [0., 0., 0., -inf, -inf], [0., 0., 0., 0., -inf], [0., 0., 0., 0., 0.]]

2、Multi-Head Cross-Attention

Masked Multi-Head Self-Attention的输出经过残差连接和Layer Normalization后,作为Query(Q)输入到Multi-Head Cross-Attention层,而该Cross-Attention层的Key(K)和Value(V)则来自Encoder模块的最终输出。可知Cross-Attention与Self-Attention的主要区别是:Self-Attention是Q、K、V同源的(同一序列内部交互);而Cross-Attention的Q来自Decoder,K和V来自Encoder,用于实现跨序列的信息融合。Transformer架构中每预测一个token就会经过一次decoder step(每次decoder step中,输入会依次通过所有堆叠的Decoder层),但encoder的输出在整个decoding过程中是固定不变的(即K和V不随decoder step改变),而Q在每个decoding step都会更新。

经过Multi-Head Cross-Attention层计算后的结果,同样需要经过残差连接和Layer-Norm,然后进入一个两层Feed-Forward Network,这方面的计算和Encoder模块上的一样。

四、输出数据处理

Decoder最终输出的是一个形状为L × D的张量,L表示当前已生成的token序列长度,D是模型的隐藏维度与输入内容的词嵌入(token embedding)的维度是一致的。该张量随后通过一个线性层(输出投影层)Linear,其权重矩阵大小为D × V(V为词表大小),则计算得到一个L × V的张量。接着这个张量的每一行(即每个位置)独立应用Softmax函数,将其转换为概率分布。最终得到的L × V概率矩阵中,第i行表示在第i个位置上选择词表中各个token的概率,示例如下:

// 概率矩阵中每行之和为 1,代表该位置对词表中 5 个 token 的预测概率 // 这里可以根据数值选择选概率最大的那个词 // 也可以通过调节Top-k、Top-p、temperature等进行采样 [ [0.215 0.205 0.226 0.185 0.169] [0.175 0.260 0.210 0.155 0.200] [0.230 0.170 0.260 0.210 0.130] ]

至此本文关于Transformer架构中关键的计算逻辑已经分步写完了,完结撒花~~

如何学习AI大模型 ?

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。【保证100%免费】🆓

CSDN粉丝独家福利

这份完整版的 AI 大模型学习资料已经上传CSDN,朋友们如果需要可以扫描下方二维码&点击下方CSDN官方认证链接免费领取【保证100%免费】

读者福利:👉👉CSDN大礼包:《最新AI大模型学习资源包》免费分享 👈👈

(👆👆👆安全链接,放心点击)

对于0基础小白入门:

如果你是零基础小白,想快速入门大模型是可以考虑的。

一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以根据这些资料规划好学习计划和方向。

👉1.大模型入门学习思维导图👈

要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。

对于从来没有接触过AI大模型的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。(全套教程文末领取哈)

👉2.AGI大模型配套视频👈

很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,每个章节都是当前板块的精华浓缩。

👉3.大模型实际应用报告合集👈

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(全套教程文末领取哈)

👉4.大模型实战项目&项目源码👈

光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战项目来学习。(全套教程文末领取哈)

👉5.大模型经典学习电子书👈

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。(全套教程文末领取哈)

👉6.大模型面试题&答案👈

截至目前大模型已经超过200个,在大模型纵横的时代,不仅大模型技术越来越卷,就连大模型相关的岗位和面试也开始越来越卷了。为了让大家更容易上车大模型算法赛道,我总结了大模型常考的面试题。(全套教程文末领取哈)

为什么分享这些资料?

只要你是真心想学AI大模型,我这份资料就可以无偿分享给你学习,我国在这方面的相关人才比较紧缺,大模型行业确实也需要更多的有志之士加入进来,我也真心希望帮助大家学好这门技术,如果日后有什么学习上的问题,欢迎找我交流,有技术上面的问题,我是很愿意去帮助大家的!

这些资料真的有用吗?

这份资料由我和鲁为民博士共同整理,鲁为民博士先后获得了北京清华大学学士和美国加州理工学院博士学位,在包括IEEE Transactions等学术期刊和诸多国际会议上发表了超过50篇学术论文、取得了多项美国和中国发明专利,同时还斩获了吴文俊人工智能科学技术奖。目前我正在和鲁博士共同进行人工智能的研究。

资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。


CSDN粉丝独家福利

这份完整版的 AI 大模型学习资料已经上传CSDN,朋友们如果需要可以扫描下方二维码&点击下方CSDN官方认证链接免费领取【保证100%免费】

读者福利:👉👉CSDN大礼包:《最新AI大模型学习资源包》免费分享 👈👈

(👆👆👆安全链接,放心点击)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1134398.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

系统提示找不到d3dx9_42.dll文件 免费下载方法分享

在使用电脑系统时经常会出现丢失找不到某些文件的情况&#xff0c;由于很多常用软件都是采用 Microsoft Visual Studio 编写的&#xff0c;所以这类软件的运行需要依赖微软Visual C运行库&#xff0c;比如像 QQ、迅雷、Adobe 软件等等&#xff0c;如果没有安装VC运行库或者安装…

OCR识别后处理:CRNN输出结果的优化技巧

OCR识别后处理&#xff1a;CRNN输出结果的优化技巧 &#x1f4d6; 技术背景与问题提出 光学字符识别&#xff08;OCR&#xff09;作为连接图像与文本信息的关键技术&#xff0c;广泛应用于文档数字化、票据识别、车牌提取等场景。尽管深度学习模型如CRNN在端到端文字识别中取得…

UNOCSS vs 传统CSS:开发效率对比实测报告

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个对比测试项目&#xff0c;分别用UNOCSS和传统CSS实现相同的UI界面。要求&#xff1a;1.实现3个典型页面(登录页、列表页、详情页) 2.统计两种方式的代码行数 3.测量构建时…

Llama Factory可视化实战:无需代码即可定制你的对话AI

Llama Factory可视化实战&#xff1a;无需代码即可定制你的对话AI 作为一名UI设计师&#xff0c;你是否曾想过参与AI产品开发&#xff0c;却被复杂的命令行界面和代码吓退&#xff1f;现在&#xff0c;借助Llama Factory的可视化界面&#xff0c;无需编写任何代码&#xff0c;通…

USB-SERIAL控制器开发:零基础入门指南

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个适合初学者的USB-SERIAL控制器教学项目&#xff0c;包含&#xff1a;1) 基础通信示例代码 2) 分步骤说明文档 3) 常见问题解答 4) 简单的测试用例。使用Arduino平台&#…

Llama Factory微调监控:云端训练可视化方案

Llama Factory微调监控&#xff1a;云端训练可视化方案 在大语言模型微调过程中&#xff0c;研究人员经常面临一个共同挑战&#xff1a;如何实时监控长时间运行的训练过程&#xff1f;传统命令行日志不仅难以直观展示关键指标&#xff0c;也无法远程查看进度。本文将介绍如何利…

对比传统诊断:Telemetry如何提升系统维护效率

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个效率对比工具&#xff0c;能够同时运行传统诊断方法和Microsoft Compatibility Telemetry&#xff0c;记录并比较&#xff1a;1. 问题发现时间&#xff1b;2. 诊断准确性&…

AI主播背后的技术:Sambert-Hifigan如何生成富有表现力的语音

AI主播背后的技术&#xff1a;Sambert-Hifigan如何生成富有表现力的语音 引言&#xff1a;让机器说话也能“声情并茂” 在虚拟主播、智能客服、有声书生成等应用场景中&#xff0c;语音合成&#xff08;Text-to-Speech, TTS&#xff09;技术正从“能说”向“说得好、有情感”演…

快速验证你的想法:用青龙面板脚本制作原型

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个快速原型工具&#xff0c;允许用户通过简单配置生成可立即运行的青龙面板脚本原型。支持常见任务类型选择&#xff0c;自动生成基础代码框架和配置文件。要求工具能够输出…

从3小时到3分钟:$nextTick调试效率提升指南

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个交互式教程&#xff1a;1) 模拟一个由$nextTick引起的典型bug场景&#xff08;如动态渲染导致的元素获取失败&#xff09;2) 分步骤展示传统调试过程&#xff08;console.…

多任务处理:LLaMA-Factory并行微调技巧

多任务处理&#xff1a;LLaMA-Factory并行微调技巧实战指南 为什么需要并行微调&#xff1f; 在大型语言模型的研究中&#xff0c;实验室经常面临一个典型困境&#xff1a;需要同时进行多个微调实验&#xff0c;但GPU资源有限。传统串行方式会导致设备利用率低下&#xff0c;而…

PyFlink Connectors 如何在 Python 作业里正确使用 Kafka/JSON 等连接器(JAR 依赖、DDL 建表、pipeline.jars、内置 Source/Sink、

1. PyFlink 为什么要手动指定 Connector/Format JAR&#xff1f; 因为&#xff1a; Flink 核心运行时在 JVM 上connector&#xff08;如 kafka&#xff09;和 format&#xff08;如 json&#xff09;都是 JVM 侧实现Python 代码只是驱动 Table/SQL 的规划与提交 所以你需要通过…

AI+FFMPEG:用自然语言生成视频处理脚本

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个AI辅助的FFMPEG命令生成器&#xff0c;用户可以通过自然语言描述视频处理需求&#xff08;如将视频压缩到10MB以内、提取前30秒并添加水印&#xff09;&#xff0c;系统自…

系统提示找不到d3dx9_43.dll文件问题 免费下载方法分享

在使用电脑系统时经常会出现丢失找不到某些文件的情况&#xff0c;由于很多常用软件都是采用 Microsoft Visual Studio 编写的&#xff0c;所以这类软件的运行需要依赖微软Visual C运行库&#xff0c;比如像 QQ、迅雷、Adobe 软件等等&#xff0c;如果没有安装VC运行库或者安装…

教学实践:如何在计算机课程中使用Llama Factory开展大模型实验

教学实践&#xff1a;如何在计算机课程中使用Llama Factory开展大模型实验 大模型技术正在改变计算机教育的面貌&#xff0c;但对于大学讲师来说&#xff0c;如何让学生在设备性能参差不齐的情况下统一参与实践环节是个难题。本文将介绍如何利用Llama Factory这一开源工具&…

用Llama Factory实现多模态微调:图文结合的新可能

用Llama Factory实现多模态微调&#xff1a;图文结合的新可能 作为一名内容创作者&#xff0c;你是否遇到过这样的困境&#xff1a;现有的AI工具要么只能生成文字&#xff0c;要么只能处理图片&#xff0c;而无法真正理解图文之间的关联&#xff1f;这正是我最近面临的挑战。幸…

模型压缩:使用Llama Factory将大模型瘦身90%的实用技巧

模型压缩&#xff1a;使用Llama Factory将大模型瘦身90%的实用技巧 作为一名移动端开发者&#xff0c;你是否遇到过这样的困境&#xff1a;好不容易训练出一个15GB的大模型&#xff0c;却发现它根本无法在移动设备上运行&#xff1f;别担心&#xff0c;今天我就来分享一个实测…

零基础玩转GD32:EMBEDDED BUILDER入门指南

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个最简单的GD32开发板入门项目&#xff1a;实现板载LED的呼吸灯效果&#xff0c;并通过串口接收命令改变呼吸频率。要求生成完整的工程文件&#xff0c;包括系统时钟配置、G…

AI如何加速AARCH64架构下的开发流程

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个AI辅助工具&#xff0c;帮助开发者在AARCH64架构下优化代码性能。工具应能分析现有代码&#xff0c;识别性能瓶颈&#xff0c;并提供针对AARCH64架构的优化建议。支持C/C和…

Llama Factory全自动:设置好参数就让模型夜间自动训练完成

Llama Factory全自动&#xff1a;设置好参数就让模型夜间自动训练完成 为什么需要夜间自动训练&#xff1f; 作为一名开发者&#xff0c;白天的时间往往被会议、代码评审和其他工作占据。但模型训练又需要大量计算资源&#xff0c;特别是使用大语言模型时。Llama Factory 提供了…