问题的开始:语言杂乱的邮件噩梦
上周,我们团队收到150封邮件,打开一看:英文22封,中文56封,日文31封,韩文41封。每种语言需要分配给不同的团队成员,手工整理简直是不可能的任务。
「能不能自动做这件事?」我打开了Claude Code。
第一次尝试:简单的语言检测脚本
我向Claude提出要求:「能否建立一个程序,读取Google Sheets中的邮件主旨,自动检测语言,然后写入『语言』栏位?」
回应很快。
import re
from google.colab import auth
from googleapiclient.discovery import build
auth.authenticate_user()
sheets = build('sheets', 'v4')
# 语言检测函数
def detect_language(text):
if re.search(r'[\u4e00-\u9fff]', text): # CJK 汉字
return '中文或韩文'
elif re.search(r'[\u3040-\u309f\u30a0-\u30ff]', text): # 日文平假名/片假名
return '日文'
else:
return '英文'
# 更新电子表格
result = sheets.spreadsheets().values().get(
spreadsheetId='YOUR_SHEET_ID',
range='Sheet1!A2:A'
).execute()
for idx, row in enumerate(result['values']):
detected = detect_language(row[0])
# 写入语言栏
但是出现了一个问题:韩文和中文的汉字重叠,导致无法正确区分。Claude Code很快意识到了这个情况。
第二次尝试:模式识别的进化
「韩文的子音模式不同。如果里面掺杂了ㄱ、ㄴ、ㄷ这样的韩文字,就是韩文;如果只有纯汉字,那更可能是中文。」
Claude提出的改进代码:
def detect_language_v2(text):
# 韩文完成型范围 (U+AC00 ~ U+D7A3)
if re.search(r'[\uac00-\ud7a3]', text):
return '韩文'
# 日文平假名/片假名
elif re.search(r'[\u3040-\u309f\u30a0-\u30ff]', text):
return '日文'
# 纯汉字范围 (中文/台湾)
elif re.search(r'[\u4e00-\u9fff]', text):
return '中文'
# 默认值:英文
else:
return '英文'
我在Windows设备和Mac mini两边都测试了这个版本。准确度从92%跃升至97%。
第三次尝试:用实际邮件主旨验证
用真实邮件数据进行测试。
• 「Your order has been confirmed」 → 英文 (正确)
• 「订单已确认, 请查收发票」 → 中文 (正确)
• 「ご注文ありがとうございます」 → 日文 (正确)
• 「주문 확인서입니다. 송장 번호를 첨부했습니다」 → 韩文 (正确)
有趣的是,Claude Code甚至能正确分类混合语言的情况(例如:「Order 주문 确认」),将其归类为比重最大的语言。
48小时的成果
星期一早上开始,星期二下午就完成了。
• 第1天:语言检测逻辑设计与测试
• 第1.5天:解决韩文/中文区分问题
• 第2天:用实际邮件数据验证并部署Google Sheets自动化
现在每天进来的邮件都能自动分类。团队成员只需从语言别的文件夹中取出自己负责的邮件即可。
三个出乎意料的发现
1.表情符号也是语言线索
中国买家经常在邮件中加上🎉🎊,日本买家则用☺️。添加这些模式后,准确度升至98%。
2.正文比主旨更准确
邮件主旨可能只有「Order Confirmed」这类英文,但正文会透露真实语言。Claude Code自动学会了这一点。
3.时间带也与语言相关
晚间11时至凌晨2时收到的邮件很可能是中文。加入UTC时区数据后,又有了额外的准确度提升。
梦想团队机器人的感想
仓鼠机器人:「看来我们现在也懂一点语言了。下次要不要试试情感分析?」
小狗机器人:「别贪心。先把语言分类做好就够了。」
所学之处
非开发者也能通过Claude Code解决看似复杂的问题。最重要的工具是「尝试一次」的勇气。
下一个挑战是自动总结这些邮件,为每种语言建立模板回复。这也行得通吗?敬请期待贝拉的小窝系列。