Skip to content

v0.1.2

Latest

Choose a tag to compare

@github-actions github-actions released this 21 Oct 15:27

OpenCC v0.1.2

改善 tw2/twp 的台灣詞彙覆蓋與一致性,同時以保留原意為優先,避免將物理量、行政登錄、人物訪問、文學文本等內容誤改為資訊術語。

變更內容:

  • 補齊雲端電腦、雲端硬碟、按讚、回饋、遠端、相容、列印、執行緒、簡訊、點選、發文、螢幕錄影與儲值等詞彙或明確片語。
  • 高風險詞採保守預設:質量、文本、窗口、站點、小白、登錄、訪問、踩坑、粘貼、黏貼、私信、私聊、打印、項目、保存、通過、套餐共 17 組詞頭,未識別的語境維持原詞。
  • 加入 160 筆人工審核的明確白名單,搭配保存、通過、套餐與軟體專案片語;不以泛用介詞、指示詞或整篇關鍵字推測語意。
  • 帳號登錄轉帳號登入,但實價登錄與資料登錄保留;視頻質量轉影片品質,但物體質量與高質量恆星保留。
  • 區分資訊資源存取、網站造訪與人物訪問;保存到博物館、通過系統驗證、會員套餐等保留。
  • 保護公眾號、搜一搜、視頻號、小程序,以及文本框架、電腦小白鼠、訪問網站負責人等長詞邊界反例。
  • 僅將賬、羣作為單字元字形修正,分別輸出帳、群;不全域擴寫雲,也不新增文件、本地、設備等語境依賴詞的全域替換。
  • 沿用 Trie 最長匹配並驗證冪等性;修正長詞條繞過單詞規則的輸出,其他目的 locale 與反向字典維持原有內容。

驗證與限制:

  • 原始驗收句、28 組 tw2 迴歸詞、登入來源變體一致性、專名保護與再次轉換不變均通過。
  • 共用 180 個人工語意正反例:121 個保留例與 59 個轉換例,在 tw2/twp 均全部通過;這是針對性測試,不是整體準確率估計。
  • 同步 Rust、JavaScript、Python、Swift、C#,各套件使用相同規則與驗收語料。
  • 有意保留未知搭配,因此可能增加漏轉;有限片語無法保證理解任意句法、未知專名或所有中文詞界。
  • Rust 核心 1 MiB release benchmark:原始版中位數 8.258 ms,新版 8.946 ms,約增加 8.3%(Apple M5 Max/rustc 1.99.1;不含建構、啟動與 I/O)。

C# 專案變更:

  • 將 NuGet OpenCC 版本提升為 0.1.2,保留 net8.0 目標框架。
  • 在 LocaleData 接入產生後的 TaiwanQuality 常數,並加入 xUnit 的 tw2/twp 共用驗收測試。
  • 更新高風險裸詞的保守預期,反向轉換測試維持原有內容。
  • 本機驗證:216 項測試通過;本機因僅有 .NET 10 runtime,使用 DOTNET_ROLL_FORWARD=Major 執行 net8.0 測試。正式 CI 另於 .NET 8 執行建置、格式與測試。

完整設計與逐詞風險分析:https://github.com/doggy8088/opencc-rust/blob/v0.1.3/quality/SEMANTIC_SAFETY.md