L

WALES

关于协议帮助FAQRSS小黑屋
LWALES @ 2026
首页

兴趣节点

全部
日常讨论收益展示广告天地
2

我是noob~

回复讨论
0

登录后可参与回复讨论。

L Logo

L

登录后即可签到、查看积分与快捷发帖

L

相关主题

注册局一纸提案,2.2万+人的网上身份集体蒸发Google严打AI内容:如何避免网站被降权或封禁?一个虚拟产品案例3 个人做了一个 AI 表情包网站,月访问量超过 23 万Google Ads 套利公式:先算利润,再决定投不投

主题标签

全部标签

当前还没有回复,欢迎成为第一个参与讨论的人。

文明发言,理性讨论
暂无标签
首页
Forum
Forum 节点
日常讨论帖 28收益展示帖 17广告天地帖 0
日常讨论

到底什么是token?

AI时代到来了,各种新术语层出不穷。

token、prompt、AI,各种英文名贯穿中文的日常交流,每个单词好像都认识,但好像每个单词都没有对应中文的精准翻译,总是感觉好像缺了一口气。不是感觉词不达意,极易造成误解,就是中英混杂,说不利索。

3月,人民网发起了“给AI取个好名字”全民征集活动,响应者众。网友们脑洞大开,提交了大量有创意的名字,什么灵机、智脑、芯力、慧炬、模元、灵犀···美是挺美,但是都很空虚,像极了某菊花厂半部山海经造车的样子。

反倒是“​硅头​”这个名字,得到大多数网友的点赞,被称为“民选冠军”。这个名字虽带戏谑,但精准表达了AI的本质内涵,体现了中文的博大精深。相比华而不实的菊花派名字,人民群众毫无疑问坚定选择实事求是、务实敞亮的命名风格。当然,大家伙也都知道,官方肯定不会选用这个名字,所以,它只能是“民选冠军”。

​本质上,给AI征名就是话语权的争夺和重塑​。

关于这个话题,过于敏感,我不在这里展开。今天,我们就事论事,只说token。

token这个词,中文有很多翻译,常见的有“代币”、“筹码”、“通证”、“令牌”之类的说法,还有最新国家大数据局官方命名的“词元”。

这些中文翻译都让人困惑,“词元”和“令牌”让人联想到词牌,难道和古代诗歌词牌名有关联?“筹码”的的说法常见于赌场,“代币”常用于数字货币,“通证”是密码学的高频词,“词元”按道理跟大模型相关。这些场景风马牛不相及,但是都在说token。token到底是什么,说的是同一个token吗?

token这个英文单词,源于古英语tācen,与现代音近意相同。再往前追溯,则来自古日耳曼语taiknam,是“记号、象征”的意思。taiknam的词根taik在印欧语系里一直都是“展示、指出、宣告”的意思。

所以,token的原始意义是“​一种可见的、具体的标记或象征​”。后来在此基础上被引申为“​证据或证明​”,随后再被抽象成“​某种金钱或者权利的替代​”(筹码)​,在现代的计算机科学中,又被进一步抽象定义成“​一串代表特定许可权或身份的字符​”(通证)​。

由此可见,token这个词在英语里的演变脉络非常清晰,词义非常稳定,但它的中文翻译却支离破碎,这是因为每个中文的翻译都只对应了这个词的部分意义,由此造成了中文翻译一词多名、一词多义、互不相关的尴尬局面。

token的官方名称词元已经定名一年多了,但现实场景中使用的频率非常低,人们还是习惯在中文汉字中夹杂英文token来表达,虽然有点混搭,但是表达最为高效。这就像NBA,官方要求用“美国职业篮球联赛”表达,体育节目主持人也一度用“美职联”来解说,但仍不时嘴瓢冒出NBA这样的说法。至于人民群众,则从来没把美职联挂在嘴边过。

说到底,语言是有生命的,语言是属于人民的,并不是官方定性就能改变的。

说回token。了解token在词源里如何演变的背景信息,对我们接下来理解它在大模型里的作用非常重要。

先上定义,token是​大模型处理自然语言时使用的最小可计算语义单位​。

简单来说,语言是可被切分的。句子需要被切片才能被计算机读取。举个例子, “杭州最近天气太热了。”这句话里有9个字,3个标点。如果用分词器来切分的话,对应的是9个token,分别是 杭州 、最近、天气、太、热、了,再加上3个标点。

为什么杭州两个字是一个token,太一个字是一个token?因为语言计算的逻辑是,把最常见的字组合打包成一个token。杭和州两个字单独都没有太多的意义,但这两个字经常出现在一起,是一个地名,所以两个字作为一个token识别。太是一个形容词,热是个名词,了表示状态,所以他们各自是一个token。

同理,孙悟空三个字是一个token,因为表示一个人物名,但是猪悟能是3个token,因为猪悟能这个使用太低频,模型训练的时候没把它收录进高频词汇表,所以模型就老老实实按照猪+悟+能去拆分识别。

可见,越常见的组合越容易被打包成一个token,越生僻的字会越被切分得碎,占据更多的token。而这么做是为了节约计算量。

计算机看不懂汉字,在它的眼里,杭州 、最近、天气、太、热、了=1234 5678 9012 1111 2222 3333这样的数值,语言大模型就是将这些数值通过复杂的向量运算,计算出答案=“2234 5678 3234 5679,4234”,数值翻译成汉字就是“谁说不是呢”。

再举个英语的例子。cat是一个token,cats是两个token,因为s表示复数有个单独的含义。英文的句子一般按空格键进行拆分,但是复杂的词会继续用词根词缀进行拆分,相对来说,英语的token化比汉语的token化简单一些。

所以,​token是一个比字母大,比词语灵活,有语义的“子词”,他能灵活处理各种没见过的新词,​用最小切分让计算机准确识别。

因为模型训练方式不同,token切分没有一个标准的答案。一般而言,

  • 英文:1 token ≈ 4 个字母 ≈ 0.75 个单词
  • 中文:1 token ≈ 1.5 个汉字

所以,

  • 1000 字中文 ≈ 600~700 token
  • 1000 个英文单词 ≈ 1300 token

​因为token是衡量文本大小的尺度,所以它天然也就成了衡量计算费用的标杆。​所以也就很好理解为什么大模型要按token计费,输入和输出都要收费,输出比输入贵。

站点 Logo
站点 Logo
·前天
noob