Skip to content

chore: fill OrtTrainingApi with v1.17's training API #14

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

Conversation

qryxip
Copy link
Member

@qryxip qryxip commented May 11, 2025

内容

To make cargo clippy --workspace --all-targets pass.
(though we don't use training API)

Copied enum OrtPropertyType from pykeio#202.

関連 Issue

スクリーンショット・動画など

その他

Co-authored-by: Carson M. <carson@pyke.io>
@qryxip
Copy link
Member Author

qryxip commented May 11, 2025

うーん。テスト用に外からダウンロードしてたっぽいmnist.onnxが404になったことで、一部は通っていたCIがめでたく全滅ですか。

まあ以前も言った気がしますが放置でよさそう。CIをどうにかしようとするより、v2.0.0-rc.9 (or v2.0.0-rc.10?)の追従を入れる方が真っ当だし多分早い。

@qryxip qryxip requested a review from Hiroshiba May 11, 2025 03:21
@Hiroshiba
Copy link
Member

Hiroshiba commented May 12, 2025

よくわかってないのですが、既存のワーニングを直したところ、それとは関係なくエラーが見つかったって感じでしょうか?
(と、AI君と話して推測しました https://chatgpt.com/share/6821f10a-5e4c-8008-bb9b-515c0b704111

であれば問題なさそう!
まあ追従するならこの変更も不要になりそうだけど。


(以下ついでに)
追従って何が課題になってたんでしたっけ…。
たしか…既存のonnxモデルが一部動かないとかでしたっけ…。
それだったらYosshiさん?が変更してくださったのを待ってた記憶だけど、流石にonnx側に入ってそう。
あとpthファイルのサルベージが出来て最新版onnxにも対応できるようになったから二重で大丈夫になったかも!!
(何が妨げになってるか状況わかるよう、追従するissue作っても良いかも?)

@qryxip qryxip merged commit 1210145 into VOICEVOX:main May 12, 2025
2 of 7 checks passed
@qryxip qryxip deleted the pr/chore-fill-orttrainingapi-with-v1-17-s-training-api branch May 12, 2025 16:13
@qryxip
Copy link
Member Author

qryxip commented May 12, 2025

追従って何が課題になってたんでしたっけ…。

このリポジトリ自体(ort)の方

このリポジトリ自体(ort)については、CORE v1.16を早くリリースしましょうという話の最中だったので単に後回しにされていた、という認識です。ONNX Runtime自体はv1.17のまま最新のpykeio/ortに追従するといったことも普通にできるはずで、この #14 はその予行演習でもありました。
(APIの辻褄を合わせるのがちょっとしんどくはあるかなと以前思っていたのですが、実は簡単なのではと最近になって気付きました)

(VOICEVOX) ONNX Runtimeの方

VOICEVOX/voicevox_core#888 とか VOICEVOX/voicevox_core#968 みたいな話も解決されるかもなので、(VOICEVOX) ONNX Runtimeの方についても最新版の追従はやっていきたくはありますね。

それだったらYosshiさん?が変更してくださったのを待ってた記憶だけど、流石にonnx側に入ってそう。

1.18.0用リリースブランチには入ってますが、まだリリースされていないという状態ですね…。そろそろリリースがされそうな雰囲気は漂っているのですが、ONNX Runtime側に導入されてそっちのリリースも行われるまで時間はかかりそう。

あとpthファイルのサルベージが出来て最新版onnxにも対応できるようになったから二重で大丈夫になったかも!!

それは朗報…だと思うのですが、他の選択肢もあるので悩むところではありますね。

  1. pthから最新フォーマットのONNXを作る
    • ONNXを最新フォーマットにすることでONNX Runtimeが高速に動いてくれるとかのメリットもあれば十分にありかも?(多分そんなことは無いような気がしますが)
  2. 過去に名無し。さんが試してくれたようにパッチを当てる
    • 今すぐONNX Runtimeのバージョンを引き上げたいとなったらこれが安牌かも
  3. onnx v1.18.0がリリースされるのを待ち、それを取り込んだONNX Runtimeがリリースされるのを待つ
    • 早くても2,3ヶ月後とかかも…?

@Hiroshiba
Copy link
Member

Hiroshiba commented May 12, 2025

なーるほどです!
ちょっとややこしくなってきたので、とりあえずissue化して議論を追いやすくするのはどうでしょうか…!
(まだ前提がわからない点がいくつかあって、何度かやりとりすることになりそうなので)

vocevox_onnxruntimeのバージョンに関してはvoicevox_onnxruntime側に議論切った方がわかりやすいかも?
だけどortが絡んでくる話ならort側にまとめちゃって、結論出た後にvoicevox_onnxruntime(onnxruntime-builder?)に移すでも良さそう。

後で聞くことメモ:
楽なルート通るのが良さそう!
pthから最新onnxを作り直すのはたぶん簡単だけど、vvm作り直す手間はかかる。
古いonnxのままortを追従させるのがしんどくなければそれが良いかも。
onnx 1.18が出れば解決するかもなので、最新追従を後回しにしても良いなら後回しが楽かも。
パッチ当てはややこしそうなので、個人的には最終手段にしたいかも…?(でもqryxipさんならこの複雑性増加はものともしないかも)

@qryxip
Copy link
Member Author

qryxip commented May 13, 2025

1.18.0用リリースブランチには入ってますが、まだリリースされていないという状態ですね…。そろそろリリースがされそうな雰囲気は漂っているのですが、ONNX Runtime側に導入されてそっちのリリースも行われるまで時間はかかりそう。

リリースされそうな雰囲気がすると言っていたらonnx v1.18.0がつい今日出ましたね。あとどうもONNX Runtime側でもmainブランチでは実は先んじて microsoft/onnxruntime#24449 ということは行われていていたらしく、Yosshiさんのやつも入っているっぽい。なのでONNX RuntimeのmainブランチであればSqueeze-11の修正はもう入っている。リリースを待てるのであれば3.の選択肢が取れそうではありますが、ONNX Runtime v1.22.0がつい3日前に出たばかりというタイミングなのでもしかしたら結構待たなくてはいけないかもしれない…。

[追記] ONNX Runtimeの今のmainブランチをv1.23.0-alpha.202505122057みたいに勝手に名付けてしまって使うという手もありそう

(ちなみにmicrosoft/onnxruntime#24449は結構ややこしいことをしてそうだったので、これをONNX Runtime v1.22.0とかにバックポートするというのは得策ではなさそう。それをやるくらいなら名無し。さんがやってたようにYosshiさんのパッチをピンポイントで当てた方がよさそう)

ともあれ、issueは作ろうと思います。ort側で対処すべき問題はそんなに無いはずなので、onnxruntime-builderですかね?

@Hiroshiba
Copy link
Member

onnxruntimeのリリーススケジュールがそんなに長期スパンじゃなさそうで、かつすぐにリリースしたいorアプデする必要がなければ、3が良さそうなのかなと思いました!
issue作るのはonnxruntime-builderで良さそうだと思います!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants