PyTorch VS TensorFlow谁最强?这是标星15000+ Transformers库的运行结果

TensorFlow和Pytorch两种机器学习框架的比较及优缺点 TensorFlow是一个开源的机器学习框架,由Google开发并发布,它被用来构建各种类型的机器学习模型,例如图像识别、语音识别、自然语言处理等。自然语言处理:使用TensorFlow可以构建深度学习模型,例如循环神经网络(RNN)和长短期记忆网络(LSTM),用于自然语言处理任务,例如文本生成和情感分析等。选择哪一种框架,还需要根据具体的应用场景进行考虑。1. 易用性和灵活性带来的缺点是,PyTorch在大型数据集上需要额外的工作来优化它的计算效率,而且同时也影响了代码的可维护性。 阅读详情
点击上方“AI派”,选择“设为星标”
最新分享,第一时间送达!


作者 | Lysandre Debut
译者 | 陆离
出品 | AI科技大本营(ID: rgznai100)
 
【导语】自然语言处理预训练模型库 Transformers 实现了几种用于 NLP 任务的最先进的 Transformer 架构,如文本分类、信息提取、问题解答和文本生成等,它经常被研究人员和公司所使用,提供 PyTorch 和 TensorFlow 的前端实现。

究竟是 PyTorch 还是 TensorFlow 更有效率地训练和运行 Transformers 模型?作者对不同环境下所展现的性能进行了对比,最终的结果是,无论在 CPU 还是 GPU 上,最终两大框架的表现都差不多。
Transformers库:
https://github.com/huggingface/transformers
 
自 TensorFlow 发布以来,我们一直在致力于模型产品化的工作,并使其可以用在 TPU 上,逐步适应它的性能。
 
本文对比了我们的模型在几种环境中所展现出来的性能。在 CPU 和 GPU 上比较了 PyTorch(1.3.0)和 TensorFlow(2.0)的推断结果。出于对一些原因的考虑,本文只是关于基准测试和后续性能优化系列文章中的第一篇。此外,我们还在文档中创建了基准测试部分,随着进一步的模型研究,并在不同环境中对它们进行基准测试,该部分还将不断完善。

结果

测试的平均结果显示在下表中,在接下来的讨论部分里将对这些结果进行详细介绍。
       640?wx_fmt=png     平均推断时间

Benchmarking Transformers测试结果:https://url.cn/5hZHCll
 
电子表格中的 N/A 记录表示内存不足或是数列长度不合适。Transformer-XL(Transformer extra-long,Transformer 在模型设计上做了长度方面的延申)没有 TorchScript 结果,因为它当前不能由 TorchScript(TorchScript 是一种从 PyTorch 代码创建可序列化和可优化模型的方法)进行序列化。
 
大多数情况下,TensorFlow 和 PyTorch 的模型在 GPU 和 CPU 上都得到了非常相似的结果。下面是对结果相关的阐述,不仅是 PyTorch 和 TensorFlow 之间的比较,也是模型之间的比较。

测量推理
推理时间是模型投入生产时的一个重要指标。为了评估模型的推理时间,我们对不同批量和不同序列长度的模型进行了对比。我们比较了适当的批量大小[1,2,4,8]和序列长度[8,64,128,256,512,1024]。批量大小仍然很小,因为我们仅仅关注推断设置。BERT和其它类似模型的最大序列长度为 512 或 256(用于 CTRL),因此不能在最后一个序列长度上进行测量。
 
以下是我们在两种不同环境中的测试结果:
 
  • 在 CPU 上,使用 GCP n1-standard-32,它有 32 个 vCPU 和 120GB 的内存。CPU 的型号是 Intel Xeon@2.3GHz:
 
  • 在 GPU 上,使用了带有 12 个 vCPU、40GB 内存和一个 V100 的 GPU(16GB 的    VRAM)的定制 GCP 机器;


实验细节和最佳实践
为了最大化性能,我们进行了更进一步的优化:
 
  • 上述测量使用的 Intel Xeon CPU 带有 AVX 和 AVX2 的扩展,而 TensorFlow 需要从源代码编译之后才能够利用这些扩展,所以只能这么做;
 
  • 我们通过使用 tf.function 和预先跟踪模型来确保我们没有使用 TensorFlow 的 eager 模式;
 
  • 我们比较了依赖于库和不依赖于库的工具:PyTorch的 TorchScript 和带有 GPU 的TensorFlow 的 XLA(自动聚类),后面会详细介绍这两个工具;
 
  • 我们使用了原生的 Python 模块 timeit 来测量推断时间。另外,用repeat=30 和 number=3 来进行每个实验。然后求出30 个值的平均数,就会得到所期望的平均推理时间。通常超过30 个值就会获得非常稳定的结果了;
 
  • 我们不会使用如 TFX 这样的生产环境,并且我们使用的测量模型的可调用方法是:PyTorch 的nn.module.forward 和 TensorFlow 的 tf.keras.layers.layer.call;
 
  • 对于 TensorFlow 和 PyTorch,我们会很谨慎地使用适当的 CUDA 版本;


讨论

PyTorch 和 TensorFlow

在大多数情况下,这两个框架都会得到类似的结果,与 PyTorch 相比,TensorFlow 在CPU 上的速度通常会稍慢一些,而在 GPU 上的速度则稍快一点:
 
  • 所有的模型中,在 CPU 上,PyTorch 的平均推断时间为 0.748s,而 TensorFlow 的平均推断时间为 0.823s;
 
  • 所有模型中,在 GPU 上,PyTorch 的平均推断时间为 0.046s,而 TensorFlow 的平均推断时间为 0.043s;

这些结果通过计算平均值来比较所有模型的推断时间。因此,输入值越大,对最终结果的影响就越大。当输入值过大时,PyTorch 就会耗尽内存;当计算平均值时,这些结果会从所有度量中删除,因为这样会使结果向 PyTorch 倾斜。
 
运行过程中,PyTorch 模型往往比 TensorFlow 模型更早地耗尽内存:除了Distilled 模型之外,PyTorch 在输入批量大小达到 8 以及序列长度达到 1024 时会耗尽内存。

TorchScript

TorchScript 是PyTorch 用来创建可序列化模型的一种方法,可以在不同的运行时间上运行,而不需要 Python 的依赖包,如 C++ 环境。我们的测试是通过在 Python 中跟踪模型并在相同的环境中重用这个跟踪模型来完成的。我们通过预先执行前向传递以确保在测量其推断之前来跟踪模型。
 
免责声明:虽然 TorchScript 并不是为了在 Python 环境中提高运行速度而创建的,但是我们的结果表明,使用 TorchScript 的跟踪模型可以提高性能。
 
TorchScript 似乎非常依赖于模型以及输入的大小(批量大小*序列长度)。例如,在XLNet 上使用 TorchScript 可以获得永久性的性能提升,而在 XLM 上使用 TorchScript 则可能会出现问题,因为它在较小输入下才会提高性能,但在较大输入下反而会降低性能。
 
平均来说,使用 TorchScript 跟踪模型的推断速度比使用相同 PyTorch 非跟踪模型的推断速度快 20%。

XLA
XLA 是一个线性代数编译器,它可以提高 TensorFlow 模型的速度,但我们只能在 GPU上使用。它基于TensorFlow 的自动聚类,编译了模型的一些子图。
 
这些结果在速度和内存的使用效率方面得到了提高:大多数内部基准在启用了XLA 后运行速度提高了 1.15 倍。
 
在启用 XLA 后,我们所有模型性能都得到了提高。在某些极端情况下,特别是在较小输入的情况下,推断时间可以减少 70%。

模型及其精炼版本
精炼模型版本在这个测试中表现出色,因为它可以很快就进行基准测试。这两个 Hugging Face-engineered 模型——DistilBERT 和 DistilGPT-2 的推断时间比它们的老师模型减少了一半。

贡献
由于不同的基准测试有不同的设置和相应的工具,这些都不是靠一个组织所能实现的,因此我们也欢迎来自广大社区的基准。Github用户 @tlkh 已经通过在 TensorFlow 的模型上使用 AMP、XLA 和分布式策略实现的基准测试性能做出了重大的贡献,目前也被添加到文档的基准测试部分。


如何做贡献

如果你愿意参与,我们已经在 Github 上设置了主题模板,这样操作起来就会更简单一些。你可以随意打开已有结果的主题,或者打开一个请求并到文档的基准测试部分进行添加。

基准测试脚本

和本文的发布和文档中的基准测试页一起,我们在示例部分添加了一个新脚本:benchmarks.py,它是用于获取下面详细结果的脚本。它可以使用XLA 或 TorchScript 在 TensorFlow 或 PyTorch 上运行基准测试,并将结果保存到 CSV 文件当中。

接下来的计划
对模型进行基准测试只是提高性能的第一步。我们相信这篇介绍性的文章可能有助于比较模型的当前状态,特别是在研究 PyTorch 和 TensorFlow 之间的差异时。当我们深入研究 Transformers 生产方面时,一定会致力于性能改进。
 
对于 Pythorch 和 TensorFlow 的自动化脚本、新架构和定制 TPU 培训,请密切关注后续文章。
原文链接:
https://medium.com/huggingface/benchmarking-transformers-pytorch-and-tensorflow-e2917fb891c2

(完)





640?wx_fmt=jpeg

?关注“Python与人工智能社区”


王老湿目前建立了Python、爬虫、数据分析、机器学习、AI实战、自然语言处理、计算机视觉、推荐系统等方向的读者交流群,大家可以添加王老湿的微信进行加群

640?wx_fmt=png
?长按识别,添加王老湿微信



近期专栏推荐 (点击下方标题即可跳转)


1. 

2. 

3. 

4. 


点下「在看」,给文章盖个戳吧!?

2023-2024深度学习框架之争——选pytorch还是tensorflow? 深度学习是人工智能领域的一个重要分支,它利用多层神经网络来模拟人类的学习和推理能力,解决各种复杂的问题,如图像识别、自然语言处理、语音识别、推荐系统等。深度学习框架是一种软件工具,它提供了构建、训练、测试和部署深度学习模型的便利,使得开发者和研究者可以更高效地进行深度学习的开发和应用。目前,市场上有许多不同的深度学习框架,如PyTorch、TensorFlow、Keras、MXNet、Caffe2等,它们各有优劣,适用于不同的场景和需求。 阅读详情

相关推荐

数据归一化实战指南:从梯度失衡到生产部署

数据归一化是机器学习中保障模型稳定收敛的基础预处理技术,其核心在于消除多量纲特征间的尺度差异,从而避免梯度下降过程中的更新失衡、距离计算中的数值绑架,以及模型优化方向的系统性偏移。它并非仅适用于神经网络,而是影响KNN、SVM、逻辑回归乃至XGBoost等各类算法的训练稳定性与特征解释性。关键原理在于:未经缩放的原始数值会导致损失函数对不同特征的梯度量级悬殊,使优化器无法公平更新权重;而错误的归一化顺序(如先全局fit再切分)更会引发隐蔽的数据泄露,造成离线指标虚高与线上效果坍塌。本文聚焦min-max、z

weixin_33971977的博客 378

PyTorch、TensorFlow 两者和Transformers的关系,openai,chatgpt

Transformers库是由Hugging Face开发的,它建立在PyTorch和TensorFlow之上,提供了许多预训练的Transformer模型和相关工具。PyTorch是由Facebook开发的深度学习框架,它提供了丰富的工具和API,使得构建和训练神经网络变得更加简单和高效。因此,PyTorch和TensorFlow是深度学习框架,而Transformers是一个基于这两个框架之一的库,专注于提供预训练的Transformer模型和相关工具。

码农崛起 5230

TensorFlow VS PyTorch哪个更强?

TensorFlow 和 PyTorch 都是流行的深度学习框架,它们有一些共同点,例如都支持多种编程语言和硬件平台,也都提供了丰富的工具和库来支持深度学习模型的构建、训练和部署。

AI时代光年 2800

【LLM】概念解析 - Tensorflow/Transformer/PyTorch

本文将从算法原理、适用范围、强项、知名大模型的应用、python 调用几个方面,对深度学习框架 TensorFlow、PyTorch 和基于深度学习的模型 Transformer 进行比较。主要作用是基础概念扫盲。

lu_rong_qq的博客 2802

AGV避坑指南:海康控制系统与Modbus设备对接的那些‘坑’

本文深入解析海康AGV控制系统与Modbus设备对接中的常见问题及解决方案,涵盖通信协议对接、信号干扰、硬件层问题和软件优化策略。通过真实案例和实用技巧,帮助工程师规避典型陷阱,提升系统稳定性和效率。

l3m4n的博客 741

CocosCreator视频播放黑屏?手把手教你封装VideoPlayer组件解决Web环境问题

本文针对Cocos Creator在Web环境下视频播放黑屏等常见问题,提供了一套工程化的VideoPlayer组件封装解决方案。文章深入剖析了浏览器自动播放策略、DOM样式隔离等核心挑战,并手把手教你实现一个健壮的管理器,涵盖兼容性处理、性能优化与内存管理,确保视频播放稳定流畅。

plum99的博客 600

tensorflow 指定cpu 但是还会运行 gpu_PyTorch VS TensorFlow谁最强?这是标星15000+ Transformers库的运行结果...

作者 | Lysandre Debut译者 | 陆离出品 | AI科技大本营(ID: rgznai100)【导语】自然语言处理预训练模型库 Transformers 实现了几种用于 NLP 任务的最先进的 Transformer 架构,如文本分类、信息提取、问题解答和文本生成等,它经常被研究人员和公司所使用,提供 PyTorch 和 TensorFlow 的前端实现。究竟是 PyTorch 还是 ...

weixin_39546661的博客 119

【Unity】Unity性能分析解决方案——UPR

由Unity中国团队提供的一套性能优化解决方案,其是一系列性能工具的集合,并可将收集的数据进行可视化。

Davidorzs的博客 1009

tensorflow 指定cpu 但是还会运行 gpu_PyTorch VS TensorFlow 谁最强?这是标星 15000+ Transformers 库的运行结果...

点击上方“AI有道”,选择“星标”公众号重磅干货,第一时间送达作者 | Lysandre Debut译者 | 陆离出品 | AI科技大本营(ID: rgznai100)【导语】自然语言处理预训练模型库 Transformers 实现了几种用于 NLP 任务的最先进的 Transformer 架构,如文本分类、信息提取、问题解答和文本生成等,它经常被研究人员和公司所使用,提供 PyTor...

weixin_39776298的博客 171

通过 Android Framework 调用高通 Perf HAL 实现 CPU/GPU 动态调频策略

本文详细介绍了如何通过Android Framework调用高通Perf HAL实现CPU/GPU动态调频策略。文章涵盖HAL交互原理、环境搭建、Power HAL接口实现、PerformanceHintManager应用及温度功耗平衡处理,帮助开发者安全高效地进行性能优化,避免直接操作底层硬件的风险。

keras9composer的博客 259

WorkBuddy实战技巧:搭建高效AI工作台与自动化流程

在数字化办公场景中,AI工作台正逐渐成为提升个人与团队效率的关键工具。它不同于简单的聊天机器人,而是通过集成技能包(Skill)、自动化触发与文档处理能力,把重复性任务如信息提取、周报生成、数据表格整理等变为标准化流程。其核心原理在于将用户需求拆解为可执行的指令链,并借助本地脚本、API调用及定时任务实现“对话即操作”的智能协作。这种技术价值不仅适用于程序员,更惠及运营、客服、行政、科研等日常与文字数据打交道的群体。从自动签到、会议纪要,到批量处理Excel与合同要点提取,AI工作台的应用场景已覆盖多个高频

weixin_42547431的博客 334

PyTorch VS TensorFlow谁最强?这是星标15000+ Transformers库的运行结果

作者 | Lysandre Debut译者 | 陆离出品 | AI科技大本营(ID: rgznai100)PyTorch VS TensorFlow谁最强?这是标星150...

机器学习算法那些事 600

(HAL)stm32f407+freertos通过usb驱动移远4G模块-EC600U

文章记录了stm32cubemx+stm32f407+freertos+usb host实现移远4G模块EC600U的usb驱动的调试过程,usb host cdc库的使用和遇到的问题及解决办法。

gongrulin的博客 3900

51c深度学习~合集8

方法的完整数学描述略显复杂,如果只是想了解主要思想,可以只看上面 PatchMix的流程图即可(其实只是公式多,每个公式也不复杂,后续有机会做个演示动画,帮助大家理解。这个方法也可以用简单的 Mask 方法实现,但是本方法在大规模图像处理上效率是最高的),对该工作感兴趣的同行可以看一下,我尽量写得清楚一些。结合 PatMix 的流程图,主要过程如下:由于混合图像和混合图像之间,重叠比例的不同,mix-to-mix label 中每一项的权重分数是不同的,根据上图,可以得到权重系数可以表示为。

whaosoft~aiotの开发板商城 2963

超级全的PCB LAYOUT高速信号走线指南——简化应用版

在PCB Layout中,几乎涵盖了所有的高速信号走线指南。包括了TF/SD、HDMI、LVDS、DVP、eDP、MIPI、USB2.0、USB3.0、MAC、BT.1120、PCIE高速信号等等。此版本为简化版。

bhxc809751502的博客 8552

基于Python的Booking酒店数据爬虫实战:最新技术与完整代码解析

本文将详细介绍如何使用Python构建一个高效的Booking酒店数据爬虫,涵盖从基础爬取到高级反反爬技术的完整实现。我们将使用最新的Python爬虫技术栈,包括requests-html、Playwright、智能代理轮换等技术,并提供完整的可运行代码示例。文章将深入探讨爬虫的各个组成部分,包括数据提取、存储、反反爬策略以及性能优化等方面。关键词:Python爬虫、Booking数据采集、反反爬技术、Playwright、数据存储。

2201_76125261的博客 936

Transformer原理与代码精讲(TensorFlow)

Transformer发轫于NLP(自然语言处理),并跨界应用到CV(计算机视觉)领域。目前已成为深度学习的新范式,影响力和应用前景巨大。 本课程对Transformer的原理和TensorFlow 2代码进行精讲,来帮助大家掌握其详细原理和具体实现。 原理精讲部分包括:注意力机制和自注意力机制、Transformer的架构概述、Encoder的多头注意力(Multi-Head Attention)、Encoder的位置编码(Positional Encoding)、残差链接(Residual Connection)、层规范化(Layer Normalization)、FFN(Feed Forward Network)、Transformer的训练及性能、Transformer的机器翻译工作流程。  代码精讲部分使用Jupyter Notebook对Transformer的TensorFlow 2实现代码进行逐行解读,包括:安装TensorFlow、Transformer的数据集加载与预处理代码解读、Transformer的位置编码与多头注意力代码解读、Transformer的Transformer类代码解读、Transformer的优化器与损失函数代码解读、Transformer的训练代码解读、Transformer的推理与权重保存代码解读。相关课程: 《Transformer原理与代码精讲(PyTorch)》https://edu.youkuaiyun.com/course/detail/36697《Transformer原理与代码精讲(TensorFlow)》https://edu.youkuaiyun.com/course/detail/36699《ViT(Vision Transformer)原理与代码精讲》https://edu.youkuaiyun.com/course/detail/36719《DETR原理与代码精讲》https://edu.youkuaiyun.com/course/detail/36768《Swin Transformer实战目标检测:训练自己的数据集》https://edu.youkuaiyun.com/course/detail/36585《Swin Transformer实战实例分割:训练自己的数据集》https://edu.youkuaiyun.com/course/detail/36586《Swin Transformer原理与代码精讲》 https://download.youkuaiyun.com/course/detail/37045

Devexpress16.2.6破解工具

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

2023年机器学习框架大家觉得tensorflow和pytorch哪个开发起来效率更高更容易入手呢?

从开发者使用 AI 框架来实现模型训练和推理部署的角度看,AI 框架需要能够通过动态图的编程范式,来完成在模型训练的开发阶段的灵活易用的开发体验,以提升模型的开发效率;AI求解,模型还是传统的科学计算模型,但是使用深度学习算法来求解,这个方向已经有一定的探索,目前看到不少基础的科学计算方程已经有对应的AI求解方法,比如PINNs、PINN-Net等,当然现在挑战还很大,特别是在精度收敛方面,如果要在AI框架上使用AI求解科学计算模型,最大的挑战主要在前端表达和高性能的高阶微分。支持CPU加速计算。

黑马程序员官方博客 3875

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

一文弄懂Pytorch TensorFlow Transformer Transformers Anaconda conda CUDA的原理以及它们之间的关系

PyTorch 和 TensorFlow 是两大深度学习框架,支持在 GPU 上使用 CUDA 加速,适合搭建和训练如 Transformer 这样的神经网络模型。Transformer 是一种强大的模型架构,广泛应用于自然语言处理和计算机视觉领域,而 Hugging Face 提供的 Transformers 库基于 PyTorch 和 TensorFlow 实现了许多预训练的 Transformer 模型,极大简化了它们的使用。Anaconda 和 Conda 则负责管理这些工具的环境和依赖,确保在同一

m0_45276337的博客 3626

VB摄像头监控

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

PyTorch 与 TensorFlow 怎么选

静态图在定义时使用了特殊的语法,就像学习一门新的语言,同时在构建静态图时需要考虑所有的情况,这导致静态图过于庞大,可能占用过多的显存,不过其运行速度相对较快。PyTorch 的设计符合人们的思维,它让用户尽可能地专注于实现自己的想法,所思即所得,不需要考虑太多框架本身的束缚。然而,作为一个还在快速发展探索的领域,人工智能研发人员实际需要的可能并没有这么复杂,他们更加希望快速地实现和尝试自己的想法,这也是为什么半路出家的 PyTorch 能够异军突起,一举成为最受欢迎的深度学习框架之一(可能没有“之一”)..

博文视点(北京)官方博客 3万+

Tensorflow和pytorch的区别是什么?哪个更好?

另外,小普还注意到,许多教程和 MOOC 都涵盖了Tensorflow,这是因为与 Tensorflow 相比,PyTorch 是一个相对较新的框架。如果不提及 TensorBoard,这种比较将是不完整的。虽然 Tensorflow 和 PyTorch 都是开源的,但它们是由两个不同的向导创建的。免费分享一些我整理的人工智能学习资料给大家,包括一些AI常用框架实战视频、图像识别、OpenCV、NLQ、机器学习、计算机视觉、深度学习与神经网络等视频、课件源码、国内外知名精华资源、AI热门论文、行业报告等。

m0_74693860的博客 1万+

Tensorflow2.0之理解语言的 Transformer 模型

项目介绍 我们将训练一个 Transformer 模型 用于将葡萄牙语翻译成英语。在此之前,建议先了解有关文本生成和注意力机制的相关内容。 Transformer 模型的核心思想是自注意力机制(self-attention)——能注意输入序列的不同位置以计算该序列的表示的能力。Transformer 创建了多层自注意力层(self-attetion layers)组成的堆栈,下文的按比缩放的点积注...

cocofisher的博客 9917

TensorFlow、PyTorch、Keras、Scikit-learn和ChatGPT。视觉开发软件工具 Halcon、VisionPro、LabView、OpenCV

选择哪种工具取决于你的需求。对于需要文本生成的应用,如自动文章写作,客户服务机器人,或者其他自然语言处理任务,ChatGPT是一个极好的选择。然而,如果你的需求是构建和训练自己的AI模型。

ZhangJiqun&191cm&85kg 1983

GPT-2解读(论文 + TensorFlow实现)

GPT-2是对GPT的一个升级,并且更着重于将思路放在为何pretrain是有用的上面,认为LM本身是一个Multi-task Learner,并且大力用ZSL实验来佐证这个思路。

Magical_Bubble的博客 1万+

chatgpt赋能python:Python如何利用GPU加速?

本文由chatgpt生成,文章没有在chatgpt生成的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc大模型,只是展现它原本的实力。对于颠覆工作方式的ChatGPT,应该选择拥抱而不是抗拒,未来属于“会用”AI的人。🧡AI职场汇报智能办公文案写作效率提升教程 🧡专注于AI+职场+办公方向。下图是课程的整体大纲下图是AI职场汇报智能办公文案写作效率提升教程中用到的ai工具。

vacvefito的博客 748
上一篇: GitHub开源项目!一款功能强大的特征选择工具
下一篇: 106页的《Python进阶》中文版(附下载)!
Wang_AI
博客等级 码龄12年 996粉丝 162原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值