Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Could not find "voicevox_core-linux-arm64-gpu-0.14.5.zipとなります #670

Closed
Heartful-echo opened this issue Nov 1, 2023 · 11 comments
Closed
Labels
要議論 実行する前に議論が必要そうなもの

Comments

@Heartful-echo
Copy link

質問の内容

NVIDIA JetsonデバイスでVOICEVOX COREを使用できるか試そうとしています。

binary=download-linux-arm64
curl -sSfL https://github.com/VOICEVOX/voicevox_core/releases/latest/download/${binary} -o download
chmod +x download
./download --device cuda
と実行しましたが、結果が下記のようになりました。

jetson@ubuntu:~/Desktop/VOICEVOX$ ./download --device cuda
Error: Could not find "voicevox_core-linux-arm64-gpu-0.14.5.zip" in https://github.com/VOICEVOX/voicevox_core/releases/tag/0.14.5

対処法をご教授願います。

VOICEVOXのバージョン

0.14.5

OSの種類/ディストリ/バージョン

Ubuntu20.04 LTS

@Heartful-echo Heartful-echo added the 要議論 実行する前に議論が必要そうなもの label Nov 1, 2023
@sevenc-nanashi
Copy link
Member

sevenc-nanashi commented Nov 1, 2023

arm64のGPU版は提供されていません。--device cudaを外せばダウンロードはできると思います。

(コミッターへ:何かやってない理由ありましたっけ?可能なら提供した方がいいような気がします)

@Heartful-echo
Copy link
Author

Heartful-echo commented Nov 1, 2023

@sevenc-nanashi
コメントありがとうございます。
ご助言通りに、--device cudaを外してダウンロードをおこないました。

実際に動作させようと色々調べて下記のようにおこないました。

# step0
binary=download-linux-arm64
curl -sSfL [https://github.com/VOICEVOX/voicevox_core/releases/latest/download/${binary}](https://github.com/VOICEVOX/voicevox_core/releases/latest/download/$%7Bbinary%7D) -o download
chmod +x download
./download

## step1
git clone https://github.com/VOICEVOX/voicevox_core -b 0.14.4

## step2
# /VOICEVOX/voicevox_core/example/pythonのREADME.mdファイルを参照

## step3
# README.mdファイルに「この README があるディレクトリで、[Downloader を使用して voicevox_core をダウンロードします]」とあったので、step0でダウンロードしたvoicevox_coreをstep2のディレクトリにコピー

## step4
python3 run.py --text "これは本当に実行できているんですか" --speaker_id 1
# を実行しました。

root@ubuntu:/VOICEVOX/voicevox_core/example/python# python3 run.py --text "これは本当に実行できているんですか" --speaker_id 1
Traceback (most recent call last):
  File "run.py", line 3, in <module>
    import core
  File "/VOICEVOX/voicevox_core/example/python/core.py", line 28, in <module>
    raise Exception(f"coreライブラリファイルが{core_dll_path}に存在しません")
Exception: coreライブラリファイルが/VOICEVOX/voicevox_core/example/python/voicevox_core/libcore.soに存在しません

このようなエラーとなるのですが、どこの手順が間違っておりますでしょうか。

@sevenc-nanashi
Copy link
Member

sevenc-nanashi commented Nov 1, 2023

(ちょっと編集させてもらいました)
0.14.4のブランチのコードは動かないですね。

0.14のAPIで動かしたい場合は、eb6768fをcheckoutし、example内のREADMEを参照してください。
FFIのサンプルはC++のサンプルを参照してください。

ちなみに、0.15でAPIが大きく変わります。0.15のAPIを試したい場合(頻繁に破壊的変更が行われますが)は:

  • c1bd227をcheckoutし、
  • pip install https://github.com/VOICEVOX/voicevox_core/releases/download/0.15.0-preview.14/voicevox_core-0.15.0rc14%2Bcpu-cp38-abi3-linux_aarch64.whl し、
  • LD_LIBRARY_PATHに最初にダウンロードしたvoicevox_coreディレクトリを通してください。

@Heartful-echo
Copy link
Author

@sevenc-nanashi
ご丁寧にありがとうございます。

0.14のAPIで動かしたい場合は、eb6768fをcheckoutし、example内のREADMEを参照してください。

とありますが、この方法がわかりません。やり方を解説したページなど、ご紹介頂けますでしょうか。
調べようにもどんなキーワードで検索すればよいかわからない次第です。

@sevenc-nanashi
Copy link
Member

voicevox_coreをgit cloneしたディレクトリで git checkout eb6768f を叩けば動くと思います。(git checkoutで調べれば出るかと)

@Heartful-echo
Copy link
Author

@sevenc-nanashi
早速のコメントありがとうございます。早速試そうとしたのですが、教授にJetsonを回収されました。あしたまた継続してみます!

@Hiroshiba
Copy link
Member

arm64のGPU版は提供されていません。--device cudaを外せばダウンロードはできると思います。

(コミッターへ:何かやってない理由ありましたっけ?可能なら提供した方がいいような気がします)

あー、onnxruntimeの動的ライブラリが配布されていないからかなと・・・ 😇 @sevenc-nanashi
https://github.com/microsoft/onnxruntime/releases/tag/v1.16.1

@Heartful-echo
Copy link
Author

@sevenc-nanashi

おはようございます!一番乗りでJetsonを借りてきました。
昨日の続きをしました。

git clone https://github.com/VOICEVOX/voicevox_core -b 0.14.4
cd voicevox_core/
git checkout eb6768f
cd ..
binary=download-linux-arm64
curl -sSfL https://github.com/VOICEVOX/voicevox_core/releases/latest/download/${binary} -o download
chmod +x download
# git cloneしたソースとバージョンを合わせました
./download -v 0.14.4
pip3 install https://github.com/VOICEVOX/voicevox_core/releases/download/0.14.4/voicevox_core-0.14.4+cpu-cp38-abi3-linux_aarch64.whl

このあと、サンプルコードを実行したのですが、下記エラーとなりました。

root@ubuntu:/VOICEVOX/voicevox_core/example/python# python3 run.py --text "これは本当に実行できているんですか" --speaker_id 1
Traceback (most recent call last):
  File "run.py", line 8, in <module>
    import voicevox_core
  File "/usr/local/lib/python3.8/dist-packages/voicevox_core/__init__.py", line 11, in <module>
    from ._rust import METAS, SUPPORTED_DEVICES, VoicevoxCore  # noqa: F401
ImportError: libonnxruntime.so.1.13.1: cannot open shared object file: No such file or directory
root@ubuntu:/VOICEVOX/voicevox_core/example/python# 

おそらく、onnxruntimeがないのだと思います。
onnxruntimeの入手方法と、入手したonnxruntimeをvoicevox_coreディレクトリのどこに配置すれば良いのかご教授を
お願いいたします。

@Heartful-echo
Copy link
Author

Heartful-echo commented Nov 2, 2023

export LD_LIBRARY_PATH="/VOICEVOX/voicevox_core:$LD_LIBRARY_PATH"
としたら先に進めました。

再度、下記を実行したのですが、
root@ubuntu:/VOICEVOX/voicevox_core/example/python# python3 run.py --text "これは本当に実行できているんですか" --speaker_id 1

下記のエラーとなりました。

[DEBUG] __main__: voicevox_core.SUPPORTED_DEVICES=SupportedDevices(cpu=True, cuda=False, dml=False)
[INFO] __main__: Initializing (acceleration_mode=<AccelerationMode.AUTO: 'AUTO'>, open_jtalk_dict_dir=PosixPath('open_jtalk_dic_utf_8-1.11'))
ERROR: Mecab_load() in mecab.cpp: Cannot open open_jtalk_dic_utf_8-1.11.
Traceback (most recent call last):
  File "run.py", line 86, in <module>
    main()
  File "run.py", line 25, in main
    core = VoicevoxCore(
voicevox_core.VoicevoxError: OpenJTalkの辞書が読み込まれていません

open_jtalk_dic_utf_8-1.11ディレクトリは、voicevox_core直下にあります。
どのようにすればよいでしょうか。

root@ubuntu:/VOICEVOX/voicevox_core/open_jtalk_dic_utf_8-1.11# ls
COPYING  char.bin  left-id.def  matrix.bin  pos-id.def  rewrite.def  right-id.def  sys.dic  unk.dic
root@ubuntu:/VOICEVOX/voicevox_core/open_jtalk_dic_utf_8-1.11# 

@Heartful-echo
Copy link
Author

open_jtalk_dic_utf_8-1.11ディレクトリをコピーして、/VOICEVOX/voicevox_core/example/python にペーストしたら動作しました!

[INFO] __main__: Creating an AudioQuery from 'リンゴ'
[INFO] __main__: Synthesizing with {"accent_phrases": [{"moras": [{"text": "", "consonant": "r", "consonant_length": 0.060304187, "vowel": "i", "vowel_length": 0.15876506, "pitch": 5.8891954}, {"text": "", "consonant": null, "consonant_length": null, "vowel": "N", "vowel_length": 0.11447175, "pitch": 6.035903}, {"text": "", "consonant": "g", "consonant_length": 0.06877849, "vowel": "o", "vowel_length": 0.22576113, "pitch": 5.9248786}], "accent": 3, "pause_mora": null, "is_interrogative": false}], "speed_scale": 1.0, "pitch_scale": 0.0, "intonation_scale": 1.0, "volume_scale": 1.0, "pre_phoneme_length": 0.1, "post_phoneme_length": 0.1, "output_sampling_rate": 24000, "output_stereo": false, "kana": "リンゴ'"}
[INFO] __main__: Wrote `output.wav`
[DEBUG] voicevox_core_python_api: Destructing a VoicevoxCore

ありがとうございました。

@Heartful-echo
Copy link
Author

Heartful-echo commented Nov 2, 2023

open_jtalk_dic_utf_8-1.11のコピーを止めて、run.pyを下記のように修正して使用しています。

argparser.add_argument(
        "--dict-dir",
        default="../../open_jtalk_dic_utf_8-1.11",
        type=Path,
        help="Open JTalkの辞書ディレクトリ",
    )

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
要議論 実行する前に議論が必要そうなもの
Projects
None yet
Development

No branches or pull requests

3 participants