引言
如果说 2024 年是 AI 技术光速发展的元年,随着 AI 技术持续迭代更新,人类借助 AI 技术实现了一系列突破。从 LLM 大语言模型 ChatGPT 横空出世,到各类大语言模型百花齐放;在其他领域,能快速生成视频的 Sora、使用 AI 生成音频的 Suno AI,还有程序员广泛使用的 AI 编程助手 Copilot,这一切的发展都预示着 AI 时代已然来临。
2025 年年初,DeepSeek 的火爆则引发了中国广大民众对 AI 的热烈探讨。而中国的各企业也借着 DeepSeek 的热度,都试图将 AI 融入自身产品,对产品进行一次AI升级。可以说,DeepSeek 加速了中国民众对 AI 大模型的认知,也间接推动了中国 AI 应用开发落地的进程。因此,作为一名开发者,我决定紧跟时代步伐,从 Java 开发工程师转型为 AI 应用开发工程师。
这篇《AI 领域技术架构》,我将从宏观架构视角出发,简要介绍当下 AI 领域现有的技术手段。通过分层架构的方式,清晰界定每种 AI 技术所属层次及其相互间的依赖关系,也为后续系统学习 AI 技术打好根基。
AI领域技术架构图
图1 AI 领域技术架构图
如图 1 AI 领域技术架构图所示,我把 AI 领域技术架构划分为五大层次,从底层到上层依次为基础设施层、编译器框架层、AI 技术基底层、AI 技术栈层和 AI 应用层。右侧的开发框架是支撑整个 AI 技术体系的编程框架;模型开源社区就如同 AI 领域的 GitHub,是 AI 领域知名的的模型下载、数据下载、工具下载平台。接下来,我会依据 AI 技术架构图,简要介绍每个层次的具体内容。
基础设施层
AI 芯片:
-
GPU(图形处理器):GPU凭借其强大的并行计算能力,在 AI 领域大放异彩。GPU 能够同时处理大量数据,大大加速了深度学习模型的训练过程。在图像识别任务中,GPU 可以快速处理海量图像数据,帮助模型快速学习图像特征,提高识别准确率。
-
TPU(张量处理单元):专为加速深度学习计算而设计,对张量运算进行了优化,能更高效地执行矩阵乘法等 AI 核心运算。在谷歌的云服务中,TPU 被广泛应用于自然语言处理、大规模图像识别等任务,显著提升了运算效率和速度。
-
NPU(神经网络处理器):针对神经网络算法进行优化,具备低功耗、高计算效率的特点,尤其适用于移动端和边缘计算设备。在智能安防摄像头中,NPU 可以实时对视频流中的人物、物体进行识别和分析,实现智能监控功能。
支撑技术体系:
-
云计算:提供弹性计算资源,让 AI 开发者无需搭建复杂的本地计算环境,即可按需获取计算力。通过云计算平台,研究人员可以方便地租用大规模计算集群,快速完成深度学习模型的训练和测试,降低了 AI 开发的门槛和成本。
-
大数据:为 AI 提供海量的数据基础,AI 模型需要大量的数据来学习和优化。大数据技术能够对海量数据进行存储、管理和分析,从电商平台的用户购买数据到医疗领域的病历数据,都能为 AI 模型的训练提供丰富信息,帮助模型发现数据中的规律和模式。
-
虚拟化容器:实现资源的隔离和高效利用,通过将应用及其依赖打包成独立的容器,可在不同环境中快速部署和运行。在 AI 开发中,虚拟化容器技术可以确保不同的 AI 模型和应用在同一服务器上稳定运行,互不干扰,提高了服务器资源的利用率。
数据:
-
数据采集:从各种数据源收集数据,包括传感器、网络爬虫、数据库等。在智能交通领域,通过路边传感器采集车辆流量、车速等数据,为交通流量预测和智能交通管理提供数据支持。
-
数据标注:对采集到的数据进行人工标记,使其成为 AI 模型可学习的样本。在图像识别任务中,需要人工标注出图像中的物体类别、位置等信息,让模型能够学习到不同物体的特征。
-
数据分析:对数据进行统计分析、挖掘数据中的潜在信息和规律。通过对用户行为数据的分析,了解用户的偏好和需求,为 AI 推荐系统提供数据依据,实现个性化推荐。
编译器框架层
-
CUDA(Compute Unified Device Architecture):CUDA是 NVIDIA 推出的一种并行计算平台和编程模型,专为 NVIDIA GPU 设计。它允许开发者使用类 C 语言来编写并行计算代码,从而充分利用 GPU 的强大计算能力加速 AI 任务。在深度学习训练中,许多流行的深度学习框架如 PyTorch 和 TensorFlow 在使用 NVIDIA GPU 时都可以借助 CUDA 进行加速。例如,在图像分类任务里,使用 CUDA 加速卷积神经网络(CNN)的训练过程,能够显著缩短训练时间,提高模型的训练效率。
-
TVM(Tensor Virtual Machine):TVM是一个开源的深度学习编译器,旨在为不同的硬件平台(包括 CPU、GPU、FPGA 等)提供统一的编译优化方案。它可以将深度学习模型转换为高效的可执行代码,并且能够自动优化代码以适应不同的硬件架构。对于 AI 开发者来说,TVM 可以方便地将训练好的模型部署到各种硬件设备上。比如将在云端训练好的自然语言处理模型部署到移动设备上时,TVM 能够对模型进行优化,使其在移动设备的有限资源下高效运行。
-
LLVM(Low Level Virtual Machine):LLVM 是一个模块化和可重用的编译器及工具链技术的集合。它提供了一套完整的基础设施,包括前端(用于解析不同的编程语言)、优化器和后端(用于生成不同硬件平台的机器码)。在 AI 领域,LLVM 可以作为底层的编译基础设施,许多 AI 编译器和工具会基于 LLVM 进行开发。例如,一些新兴的 AI 编程语言的编译器可能会利用 LLVM 来进行代码生成和优化,从而提高 AI 程序的执行效率。
-
XLA(Accelerated Linear Algebra):XLA是 Google 开发的用于加速深度学习计算的线性代数编译器。它可以对 TensorFlow 等深度学习框架中的计算图进行优化,通过融合算子、减少内存访问等方式提高计算效率。在大规模的深度学习训练和推理任务中,XLA 能够显著提升计算速度。比如在 Google 的云端 AI 服务中,使用 XLA 对模型进行编译优化后,可以更高效地处理大量用户的推理请求,降低响应时间。
-
GCC(GNU Compiler Collection):GCC是 GNU 项目开发的一个广泛使用的编译器集合,支持多种编程语言,如 C、C++、Fortran 等。它可以生成多种硬件平台的机器码,具有高度的可移植性。在 AI 开发中,它可以用于编译一些 AI 算法的底层实现代码。例如,一些用 C 或 C++ 编写的 AI 库和工具可以使用 GCC 进行编译,然后集成到更大的 AI 系统中。
AI 技术基底层
-
人工智能(AI):人工智能是一门研究如何使计算机系统能够模拟人类智能,以实现感知、理解、学习、推理、决策等能力的技术科学。它旨在让机器具备类似人类的认知和处理问题的能力,涵盖了多种技术和方法,以应对不同类型的任务和挑战。
-
机器学习:机器学习是人工智能的一个重要分支,专注于让计算机通过数据和经验来自动学习模式和规律,而无需明确的编程指令。它通过构建和训练模型,使计算机能够从数据中提取有价值的信息,并对未知数据进行预测和决策。
-
深度学习:深度学习是机器学习的一个分支,基于深度神经网络。它能够自动从大量数据中学习到复杂的特征表示,无需人工手动提取特征。具有强大的建模能力,可以处理高维、复杂的数据。例如在图像识别中,深度学习模型可以自动学习到图像中物体的各种特征。深度学习在计算机视觉领域实现了高精度的图像分类、目标检测和语义分割;在自然语言处理领域推动了机器翻译、问答系统和文本生成等技术的发展;在自动驾驶领域帮助车辆感知环境和做出决策。
-
神经网络:神经网络是一种模仿人类神经系统的计算模型,你可以把神经网络想象成一个大脑,它由大量神经元组成。这些神经元按层次排列,包含输入层、隐藏层(可以有多个)和输出层。每个神经元接收来自其他神经元的输入,经过加权求和并通过激活函数处理后产生输出。例如,在简单的手写数字识别任务中,输入层接收图像像素值,经过隐藏层的特征提取和处理,输出层给出识别结果。神经网络广泛应用于图像识别、语音识别、自然语言处理、预测分析等众多领域。比如在安防监控中用于人脸识别,在医疗领域辅助疾病诊断
-
生成式对抗网络(GAN):GAN 技术可以说是推动这次AIGC热潮的关键技术,有了它,AI才能够生成逼真的图像、音频、文本。生成式对抗网络由生成器和判别器两个神经网络组成。生成器尝试生成逼真的数据样本,而判别器负责判断输入的数据是真实样本还是生成器生成的假样本。两者通过对抗训练不断提升性能,使生成器能够生成越来越接近真实数据的样本。在图像生成领域,生成式对抗网络可以创造出逼真的人脸、风景等图像;在数据增强方面,能够生成额外的训练数据以提高模型的泛化能力;还可用于风格迁移,将一种图像的风格应用到另一种图像上。
-
卷积神经网络(CNN):卷积神经网络是一种专门为处理具有网格结构数据(如图像、音频)而设计的深度学习模型。它通过卷积层、池化层和全连接层等组件,自动提取数据的局部特征和层次化特征表示,能够有效处理高维数据并减少模型参数。卷积神经网络在计算机视觉领域占据主导地位。常用于图像分类任务,如识别图片中的物体类别;目标检测可定位图像中多个目标的位置和类别;语义分割则对图像中的每个像素进行分类,实现场景理解。
-
循环神经网络(RNN):循环神经网络是一种用于处理序列数据的神经网络,通过引入循环结构,使网络能够保存之前输入的信息,并利用这些信息处理当前的输入,从而捕捉序列数据中的时间依赖关系。在自然语言处理中,循环神经网络可用于语言建模、机器翻译和文本生成;语音识别领域,能够处理语音序列并将其转换为文本;时间序列预测方面,如股票价格预测和气象预报,也经常使用循环神经网络。
-
Transformer:2017年,Google Research推出了Transformer模型。由Vaswani等人发表于谷歌官方的论文“Attentionls All YouNeed" 介绍了Transformer---种有助于语言理解的新神经网络架构。在Transformer出现之前,机器不太擅长理解长句子的含义,也无法看到相距较远单词之间的关联。Transformer极大地改善了这一点,并成为当今语言理解和生成式人工智能系统的基石。Transformer彻底改变了机器执行翻译、文本摘要、问题回答甚至图像生成和机器人技术的含义。
-
Transformer 是一种基于注意力机制的深度学习模型架构,采用编码器 - 解码器结构。它摒弃了传统的循环和卷积结构,能够并行处理输入序列,有效捕捉序列中的长距离依赖关系,在处理大规模序列数据时具有显著优势。Transformer 在自然语言处理领域取得了巨大成功,广泛应用于机器翻译、文本生成、问答系统和情感分析等任务。同时,其思想也被引入到计算机视觉和语音处理等领域,推动了这些领域的技术发展。
-
AI技术栈层
prompt 提示词工程
提示词工程即通过设计和优化输入给语言模型等 AI 系统的prompt提示词,来引导模型生成更符合预期、更优质的输出内容的技术和方法。旨在通过精心构造的文本提示,使 AI 更好地理解任务和意图,发挥其最大性能。
模型部署和管理
模型部署是将训练好的 AI 模型从开发环境转移到生产环境,使其能够在实际应用中为用户提供服务的过程。模型管理则涵盖了对模型整个生命周期的管理,包括模型的版本控制、性能监控、更新维护等,确保模型在生产环境中稳定、高效地运行。
多模态
多模态是指综合利用多种模态的数据,如图像、文本、语音、视频等,使 AI 系统能够理解和处理不同形式的信息,并实现多模态之间的交互与融合,从而更全面、准确地感知和理解世界,提升 AI 的智能水平和应用效果。
模型评估
模型评估是机器学习等领域中至关重要的环节,它通过诸如准确率、精确率、召回率、F1 值、均方误差、平均绝对误差、决定系数等一系列特定指标,运用留出法、交叉验证、自助法等多种科学方法,对模型的性能和效果进行全面衡量,其作用涵盖了模型选择、超参数调整以及性能监控等方面,旨在判断模型的优劣,确保其满足实际应用需求,帮助专业人员构建更精准、可靠、实用的模型。
RAG(检索增强生成)
RAG 是一种将检索技术与语言生成模型相结合的技术,在生成文本时,通过检索外部知识源,获取相关信息并融入到生成过程中,使生成的内容更具知识性、准确性和多样性,有效弥补了语言模型在某些知识细节上的不足。RAG在在知识问答、信息检索、内容创作等领域有重要应用,能够帮助用户快速获取准确、全面的信息,提高信息获取和内容生成的效率与质量。
Fine-Tuning 模型微调
模型微调是指基于已经在大规模数据上预训练好的模型,使用特定的小规模数据集对模型进行进一步训练,调整模型的参数,使其更适应于特定的任务或领域,以提高模型在特定场景下的性能和表现。在各种 AI 应用中,当需要将通用模型应用于特定的业务场景或专业领域时,如医疗文本处理、法律文档分析等,模型微调可以让模型更好地满足特定任务的需求。
AI Agent 智能体
Agent是一种能够感知环境、自主决策并采取行动以实现特定目标的人工智能实体。它可以理解和处理各种信息输入,根据内部的算法和策略进行推理和决策,并与环境进行交互,具有自主性、智能性和交互性等特点。AI Agent 广泛应用于智能客服、智能助手、智能游戏、智能物流等领域,能够代替人类完成一些重复性、规律性的工作,提供个性化的服务和支持,提高工作效率和用户体验。
AI 应用层
-
LLM 大语言模型
-
定义:是一种基于深度学习的人工智能模型,具有大规模的参数和强大的语言理解与生成能力。它通过在海量文本数据上进行无监督或自监督学习,能够学习到语言的语法、语义、语用等多方面知识,从而可以生成连贯、有逻辑的自然语言文本,还能完成问答、翻译、文本摘要等多种自然语言处理任务。
-
应用场景:广泛应用于智能写作助手、智能客服、智能聊天机器人、知识问答系统等领域,为用户提供自然流畅的语言交互服务,帮助人们快速获取信息和完成文本相关的工作。
-
-
NLP 自然语言处理
-
定义:是人工智能和计算机科学领域的一个重要分支,旨在使计算机能够理解、处理和生成人类语言。它涉及到语言学、计算机科学、数学等多学科知识,通过运用各种技术和算法,对自然语言进行词法分析、句法分析、语义分析、语用分析等,实现人机之间的自然语言交互。
-
应用场景:包括机器翻译、文本分类、信息检索、情感分析、语音识别与合成等,在智能办公、智能教育、社交媒体分析、医疗文本处理等众多领域都有重要应用,帮助人们更高效地处理和利用自然语言信息。
-
-
RLHF 基于人类反馈的强化学习
-
定义:是一种强化学习技术,将人类的反馈作为奖励信号来优化智能体的行为策略。在训练过程中,智能体通过与环境进行交互获得奖励,而人类可以根据自己的判断对智能体的行为进行评价和反馈,智能体根据这些反馈调整自己的策略,以实现更好的性能和符合人类期望的行为。
-
应用场景:常用于优化语言模型的输出,使其生成的内容更符合人类的偏好和价值观,也可用于机器人控制、自动驾驶等领域,让智能系统的行为更符合人类的需求和安全标准。
-
-
计算机视觉
-
定义:是一门研究如何让计算机 “看” 懂图像或视频内容的技术学科。它借助计算机技术和算法,对图像或视频中的内容进行分析、理解和处理,包括图像识别、目标检测、图像分割、视频跟踪等任务,旨在使计算机能够像人类视觉系统一样感知和理解视觉世界。
-
应用场景:在安防监控、自动驾驶、医疗影像诊断、工业检测、虚拟现实、图像编辑等领域有广泛应用,帮助人们实现自动化的视觉检测和分析,提高生产效率和生活质量。
-
-
机器学习
-
定义:是人工智能的一个重要分支,致力于开发能够自动从数据中学习规律和模式,并利用这些规律进行预测和决策的算法和模型。机器学习算法可以分为监督学习、无监督学习、半监督学习和强化学习等不同类型,通过对大量数据的学习和分析,让计算机系统具备自主学习和优化的能力。
-
应用场景:几乎涵盖了所有领域,如金融风险预测、市场营销、医疗诊断、天气预报、语音识别、图像识别等,帮助人们从海量数据中提取有价值的信息,做出更准确的决策和预测。
-
- 知识图谱
-
定义:是一种以图结构形式表示知识的语义网络,由节点和边组成,节点代表实体,边代表实体之间的关系。它旨在将各种领域的知识进行整合和关联,形成一个结构化的知识体系,以便计算机能够更好地理解和处理知识,实现知识的查询、推理和应用。
-
应用场景:在智能搜索、智能问答系统、智能推荐、知识管理等领域发挥着重要作用,帮助用户更快速地获取准确的知识信息,为决策提供支持,同时也有助于人工智能系统实现更深入的知识理解和推理。
-
- 数据挖掘
-
定义:是从大量数据中发现潜在模式、知识和有价值信息的过程。它综合运用统计学、机器学习、数据库等多种技术,对数据进行清理、转换、分析和建模,以提取出隐藏在数据中的有用信息和知识,如关联规则、分类模型、聚类结果等。
-
应用场景:广泛应用于商业智能、市场营销、金融风险评估、医疗数据分析、社交媒体分析等领域,帮助企业和机构更好地了解用户行为、市场趋势等,为决策制定提供数据支持。
-
- AIGC
-
定义:即人工智能生成内容,是利用人工智能技术来自动生成文本、图像、音频、视频等各种形式的内容。通过深度学习等技术,AIGC 模型能够学习和模仿人类的创作方式和风格,根据给定的提示或条件生成具有一定创意和质量的内容。
-
应用场景:在内容创作领域,如新闻写作、文案生成、艺术创作等方面有广泛应用,还可用于虚拟场景构建、游戏开发、智能设计等领域,为内容创作提供了新的思路和方法,提高了创作效率和多样性。
-
开发框架
TensorFlow
-
官网文档:https://www.tensorflow.org/tutorials/load_data/text?hl=zh-cn
-
TensorFlow 是由 Google 开发和维护的开源深度学习框架。它提供了丰富的工具、库和资源,用于构建和训练各种机器学习和深度学习模型。其功能包括支持 CPU、GPU 等多种计算设备,可进行高效的数值计算;拥有大量的神经网络层和优化算法,方便搭建复杂模型;具备自动微分功能,能快速计算梯度;还支持模型的可视化、分布式训练等,广泛应用于图像识别、自然语言处理等众多 AI 领域。
-
TensorFlow适用于工业级应用,尤其在大规模分布式训练、移动端和嵌入式设备部署方面优势明显,像图像识别、语音识别等产品化项目常用。
PyTorch
-
PyTorch 是 Facebook 开发维护的开源深度学习框架。它基于 Python 语言,以动态计算图为核心机制,在运行中可即时构建和修改计算图,调试便捷。其功能强大,提供丰富的神经网络层和优化算法,能轻松搭建各类模型,如卷积神经网络、循环神经网络。支持 CPU 与 GPU 计算,有效提升计算效率。还具备自动求导功能,简化梯度计算。凭借简洁易用的 API、良好的灵活性与动态性,PyTorch 广泛用于科研实验与模型快速迭代,深受学术界和开发者青睐。
-
PyTorch多用于科研领域,凭借动态图优势,适合快速迭代开发和模型实验,如自然语言处理新算法验证。
LangChain
-
简介:LangChain是一个用于开发与语言模型交互应用的框架。它提供了一系列工具和组件,帮助开发者将语言模型集成到各种应用中,实现智能对话、信息检索等功能。
-
适用场景:专注于自然语言处理相关的应用开发,如智能客服、智能聊天机器人、知识问答系统等,可帮助开发者快速构建基于语言模型的智能应用。
Dify
-
简介:是一个低代码 AI 开发平台,旨在让开发者无需大量编写代码即可创建和部署 AI 应用。它提供了可视化的界面和丰富的组件,方便用户进行数据处理、模型训练和应用部署等操作。
-
适用场景:适合没有深厚编程基础或希望快速搭建 AI 应用的用户,可用于开发各种类型的 AI 应用,如文本分类、图像识别、智能推荐等。
Caffe
-
简介:以其高效的计算性能和简洁的代码结构而闻名。它具有良好的 C++ 接口,支持多 GPU 训练,在图像领域有出色的表现。
-
适用场景:主要应用于计算机视觉领域,如图像分类、目标检测、图像分割等任务,在工业界和学术界的图像相关项目中得到了广泛应用。
Nvidia Digits
-
简介:是 NVIDIA 推出的深度学习 GPU 训练系统,提供了图形化的界面,方便用户进行数据准备、模型训练和评估等操作。它集成了多种深度学习框架,可充分利用 NVIDIA GPU 的强大性能。
-
适用场景:适合初学者和希望快速进行深度学习实验的用户,尤其在图像和视频处理领域,利用 NVIDIA GPU 的优势可以快速完成模型训练。
IBM SystemML
-
简介:是 IBM 开发的可扩展的机器学习和深度学习平台,支持多种机器学习算法和模型,具有良好的可扩展性和分布式计算能力,能够处理大规模的数据。
-
适用场景:适用于大数据环境下的机器学习和深度学习任务,如数据挖掘、预测分析等,在企业级应用中,尤其是处理大规模数据的场景中具有优势。
百度 PaddlePaddle
-
简介:是百度开发的深度学习平台,提供了丰富的模型库和工具,支持多种深度学习任务。它具有高效的计算性能和良好的可扩展性,同时也提供了中文文档和社区支持。
-
适用场景:在自然语言处理、计算机视觉、语音识别等多个领域都有应用,尤其在中文自然语言处理方面有一定的优势,适合国内的开发者进行各种深度学习项目开发。
华为 MindSpore
-
简介:是华为开发的深度学习框架,具有自主研发的架构和核心技术,支持端边云全场景部署。它注重模型的高效训练和推理,提供了多种优化算法和工具。
-
适用场景:适用于各种深度学习场景,尤其在华为的生态系统中,如智能终端、智能安防等领域有广泛的应用,也在积极拓展其他领域的应用。
阿里 ModelScope
-
简介:是阿里云推出的一站式模型服务平台,提供了丰富的预训练模型和模型开发工具,支持多种深度学习框架。用户可以在平台上快速获取和使用各种模型,进行模型的微调、评估和部署等操作。
-
适用场景:适用于各种 AI 应用开发场景,帮助开发者快速构建和部署 AI 模型,尤其在自然语言处理、计算机视觉、语音技术等领域,可提高模型开发的效率和质量。
模型开源社区
Hugging Face
Hugging Face 是一个极具影响力的人工智能开源社区,专注于自然语言处理等领域。它提供了如 Transformers、Datasets、Tokenizers 等强大的开源库,拥有包含超 10 万个模型和 2 万个数据集的 Model Hub,为开发者提供了海量的预训练模型和丰富的数据集。社区活跃,开发者可以轻松地共享、下载和改进模型与代码,还能利用 Inference API 和 Spaces 进行模型部署和应用托管。其推动了 AI 领域的开源协作,在全球 AI 发展中发挥着重要作用,与众多科技公司和研究机构都有合作。
阿里魔搭
阿里魔搭开源社区(ModelScope)是阿里云于 2022 年 11 月牵头发起的开源 AI 模型社区。作为国内规模最大、最活跃的 AI 模型社区,已汇聚 5500 多款优质模型和上千个数据集,为超 560 万开发者提供服务。社区践行模型即服务(MaaS)理念,提供一站式模型服务,涵盖模型探索、训练、部署等全流程,还提供如 Data-Juicer、Swift 等丰富的模型工具,构建了活跃的交流平台和 7x24 小时技术支持体系,极大降低了 AI 技术使用门槛,加速了 AI 应用落地。
结语
本文简要介绍了AI领域技术架构的内容,其中涉及的内容比较广泛,后续小编将作为一个AI应用开发工程师的角度,与大家一起去详细学习AI相关的技术。主要学习目标包括AI技术栈层的内容如prompt、RAG、模型微调、Agent、模型部署等技术。以及AI应用层的内容,包括LLM、NLP、RLHF、AIGC、大模型落地实践等。而对于AI技术领域相对底层的内容,小编会在具体工作和学习涉及时,再进行相关内容的学习。