在 Token 消耗上, 2 个空格比 4 个空格缩进更省吗? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
civet

在 Token 消耗上, 2 个空格比 4 个空格缩进更省吗?

  •  1
     
  •   civet 17 天前 3345 次点击

    不是 Tabs vs Spaces 的圣战,是用 AI 之后,代码缩进转化成 Token 的问题。

    AI 的解释是:

    2 个空格可能被识别为 1 个 Token 4 个空格也可能被识别为 1 个 Token 但如果层级很深,差距越大: 2 空格缩进:第 4 层 = 8 个空格(约 2~4 个 Token ) 4 空格缩进:第 4 层 = 16 个空格(约 4~8 个 Token ) 

    不知道是不是火星了,如果是讨论过的话题请告知。

    11 条回复    2026-04-10 14:59:35 +08:00
    tradzero
        1
    tradzero  
       17 天前   1
    https://platform.openai.com/tokenizer
    这里不是有在线分词机吗 自己试试咯
    MoRanjiang
        2
    MoRanjiang  
       17 天前
    我觉得这是 agent 工具需要解决的问题,用户就别管这些了
    r6cb
        3
    r6cb  
       17 天前
    减少行数更能省 token 。如果你截获了各种编程工具的 api 请求,会发现每行前面还会加→。更别说还能直接省掉的换行和缩进了。
    codehz
        4
    codehz  
       17 天前 via Android
    记得以前为了这个需求都是自定义 tokenizer ,将缩进增加减少变为单独 token ,而不是去数空格
    chenluo0429
        5
    chenluo0429  
       17 天前 via Android
    gpt 的分词,2 空格比 4 空格不省,比 tab 略省
    loading
        6
    loading  
       16 天前 via Android
    让 ai 给你写个预处理工具,发 ai 前先本地小模型转一次?
    a1717177
        7
    a1717177  
       16 天前
    取决于 vocab 。bpe 会根据 vocab 不断合并
    uqf0663
        8
    uqf0663  
       16 天前 via Android
    那么问题来了,在写不需要缩进的代码(例如 php )我可以让大模型完全不要用任何缩进,但是写 py 又是必须缩进的,能不能认为 php 比 py 更省 token
    dreamk
        9
    dreamk  
       16 天前
    PaulSamuelson
        10
    PaulSamuelson  
       16 天前
    建议阐述需求,以及让 AI 回复时用 文言文 更省
    c0nstantien
        11
    c0nstantien  
       16 天前
    有一种上古时代黑客讨论如何把一段程序放进 64K 的 ROM 里的感觉
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2961 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 49ms UTC 13:01 PVG 21:01 LAX 06:01 JFK 09:01
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86