From 4199555ec24d15976def525209df37392641fb88 Mon Sep 17 00:00:00 2001 From: Hiroshiba Kazuyuki Date: Sat, 4 May 2024 18:45:03 +0900 Subject: [PATCH] =?UTF-8?q?=E3=83=95=E3=82=A9=E3=83=BC=E3=83=9E=E3=83=83?= =?UTF-8?q?=E3=83=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CONTRIBUTING.md | 65 +++++++++++++++++++++++++++++-------------------- 1 file changed, 38 insertions(+), 27 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 7b7100efa..421151536 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -4,17 +4,17 @@ TODO: 重複部分を省く ## 目次 -* [環境構築](#環境構築) -* [スクリプトの使い方](#スクリプトの使い方) - * [実行](#実行) - * [テスト](#テスト) - * [ビルド](#ビルド) - * [コードフォーマット](#コードフォーマット) - * [タイポチェック](#タイポチェック) - * [APIドキュメントの確認](#APIドキュメントの確認) - * [依存関係](#依存関係) - * [ユーザー辞書の更新について](#ユーザー辞書の更新について) -* [Issue](#issue) +- [環境構築](#環境構築) +- [スクリプトの使い方](#スクリプトの使い方) + - [実行](#実行) + - [テスト](#テスト) + - [ビルド](#ビルド) + - [コードフォーマット](#コードフォーマット) + - [タイポチェック](#タイポチェック) + - [API ドキュメントの確認](#APIドキュメントの確認) + - [依存関係](#依存関係) + - [ユーザー辞書の更新について](#ユーザー辞書の更新について) +- [Issue](#issue) ## 貢献者の方へ @@ -24,11 +24,12 @@ Issue 側で取り組み始めたことを伝えるか、最初に Draft プル [VOICEVOX 非公式 Discord サーバー](https://discord.gg/WMwWetrzuh)にて、開発の議論や雑談を行っています。気軽にご参加ください。 ## 環境構築 + `Python 3.11.3` を用いて開発されています。 インストールするには、各 OS ごとの C/C++ コンパイラ、CMake が必要になります。 まずリポジトリをフォークします。 -次に以下の手順でローカル環境を構築します。 +次に以下の手順でローカル環境を構築します。 ```bash # レポジトリのクローン @@ -53,15 +54,17 @@ python -m pip install -r requirements.txt -r requirements-dev.txt -r requirement 次に音声ライブラリを準備します。 OSS 版 VOICEVOX ENGINE は製品版 VOICEVOX の音声ライブラリを含んでいません。 これら音声ライブラリは、利用規約を遵守の上、以下のいずれかの手順で導入できます。これにより「ずんだもん」等の製品版キャラクター音声を合成できます。 -なお、OSS 版 VOICEVOX ENGINE 単体でもモック利用により機能制限版の音声合成が可能です。その場合、音声ライブラリの導入は不要です。 +なお、OSS 版 VOICEVOX ENGINE 単体でもモック利用により機能制限版の音声合成が可能です。その場合、音声ライブラリの導入は不要です。 ### 製品版 VOICEVOX を用いた音声ライブラリの導入 + 製品版 VOICEVOX を導入することで音声ライブラリを利用できます。 -[VOICEVOX 公式ホームページ](https://voicevox.hiroshiba.jp/)に従いソフトウェアを導入してください。 +[VOICEVOX 公式ホームページ](https://voicevox.hiroshiba.jp/)に従いソフトウェアを導入してください。 ### 製品版 VOICEVOX CORE を用いた音声ライブラリの導入 + 製品版 VOICEVOX CORE を導入することで音声ライブラリを利用できます。 -以下のコマンドにより必要なファイルが準備されます。 +以下のコマンドにより必要なファイルが準備されます。 ```bash # CORE のバリエーション指定変数を定義する(例として x64 Linux マシン向け VOICEVOX CORE v0.15.0 CPU版) @@ -75,18 +78,18 @@ unzip "${CORENAME}.zip" CORE のバリエーション変数は以下の値を指定できます。 -* `VERSION`: voicevox_core のバージョン (例として `0.15.0`) -* `OS`: OS 種別 (`windows` | `osx` | `linux`) -* `ARCHITECTURE`: CPU アーキテクチャ (`x86` | `x64` | `arm64`) -* `PROCESSOR`: プロセッサ種別 (`cpu` | `gpu` | `cuda` | `directml`) +- `VERSION`: voicevox_core のバージョン (例として `0.15.0`) +- `OS`: OS 種別 (`windows` | `osx` | `linux`) +- `ARCHITECTURE`: CPU アーキテクチャ (`x86` | `x64` | `arm64`) +- `PROCESSOR`: プロセッサ種別 (`cpu` | `gpu` | `cuda` | `directml`) 最新のリリースは以下にあります。 https://github.com/VOICEVOX/voicevox_core/releases/latest - ## スクリプトの使い方 ### 実行 + VOICEVOX ENGINE を実行することで HTTP サーバーが立ち上がります。 コマンドライン引数の詳細は以下のコマンドで確認してください。 @@ -95,23 +98,27 @@ python run.py --help ``` #### 音声ライブラリに製品版 VOICEVOX を利用して実行 + ```bash VOICEVOX_DIR="C:/path/to/voicevox" # 製品版 VOICEVOX ディレクトリのパス python run.py --voicevox_dir=$VOICEVOX_DIR ``` #### 音声ライブラリに製品版 VOICEVOX CORE を利用して実行 + ```bash VOICELIB_DIR_1="C:/path/to/core_1"; VOICELIB_DIR_2="C:/path/to/core_2"; # 製品版 VOICEVOX CORE ディレクトリのパス python run.py --voicelib_dir=$VOICELIB_DIR_1 --voicelib_dir=$VOICELIB_DIR_2 ``` #### 音声ライブラリ無しで実行 + ```bash python run.py --enable_mock ``` -#### ログをUTF8に変更 +#### ログを UTF8 に変更 + ```bash python run.py --output_log_utf8 # もしくは @@ -119,6 +126,7 @@ VV_OUTPUT_LOG_UTF8=1 python run.py ``` ### テスト + ```bash python -m pytest ``` @@ -131,7 +139,7 @@ python -m pytest --snapshot-update ### ビルド -この方法でビルドしたものは、リリースで公開されているものとは異なります。 また、GPUで利用するにはcuDNNやCUDA、DirectMLなどのライブラリが追加で必要となります。 +この方法でビルドしたものは、リリースで公開されているものとは異なります。 また、GPU で利用するには cuDNN や CUDA、DirectML などのライブラリが追加で必要となります。 ```bash OUTPUT_LICENSE_JSON_PATH=licenses.json \ @@ -144,7 +152,7 @@ pyinstaller --noconfirm run.spec CORE_MODEL_DIR_PATH="/path/to/core_model" \ LIBCORE_PATH="/path/to/libcore" \ LIBONNXRUNTIME_PATH="/path/to/libonnxruntime" \ -pyinstaller --noconfirm run.spec +pyinstaller --noconfirm run.spec ``` #### Github Actions でビルド @@ -176,21 +184,21 @@ typos でタイポチェックを行えます。 もし誤判定やチェックから除外すべきファイルがあれば [設定ファイルの説明](https://github.com/crate-ci/typos#false-positives) に従って`_typos.toml`を編集してください。 -### APIドキュメントの確認 +### API ドキュメントの確認 -API ドキュメント(実体はdocs/api/index.html)は自動で更新されます。 +API ドキュメント(実体は docs/api/index.html)は自動で更新されます。 次のコマンドで API ドキュメントを手動で作成することができます。 ```bash PYTHONPATH=. python build_util/make_docs.py ``` - ### 依存関係 [Poetry](https://python-poetry.org/) を用いて依存ライブラリのバージョンを固定しています。 以下のコマンドで操作できます。 パッケージを追加する場合 + ```bash poetry add `パッケージ名` poetry add --group dev `パッケージ名` # 開発依存の追加 @@ -198,12 +206,14 @@ poetry add --group test `パッケージ名` # テスト依存の追加 ``` パッケージをアップデートする場合 + ```bash poetry update `パッケージ名` poetry update # 全部更新 ``` -requirements.txtの更新 +requirements.txt の更新 + ```bash poetry export --without-hashes -o requirements.txt # こちらを更新する場合は下3つも更新する必要があります。 poetry export --without-hashes --with dev -o requirements-dev.txt @@ -244,6 +254,7 @@ PYTHONPATH=. python build_util/make_docs.py | DOCKERHUB_TOKEN | [Docker Hub アクセストークン](https://hub.docker.com/settings/security) | ## Issue + 不具合の報告、機能要望、改善提案、質問はIssueの方に報告してください。 ## ライセンス