前回の日本語アップデートは、不満で終わっていました。アプリは「私」を「わたし」ではなく「わたくし」と読み、ピッチアクセントもなかったので、箸と橋が同じに聞こえる、と。その二段目がようやく入りました。日本語の発音はOpenJTalkを通るようになり、アクセント辞書を使った本物の形態素解析をします。読みも正しくなりました。「私」は「わたし」、「三日」は「みっか」、「100円」は「ひゃくえん」、そしてピッチもちゃんと出ます。
OpenJTalkはPythonのpyopenjtalkの裏にあるエンジンで、そもそも使えた理由は、GPLではなくBSDライセンスだからです。純Appleのフェーズ1が守ろうとしていたのと同じ基準を、ちゃんとクリアします。そのカタカナ読みを、フォールバックがすでに使っているのと同じKokoro語彙の音素テーブルにそのまま流し込むので、新しい音素体系を作ったわけではなく、読みの出どころをより良いものに替えただけです。約23MBの辞書は、Kokoroモデル自体と同じく、日本語を初めて使うときにダウンロードします。もしそのダウンロードが失敗しても、日本語は壊れる代わりに、Appleだけの経路へ静かにフォールバックします。
ひとつ、わざと保留にした部分があります。OpenJTalkはダウンステップ、つまり句の途中で起きる小さなピッチの下がりも予測しますが、それはまだ音素ストリームに入れていません。Kokoroには独自の韻律モデルがあるので、明示的なダウンステップのマークを入れたほうが本当に良く聞こえるのか、決める前にA/Bで確かめたいからです。いまのところ読みは正しく、アクセントも音韻的に合っていて、それがそもそもの目的でした。一日前の、平板で少しずれた日本語はもうありません。