Skip to main content

Kaomojis 方法论 — 收集、分类与质量控制

本页以工程术语说明 Kaomojis 如何为61,000+条颜文字进行收集、分类和质量管理。我们并非简单的复制粘贴站点,而是以集成流水线运行数据设计、去重、多语言标注、排名和翻译 QA。

1. 收集

主要来源是日本 BBS 和社交媒体上流通多年的公共颜文字。我们还通过编辑原创和 /request 用户提交(经过审核)进行补充。

摄取时自动筛查拒绝基于角色、商标或其他版权内容。

所有字符串经 Unicode NFC 归一化处理,统一半角/全角和组合形式变体。

2. 去重

每个颜文字文本使用 SHA-256 哈希并在数据库层通过 UNIQUE 约束强制执行。

近似重复(Levenshtein 距离、部分匹配)标记为人工审核。

实际运营中,约 8% 的候选添加被自动拒绝为重复。

3. 分类算法

分类采用三层结构:类别(情感)、活动、场景。一个颜文字可以属于多个标签。

候选标签由 AI 草稿 → 编辑审核的流水线生成,作为 JSON 列存储在 SQLite 中。

Phase 122(细粒度情感分类)以来,我们将情感从 7 种扩展到 48 种。

4. 排名算法

每个颜文字都有动态分数:score = α × 复制数 + β × 收藏数 + γ × 停留秒数 − δ × 自上次复制的天数。

α/β/γ/δ 为可调超参数,目前复制数权重最高。

分数每 15 分钟重新计算,驱动排名页面、热门栏目和相关推荐。

5. 多语言元数据流水线

每个颜文字都附带 12 种语言的使用示例、关键词和文化注释。

草稿来自 AI 翻译;主要语言(日语、英语、中文、韩语、西班牙语、葡萄牙语)经过人工审核。

关键词不是直译,而是按语言的自然搜索表达。

6. 翻译质量审核

scripts/audit-translations.mjs --strict 每周运行,按语言测量未翻译率。目标 < 5%。

添加新语言遵循 `.claude/skills/adding-language` 清单,覆盖 16 个文件。

翻译反馈欢迎发送至 [email protected]

7. 基础设施

技术栈:Astro 6 SSR + React 19 Islands + SQLite + PM2 集群 + Cloudflare CDN。

TTFB:约 25ms(暖态)。

站点地图:415,000+ URL,分片以保持在 Google 50MB 限制内。

8. 持续改进

自成立以来的每次变更以 "Phase" 记录 — 截至 2026-04 已达 Phase 554。

GA4 + GSC 分析每日通过 `/analytics-review` cron 运行 5 次。

A/B 测试由 `/ab-test` 技能自动评估并宣布胜者。

最后更新: 2026-04-15 (Phase 554)