LLM 是什么?简单定义与 fonctionnement
LLM到底是什么?一句话解释:一个读取了海量文本的程序,它根据所学内容预测最可能的下一个词——不断重复这一过程,最终形成完整回答。本指南将用通俗语言说明大语言模型的训练过程、逐token生成文本的机制,以及云端LLM(ChatGPT,Gemini)与本地LLM之间的区别,后者可直接在您的设备上运行。
#什么是 LLM?简单定义
LLM 是 Large Language Model 的缩写,法语为“grand modèle de langage”,中文称“大语言模型”。“large”(大)指的是规模:这些模型包含数十亿个参数,也就是在训练过程中调整的一类数值设置。“Language model”(语言模型)表示这个程序对语言进行建模:它已经学会了某个词语序列在特定情境下出现的可能性有多大。
具体来说,LLM 只做一件事:根据一段文本,预测接下来会出现什么。您输入“法国的首都是”,它会计算出这句话后面最可能出现的词是“巴黎”。像 ChatGPT 这样的助手看似神奇,其实都源于这一机制重复了数千次:撰写邮件、总结文档或编写代码,无非就是不断重复“下一个最可能的词是什么?”这一过程。
#Tokens:大语言模型如何读取和生成文本
只需 1 小时,即可在您的电脑上拥有专属的免费 ChatGPT — LM Studio、Ollama、Open WebUI、您的文档,无需云端。
- 在线空间,终身可用
- PDF + 文件
- 终身更新
LLM 不像我们那样看到单词或字母。它处理的是 token:文本片段。一个 token 可以是一个完整的短词(“chat”)、一个词的一部分(“anti”、“constitution”)、一个标点符号或一个空格。平均而言,在法语中,一个 token 大约对应 3 或 4 个字符,即大约四分之三个单词。
在处理您的消息前,模型会将其分割为 token(这一过程称为 tokenization),然后将每个 token 转换为一组数字。模型的所有计算均基于这些数字进行。当它生成回复时,会逐个生成 token,再将其转换为可读文本。因此我们称其为‘逐 token 生成’。
- Token
- 模型处理的基本单元:一个短词、一个词的一部分,或一个符号。
- 上下文
- 模型一次能够‘记住’的标记数量(问题 + 历史记录 + 回答)。这被称为上下文窗口,通常为4000、32000,甚至数十万标记。
- 实用提示
- 一页文本约500至700个token。1000个token约等于750个单词。云端计费和本地速度均以token为单位进行衡量。
#训练:LLM 是如何学习的
一个大语言模型(LLM)并不是按规则编程的,而是通过训练实现的。我们向它展示海量文本(网页、书籍、代码、文章),并要求它在每个位置预测下一个词。起初,它的预测几乎总是错误的。每次出错后,一个算法会微调其数十亿参数,使下一次预测稍好一些。经过数十亿次重复,这一过程最终形成了对语法、事实和推理的统计性理解。
该阶段分为两个主要步骤。预训练阶段从原始文本中构建模型的通用知识。随后通过微调(fine-tuning)和对齐,使模型学会遵循指令并以有用且礼貌的方式作答,通常需要人类反馈的辅助。经过第二阶段处理的模型被称为「指令型」或「聊天型」模型,这类模型适用于对话场景。
- 参数(以十亿为单位)
- 在训练过程中调整的内部设置。一个“7B”模型有 70 亿个参数,一个“70B”模型有 700 亿个参数。参数越多,模型能力越强——所需的内存也越多。
- 权重(weights)
- 参数固定下来后,就称为权重。下载模型,就是下载它的权重:一个大小达数 GB 的文件。
- 训练数据
- 训练过程中读取的文本。模型不会逐字“存储”这些文本,而是从中保留统计规律。
#推理:逐token生成文本
训练完成后,使用模型的过程称为推理。您发送一段文本(提示词),模型则逐个生成token作为回应。具体流程如下:模型读取所有可用文本,计算下一个最可能的token,将其添加到序列中,再重新读取整个内容——提示词加上新生成的token——并重复此过程。当生成一个特定的结束token或达到预设长度限制时,过程停止。
因此,在聊天界面中,回复会实时逐词显示:您看到的正是生成过程。生成速度以每秒 token 数衡量。运行本地 LLM 时,速度取决于您的硬件——性能好的 GPU 每秒能生成数十个 token,而仅靠 CPU 则少得多。
模型并不总是严格选择最可能的标记。一种称为‘温度’的设置引入了可控的随机性:温度较低时,响应更可预测且事实性强;温度较高时,响应更具创造性和多样性。正是这种机制解释了为何同一个LLM在相同问题下可能给出两种不同的回答。
#LLM 不是什么
理解其工作原理可以避免常见误解。大语言模型(LLM)并非数据库:它不会检索已存储的答案,而是通过统计方法重新构建答案。它默认不连接互联网:它只知道截至训练时读过的内容,除非为它接入搜索工具或 RAG。它也不会像人类那样“理解”:它对语言的建模能力极强,足以发挥实际作用,但本质上仍是预测,而非意识。
#云端LLM与本地LLM:真正的差异
使用大语言模型有两种方式。在云端模型的情况下,模型运行在企业的服务器上(OpenAI 为 ChatGPT,Google 为 Gemini,Anthropic 为 Claude)。您通过网络发送文本,他们的 GPU 计算出响应并返回给您。您无需下载任何内容;但您的数据会经过第三方处理,且需要订阅服务和网络连接。
使用本地LLM时,您会下载开放权重模型(Llama、Qwen、Mistral、Gemma……)的权重,并在自己的电脑上运行。推理完全在本地进行:没有数据外传,无需订阅,即使离线也能使用。代价是需要足够的硬件,而且最好的开放模型通常仍比规模最大的专有云端模型逊色一些。
- 隐私
- 云端:您的提示会发送给服务提供商。本地:所有数据均保留在您的设备上。
- 成本
- 云端:按月订阅或按 token 付费。本地:拥有硬件后即可免费使用。
- 离线
- 云端模式:必须联网;本地模式:模型下载完成后可离线运行。
- 算力
- 云:无需硬件即可访问最大的模型。本地:受限于您的GPU/内存,但即使仅配备12GB显存的显卡也能表现出色。
- 控制
- 云端:服务提供商可以更换模型或规则。本地:模型属于您,未经您同意不会变更。
#为何需要本地LLM
如果云端服务如此方便,为什么还要在自己的设备上运行 LLM?主要有三个原因。首先是隐私:医疗文档、合同、专有代码、个人笔记——许多个人和企业不愿将这些内容发送到第三方服务器。其次是独立性:无需订阅,没有消息数量限制,也不会因服务调价或停运而中断。最后是技术掌控:本地模型可以调整、接入自己的工具,在飞机上或没有网络的地方也能运行。
正是量化技术使得这一切成为可能:该技术通过压缩模型权重,使其能够在内存中存储且不显著损失质量。得益于这一技术,原本需要服务器支持的模型现在可以在游戏电脑上运行。推荐初学者使用Q4_K_M格式;Q5_K_M、Q8_0和FP16格式提供更高的精度,但需要更多内存。
#在家 10 分钟内尝试使用 LLM
理解大语言模型的最好方法,就是亲自运行一个。最简单的技术栈只有两个部分:Ollama,一个负责下载和运行模型的守护进程(监听地址为 http://localhost:11434),以及 Open WebUI 或 LM Studio 这样的界面,让您在聊天窗口中与模型对话。下面是最简命令行流程,使用一个即使没有独立 GPU 也能运行的小模型。
- 01安装 Ollama从 ollama.com 下载适用于 Windows、macOS 或 Linux 的安装程序并运行。安装完成后,Ollama 会在后台运行,并在 11434 端口暴露本地 API。
- 02下载并启动模型一条命令就能获取模型权重,然后直接在终端中打开聊天。首次启动会下载几个 GB 的数据;之后的启动则会立即完成。
- 03讨论提出一个问题,逐 token 观察回答生成过程:可实时看到推理过程。输入 /bye 以结束对话。
- 04确认一切都在本地运行断开 Wi-Fi 并重新提出一个问题。模型仍然会继续回答:这证明计算 100% 在您的机器上完成。
#深入了解
您现在已经了解什么是 LLM,以及它如何工作。以下这些指南将进一步讲解这里涉及的各个概念:
- Ollama 入门
- « Ollama 是什么以及如何工作 » 详细介绍了安装流程、基本命令(run、pull、list)以及开始所需的硬件配置。
- 理解 token 的概念
- 《理解上下文窗口》解释了模型如何“看到”您的消息,以及为什么它会忘记篇幅很长的对话。
- 选择量化方案
- 《选择量化方式(Q4、Q5、Q8、FP16)》可帮助您根据自己的显卡,在质量与内存占用之间找到合适的平衡。
有反馈、发现了错误,或想补充说明?请告诉我们,让这份指南对每个人都更有帮助。