让 AMD GPU 在大语言模型推理中崭露头角:机遇与挑战
在当今科技飞速发展的时代,大语言模型(LLM)的兴起彻底改变了人工智能领域的格局。从智能客服到文本生成,从知识问答到代码编写辅助,大语言模型的应用无处不在,深刻影响着我们的生活和工作。然而,这些强大的模型在推理过程中对计算资源的需求极高,这也促使硬件制造商不断寻求提升性能的方法。英伟达 GPU 长期以来在 LLM 推理中占据主导地位,但 AMD GPU 正逐渐崭露头角,努力在这个竞争激烈的领域中分得一杯羹。今天,就让我们一同深入探讨如何让 AMD GPU 在 LLM 推理中具备更强的竞争力。
一、AMD GPU 的崛起之势
(一)硬件架构的独特魅力
AMD GPU 在架构设计上具有独特之处,其拥有大量的计算单元和高带宽内存,理论上具备强大的并行计算能力,这为处理大规模的神经网络计算提供了有力支持。例如,AMD 的某些高端 GPU 型号在计算单元数量上与英伟达同级产品相比毫不逊色,甚至在某些方面具有一定优势,为在 LLM 推理中发挥出色性能奠定了基础。
(二)市场潜力的逐步释放
随着技术的不断进步,AMD GPU 在市场上的份额逐渐扩大。越来越多的企业和研究机构开始关注 AMD GPU 在人工智能领域的应用潜力,尤其是在成本效益方面的优势。相比英伟达 GPU,AMD GPU 在价格上可能更具吸引力,这使得一些预算有限但又希望开展大规模 LLM 推理任务的用户将目光投向了 AMD。
二、面临的艰巨挑战
(一)软件生态的薄弱环节
与英伟达成熟的软件生态相比,AMD GPU 在软件支持方面仍存在一定差距。深度学习框架对 AMD GPU 的优化程度不够理想,导致在实际应用中,开发者可能无法充分利用 AMD GPU 的硬件特性。许多流行的深度学习框架在英伟达 GPU 上能够实现高效运行,但在 AMD GPU 上却需要更多的手动优化工作,这无疑增加了开发难度和成本。
(二)性能优化的艰难道路
-
内存管理困境:AMD GPU 的内存架构与英伟达有所不同,在处理 LLM 推理过程中的大规模数据时,可能会遇到内存分配和访问效率不高的问题。例如,数据在内存与显存之间的传输速度可能无法满足模型推理的实时需求,导致计算单元等待数据的时间过长,从而降低了整体性能。
-
计算效率瓶颈:尽管 AMD GPU 拥有众多计算单元,但在执行 LLM 推理中的复杂计算任务时,可能无法像英伟达 GPU 那样高效地利用计算资源。一些针对英伟达 GPU 优化的算法在 AMD GPU 上可能无法直接达到最佳性能,需要进行大量的适配和优化工作,这对开发者的技术能力提出了更高的要求。
(三)市场认知的根深蒂固
由于英伟达在 GPU 市场的长期主导地位,以及其在 LLM 推理领域的广泛应用和成功案例,许多用户对 AMD GPU 在该领域的能力存在疑虑。这种先入为主的市场认知使得 AMD GPU 在推广和应用过程中面临较大的阻力,需要花费更多的精力来证明其在 LLM 推理方面的实力。
三、破局之策与创新之举
(一)硬件与软件的协同优化
-
定制化硬件设计:AMD 可以根据 LLM 推理的特点,对 GPU 硬件进行进一步优化。例如,优化内存层次结构,增加高速缓存的容量和效率,以减少数据访问延迟;改进计算单元的设计,提高其对神经网络计算的适应性,使硬件能够更好地与软件协同工作,提升整体性能。
-
深度软件优化:与深度学习框架开发者紧密合作,针对 AMD GPU 的架构特性对框架进行深度优化。开发专门的编译器和运行时库,能够自动将 LLM 推理算法转换为最适合 AMD GPU 执行的指令序列,提高计算效率。同时,优化内存管理算法,确保数据能够在正确的时间以最快的速度到达计算单元。
(二)开源社区的力量汇聚
-
鼓励开源贡献:AMD 可以积极鼓励开源社区参与到针对 LLM 推理的 GPU 优化工作中来。通过提供开发工具、技术文档和资金支持等方式,吸引更多的开发者为 AMD GPU 开发优化算法、库和工具。开源社区的创造力和多样性能够为 AMD GPU 带来更多创新的解决方案,加速其在 LLM 推理领域的发展。
-
建立开源项目与平台:发起和维护专门针对 AMD GPU 在 LLM 推理中应用的开源项目,如优化后的深度学习框架分支或特定模型的加速库。这些项目可以为开发者提供一个共享经验、交流技术的平台,促进知识的传播和技术的迭代。同时,通过开源项目的影响力,吸引更多的企业和研究机构关注和使用 AMD GPU。
(三)行业合作的共赢模式
-
与模型开发者合作:与大语言模型的开发者建立紧密的合作关系,共同优化模型在 AMD GPU 上的推理性能。模型开发者可以根据 AMD GPU 的特性对模型架构进行调整,使其更适合在 AMD 硬件上运行。例如,优化模型的参数分布、调整计算图结构等,以提高计算效率和内存利用率。
-
与云计算提供商携手:与云计算服务提供商合作,将 AMD GPU 纳入其云计算服务产品线。云计算平台可以为用户提供便捷的 AMD GPU 计算资源租赁服务,降低用户使用 AMD GPU 进行 LLM 推理的门槛。同时,云计算提供商可以利用其大规模的数据中心和技术优势,进一步优化 AMD GPU 在多用户、多任务场景下的性能表现。
四、成功案例与鼓舞人心的进展
(一)学术研究中的亮眼表现
在一些学术研究项目中,研究人员通过对 AMD GPU 进行针对性优化,成功地在 LLM 推理任务中取得了显著的性能提升。例如,某高校的研究团队利用 AMD GPU 对一个特定的自然语言处理模型进行推理加速,通过优化内存管理和计算流程,使推理速度提高了 [X]%,为 AMD GPU 在学术研究领域的应用提供了有力的证据。
(二)企业应用中的积极探索
部分企业也开始在实际业务中尝试使用 AMD GPU 进行 LLM 推理。一家新兴的人工智能创业公司利用 AMD GPU 构建了自己的智能客服系统,通过优化软件栈和模型部署,在保证服务质量的前提下,有效降低了硬件成本。虽然在初期遇到了一些技术挑战,但通过不断的优化和改进,系统逐渐稳定并发挥出了良好的性能,为企业的发展提供了有力支持。
(三)社区驱动的创新成果
开源社区中也涌现出了许多针对 AMD GPU 在 LLM 推理中应用的创新项目。例如,[社区项目名称] 项目通过开发一系列高效的内核函数和优化算法,显著提高了 AMD GPU 在处理某些类型 LLM 任务时的性能。这些社区驱动的成果不仅为 AMD GPU 的用户提供了实用的工具,也为整个行业的发展注入了新的活力。
五、未来的无限可能与殷切展望
(一)技术演进的光明前景
随着硬件制造工艺的不断进步和软件算法的持续创新,AMD GPU 在 LLM 推理中的性能有望实现更大的突破。未来的 AMD GPU 可能会采用更先进的制程技术,进一步提高计算单元的密度和性能,同时降低功耗。在软件方面,新的优化算法和框架将不断涌现,能够更加充分地挖掘 AMD GPU 的潜力,使其在 LLM 推理中达到甚至超越英伟达 GPU 的性能水平。
(二)市场格局的重塑契机
如果 AMD GPU 能够在 LLM 推理领域持续取得进展,将有可能改变当前的市场格局。更多的用户可能会因为其成本效益和不断提升的性能而选择 AMD GPU,从而打破英伟达在该领域的长期主导地位。这将促使市场竞争更加激烈,推动整个行业不断向前发展,为用户带来更多优质、高效且经济的选择。
(三)人工智能发展的强大助力
AMD GPU 在 LLM 推理中的竞争力提升将对人工智能的发展产生积极影响。它将为更多的企业和研究机构提供强大的计算支持,加速大语言模型的研发和应用进程。无论是在自然语言处理、计算机视觉还是其他人工智能领域,AMD GPU 都有机会发挥重要作用,推动人工智能技术在更广泛的领域得到应用,为社会带来更多的创新和价值。
让 AMD GPU 在大语言模型推理中具备竞争力是一项充满挑战但又极具意义的任务。通过硬件与软件的协同优化、开源社区的积极参与和行业合作的深入开展,AMD GPU 已经在这条道路上取得了一定的成绩。我们有理由相信,在未来,AMD GPU 将在 LLM 推理领域绽放更加耀眼的光芒,为人工智能技术的发展贡献更多的力量。如果你对 AMD GPU 或大语言模型推理感兴趣,欢迎持续关注相关领域的最新动态,一起见证这场技术变革的精彩历程。
科技脉搏,每日跳动。
与敖行客 Allthinker一起,创造属于开发者的多彩世界。
- 智慧链接 思想协作 -
相关文章:
让 AMD GPU 在大语言模型推理中崭露头角:机遇与挑战
在当今科技飞速发展的时代,大语言模型(LLM)的兴起彻底改变了人工智能领域的格局。从智能客服到文本生成,从知识问答到代码编写辅助,大语言模型的应用无处不在,深刻影响着我们的生活和工作。然而,…...
Linux运维常见命令
vi/vim快捷键使用 1)拷贝当前行 yy ,拷贝当前行向下的5行 5yy,并粘贴(输入p)。 2)删除当前行 dd ,删除当前行向下的5行5dd 3)在文件中查找某个单词 [命令行下 /关键字,回车查找 ,输入n就是查找下一个 ] 4)设置文件的行号&…...
前端真实面试题自用
一、写在前面 笔者,经过计算机学硕考研的失败后,想谋求一份前端工作实在是太难了。一方面,确实曾经学习过的东西很久没有拾起,另一方面,对于前端面经还是记忆不深刻,特地写此贴记录笔者在真实前端面试中遇…...
人工智能与云计算的结合:如何释放数据的无限潜力?
引言:数据时代的契机 在当今数字化社会,数据已成为推动经济与技术发展的核心资源,被誉为“21世纪的石油”。从个人消费行为到企业运营决策,再到城市管理与国家治理,每个环节都在生成和积累海量数据。然而,数…...
初始 ShellJS:一个 Node.js 命令行工具集合
一. 前言 Node.js 丰富的生态能赋予我们更强的能力,对于前端工程师来说,使用 Node.js 来编写复杂的 npm script 具有明显的 2 个优势:首先,编写简单的工具脚本对前端工程师来说额外的学习成本很低甚至可以忽略不计,其…...
benchmarksql5.0 测试工具如何在达梦上能够跑起来?
(1)添加驱动程序文件: lib文件夹下创建一个dm文件夹,并在dm文件夹下放置达梦数据库的驱动程序:DmJdbcDriver8.jar (2)引用驱动程序文件所在目录: 在文件benchmarksql-5.0/run/funcs.sh中的function setCP()函数中; 也就是在文件…...
amazon广告授权
amazon授权资料地址 Amazon Advertising Advanced Tools Center postman地址:Amazon Advertising Advanced Tools Center...
设计模式与游戏完美开发(2)
更多内容可以浏览本人博客:https://azureblog.cn/ 😊 该文章主体内容来自《设计模式与游戏完美开发》—蔡升达 第二篇 基础系统 第四章 游戏主要类——外观模式(Facade) 一、游戏子功能的整合 一个游戏程序常常由内部数个不同的…...
WebRTC服务质量(10)- Pacer机制(02) RoundRobinPacketQueue
WebRTC服务质量(01)- Qos概述 WebRTC服务质量(02)- RTP协议 WebRTC服务质量(03)- RTCP协议 WebRTC服务质量(04)- 重传机制(01) RTX NACK概述 WebRTC服务质量(…...
VSCode调试
目录 C/C远程本地调试插件配置参考 C/C远程本地调试 测试源码:https://github.com/jrhee17/ssl-study 插件 Remote - SSH C/C 配置 .vscode/launch.json {"version": "0.2.0","configurations": [{"name": "afte…...
【ES6复习笔记】解构赋值(2)
介绍 解构赋值是一种非常方便的语法,可以让我们更简洁地从数组和对象中提取值,并且可以应用于很多实际开发场景中。 1. 数组的解构赋值 数组的解构赋值是按照一定模式从数组中提取值,然后对变量进行赋值。下面是一个例子: con…...
01 - 初识 Spring
初识Spring 企业级应用 企业级应用是指那些为商业组织、⼤型企业而创建并部署的解决⽅案及应用。这些⼤型的企业级应用结构复 杂、涉及的外部资源众多,事务密集,数据规模⼤,用户数量多,有较强的安全性考虑和较⾼的性能要求。 …...
重装荣耀X14笔记本电脑踩坑记
这几天趁着有国补搞了台荣耀 X14笔记本电脑。到手后第一件事情对我来说当然是要重装成Windows 11 LTSC版。所以按以往的经验做了个USB启动安装盘,但发现上电后按F12能进入启动设备选择,可是USB分类下没有任何设备。重启按F2进入设置界面,关闭…...
华为管理变革之道:奋斗文化与活力
目录 企业文化是什么? 为什么活下去是华为的文化? 活下来,是华为公司的最低纲领,也是华为公司的最高纲领! 资源终会枯竭,唯有文化才能生生不息 企业文化之一:以客户为中心 企业文化之二&a…...
代码随想录算法训练营第十五天-二叉树-110.平衡二叉树
所谓平衡二叉树是指任意子树的高度差不超过1目前所学习的有关二叉树的问题,都是基于二叉树的遍历顺序来实现的 #include <iostream> #include <sstream> #define LEN 10009struct TreeNode {int val;TreeNode* left;TreeNode* right;TreeNode(): val(0…...
各种网站(学习资源、常用工具及其他,持续更新中~)
欢迎围观笔者的个人博客~ 也欢迎通过RSS网址https://kangaroogao.github.io/atom.xml进行订阅~ 大学指南 上海交通大学生存手册中国科学技术大学人工智能与数据科学学院本科进阶指南USTC不完全入学指南大学生活质量指北科研论 信息搜集 AI信息搜集USTC飞跃网站计算机保研 技…...
【gunicorn -k gevent 参数gevent说明,主要CPU密集和I/O密集型】
CPU 密集型和I/O 密集型是两种不同的计算任务类别,它们的性能瓶颈来源不同: 1. CPU 密集型 定义 CPU 密集型任务是指主要消耗 CPU 计算资源 的任务。这类任务需要大量的计算操作,而很少涉及 I/O 操作(如网络或磁盘的读写&#x…...
快速理解24种设计模式
简单工厂模式 建立产品接口类,规定好要实现方法。 建立工厂类,根据传入的参数,实例化所需的类,实例化的类必须实现指定的产品类接口 创建型 单例模式Singleton 保证一个类只有一个实例,并提供一个访问他它的全局…...
5G -- 5G网络架构
5G组网场景 从4G到5G的网络演进: 1、UE -> 4G基站 -> 4G核心网 * 部署初中期,利用存量网络,引入5G基站,4G与5G基站并存 2、UE -> (4G基站、5G基站) -> 4G核心网 * 部署中后期,引入5G核心网&am…...
硬件开发笔记(三十二):TPS54331电源设计(五):原理图BOM表导出、元器件封装核对
若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/144753092 长沙红胖子Qt(长沙创微智科)博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV…...
UE5 崩溃问题汇总!!!
Using bundled DotNet SDK version: 6.0.302 ERROR: UnrealBuildTool.dll not found in "..\..\Engine\Binaries\DotNET\UnrealBuildTool\UnrealBuildTool.dll" 在你遇到这种极奇崩溃的BUG ,难以解决的时候。 尝试了N种方法,都不行的解决方法。…...
美国站群服务器如何帮助实现有效的多域名管理?
国站群服务器以其丰富的IP资源、高性能硬件和灵活的配置选项,成为多域名管理的理想选择。特别是在需要针对不同域名实现SEO优化、业务分离或多站点运营的场景中,美国站群服务器提供了高效且实用的解决方案。以下是如何利用美国站群服务器实现有效的多域名…...
VMware的三种网络模式——在NAT模式下开放接口为局域网内其他主机提供服务
众所周知 VMware 有三种常用的网络通讯模式,分别是:Bridged(桥接模式)、NAT(网络地址转换模式)、Host-Only(仅主机模式),它们各有不同的用法。 Bridged 桥接模式是与主机…...
【漏洞复现】灵当CRM datapdf.php 任意文件读取漏洞
免责声明 请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。工具来自网络,安全性自测,如有侵权请联系删除。本次测试仅供学习使用,如若非法他用,与平台和本文作…...
MySql详细教程-从入门到进阶(超实用)
基础篇 通用语法及分类 DDL: 数据定义语言,用来定义数据库对象(数据库、表、字段)DML: 数据操作语言,用来对数据库表中的数据进行增删改DQL: 数据查询语言,用来查询数据库中表的记录DCL: 数据控制语言,用…...
【C语言练习(17)—输出杨辉三角形】
C语言练习(17) 文章目录 C语言练习(17)前言题目题目解析整体代码 前言 杨辉三角形的输出可以分三步,第一步构建一个三角形、第二步根据规律将三角形内容填写、第三步将三角形以等腰的形式输出 题目 请输出一个十行的…...
服务器压力测试怎么做
在部署任何Web应用程序或服务之前,进行服务器压力测试(也称为负载测试)是确保系统能够处理预期用户流量的关键步骤。通过模拟大量并发请求,可以评估服务器的性能、稳定性和响应时间,识别潜在瓶颈,并优化资源…...
深度学习中的正则化
深度学习中的正则化(regularization)旨在防止过拟合并提高模型对未知数据的泛化能力。正则化是一种通过在给定的训练集上适当地拟合函数并避免过度拟合来减少误差的技术。 通过对模型参数添加约束,正则化鼓励模型学习更简单、更稳健的模式,从而降低其对噪…...
深入了解 React:从入门到高级应用
深入了解 React:从入门到高级应用 React 是由 Facebook 开发并维护的一个开源 JavaScript 库,用于构建用户界面。自2013年发布以来,React 在前端开发领域迅速崛起,成为最受欢迎的 UI 构建工具之一。无论是小型的单页应用…...
华为云环境下LVS/DR架构的故障诊断优化
本文作者:刘涛 文章目录 前言1.LVS/DR集群的问题2.华为云环境3.问题排查3.1 检查LVS/DR模式配置3.1.1 RS服务器3.1.2 DS服务器 3.2 继续分析抓包结果3.2.1 调整tcpdump抓包过滤条件3.2.2 client向集群VIP发包3.2.3 DS服务器arp消息 3.3 查看丢包3.3.1 监控DS和RS服…...
Effective C++ 条款 22:将成员变量声明为 private
文章目录 条款 22:将成员变量声明为 private核心思想示例代码注意事项结论 条款 22:将成员变量声明为 private 核心思想 成员变量的封装性 将成员变量声明为 private 是面向对象设计的重要原则,有助于保持封装性。 为何使用 private&#x…...
ShardingSphere(分库分表)
ShardingSphere 高性能架构模式 读写分离架构: 基本原理是将数据库读写操作分散到不同的节点上,主库负责处理事务性的增删改操作,从库负责处理查询操作。避免由数据更新导致的行锁,来提升性能。 一主一从:可以将查…...
Visual Studio Code(VS Code)配置C/C++环境
一、Visual Studio Code安装 Visual Studio Code,下文中简称为VS Code的详细安装方法请参考VSCode安装教程(超详细)-CSDN博客 二、MinGW编译器下载与配置 1、MinGW介绍 MinGW(Minimalist GNU for Windows)是一款用于Windows 平台的轻…...
使用 OpenCV 在图像中添加文字
在图像处理任务中,我们经常需要将文本添加到图像中。OpenCV 提供了 cv2.putText() 函数,可以很方便地在图像上绘制文本,支持多种字体、颜色、大小和位置等参数。 本文将详细介绍如何使用 OpenCV 在图像中添加文字,介绍 cv2.putTe…...
高校网络安全_网络安全之道
需要对学校的网络进行安全防护,主要有这么几个痛点: 传统本地化产品难以及时更新情报库,应对新型攻击。 近年来,黑客和黑产团伙攻击手 段呈现多样化实战化,除传统僵木蠕外,各类新型、复杂甚至未知威胁高发…...
『大模型笔记』评估大型语言模型的指标:ELO评分,BLEU,困惑度和交叉熵介绍以及举例解释
评估大型语言模型的指标:ELO评分,BLEU,困惑度和交叉熵介绍以及举例解释 文章目录 一. ELO Rating大模型的elo得分如何理解1. Elo评分的基本原理2. 示例说明3. 大模型中的Elo得分总结3个模型之间如何比较计算,给出示例进行解释1. 基本原理扩展到三方2. 示例计算第一场: A A…...
kafka的配置
server.properties server.properties模板 # broker id,多个broker服务器的话,每个broker id必须不同 broker.id1# kafka broker所在节点的 hostnamehostname10.1.1.1.3:9092# 处理网络请求的线程数 num.network.threads 8# 执行磁盘IO的线程数 num.io…...
Linux下Java通过JNI调用C++
以下为Demo流程 1.创建Java文件 public class HelloWord {// 声明本地方法public native void sayHello();static {// 加载本地库System.loadLibrary("hello");}public static void main(String[] args) {new HelloWord().sayHello();} } 2.编译生成.h头文件 在H…...
家政预约小程序数据库设计
目录 1 如何设计表结构1.1 用户表1.2 服务分类表1.3 服务表1.4 服务规格表1.5 订单表1.6 服务人员表1.7 评价表1.8 促销活动表1.9 投诉表1.10 年卡表1.11 派单表1.12 支付记录表1.13 通知记录表1.14 优惠券表1.15 用户优惠券表1.16 消息模板表1.17 积分记录表 经过一系列的设计…...
【Git学习】windows系统下git init后没有看到生成的.git文件夹
[问题] git init 命令后看不到.git文件夹 [原因] 文件夹设置隐藏 [解决办法] Win11 win10...
云手机群控能用来做什么?
随着云手机的发展,云手机群控技术逐渐从小众的游戏多开工具,发展为涵盖多个领域的智能操作平台。不论是手游搬砖、短视频运营,还是账号养成等场景,云手机群控都展现出了强大的应用潜力。本文将为大家详细解析云手机群控的应用场景…...
go下载依赖提示连接失败
1、现象 Go下载模块提示连接失败 dial tcp 142.251.42.241:443: connectex: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.…...
在线excel编辑(luckysheet)
项目地址:Luckysheet: 🚀Luckysheet ,一款纯前端类似excel的在线表格,功能强大、配置简单、完全开源。 可以下载项目使用npm安装运行,也可以用cdn 加载excel文件(使用luckyexcel): …...
2024国赛A题第一问
第一问 板凳龙等距螺线匀速运动模型的建立 坐标系的建立 根据题意,舞龙队沿螺距为55cm的螺线顺时针进入,进入位置为螺线第16圈点A处,即整个螺线的最外侧点,设定其为 ( x 0 , y 0 ) (x_0,y_0) (x0,y0)。为了便于计算出题目要…...
【魅力golang】之-反射
1、引言 反射(Reflection)在 Golang中用于运行时检查和操作变量的类型和值。通过反射,可以实现动态类型处理,这在构建泛型代码、框架、序列化工具和动态代理等场景中非常有用。 2、什么是反射 反射是指程序在运行时能够动态地检…...
Java在 聊天管理系统中的应用
聊天管理系统已经成为人们日常沟通不可或缺的一部分。无论是企业内部的即时通讯,还是社交媒体平台的聊天功能,聊天管理系统都扮演着至关重要的角色。 Java 作为一种广泛应用的编程语言,凭借其强大的功能、良好的跨平台性以及丰富的类库&…...
记一次rac故障原因分析(虚拟化平台)
一 现象描述 XX客户于1月14号凌晨业务中断,检查数据库发现数据库集群宕机。 XX客户于2月14号春节初五早上业务异常,连接数据库无响应。 二 问题详细诊断 1月14号故障 1月14号凌晨2点,客户反馈业务中断,发现节点1无法连接&…...
opencv中的各种滤波器简介
在 OpenCV 中,滤波器是图像处理中的重要工具,用于对图像进行平滑、去噪、边缘检测等操作。以下是几种常见滤波器的简单介绍。 1. 均值滤波 (Mean Filter) 功能: 对图像进行平滑处理,减少噪声。 应用场景: 去除图像…...
文本数据处理
文本数据处理 一、数据转换与错误处理 (一)运维中的数据转换问题 在计算机审计及各类数据处理场景中,数据转换是关键步骤,涉及将被审计单位或其他来源的数据有效装载到目标数据库,并明确标示各表及字段含义与关系。…...
ThinkPHP 8开发环境安装
【图书介绍】《ThinkPHP 8高效构建Web应用》-CSDN博客 《ThinkPHP 8高效构建Web应用 夏磊 编程与应用开发丛书 清华大学出版社》【摘要 书评 试读】- 京东图书 1. 安装PHP8 Windows系统用户可以前往https://windows.php.net/downloads/releases/archives/下载PHP 8.0版本&am…...