让 AI 画一张带招牌的街景,店名十个字能错三个,这不是个例,而是图像生成模型的通病。生成图片里的文字为什么会错,要从模型学习画面的方式说起,弄清原理,也就知道该怎么补救。
先看模型怎么学画面
主流的文生图模型把图像切成许多小块,学习的是小块之间的分布规律。对模型来说,一个汉字笔画和一棵树的枝干没有本质区别,都是纹理。它见过大量招牌图片,记得「福」字大概长成什么样子,于是照着印象默写,而不是查字典一笔一画地写。
记住这个定位很关键:模型是画字的,不是写字的。理解了这一点,后面所有的补救思路都顺理成章。
文字为什么会写歪
根源在于生成方式和书写方式的错位。人写字有笔画顺序,模型却是整幅图一起「涌现」出来的,没有先横后竖的概念。笔画少的字容易蒙对,笔画一多,部件之间的相对位置就爱出岔子:横少了半截、点跑到框外面,都是随机性的产物。
训练数据也帮倒忙。网络图片里的文字常带水印、模糊、变形,模型学到的字本身就走了样,照着走样的样本默写,自然写不出工整的字。
解码环节同样有短板。模型每生成一个位置都要在候选里挑一个,挑错一个部件,后面的字就顺着错下去,出现整词跑偏。所以观察错误样本会发现,错误常常集中在某几个复杂字上,前面的字反而都对,这是逐位累积的典型表现。
中文比英文更难在哪
英文字母只有二十几个,常见组合有限;汉字常用的大几千个,每个字都是独立的小图形,部件密度还高。同样的模型能力,摊到中文上出错概率天然更高。不少模型的训练语料以英文互联网为主,中文字符的样本量本来就不占大头,偏科也就情有可原。
可带走的判断:文字越短越常见,成功率越高。让它写「OPEN」很稳,写一整段中文简介就悬,这不是玄学,是样本量决定的。
中文难在哪儿,四个维度对着英文看。
| 对比项 | 英文 | 中文 |
|---|---|---|
| 字符规模 | 二十几个字母 | 常用大几千个,每字独立成图 |
| 结构密度 | 常见组合有限 | 部件密度高,部件相对位置易出岔 |
| 语料占比 | 英文互联网语料占大头 | 中文样本不占大头,偏科由此而来 |
| 短词与长段 | 写「OPEN」很稳 | 写整段中文简介就悬 |
落地时还有个折中办法:图里留白,文字后补。生成时让画面把招牌位置空出来,后期用排版工具填字,既保住设计感,又不用赌模型的笔画。电商海报、活动横幅这类对文字准确性要求高的场景,几乎都按这个顺序走。
现在的工具怎么补救
新一代模型专门针对文字做了强化训练,把成对的图文样本喂得又多又干净,短句渲染的准确率已经明显改善,即梦AI、文心一言的文生图能力都在这个方向上发力。即便如此,长段落依然不稳,正式设计流程里要留出人工校对的环节。
工程上还有一条绕开短板的路:文字部分交给排版软件后期叠上去,图只负责氛围。专业设计几乎都这么干,稳定、可改、字体还能随心换。让豆包帮忙把文案定稿,再把文字压进图里,比反复抽卡划算得多。想继续深挖一致性问题,可以看数字形象的风格是怎么固定的,同一套约束思路也适用于文字;3D 生成的多视角是怎么保持一致的讲了另一个方向的稳定难题;画面光影的失真问题,见生成图像的光影为什么会「假」。
图内文字自查清单
- 字数控制在个位数,越短越稳。
- 常用词优先,生僻字做好重画准备。
- 正式用途一律后期排版,别赌模型。
收束一句:图归图,字归字,各走各的路。
关于图内文字再多问三句
- 为什么同一个提示词有时对有时错?:生成过程带有随机性,笔画结构靠概率蒙对,每次采样结果都不同,多抽几次属正常操作。
- 指定字体有用吗?:多数情况下作用有限,它学到的是「长这样的字」,不是排版系统,字体控制还得靠后期。
- 以后能根治这个问题吗?:短文本已接近实用,长段落的稳定渲染还取决于训练数据和解码方式的进一步改进。


