V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
nightl2018
V2EX  ›  程序员

中英文 prompt 对代码生成质量有影响吗?

  •  
  •   nightl2018 · 1 天前 · 2386 次点击

    在尝试 spec engineering ,写文档的时候觉得英文有时词不达意,中文不能确定经过 spec kit 的优化。

    我就想知道这个问题有没有答案:两种不同的自然语言 prompt 对代码生成质量有无影响?

    spec kit 自带 prompt 是英语,这就导致了中英混合,那么中英文混合 prompt 对代码质量有无影响?

    20 条回复    2025-12-12 14:14:24 +08:00
    lihui4305
        1
    lihui4305  
       1 天前 via Android
    一般来说没有太大影响,有一个 speckit-zh 中文版
    dji38838c
        2
    dji38838c  
       1 天前
    当然有,英文的更好。但是英文水平如果不够,还是用中文写好了

    这篇论文有具体研究:
    它们的研究发现,英文和中文,代码能力按不同编程语言,下降了百分之十几到二十左右
    Exploring Multi-Lingual Bias of Large Code Models in Code Generation
    codehz
        3
    codehz  
       1 天前 via Android
    有影响的,即使是国内的模型也建议全英文 prompt (特指编程任务),并且源代码里也最好不要含有任何非英文注释
    artiga033
        4
    artiga033  
       1 天前 via Android
    这种多阶段的、长 prompt 的 agent 一般来说语言都不重要了,哪怕用阿拉伯语区别都不大。如果是那种 prompt 很少比如就一句话的可能会有点影响,比如用中文容易出 CSDN 味的代码。
    还有一些 function call 方面的影响,比如 agent 进行搜索时会使用对应的提问语言,当然也可以在 prompt 里要求不要这种行为。
    再者就是 token 消耗了,中文信息密度通常更高,不过也得看 tokenizer 。
    xwhxbg
        5
    xwhxbg  
       1 天前   ❤️ 4
    不重要,用母语精准的描述需求远比用蹩脚的英文言不达意效率高
    paopjian
        6
    paopjian  
       1 天前
    代码里如果有错误注释或者注释掉部分代码以后, 可能影响 AI 的代码理解, 这就很致命了
    burnsby
        7
    burnsby  
       1 天前
    我认为有影响, 但是不会很大.
    从编程之外的角度来看, 你无论问哪个大模型, 都会基于你的语言所处的环境来回答你的问题.
    而编程则更加看重使用的编程语言, 比如你让大模型用 python 和 go 去实现同一个需求, python 的成功率要比 go 高得多.
    nightl2018
        8
    nightl2018  
    OP
       1 天前
    @dji38838c 嚯嚯,我看了文献,连 deepseek coder 也有差距。不过文章提到的中英文翻译对应的问题我有点异议,就是中英文 prompt 的对照准确性,可能引入了偏差。不过不影响结论,确实英语更好。但不知道中文的注释是否有影响

    @codehz 中文注释的影响有文献吗?我赞同有影响,但不知道有多少影响

    @xwhxbg 我不知道语言造成的劣化更大,还是词不达意劣化更大
    HankAviator
        9
    HankAviator  
       1 天前   ❤️ 1
    首先是表达能力不足,跟语言关联不大
    其次是语言本身的歧义,例如“注销”指的是删除账户还是登出账户
    yingqi1
        10
    yingqi1  
       1 天前
    我是 中文描述,然后小工具一键 润色(给我 review 润色的是否正确) + 润色文本翻译成英文。

    然后都用英文 prompt
    mz09
        11
    mz09  
       1 天前
    你试试用中文 “生成一袋芯片” 就知道了
    nightl2018
        12
    nightl2018  
    OP
       1 天前
    @HankAviator 可以看一下楼上那篇文章,有 10%以上的劣化。中英文校对我有异议,但是定量的结论没问题:确实有劣化
    YUCOAT
        13
    YUCOAT  
       1 天前
    @mz09 这都 2025 年了,无论是国内外的 ai 都能理解一袋芯片是芯片,而非薯片
    jqknono
        14
    jqknono  
       1 天前   ❤️ 1
    准确表达是第一位的, 准确英文表达是否绝对强于准确中文表达存疑, 蹩脚英文表达是否强于蹩脚中文表达也存疑.
    逻辑蹩脚, 表达也蹩脚, 然后怪罪于中文, 肯定不合理.
    用哪个语言更能准确表达自己就用哪个语言, 歧义问题可以中英混杂表达.
    1988chg
        15
    1988chg  
       1 天前
    跟语言关系不太大,主要还是文字的表达逻辑和清晰程度。

    如果都是同样的清晰明确的指令,那还可以翻译成为英文再润色。

    我的理解就是清晰中文 转 清晰英文 再润色。 这一步你手工做了,或者交给 AI 去做,应该是一样的效果。

    所以纠结英文还是中文 prompt ,不如回到原本的基本的要素上。 逻辑、条理、范围、意图等等。
    lumyx
        16
    lumyx  
       1 天前
    没影响,最后存的时候都是向量逻辑。
    ychost
        17
    ychost  
       1 天前   ❤️ 1
    影响最大的就是指令遵循,用英文的 do **NOT** 来强调,比中文的禁止、不要、警告等都有效
    zisen
        18
    zisen  
       1 天前
    @paopjian 我项目里没啥用的 patch 也被 ai 阅读了,然后就被带跑偏了
    Ketteiron
        19
    Ketteiron  
       1 天前
    agent 模式区别不大,对话会有影响,但非英语母语水平还是不建议用英文,除非你的中文水平也达不到中文母语平均水平
    JoshTheLegend
        20
    JoshTheLegend  
       22 小时 25 分钟前
    其实如果你不放心的话就写中文,叫它先帮你转成英文的 prompt ,然后你再把输出的英文 prompt 开个新对话输进去?但是我总感觉主流的 chatbot 应该都有内置这一步吧?
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2543 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 04:39 · PVG 12:39 · LAX 20:39 · JFK 23:39
    ♥ Do have faith in what you're doing.