ニューラルかな漢字変換エンジン「Zenzai」を有効化することで、高精度な変換を提供できます。利用するには変換オプションのzenzaiMode
を設定します。
let options = ConvertRequestOptions.withDefaultDictionary(
// ...
zenzaiMode: .on(
weight: url,
inferenceLimit: 1,
versionDependentMode: .v2(.init(profile: "三輪/azooKeyの開発者", leftSideContext: "私の名前は"))
)
// ...
)
weight
にはgguf
形式の重みファイルを指定します。重みファイルはHugging Faceからダウンロードできます。inferenceLimit
には推論回数の上限を指定します。通常1
で十分ですが、低速でも高精度な変換を得たい場合は10
程度の値にすることもできます。
- M1以上のスペックのあるmacOS環境が望ましいです。GPUを利用します。
- モデルサイズに依存しますが、現状150MB程度のメモリを必要とします
- Linux環境・Windows環境でもCUDAを用いて動作します。
Zennのブログをお読みいただくのが最もわかりやすい解説です。
現状、Zenzaiを用いた場合ユーザ辞書が使えません。また、予測変換にはニューラル言語モデルは用いられていません。
- Zenzai: ニューラルかな漢字変換システム
- zenz-v1: Zenzaiで用いることのできるかな漢字変換モデル「zenz」の第1世代。
\uEE00<input_katakana>\uEE01<output></s>
というフォーマットでかな漢字変換タスクを行う機能に特化。 - zenz-v2: Zenzaiで用いることのできるかな漢字変換モデル「zenz」の第2世代。第1世代の機能に加えて
\uEE00<input_katakana>\uEE02<context>\uEE01<output></s>
というフォーマットで、左文脈を読み込む機能を追加。