やねうら王 V8.30の公開に伴い、やねうら王のWikiの「やねうら王のインストール手順」のページを刷新したので、インストール関連の質問はこの記事のコメント欄で受け付けます。お気軽にどうぞー。
関連リンク
- やねうら王 GitHub : やねうら王のソースコードや使い方についてはここに資料があります。
- やねうら王 GitHub – Releases : やねうら王の新しいバージョンや評価関数などはここからダウンロードできます。
- やねうら王 GitHub – Releases やねうら王 V8.30 GitHub版 : やねうら王V8.30 GitHub版の実行ファイルのダウンロードはここから。
- やねうら王 Wiki : やねうら王の使い方について資料が一式あります。
- やねうら王 Wiki やねうら王インストール手順 : やねうら王のインストール手順についてはここに完全な説明があります。
makebookコマンドを使うにはlearn版が必要だと思いますが、自分でビルドするしかないでしょうか?
LEARN版、実行ファイル大きいので配布しんどいんです…。ちょっと考えます。
まあ、makebookコマンド使いたいような人は、開発者寄りだと思うので、ビルドぐらいできるような気も…。
7zipで圧縮したら、かなり小さくなったので、AVX2用だけhttps://github.com/yaneurao/YaneuraOu/releases/tag/v8.30gitのところからダウンロードできるようにしておきました。
Shogi Ramen TVチャネルへのコメントありがとうございました。
Mac版に関する質問です。
yaneuraou-V830-git-mac-allをダウンロードし、
たややんさんのeval/nn.binを実行ファイルのフォルダに用意し、以下の実行ファイルを使用しましたが、
YaneuraOu_NNUE_halfKP256-V830Git_APPLESSE42
isready
下記エラーが発生してしまいます。
info string loading eval file : eval/nn.bin
Error! : failed to read nn.bin
どうすれば良いでしょうか?
私のMac環境では2年前にたややんさんが配布してくれた評価関数込みのバイナリしか実行実績がありません。
水匠5であれば「やねうら王のインストール手順」の「6. 評価関数のタイプ」にある表から評価関数のタイプがわかりますよね。その評価関数のタイプに応じたやねうら王の実行ファイルを選んでください。
評価関数のタイプに関する表を参照して、実行ファイルを選んでいますが、それでも同様のエラーが発生します。
標準NNUE NNUE_halfKP256 『水匠5』, 『Hao』 nn.bin
1. 本当に NNUE_halfKP256 のほうを実行していますか? NNUE_KP256 を間違えて実行していませんか?
2. 「やねうら王のインストール手順」の「7. フォルダ配置」のように配置されていますか?
原因はわからないのですが、実行ファイルの場所ではなく、/Users/以下にevalフォルダを配置しないと実行時に読み込めなかったようです。
/Users/xx/eval/nn.bin
私の環境だけの問題かどうか分かりませんが、自己解決はできましたのでご報告いたします。
ご報告ありがとうございます。
実行する時のworking directoryの問題っぽいですね…。
こちらでも調べて、インストール手順を修正しておきます。
しかし不可解ですね…。
自作のソフトでcwd変更せずにpopenしてたり、シェルでやねうら王のフォルダにcdで移動せずにcwd変なところにしたまま実行してたりしませんか?
ダウンロードしたファイルをダブルクリックしているだけですよ。
追加の情報です。
3パターンありましたので報告いたします。2のパターンは上手くいきました。
1. デスクトップでYaneuraouをダブルクリックした場合、/Users/xx/以下を読みに行く
2. ElectronShogiで実行する場合は、Yaneuraouと同じフォルダを読みに行く
3. 自作アプリの場合、自作アプリのCurrentDirectoryを読みに行く
追加の報告です。
デスクトップでYaneuraouをダブルクリックした際の挙動は解決できていませんが、
自作アプリでYaneuraouを起動した際の振る舞いは解決できました。そちらはご指摘の通り、Working Directoryの問題でした。
お騒がせして申し訳ありませんでした。
> デスクトップでYaneuraouをダブルクリックした際の挙動は解決できていませんが
それはmacOSのFinderがuserのhomeをcwdに設定してアプリを起動するからで、やねうら王の実行ファイル側の問題ではないです。例えば以下のようなシェルスクリプトを経由すれば回避できるかと思います。
#!/bin/bash
cd /path/to/YaneuraOu
open /path/to/YaneuraOu/YaneuraOu_NNUE…
windows番V830 をダウンロードしたのですがどのバージョンのファイルを設定してもエラーして対局出来ません なぜでしょうか?
⇓の起動確認でどのエラーになりますでしょう?
https://github.com/yaneurao/YaneuraOu/wiki/%E3%82%84%E3%81%AD%E3%81%86%E3%82%89%E7%8E%8B%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E6%89%8B%E9%A0%86#8-%E8%B5%B7%E5%8B%95%E7%A2%BA%E8%AA%8D
kppt じゃなくて nnue にしたら動きました お騒がせしました リンクありがとうございました。
現在rtx4090搭載のpcで環境の再現性のためにdocker containerで環境構築することを目指しています。
ShogiHome + やねうら王, ふかうら王 + tanuki
の環境を用意しようとしています。
ベースイメージはnvidiaのtensorRTの提供コンテナを使用し、ubuntu22.04, cuda12.3, tensorRT8.6.1.6, cuDNN8.9.6.50がもとから入っています
ShogiHome.、やねうら王、ふかうら王、すべてビルドするところまで成功しており、ShogiHomeは実行できています
tanuki-wcsc33からeval, bookディレクトリをFukauraOuと同じディレクトリに設置し、ShogiHomeではエンジンにFukauraOuの実行ファイルを指定し、eval, bookは指定されたディレクトリを絶対パスで指定し、中身のnn.bin, user_book1.dbをエンジン設定で指定しています。そのうえで対戦開始しようとすると以下のようなエラーが生じます。
[1] [2024-06-19T12:45:49.533] [INFO] usi – sid=8: < info string read book file : /home/falcon/workspace/book/user_book1.db
[1] [2024-06-19T12:45:49.647] [INFO] usi – sid=8: < info string read book done. number of positions = 111176
[1] [2024-06-19T12:45:51.897] [INFO] usi – sid=8: < info string Start loading the model file, path = /home/falcon/workspace/eval/nn.bin, gpu_id = 0, batch_size = 128
[1] [2024-06-19T12:45:52.101] [INFO] usi – sid=8: < info string serialized filename = /home/falcon/workspace/eval/nn.bin.NVIDIA_GeForce_RTX_4090_Laptop_GPU.128.TRT8601.serialized
[1] [2024-06-19T12:45:52.101] [INFO] usi – sid=8: < info string TensorRT : build the model file.
[1] [2024-06-19T12:45:54.438] [INFO] usi – sid=8: <
[1] [2024-06-19T12:45:59.445] [INFO] usi – sid=8: <
[1] [2024-06-19T12:45:59.988] [INFO] usi – sid=8: engine process closed: close=1 signal=null
[1] Error occurred in handler for 'usiReady': Error: closed unexpectedly
[1] at EngineProcess.onClose (/home/falcon/workspace/electron-shogi/dist/src/background/usi/engine.js:430:34)
[1] at ChildProcess. (/home/falcon/workspace/electron-shogi/dist/src/background/usi/process.js:31:21)
[1] at ChildProcess.emit (node:events:531:35)
[1] at maybeClose (node:internal/child_process:1105:16)
[1] at Socket. (node:internal/child_process:457:11)
[1] at Socket.emit (node:events:519:28)
[1] at Pipe. (node:net:338:12)
[1] [2024-06-19T12:45:59.989] [INFO] usi – sid=8: quit USI engine
[1] [2024-06-19T12:45:59.990] [ERROR] app – 対局の初期化中にエラーが出ました: Error: GameManager#start: 対局の開始に失敗しました。: Error: Error invoking remote method ‘usiReady’: Error: closed unexpectedly
かれこれ2,3日試行錯誤して直そうとしていますがこのエラーが解消できません、おそらくelectron側のエラーというよりエンジン構成になにか自分のミスがあると考えていて、ここでご相談させてください。
すみません、初歩的な初歩的なミスでonnxファイルにできていないからですね、nnueのbinファイルを、もともとonnxファイルのモデルを動かすことには成功しているのですが、もともとonnxでないモデルの場合nnueのbinファイルをonnx形式に直す、その方法はいまだにわかっていないので、その点を質問させてください。
> nnueのbinファイルを、もともとonnxファイルのモデルを動かすことには成功している
この部分、意味がよくわからないです..。nn.binをonnxファイルに変換することに成功されているんですか?
すみません、nn.binをonnxに変換する方法が分かっていないです。
その変換は基本的にできないものと思ってください。
その場合、nn.binのモデルはどのように動かせばいいのでしょうか?
nn.binはやねうら王探索部のNNUE評価関数用の評価関数ファイルですので、やねうら王からお使いいただければと…。
https://github.com/yaneurao/YaneuraOu/wiki/%E3%82%84%E3%81%AD%E3%81%86%E3%82%89%E7%8E%8B%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E6%89%8B%E9%A0%86
とりあえず動くようになりました。具体的にはnvidiaの比較的最近のgpuが用意されたデバイスにDockerがインストールされていて、エンジンと定跡ファイルを用意できていれば、containerを立ち上げるだけでShogiHome+やねうら王+ふかうら王の環境を用意できるようになりました。相談に乗っていただきありがとうございました。
https://github.com/otyanokosaisai/yaneuraOuTensorRT
ここで公開しています
いいですね!(`・ω・´)b
れっさーたぬき買ったのですが、やねうら王8.30と組み合わせれば更に強いようですね。
質問です:エンジンどれ使うかの解説見たのですが、自分の該当するCPUがZEN3だったのですが、AVX2を使用するって書いてありました、なぜなのでしょうか?
ZEN3用の実行ファイル、AVX2用と実質的に変わらないので(V8.30の次のバージョンで)廃止することにしたんです。
> 一つ前のメジャーバージョン(V7.xx系)からの改善点
> ⇨ あとで書く
これが書かれる時は来るんですかね・・・?
このあと書いておきますね。
いま書きました。(遅すぎ!)
ありがとうございます。(もう少しで「このあとというのは具体的にいつのことでしょうか」とか書くところだったw)
端的に質問します。”nn.bin”はどこで入手したらよいのでしょうか。「YaneuraOu_KPPT-V830Git_ZEN3.exe」を使用する予定です。
⇓ここをご覧を..
https://github.com/yaneurao/YaneuraOu/wiki/%E3%82%84%E3%81%AD%E3%81%86%E3%82%89%E7%8E%8B%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E6%89%8B%E9%A0%86#%E6%A3%8B%E5%8A%9B%E9%A0%86
ありがとうございます。
SHOGIguiで、エンジン設定に「YaneuraOu_NNUE_halfKP1024X2_8_32-LEARN-V830Git_AVX2」を設定したのですが、dosプロンプトの画面のママから停止して設定できません。
パソコンを買い替えて、再インストールしたのですが、
前のパソコンではこんなことは起こらなかったです。
どうにかして評価関数をセットしたいのですが、やり方を教えていただけないでしょうか
「dosプロンプトの画面のママから停止して」とは、⇓この手順のどこのことでしょうか…。(isready コマンドに対してどういう応答が返ってくるのか知りたいです)
https://github.com/yaneurao/YaneuraOu/wiki/%E3%82%84%E3%81%AD%E3%81%86%E3%82%89%E7%8E%8B%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E6%89%8B%E9%A0%86
インストール関連の質問ではないのですが、自己解決が出来ないため失礼します。
ふかうら王のビルドについてです。windows11でTensorRT版をビルドしたいのですが、cuDNN,TensorRT,CUDAのincludeファイルなどが参照できないエラーが出てしまいます。ふかうら王のビルド手順に書いてある通りにフォルダを配置しており、source/prop/YaneuraOuEdition-Deep-TensorRT.propに記述してあるIncludePathとLibraryPathも一致しています。
試しに、エラーが出ているファイルをsourceフォルダに直接入れると、そのファイルのエラーは出なくなりました。
なにか原因が推測できれば教えていただきたいです。
.propの拡張子を持つファイルをテキストエディタの串刺し検索(grep機能など)を使って、「CUDA」「TensorRt」みたいな文字列を探して、修正忘れがないか確認してみてください。
エラー名を書いていただけるともう少し詳しいアドバイスができるかと思います。
また、やねうら王Wikiのふかうら王のビルド手順のところ、ちょっと内容が古いので、近々、最新の内容を反映させますね。
エラーが長文なので一部を書かせていただきますと、「./config.h:857:12: fatal error: ‘NvInferRuntimeCommon.h’ file not found」と出ています。
このファイルが見つからない旨のエラーが長く続いています。
これはTensorRTのincludeフォルダにあるファイルみたいです。
TensorRTのフォルダの配置が良くないのでしょうか?
なにかアドバイスいただけると幸いです。
プロジェクト「Release-Deep-TensorRT」の「プロジェクト」⇨「プロパティ」⇨「構成プロパティ」⇨「VC++ディレクトリ」⇨「インクルードディレクトリ」は、私の場合、次のようになっているようです。
$(VC_IncludePath);$(WindowsSDK_IncludePath);C:\ProgramData\YaneuraOu\TensorRT-8.2.5.1\include;C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\include
CUDAのほうはディレクトリ変更せずにインストールすればここになるはず。
TensorRTは、インストールした場所探して、その \include フォルダのpathを上のような感じで書きます。