一、前言
众所周知,现在AI的变化日新月异,从年初DeepSeek推出全新的V3和R1模型火爆出圈,到前几天Manus又发布了号称全球首款通用人工智能代理,AI的能力突飞猛进,AI将重塑一切的共识也被越来越多的人所接受。很多人想学习大模型应用开发,但无奈现在大模型开发所涉及到的专业词汇及概念众多,开发工具的环境配置及资源要求也比较高,没有基础的话,一时不知从何下手。所以,本文将帮助大家整理和总结一些大模型开发必备的基础知识和概念,以及详细的开发环境配置方法,让更多人能够快速入门和上手大模型开发,加入到AI进化的潮流中来。
二、大模型开发基础知识
有一说一,现在的AI涉及到的基础概念太多了,各种名词术语让人眼花缭乱,如果真的想进入AI行业,对这些基本概念还是必须要了解的。接下来,我将用通俗易懂的文字给大家总结一些经常会遇到的名词术语。
-
机器学习:简单来说就是一种通过数据训练模型,使计算机能够自动完成任务的技术。它不需要显式编程,而是让计算机从数据中学习规律,并根据这些规律进行预测或决策。简单来说,就是让机器“学会”如何解决问题。
-
深度学习:是机器学习的一个子领域,它利用多层神经网络从数据中自动学习特征和规律。与传统的机器学习方法不同,深度学习能够处理更复杂的任务(如图像识别、自然语言处理),并且不需要人工设计特征,而是通过多层神经网络自动提取数据中的高级特征。
**那么问题来了,机器学习和深度学习的区别是啥?**简单来说,机器学习在进行数据训练前,必须先告诉机器这些数据有哪些特征,然后再对机器进行训练,也就是“必须有人教”。而深度学习无须在训练前告诉机器数据有哪些特征,它能通过模型算法自动提取特征再来学习,也就是“自学”。
-
神经网络:是一种模拟人脑神经元工作方式的计算模型,由多层节点(称为“神经元”)组成,这些节点通过加权连接相互传递信息。神经网络通过学习数据的特征和规律来完成特定任务(如分类、回归、生成等)。它分为输入层、隐藏层和输出层,每一层负责处理数据的不同抽象层次。神经网络是深度学习的核心基础。
-
自然语言处理(Natural Language Processing, NLP):所谓自然语言,就是指人类语言,就是我们平时说的人话,而我们经常说的编程语言则是计算机语言。自然语言处理是人工智能的一个分支,专注于让计算机理解、生成和处理人们说的话。它结合了语言学、计算机科学和机器学习技术,用于实现诸如文本分析、机器翻译、情感分析、语音识别、聊天机器人等任务。NLP的目标是使计算机能够像人类一样高效地处理自然语言。
-
计算机视觉(Computer Vision, CV):是人工智能的另一个分支,专注于让计算机理解和分析图像或视频数据。它通过模拟人类的视觉系统,使计算机能够识别、分类、检测和生成图像中的对象、场景或特征。计算机视觉广泛应用于人脸识别、自动驾驶、医学影像分析、目标检测、图像分割等领域。
总结一下,简单来说,人工智能其实主要就是这么几件事,一是让计算机能懂我们在说什么,能认字,这块属于NLP的研究范畴;二是让计算机具有视觉,能看懂图片、视频这些玩意,这块属于CV的研究范畴。三是语音的识别和合成,这块属于Voice的研究范畴。
-
AI(Artificial Intelligence,人工智能):AI就是我们平时说的人工智能,它是指通过计算机模拟人类智能的技术和系统,使机器能够执行通常需要人类智慧的任务,如学习、推理、问题解决、感知、语言理解等。主要分为自然语言处理、计算机视觉两个大的方向。
-
AGI(Artificial General Intelligence,通用人工智能):是指具备与人类相当或超越人类的通用智能的AI系统。与专注于特定任务的弱人工智能(如语音助手或图像识别)不同,AGI能够像人类一样灵活地学习、推理、适应和解决各种复杂问题,并具备跨领域的认知能力。AGI是人工智能发展的终极目标,如果哪天AGI真正实现了,人就不用干活了,后果大家自己想。按照目前的AI发展进度,估计十年内是有希望看到这一天的。
-
AIGC(AI Generated Content,人工智能生成内容):AIGC跟AGI可完全不是一个概念,虽然看起来长得很像。AIGC是指利用人工智能技术自动生成文本、图像、音频、视频等内容。比如我们经常说的文生图、文生视频、生成式模型,都是指AIGC,利用人工智能来生成各种内容。
-
大模型:大模型就是指很大的模型。那模型为啥会很大呢?这里大是指模型的参数特别巨大,动则上亿、几十亿几百亿的,能不大吗?当然,对模型越大对资源的消耗也越大,训练数据量也很巨大,投入更是大大大。总之,确实是大模型。有句古话叫“量变引起质变”,当模型参数大到一定程度,就会出现一种叫“涌现”的现象,使得模型对结果的准确率会有突飞猛进的效果。所以,现在基本都是在做大模型了,已经成为了现代AI发展的一个主要范式。
-
推理模型CoT(Chain of Thought,思维链):是一种通过让模型显式输出中间推理步骤来增强其逻辑推理能力的方法。它通过将复杂问题分解为一步一步的子问题,逐步推导出最终答案,从而提高模型在复杂任务中的表现,是目前主流大模型的一种,典型的比如DeepSeek R1、GPT-o1、GPT-o3等。
-
全量模型:全量模型是指在机器学习或深度学习训练过程中,使用全部可用数据进行一次性完整训练的模型。与“增量学习”或“小批量训练”不同,全量模型的训练不进行数据的分批或逐步更新,而是直接利用整个数据集进行模型参数的全面优化。
-
蒸馏模型:蒸馏模型是一种通过知识迁移技术,将复杂模型(教师模型)的知识“蒸馏”到简单模型(学生模型)中的方法。目的是让轻量级的学生模型模仿复杂教师模型的行为,从而在保持较高性能的同时,显著降低模型的计算成本和部署难度。
-
多模态(Multimodal):要了解多模态首先要搞清楚什么叫“模态”。模态其实简单理解为不同类型的数据,比如文本、图像、音频、视频等。多模态模型就是指能够同时处理和整合多种类型数据(如文本、图像、音频、视频)的技术或模型。
-
AI Agent(代理):是指能够感知环境、做出决策并执行动作的智能软件或硬件系统,有时也叫AI智能体。说白了就是具有决策和执行两个部分的软硬件系统。决策部分相当于人的大脑,一般是借助大模型来实现的,能够根据用户的输入,思考应该输出什么内容。执行部分相当于人的手,一般是普通程序或者是硬件。有了大脑和手,就可以代替人去完成相应的任务。这几天爆火的manus就是一个全自动的AI Agent。
-
AI 工作流(workflow):是指将AI大模型集成到业务流程中,通过一系列步骤或任务实现特定目标的过程。比如利用AI来自动生成新闻摘要,就需要结合一个工作流来完成。先用爬虫爬取新闻网站的新闻文字,然后传给大模型进行理解,最后由大模型生成新闻的摘要。这些需要一系列的动作才能完成,所以是工作流。
-
具身智能:其实简单来说就是指现在的机器人。区别于只有软件的AI系统,具身智能强调智能体在真实世界中的感知、行动和适应能力。传统的AI依赖静态数据集进行训练,缺乏与真实世界的交互能力,而具身智能更强调在动态环境中的实时学习和适应,更接近人类智能。
三、大模型基础开发环境搭建
在给大家介绍开发环境搭建的方法之前,我先给大家普及一个很多刚接触大模型开发的小伙伴可能会有的疑问,做大模型开发需要懂编程吗?对编程语言的种类有没有什么要求?
对于第一个问题,我想说的是,如果你只是想使用AI进行知识问答,不涉及任何工具的开发,你是不需要懂编程的。但是,如果你想借助AI的能力做一些工具,或者想利用大模型来进行应用开发,就必须要具备基本的编程知识了。我相信看我这篇文章的人,应该都是想学习大模型开发的,所以编程的基本功还是必须的哈,否则根本没办法把大模型与实际的业务系统结合起来解决具体的业务问题。
对于第二个问题,其实大模型本身对编程语言没有什么特定的要求,因为几乎所有的大模型都提供Restful接口,只要能发API请求,都可以给大模型下达指令让它干活,所以,做大模型应用开发是没有语言限制的。但是,说实话,由于整个AI的生态基础还是基于Python的,很多大模型相关的框架和工具都是基于Python开发的,你用其他语言来干活的时候,会感觉不太舒服。与其这样,还不如抽点时间学学Python,至少基本语句能看懂,知道代码在干嘛,都会好很多。
接下来进入正题,对于大模型的开发环境,我们主要会涉及到这么几个东西,Python虚拟环境、Pytorch、Transformers库、ModelScope库的安装。主要的就是这些,其他的可以用到再装。
一、Python虚拟环境
Python虚拟环境的使用首推Anaconda。Anaconda是一个Python科学计算相关的分支版本,里面集成了conda包管理器,对于安装Python科学计算、AI模型相关的库非常方便,有些库pip无法安装,必须使用conda才能安装成功,所以,想做大模型开发的话,安装Anaconda是必须的基础工作。
Anaconda的安装是非常简单的,去官网下载 https://www.anaconda.com/download 安装包,然后直接双击安装即可。
安装完成后,我们可以通过conda命令来创建虚拟环境。我们进入到conda的路径下(也就是你安装anaconda的路径下的Script路径下,建议把这个路径加入到你的环境变量中,方便随时在命令行使用),进入命令行,输入以下命令:
conda create -n 虚拟环境名 python=python版本
举个实际例子,我想创建一个名为llm_dev的虚拟环境,可以执行以下命令:
conda create -n llm_dev python=3.10
这样,它就会给我们创建一个名字叫llm_dev的虚拟环境。
那么这个虚拟环境在什么位置呢?anaconda会把我们创建的所有虚拟环境都放在安装目录下一个叫envs的目录下。
当然,我们也可以使用命令来查一下我们都创建了哪些虚拟环境,命令如下:
conda env list
这样就可以列出我们当前所有创建好的虚拟环境了。比如我的,
二、Pytorch安装
什么是Pytorch呢?PyTorch 是一个 Python 开源机器学习库,是由meta开发的一款深度学习框架。它可以提供强大的 GPU 加速张量运算和动态计算图,方便用户进行快速实验和开发,在后面的模型训练中我们经常都会用到pytorch,是大模型应用开发过程中不可或缺的一款工具。
pytorch有两个版本,一个是CPU版,一个是GPU版。如果你的电脑上有GPU显卡,强烈建议安装GPU版的,训练效率会高很多。其中,安装CPU版本的pytorch非常简单,直接pip install安装即可。但是,安装GPU版本则相对比较麻烦,所以本章节我们主要给大家讲下如何安装GPU版本的pytorch。
2.1 检查是否有Nvida显卡
如果没有就可以翻篇了,这章跟你没有什么关系。
具体简单方法,可以打开设备管理器,查看显卡信息。
2.2 检查显卡驱动版本
打开命令行,并运行以下命令:
nvidia-smi
会显示下面这个界面:
注意看清楚这个版本号,因为安装pytorch的版本跟这个cuda版本有很大关系。
2.3 安装CUDA
接下来就开始安装CUDA。注意,电脑显卡驱动的版本必须大于或等于安装的CUDA的版本。
去官网下载对应的CUDA版本。https://developer.nvidia.com/cuda-toolkit-archive
由于我这个CUDA版本是12.0,所以可以下载CUDA版本<=12.0的都可以,但不要大于12.0。
由于正好有12.0版本的CUDA,所以我就下的12.0的这个。接下来设置安装系统的信息,然后下载对应的版本。文件有点大,耐心等待下载完毕。
下载完成之后,直接双击安装即可。对安装位置没啥讲究,如果不想安装默认位置,可以换D盘E盘都可以。
安装完毕后,检查是否安装成功。
2.4 安装GPU版本的Pytorch
建议最好是新建一个虚拟环境来安装和配置pytorch。这里就不详细讲如何配置Python虚拟环境了。
配置好虚拟环境后,去官网先查看安装命令。官网地址:https://pytorch.org/
拉到下面,查看安装命令。注意,选择的时候,特别是Compute Platform那项,必须是小于等于自己的CUDA版本的,由于我的CUDA版本是12.0,所以这里只能选11.8那个。大家可以根据自己的实际版本来选对应的。
选好之后,拷贝这个安装命令,开始进行安装。安装的包有点大,时间较长。最好是加-i参数,指定国内镜像源来进行下载,不然容易下载失败。
2.5 测试安装是否成功
最后,安装完成后,测试是否安装成功。
在安装的pytorch环境中,运行以下python代码,打印pytorch信息。
import torch
print(torch.cuda.is_available())
print(torch.__version__)
print(torch.version.cuda)
# 输出
True # 表示GPU可用
2.6.0+cu118
11.8
只要第一个命令打印结果是True即表示GPU是可用的。
至此,GPU版本的pytorch就安装完毕了。
三、Transformers库安装
Transformers库是 Hugging Face 开发的开源工具包,主要用于自然语言处理(NLP)和机器学习领域,其核心作用是简化预训练模型的使用与开发。后面在进行大模型的开发和训练实战中,会经常用到这个库,现在我们看看怎么安装和使用这个库。
首先我们要用pip命令在python环境中进行安装:
pip install -i https://pypi.doubanio.com/simple transformers
安装好之后,这个transformers库还不能直接使用。因为默认transformers库是从huggingface网站去下载用到的模型文件的,而huggingface在国内暂时无法正常访问,所以我们必须指定环境变量使其从国内的镜像网站https://hf-mirror.com来访问。
环境变量配置为,在系统变量里面添加两个键值对,如下:
定义好之后,重启命令行或者pycharm,使环境变量生效。至此,transformers库就配置完了。
四、ModelScope库的安装
除了使用huggingface的镜像网站下载模型文件外,还可以使用modelscope库(俗称魔搭社区)来下载模型文件并使用,魔搭社区可以看成是huggingface的国内平替网站。
首先,必须安装modelscope库。
pip install -i https://pypi.doubanio.com/simple modelscope
完了之后,如果想要通过modelscope下载模型文件,可以去modelscope官网。
以下载chatglm3-6b这个模型的文件为例,首先去首页搜索该模型:
点击进去之后,点击模型文件,并点击下载模型按钮:
这时会出现下载模型文件的方法,
按照步骤操作即可将模型文件下载到本地使用。
好了,以上就是本文要写的全部内容,基本已经涵盖了开发进行大模型应用开发学习之前所需要的一些基础知识和基本环境配置。这些前置知识准备好之后,大家就可以开始愉快地进行大模型应用开发了,祝大家学习愉快!