词元
Token
词元(Token)是模型处理文本的最小语义单元,可以是一个汉字、一个英文单词,或一个字符片段。
详细解释
在大语言模型(LLM)的底层,它们并不直接“阅读”人类的文字,而是通过分词器(Tokenizer)将文本切分成一串数字序列,这个基本单元就是词元(Token)。常见的切分算法包括 BPE(Byte Pair Encoding)和 SentencePiece。
对于英文,一个 token 大约相当于 4 个字符或 0.75 个单词;而对于中文,不同的模型切分策略差异较大,通常 1 个中文字符会消耗 1 到 2 个 token。
计费规则
唯元智创平台按 token 用量计费,包含:
- 输入 token:你发送给模型的提示词(Prompt)、历史对话和文档内容。
- 输出 token:模型生成的回复内容。
示例代码
你可以使用 Python 来计算一段文本的 token 数量:
import tiktoken
# 获取 OpenAI 模型的编码器
enc = tiktoken.encoding_for_model("gpt-4o")
text = "你好,世界"
tokens = enc.encode(text)
print(f"Token 数量:{len(tokens)}") # 输出可能会因编码器不同而异
print(f"Token 序列:{tokens}")
常见问题
100 万 token 大约等于多少中文?
这取决于具体的模型分词器。一般而言,100万 token 大约等于 50 万到 70 万个汉字。
如何降低 token 消耗?
精简提示词,关闭非必要的 System Message,并在 RAG 场景下缩短检索召回的文档片段(Chunk)长度。