如何高效微调大模型?五大前沿 PEFT 技术为你揭晓,零基础入门到精通,收藏这一篇就够了

LoRA、AdaLoRA、Adapter Tuning、Prefix Tuning、Prompt Tuning、P-Tuning、P-Tuning V2、QLoRA、Ladder Side 来自Parameter-Efficient Transfer Learning for NLP,介绍了adapter结构:首先是一个down-project层将高维度特征映射到低维特征,然后过一个非线形层之后,再用一个up-project结构将低维特征映射回原来的高维特征;同时也设计了skip-connection结构,确保了在最差的情况下能够退化为identity。 阅读详情

大模型的微调一直是一个复杂而资源密集的任务。然而,近年来出现了一些高效的微调技术(PEFT),使得这一过程变得更加简便和高效。本文将详细介绍几种主要的 PEFT 技术,包括 Adapter Tuning、Prefix Tuning、Prompt Tuning、P-Tuning v1 和 P-Tuning v2。

一、Adapter Tuning :开启大模型 PEFT (2019)

Adapter Tuning 是一种在 2019 年提出的创新微调技术,旨在通过添加额外的适配层来提高模型的微调效率。

  • **Adapter 核心技术解读:**Adapter 嵌入 Transformer 网络

  • 在两个FNN层后增加 Adapter 层:Adapter 层被嵌入在 Transformer 网络的两个 FNN 层之间,通过增加额外的层来增强模型的表现。这一方法通过在原有网络结构中引入适配层,使得模型在特定任务上的微调变得更加高效。

  • Adapter 内部学习降维后特征,减少参数:Adapter 层通过学习降维后的特征,有效地减少了参数数量。这种降维方法不仅能保留原有特征的关键信息,还能显著降低计算复杂度,从而提升模型的运行效率。

  • 使用skip-connection,最差退化为 identity:通过使用 skip-connection 技术,即使在最差情况下,Adapter 层也可以退化为 identity,从而保持模型的稳定性。Skip-connection 确保了信息能够无阻碍地通过不同层,从而提高了模型的稳健性和可复用性。

  • 提升微调效率和稳定性,可复用性增强:Adapter Tuning 提升了微调效率和稳定性,同时增强了模型的可复用性,使得在不同任务间切换更加便捷。这一技术不仅减少了对新数据的依赖,还提高了适应新任务的能力。

二、Prefix Tuning :自动化构造 Prompts (2021)

Prefix Tuning 是在 2021 年提出的一种方法,通过在预训练模型前添加前缀模块来实现高效微调。

  • **Prefix Tuning 核心技术解读:**Prefix 嵌入 Transformer 网络

  • 在预训练 Transformer 前增加 Prefix 模块:Prefix Tuning 方法通过在预训练的 Transformer 模型前增加一个前缀模块,仅训练前缀部分,而冻结 Transformer 的全部参数。这种方法通过引入任务特定的前缀来引导模型生成特定任务的输出。

  • 仅训练 Prefix,冻结 Transformer 全部参数:Prefix Tuning 仅对前缀部分进行训练,而冻结其余的模型参数,从而大大减少了训练所需的计算资源和时间成本。这一方法特别适合那些参数数量庞大的模型,如 GPT-3,使得微调这些模型成为可能。

  • 降低 GPU 算力和训练时间成本:通过减少需要训练的参数数量,Prefix Tuning 显著降低了 GPU 算力和训练时间成本。这不仅提高了模型训练的效率,还降低了硬件需求,使得更多研究者能够进行大模型的微调。

  • Prefix:任务特定的指令集,引导模型生成特定任务的输出:前缀作为任务特定的指令集,通过引导模型生成特定任务的输出,提高了模型在特定任务上的性能。这种方法使得大模型能够更加灵活地适应不同的任务需求,增强了其实用性。

三、Prompt Tuning :Soft Prompts 开创者 (2021)

Prompt Tuning 是 2021 年提出的一种使用软提示词来引导模型进行任务的技术。

1、Prompt Tuning 主要贡献

  • 直观性:Prompt Tuning 使用直观的语言提示来引导模型,使其更易于理解和操作。这种方法通过人类可理解的提示词来引导模型,从而使得模型的操作更加透明和直观。

  • 适用性:这种方法特别适用于那些预训练模型已经掌握了大量通用知识的情况,通过简单的提示就能激发特定的响应。Prompt Tuning 通过利用模型已掌握的知识,快速适应新的任务,提高了模型的通用性。

  • 微调成本低:Prompt Tuning 可以在微调时减少所需的计算资源,同时保持良好的性能。这一方法通过减少对模型参数的调整,降低了训练成本,使得微调变得更加经济高效。

**2、Prompt Tuning 核心技术解读:**Prompt Tuning 训练方法

  • 设计提示:根据任务选择硬提示(固定文本)或软提示(可训练向量)作为输入。硬提示通常是固定的文本片段,而软提示则是可训练的向量,能够根据任务需求进行调整。

  • 融入输入:硬提示直接加入文本,软提示作为向量加入序列。在实际应用中,硬提示可以直接插入到输入文本中,而软提示则以向量的形式嵌入到输入序列中。

  • 训练过程:硬提示下全面微调模型;软提示下只调整提示向量,其他参数不变。硬提示需要对模型进行全面微调,而软提示则仅调整提示向量,从而减少了训练复杂度。

  • 执行任务:训练后模型用于 NLP 任务(如问答、摘要),输出由提示引导。经过训练的模型能够在不同的 NLP 任务中表现出色,其输出由预设的提示词引导,从而提高任务执行的准确性和效率。

四、P-Tuning v1 :解决人工设计 Prompt 的问题 (2021)

P-Tuning v1 是 2021 年提出的一种技术,通过将提示(Prompt)转化为可学习的嵌入层来解决人工设计提示的局限性。

1、P-Tuning 的创新之处

  • 离散性(Discreteness):预训练优化过的正常语料嵌入层与直接对输入提示嵌入进行随机初始化训练相比,可能会导致后者陷入局部最优解。P-Tuning 通过优化提示嵌入层,避免了这种局部最优解的问题。

  • 关联性(Association):难以有效捕捉提示嵌入之间的相互关系。P-Tuning 通过学习提示嵌入层的内部关系,提高了提示的有效性和模型的适应性。

2、P-Tuning v1 核心技术解读

2.1、 **一个关于“The capital of Britain is [MASK]” 示例:**蓝色是上下文 “Britain”、 **红色是目标单词 “[MASK]”、**橙色区域是提示词。
  • 传统方式与 P-Tuning 对比:在传统方式中,提示生成器只接收离散奖励,而在 P-Tuning 中,连续的提示嵌入(Prompt Embedding)和提示编码器(Prompt Encoder)以可微的方式进行优化。P-Tuning 通过优化提示嵌入层,使得模型能够更有效地利用提示信息,从而提升任务执行效果。
2.2、 P-Tuning 和 Prefix-Tuning 的主要区别
  • 嵌入位置:Prefix Tuning 在每个注意力层增加前缀嵌入来引入额外参数,而 P-Tuning 的嵌入位置更为灵活,仅在输入时加入嵌入。P-Tuning 的这种灵活性使得它在不同任务中具有更高的适应性。

  • 初始化方法:Prefix Tuning 用多层感知机(MLP)进行初始化,而 P-Tuning 则通过长短期记忆网络(LSTM)加 MLP 进行初始化。这种初始化方法提高了 P-Tuning 的性能,使其在不同任务中都能表现出色。

五、P-Tuning v2 :提升小模型和多任务微调质量 (2022)

P-Tuning v2 是对 P-Tuning 的改进版本,旨在解决小模型和多任务微调中的性能问题。

1、P-Tuning 在小模型上性能不佳

P-Tuning 在小模型上的性能表现不如在大型预训练模型上。因此,P-Tuning v2 旨在改进这一问题,使得小模型也能通过提示调整(Prompt Tuning)达到类似全面微调的效果。

2、P-Tuning v2 的目标

P-Tuning v2 的目标是使提示调整在不同规模的预训练模型上,针对各种下游任务都能达到类似全面微调的效果。这一目标通过优化提示长度、多任务学习和重参数化等技术手段得以实现。

3、之前方法的限制

  • 模型规模差异:在大型预训练模型中,Prompt Tuning 和 P-Tuning 能取得与全面微调相似的效果,但在参数较少的模型上则表现不佳。P-Tuning v2 通过优化提示长度和重参数化技术,解决了这一问题。

  • 任务类型差异:Prompt Tuning 和 P-Tuning 在序列标注任务上的表现都较差。P-Tuning v2 通过改进提示嵌入层的设计,提高了在序列标注任务上的表现。

4. P-Tuning v2 核心技术解读

4.1 重参数化(Reparameterization)
  • Prefix Tuning 和 P-Tuning 中的 MLP:P-Tuning v2 的研究发现,针对不同的任务和数据集,这种方法可能产生相反的效果,特别是在自然语言理解领域。通过重参数化技术,P-Tuning v2 提高了提示嵌入层的有效性。
4.2 提示长度(Prompt Length)
  • 任务对应的最优提示长度:不同任务对应的最优提示长度不一样,例如在简单的分类任务中,长度为20的提示可能是最佳选择,而对于更复杂的任务,则需要更长的提示长度。P-Tuning v2 通过优化提示长度,使其在不同任务中都能达到最佳效果。
4.3 多任务学习(Multi-task Learning)
  • 多任务学习提供更好的参数初始化:对于 P-Tuning v2 而言,多任务学习是可选的,但它可以提供更好的参数初始化,从而进一步提升模型性能。多任务学习通过共享参数,提高了模型的泛化能力和适应性。
4.4 分类头(Classification Head)
  • 语言模型(LM)头的应用:在 Prompt Tuning 中,使用语言模型头来预测动词是核心思路。然而,P-Tuning v2 的研究发现,在完整数据集上这种做法并非必要,且与序列标记任务不兼容。因此,P-Tuning v2 采用类似 BERT 的方式,在第一个 token 处应用随机初始化的分类头。这一改进使得 P-Tuning v2 在序列标注任务中表现更加稳定。

通过以上对大模型高效微调(PEFT)技术的详细解读,希望能够帮助读者更好地理解和应用这些技术,以提升模型的微调效率和性能,迎接AI领域的更多挑战。

AI大模型学习福利

作为一名热心肠的互联网老兵,我决定把宝贵的AI知识分享给大家。 至于能学习到多少就看你的学习毅力和能力了 。我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

2024最新版优快云大礼包:《AGI大模型学习资源包》免费分享

一、全套AGI大模型学习路线

AI大模型时代的学习之旅:从基础到前沿,掌握人工智能的核心技能!

img
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

2024最新版优快云大礼包:《AGI大模型学习资源包》免费分享

二、640套AI大模型报告合集

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

img

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

2024最新版优快云大礼包:《AGI大模型学习资源包》免费分享

三、AI大模型经典PDF籍

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

img
因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

2024最新版优快云大礼包:《AGI大模型学习资源包》免费分享

四、AI大模型商业化落地方案

img

因篇幅有限,仅展示部分资料,需要点击下方链接即可前往获取

2024最新版优快云大礼包:《AGI大模型学习资源包》免费分享

作为普通人,入局大模型时代需要持续学习和实践,不断提高自己的技能和认知水平,同时也需要有责任感和伦理意识,为人工智能的健康发展贡献力量。

大模型内容分享(十一):大模型高效微调(PEFT)方法大全 结构简洁明了,在Transformer的前馈层后加入上图中右边所示的Adapter层,Adapter是一个bottleneck结构,先把d维特征映射为m维,然后通过一个非线性层,最后映射回d维特征,m 阅读详情

相关推荐

深入解析:Peft Adapter与LLM融合

在增量预训练阶段或有监督微调阶段使用高效微调方法(Lora)时会产生adapter文件,相当于是一个“补丁”。那么如何将“补丁”与原始模型合并呢?下面将对模型合并代码进行解读。

HJ_blog 1590

大模型微调之P-tuning方法解析

Bert时代,我们常做预训练模型微调(Fine-tuning),即根据不同下游任务,引入各种辅助任务loss和垂直领域数据,将其添加到预训练模型中,以便让模型更加适配下游任务的方式。每个下游任务都存下整个预训练模型的副本,并且推理必须在单独的批次中执行。那么能不能将所有自然语言处理的任务转换为语言模型任务?就是所有任务都可以被统一建模,任务描述与任务输入视为语言模型的历史上下文,而输出则为语言模型需要预测的未来信息。

qq_41771998的博客 1万+

手把手教你用Matlab实现Copula函数:从理论到代码的完整指南

本文提供了一份在MATLAB中实现Copula函数的完整实战指南。从理解Sklar定理和常见Copula家族(如高斯、t、Clayton)的核心概念出发,详细讲解了数据预处理、边缘分布拟合、概率积分变换等关键步骤。通过具体代码示例,手把手演示了Copula模型的拟合、评估、蒙特卡洛模拟,并进阶应用于金融风险度量(如VaR计算)和条件分布分析,帮助读者掌握这一强大的多变量依赖建模工具。

y9z0a1b的博客 953

大模型高效微调(PEFT)方法大全

按Additive、Selective、Reparametrization-based分类介绍,主要方法会介绍细节,其余方法一句话概括。

xzp740813的博客 3452

SOLIDWORKS2024安装卡顿?Edge WebView2 Runtime冲突的排查与修复

本文针对SOLIDWORKS 2024安装时setup.exe无响应或卡死的常见问题,深入剖析了其根本原因在于Microsoft Edge WebView2 Runtime的版本冲突或组件损坏。文章提供了三种经过验证的解决方案:一是通过运行安装包内swwi\data目录下的setup.exe直接绕过图形界面;二是彻底卸载并重装官方Edge WebView2 Runtime组件;三是进行系统级修复与排查。旨在帮助用户快速定位并解决安装障碍,顺利完成软件部署。

4k5l6j7h8的博客 289

ESP32接入扣子(Coze) API使用自定义智能体

本示例将使用ESP32开发板通过WiFi接入 **Coze API**,实现一个简单的聊天机器人功能。用户可以通过串口向机器人输入问题,ESP32将通过Coze API与智能体进行通信,并返回对应的回复。本文将详细介绍了如何通过HTTP请求和JSON解析来与API进行交互,并给出完整的代码示例。

宁子希的博客 1万+

如何高效微调大模型?五大前沿 PEFT 技术为你揭晓

大模型的微调一直是一个复杂而资源密集的任务。然而,近年来出现了一些高效的微调技术(PEFT),使得这一过程变得更加简便和高效。本文将详细介绍几种主要的 PEFT 技术,包括 Adapter Tuning、Prefix Tuning、Prompt Tuning、P-Tuning v1 和 P-Tuning v2。Adapter Tuning 是一种在 2019 年提出的创新微调技术,旨在通过添加额外的适配层来提高模型的微调效率。

aolan123的博客 1676

大模型推理常见采样策略:Top-k, Top-p, Temperature, Beam Search

大模型推理采样策略,举例通俗易懂汇总介绍

qq_43243579的博客 2万+

LLM高效参数微调方法:从Prefix Tuning、Prompt Tuning、P-Tuning V1/V2到LoRA、QLoRA(含对模型量化的解释)

常规部分的正向传播由transformers所定义,而LoRA部分的正向传播则由LinearLayer_LoRA(nn.Module)的forward()所定义,即“LoRA层的两条分支结果进行加和”,如下图所示『一般用随机高斯分布初始化,当然实际代码实现时,比如微软的deepspeed chat在用到LoRA时,一开始通过0矩阵占位,然后调用搭配ReLU激活函数的kaiming均匀分布初始化。,相当于在训练期间,较小的权重矩阵(下图中的A和B)是分开的,但一旦训练完成,权重可以合并到一个新权重矩阵中。

结构之法 算法之道 2万+

用 ABAP 驾驭 OAuth 2.0:从 Authorization Code 到 SAML Bearer 的全栈落地指南

ABAP平台OAuth 2.0客户端开发实践 本文为SAP开发者详细解析ABAP平台内置OAuth 2.0客户端的使用方法,涵盖四种授权流的最佳实践: 授权流选择: Authorization Code:适用于用户交互场景 SAML 2.0 Bearer:适合已有SAML体系的企业 Client Credentials:系统间通信 Password Credentials:过渡方案(不推荐) 配置流程: 通过SE80定义Client Profile 使用SOAUTH2_CLIENT/OA2C_CONFIG配

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 309

在 Fiori Elements Object Page 的表格中用 UI.Hidden 隐藏列:语义、边界与落地实践全解析

摘要: Fiori Elements的Object Page表格中,UI.Hidden注解支持静态和动态隐藏列。动态隐藏分为两种:基于父实体属性隐藏整列,或基于子实体属性按行隐藏单元格。关键约束包括:支持服务端操作的列禁止使用动态隐藏,否则会导致UX不一致。ABAP CDS不支持路径式UI.Hidden,需改用XML注解。该功能需与UI.Importance、个性化等机制明确区分,避免混淆。对于可能参与排序/过滤的列,建议仅使用静态隐藏。实际应用中需注意注解位置(整列或单元格级)和业务场景的匹配。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 205

【Python】科研代码学习:十二 PEFT(高效参数的训练,Adapter适配器)

【代码】【Python】科研代码学习:十二 PEFT(高效参数的训练,Adapter适配器)

溢流眼泪的博客 4273

在 NVIDIA DGX Spark 上运行 vLLM + Open WebUI

DGX Spark 和 GX10 都是性能强大的机器,但只有将它们视为交互式工作站而非精简版服务器,才能真正发挥它们的优势。合理利用共享资源,规划并发工作负载,并谨慎控制内存限制。做到这些,vLLM 与 Open WebUI 的结合就能成为可靠​​的日常工具,而不是脆弱的实验品。DGX平台本身价格不菲,但这并非体验此类硬件的唯一途径。多家厂商提供基于相同核心架构、价格更为亲民的系统,这些系统通常配备容量较小的固态硬盘或配置更为简化,但基本性能并未改变。

iCloudEnd的博客 1750

大模型参数高效微调(PEFT)技术解析及微调加速实践

本文详细介绍了几种高效微调方法的原理解析和实验效果对比,并基于Unsloth做了一些微调加速的实践尝试。实验效果显示结合优秀的低参微调方法和微调加速,完全可以做到极为高效的微调大模型,可以在极低的资源占用上得到媲美全参微调的效果。作者介绍:刘辉,58同城TEG-AILab大语言模型算法工程师,主要负责灵犀大语言模型的SFT微调工作。读者福利:如果大家对大模型感兴趣,这套大模型学习资料一定对你有用如果你是零基础小白,想快速入门大模型是可以考虑的。一方面是学习时间相对较短,学习内容更全面更集中。

2301_76161259的博客 3337

PCL 八叉树的使用

八叉树(Octree)是一种空间划分的数据结构,广泛应用于三维点云的处理和分析。八叉树通过将空间递归地划分为八个子区域,可以有效地组织和索引三维点数据,提升点云的查询、降采样和配准等操作的效率。

纵马踏花向自由 1658

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

知识图谱:【知识图谱问答KBQA(四)】——P-tuning V1

Abstract 虽然具有传统微调的 GPT 未能在自然语言理解 (NLU) 上取得很好的结果,但我们证明采用可训练的连续提示嵌入 P-Tuning 的GPT 在 NLU 任务上可以优于或可与类似大小的BERT相媲美。在知识探测 (LAMA) 基准测试中,最好的 GPT 在测试期间无需提供任何额外文本即可恢复 64% (P@1) 的世界知识,这大大提高了之前的最佳水平 20+ 个百分点。在 SuperGlue 基准测试中,GPT 在监督学习中实现了与类似大小的 BERT 相当甚至更好的性能。重要的是,我们发

u013010473的博客 1933

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

大模型的微调技术(高效微调原理篇)

公司有需求做农业方向的大模型应用以及Agent助手,那么适配农业数据就非常重要。但众所周知,大模型的全量微调对算力资源要求巨大,在现实的限制条件下基本“玩不起”,那么高效微调技术就非常必要。为了更好地对微调技术选型和应用,本文整理了常用参数高效微调的方法原理。

ferriswym的博客 1340

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

P-tuning v1 v2

### GPT Understands, Too (P-tuning) 根据训练目标,预训练语言模型能够划分为三种类型: 1. 单向语言模型:GPT,用于自然语言生成任务 2. 双向语言模型:BERT,用于自然语言理解任务 3. 混合语言模型:UniLM,是上述两种方法的结合 在以前,研究者们认为GPT类型的模型在自然语言理解任务上表现不好。随着GPT-3的出现,这个看法被打破了。只要设计出合适的prompt,单向语言模型也能够在自然语言理解任务上有出色表现。 但prompt的设计并不容易,往往一个单词的

开心的火龙果的博客 5350

大模型微调技术——PEFT

本文主要讲述了大模型的训练和微调成本较高,以及如何通过Prefix Tuning降低大模型微调成本的问题。此外,文中也涉及到大模型的训练难度和微调的复杂性,以及Prefix Tuning的原理和优势。同时,文中还介绍了如何使用Prefix Tuning进行模型微调的具体步骤和注意事项,以及Prefix Tuning在自然语言处理领域的应用前景。

Whitney66的博客 3868

Prefix Tuning、P-Tuning V1/V2基本原理总结

对于transformer的每一层 (不只是输入层,且每一层transformer的输入不是从上一层输出,而是随机初始化的embedding作为输入),都在真实的句子表征前面插入若干个连续的可训练的"virtual token" embedding,这些伪token不必是词表中真实的词,而只是若干个可调的自由参数。3.针对不同任务采用不同的提示长度。在实验中,我们发现不同的理解任务通常用不同的提示长度来实现其最佳性能,这与Prefix-Tuning中的发现一致,不同的文本生成任务可能有不同的最佳提示长度。

qq_43605231的博客 3771

大语言模型LLM微调技术:P-Tuning

ptuning v2论文已经证明在不同规模大小模型和不同NLP任务上的有效性,结合最近大模型涌现后的微调热,清华相关实验室对 ChatGLM-6B 模型做了基于 P-Tuning v2的微调。需要微调的参数量减少到原来的 0.1%,结合模型量化和Gradient Checkpoint 等方法,最低只需要 7GB 显存即可运行了。

十年以上架构设计经验,专注于软件架构和人工智能领域,对机器视觉、NLP、音视频等领域都有涉猎 3193

【大模型微调】一文掌握7种大模型微调的方法

本篇文章深入分析了大型模型微调的基本理念和多样化技术,细致介绍了LoRA、适配器调整(Adapter Tuning)、前缀调整(Prefix Tuning)等多个微调方法。详细讨论了每一种策略的基本原则、主要优点以及适宜应用场景,使得读者可以依据特定的应用要求和计算资源限制,挑选最适合的微调方案。大型语言模型(LLM)的训练过程通常分为两大阶段:阶段一:预训练阶段在这个阶段,大型模型会在大规模的无标签数据集上接受训练,目标是使模型掌握语言的统计特征和基础知识。

python123456_的博客 5万+
上一篇: 大模型微调的常见方法总结(非常详细)零基础入门到精通,收藏这一篇就够了
下一篇: 大模型微调项目 / 数据集调研汇总,零基础入门到精通,收藏这一篇就够了
程序员_大白
博客等级 码龄5年 1万+粉丝 4001原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值