从 0 开始学 AI:第 6 课,Token、上下文窗口、Prompt、Embedding 是什么?
- 1. 这一课要解决什么问题?
- 2. 什么是 Token?
- 3. Token 为什么重要?
- 3.1 影响模型能处理多少内容
- 3.2 影响生成速度
- 3.3 影响使用成本
- 4. 什么是上下文窗口?
- 5. 上下文窗口不是永久记忆
- 6. 什么是 Prompt?
- 7. 一个好 Prompt 通常包含什么?
- 8. 什么是 Embedding?
- 9. Embedding 有什么用?
- 10. Token、Prompt、Embedding 的区别
- 11. Embedding 和 RAG 的关系
- 12. 常见误区
- 误区 1:Token 等于一个字或一个词
- 误区 2:上下文窗口就是永久记忆
- 误区 3:Prompt 就是随便提问
- 误区 4:Embedding 会直接生成答案
- 13. 本课核心总结
- 14. 本课自测问题
1. 这一课要解决什么问题?
前面我们已经学习了:
- AI 是什么
- 机器学习、深度学习、大模型的关系
- 数据、算法、算力
- CPU、GPU、显存
- 模型、参数、训练、推理
这一课开始进入大模型应用中的常见概念:
- Token
- 上下文窗口
- Prompt
- Embedding
可以先记住一句话:
Token 是模型处理文本的基本单位,Prompt 是给模型的任务说明,Embedding 是把内容变成语义向量的方法。
2. 什么是 Token?
Token 是大模型处理文本时的基本单位。
人看到的是一句完整的话:
我想学习 AI但模型通常会先把文字拆成更小的单位,再转换成数字处理。
这些被拆出来的单位,就叫 Token。
Token 可能是:
- 一个汉字
- 一个词
- 一个英文单词的一部分
- 一个标点符号
所以,Token 不一定等于一个字,也不一定等于一个词。
简单理解:
Token 是模型读取和生成文本时使用的“文字颗粒”。
3. Token 为什么重要?
Token 重要,主要有三个原因。
3.1 影响模型能处理多少内容
模型一次能处理的 Token 数量是有限的。
如果输入内容太长,超过模型能处理的范围,可能会出现:
- 前面内容被截断
- 模型忽略部分信息
- 回答漏掉关键条件
- 输出质量下降
3.2 影响生成速度
输入越长、输出越长,模型需要处理的 Token 越多。
一般来说:
Token 越多 → 计算越多 → 速度可能越慢3.3 影响使用成本
很多大模型服务会按照 Token 数量计算费用。
通常包括:
输入 Token 输出 Token所以,在实际使用 AI 时,Token 也和成本有关。
4. 什么是上下文窗口?
上下文窗口可以理解为:
模型当前一次能看到和处理的信息范围。
你和模型对话时,模型并不是只看最后一句话,而是会参考当前对话中能看到的上下文。
例如:
第 1 轮:你说明背景 第 2 轮:你提出要求 第 3 轮:你补充限制 第 4 轮:模型生成回答模型回答时,会尽量参考前面的内容。
这些它能参考的信息,就属于上下文窗口。
5. 上下文窗口不是永久记忆
上下文窗口更像一个临时工作区,不是永久记忆。
需要区分:
| 概念 | 含义 |
|---|---|
| 上下文窗口 | 模型当前能看到的信息范围 |
| 训练 | 改变模型参数的学习过程 |
| 记忆 | 系统可能保存的长期偏好或历史信息 |
| 数据库 | 外部存储的信息来源 |
普通对话中,模型可以根据当前上下文回答问题,但这通常不代表模型参数被改变。
简单记法:
上下文窗口 = 当前能看到什么 训练 = 真正改变模型参数6. 什么是 Prompt?
Prompt 可以理解为:
给模型的任务说明。
你输入给模型的问题、背景、要求、格式、限制条件,都可以算 Prompt 的一部分。
例如,一个简单 Prompt 是:
帮我写一篇 AI 入门文章。但这个 Prompt 比较模糊。
模型不知道文章写给谁、写多长、什么风格、要不要例子。
更好的 Prompt 可以这样写:
请面向 0 基础读者,写一篇 AI 入门文章。 要求: 1. 用通俗语言解释。 2. 不使用复杂公式。 3. 包含 AI、机器学习、深度学习、大模型的区别。 4. 用 Markdown 输出。 5. 最后给出 5 个自测问题。这个 Prompt 更清楚,模型就更容易输出符合预期的内容。
7. 一个好 Prompt 通常包含什么?
可以先记住这个简单公式:
好 Prompt = 任务 + 背景 + 要求 + 输出格式 + 限制条件例如:
| 组成部分 | 例子 |
|---|---|
| 任务 | 帮我总结这篇文章 |
| 背景 | 我是 AI 初学者 |
| 要求 | 保留核心观点,解释关键术语 |
| 输出格式 | 用 Markdown,分标题和小节 |
| 限制条件 | 不要太长,不要使用复杂公式 |
Prompt 的核心作用是:
把你的意图清楚地传达给模型。
8. 什么是 Embedding?
Embedding 可以理解为:
把文本、图片等内容转换成数字向量,用来表示它们的语义。
这里的“向量”可以先简单理解为一串数字。
例如下面几句话表达不同,但意思接近:
怎么学习 AI? AI 入门应该怎么开始? 零基础如何学习人工智能?它们的 Embedding 向量通常会比较接近。
而下面这句话语义就远一些:
今天晚上吃什么?所以,Embedding 的作用是让计算机能够比较内容之间的语义相似度。
9. Embedding 有什么用?
Embedding 常见用途包括:
- 语义搜索
- 相似内容匹配
- 推荐系统
- 文档去重
- 聚类分析
- RAG 知识库检索
普通关键词搜索更像:
你搜什么字,我找包含这些字的内容。语义搜索更像:
即使用词不同,只要意思接近,我也能找到相关内容。例如你搜索:
大模型为什么会乱编?系统也可能找到:
什么是 AI 幻觉?因为它们语义相关。
10. Token、Prompt、Embedding 的区别
| 概念 | 简单理解 | 主要作用 |
|---|---|---|
| Token | 模型处理文本的基本单位 | 让模型读取和生成文本 |
| 上下文窗口 | 模型一次能看到的信息范围 | 决定模型能参考多少内容 |
| Prompt | 给模型的任务说明 | 指导模型如何回答 |
| Embedding | 内容的语义向量表示 | 用于语义搜索和相似匹配 |
一句话串起来:
Prompt 会被拆成 Token 交给模型处理; 模型在上下文窗口内参考信息; Embedding 用来把内容变成语义向量,方便检索相关资料。11. Embedding 和 RAG 的关系
RAG 的核心思路是:
先从外部资料中找相关内容,再让大模型基于这些内容回答。
那系统怎么从一堆资料中找到相关内容?
这就需要 Embedding。
基本流程是:
把文档切成小片段 ↓ 给每个片段生成 Embedding ↓ 用户提问时,也给问题生成 Embedding ↓ 比较问题和文档片段的语义相似度 ↓ 找出最相关的片段 ↓ 把片段和问题一起放进 Prompt ↓ 让大模型生成回答所以:
Embedding 是 RAG 做语义检索的重要基础。
12. 常见误区
误区 1:Token 等于一个字或一个词
不准确。
Token 可能是一个字、一个词、一个词的一部分,也可能是标点符号。
不同模型的切分方式可能不同。
误区 2:上下文窗口就是永久记忆
不对。
上下文窗口只是模型当前能看到的信息范围,不等于模型真正学会了新知识,也不等于模型参数被改变。
误区 3:Prompt 就是随便提问
不完全对。
随便提问也是 Prompt,但好的 Prompt 会明确说明任务、背景、要求、格式和限制。
误区 4:Embedding 会直接生成答案
不对。
Embedding 主要用于表示语义和检索相似内容。
最终答案通常还是由大语言模型生成。
13. 本课核心总结
这一课需要记住四个概念:
Token:模型处理文本的基本单位。 上下文窗口:模型当前能看到和处理的信息范围。 Prompt:给模型的任务说明。 Embedding:把内容转换成语义向量的方法。它们之间的关系是:
Prompt 会被拆成 Token; 模型在上下文窗口内理解任务; Embedding 帮助系统从资料中找到语义相关内容; 找到的资料可以再放进 Prompt,让模型生成答案。最简记忆版:
Token 负责文本颗粒化。 上下文窗口负责当前可见范围。 Prompt 负责表达任务。 Embedding 负责语义表示和检索。14. 本课自测问题
- Token 是什么?它为什么重要?
- 上下文窗口是什么意思?它是不是永久记忆?
- Prompt 是什么?一个好 Prompt 通常包含哪些信息?
- Embedding 是什么?它主要用来做什么?
- 为什么说 Embedding 是理解 RAG 的基础?
能用自己的话回答这些问题,就说明已经理解了本课的核心内容。