词元(Token)
词元(Token)是自然语言处理(NLP)和大语言模型(LLM)中的最小计算单位。你可以把它理解为 AI 阅读文本时使用的“生词本”或“乐高积木”。
Token核心定义
在技术层面,Token 是模型对文本进行分词(Tokenization)后得到的基本单元。它不仅仅是“一个单词”,而是一个子词片段。例如,单词 "unbelievable" 可能会被拆解成 ["un", "believe", "able"] 三个 Token。
为什么需要 Token?
解决词汇爆炸:直接处理所有单词会导致词表无限大。通过拆解成前缀、词根、后缀(如 "un-"、"-ing"),模型能用有限的 Token 组合出无限的新词。
跨语言通用:对于中文等非空格分隔语言,Token 化(通常按字或词切分)是模型理解文本的前提。
成本与效率:模型的计费(如 API 调用)、上下文窗口限制(如 128K Tokens)以及生成速度,本质上都是在计算 Token 的数量。
Token关键影响
计费基础:无论是 OpenAI 还是 Claude,API 调用通常按 每百万 Tokens 收费。输入(Prompt)和输出(Completion)的 Token 数共同构成成本。
上下文限制:模型的“记忆力”由其上下文窗口(如 4K、32K、128K Tokens)决定。Token 数越少,模型能“看”到的历史对话或文档内容就越有限。
生成效率:模型生成文本的速度通常以 Tokens/秒 来衡量。
Token常见误区
1 Token ≠ 1 单词:这是最常见的误解。在英文中,1 个 Token 约等于 0.75 个单词;在中文中,1 个汉字通常对应 1~2 个 Tokens。
不同模型不同切分:GPT-4、Claude、Gemini 各自的分词器(Tokenizer)规则不同,同样的文本在不同模型中产生的 Token 数量和切分方式可能完全不同。
如果你需要估算一段文本的具体 Token 数量(例如为了控制 API 成本),建议直接使用模型提供商官方提供的 Tokenizer 工具(如 OpenAI 的 Tokenizer 工具)进行精确计算。
|