adding zenzai docs (#97)

This commit is contained in:
Miwa
2024-05-19 20:38:28 +09:00
committed by GitHub
parent c8ca5b54c0
commit 545ba4b633
2 changed files with 42 additions and 0 deletions

30
Docs/zenzai.md Normal file
View File

@ -0,0 +1,30 @@
# Zenzai
Zenzaiはニューラルかな漢字変換エンジンであり、高精度な変換を提供できるモードです。利用するには変換オプションの`zenzaiMode`を設定します。
```swift
let options = ConvertRequestOptions.withDefaultDictionary(
// ...
zenzaiMode: .on(weight: url, inferenceLimit: 1)
// ...
)
```
* `weight`には`gguf`形式の重みファイルを指定します。重みファイルは[Hugging Face](https://huggingface.co/Miwa-Keita/zenz-v1)からダウンロードできます。
* `inferenceLimit`には推論回数の上限を指定します。通常`1`で十分ですが、低速でも良い変換を得たい場合は`10`程度の値にすることもできます。
## 動作環境
* M1以上のスペックのあるmacOS環境が望ましいです
* モデルサイズに依存しますが、現状150MB程度のメモリを必要とします
* Linux環境でも動作しますが、CUDAが使えない可能性があります
## 仕組み
[Zennのブログ](https://zenn.dev/azookey/articles/ea15bacf81521e)をお読みいただくのが最もわかりやすい解説です。
## 制約
現状、Zenzaiを用いた場合学習機能は無効化されます。また、予測変換にはニューラル言語モデルは用いられていません。
## 用語
* Zenzai: ニューラルかな漢字変換システム
* zenz-v1: Zenzaiで用いることのできるかな漢字変換モデル「zenz」の第1世代

View File

@ -2,6 +2,8 @@
AzooKeyKanaKanjiConverterは[azooKey](https://github.com/ensan-hcl/azooKey)のために開発したかな漢字変換エンジンです。数行のコードでかな漢字変換をiOS / macOS / visionOSのアプリケーションに組み込むことができます。 AzooKeyKanaKanjiConverterは[azooKey](https://github.com/ensan-hcl/azooKey)のために開発したかな漢字変換エンジンです。数行のコードでかな漢字変換をiOS / macOS / visionOSのアプリケーションに組み込むことができます。
また、AzooKeyKanaKanjiConverterはニューラルかな漢字変換システム「Zenzai」を利用した高精度な変換もサポートしています。
## 動作環境 ## 動作環境
iOS 14以降, macOS 11以降, visionOS 1以降, Ubuntu 22.04以降で動作を確認しています。 iOS 14以降, macOS 11以降, visionOS 1以降, Ubuntu 22.04以降で動作を確認しています。
@ -77,6 +79,16 @@ let options = ConvertRequestOptions.withDefaultDictionary(
### `ComposingText` ### `ComposingText`
`ComposingText`は入力管理を行いつつ変換をリクエストするためのAPIです。ローマ字入力などを適切にハンドルするために利用できます。詳しくは[ドキュメント](./Docs/composing_text.md)を参照してください。 `ComposingText`は入力管理を行いつつ変換をリクエストするためのAPIです。ローマ字入力などを適切にハンドルするために利用できます。詳しくは[ドキュメント](./Docs/composing_text.md)を参照してください。
### Zenzaiを使う
ニューラルかな漢字変換システム「Zenzai」を利用するには、`ConvertRequestOptions`の`zenzaiMode`を指定します。詳しくは[ドキュメント](./Docs/composing_text.md)を参照してください。
```swift
let options = ConvertRequestOptions.withDefaultDictionary(
// ...
zenzaiMode: .on(weight: url, inferenceLimit: 10)
// ...
)
```
### 辞書データ ### 辞書データ
AzooKeyKanaKanjiConverterのデフォルト辞書として[azooKey_dictionary_storage](https://github.com/ensan-hcl/azooKey_dictionary_storage)がサブモジュールとして指定されています。過去のバージョンの辞書データは[Google Drive](https://drive.google.com/drive/folders/1Kh7fgMFIzkpg7YwP3GhWTxFkXI-yzT9E?usp=sharing)からもダウンロードすることができます。 AzooKeyKanaKanjiConverterのデフォルト辞書として[azooKey_dictionary_storage](https://github.com/ensan-hcl/azooKey_dictionary_storage)がサブモジュールとして指定されています。過去のバージョンの辞書データは[Google Drive](https://drive.google.com/drive/folders/1Kh7fgMFIzkpg7YwP3GhWTxFkXI-yzT9E?usp=sharing)からもダウンロードすることができます。