多语言场景的坑:分词、时区与本地化格式

人工智能 · 2026-10-07

多语言的真实故障常来自分词、Unicode 归一化、时区、数字日期格式与姓名地址结构。本文列出五个高频坑、测试做法与一份可执行检查清单。


多语言不是"翻译一下"

在多语言场景里,真正出问题的往往不是翻译质量,而是**工程细节**:

分词、编码、时区、数字与日期格式、姓名顺序。这些一旦处理错,轻则排序乱,重则业务数据算错。

五个高频坑

**一、分词与检索**

中文要分词、日文要处理假名与汉字混排、泰文没有词间空格;空格分词的那套直接搬到中文上,

召回会明显变差。做法:按语言选择分词器,**并对每种语言单独测召回**。

**二、Unicode 归一化**

"é" 可能是**单码点**也可能是 "e + 组合音符";不归一化会出现"看着一样但比不出相等"的 bug。

做法:比较与存储前统一 NFC/NFKC;长度统计与截断要按**字形**而不是码点(否则会截断半个字)。

**三、时区**

  • 存储用 UTC,展示按用户时区;
  • 别把"本地时间字符串"直接当时间戳;
  • 跨时区的"今天"要明确以哪个时区为准(日报、配额重置最容易出错)。
  • **四、数字与日期格式**

  • 千分位与小数点在不同地区相反(1.234,56 与 1,234.56);
  • 日期写法歧义(03/04/2026 是哪天?)→ 存储用 ISO 8601,展示才本地化;
  • 货币不要只存符号,要存**币种代码**。
  • **五、姓名与地址**

  • 姓名顺序因语言而异,别假设"名 空格 姓";
  • 地址结构各国不同,强行拆成"省/市/区"会丢信息 —— 保留**原文 + 可选结构化字段**。
  • 测试怎么做

    1. 每个界面至少测**两种文字方向**(从左到右 / 从右到左)与长文本换行;

    2. 用"最长语言"测布局(德语/芬兰语常比英文长 30%+);

    3. 准备**边界样本**:组合音符、emoji(含肤色修饰)、零宽字符、泰文与阿拉伯文;

    4. 对每种语言的**检索召回**单独出一份指标,不要只看英文。

    一个可执行的检查清单

  • 存储:统一 NFC + UTC + ISO 日期 + 币种代码;
  • 展示:按用户语言/时区本地化,避免硬编码格式;
  • 检索:按语言分词,指标分语言统计;
  • 布局:为长文本与双向文字留余量;
  • 边界样本进自动化测试,防止回归。
  • 想要你的品牌在AI回答里被推荐?

    免费诊断 →