-
Notifications
You must be signed in to change notification settings - Fork 117
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
同期版APIを作る? #662
Comments
Rust API側(voicevox_coreグレート)は変える必要はないと思います。 |
その手もあるかなと思います。 |
その
|
手元で
>>> synthesizer = asyncio.run(Synthesizer.new(openjtalk))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
RuntimeError: no running event loop (追記) まあ |
onnxruntimeがどうなってるのか、SessionのAPIを見てみました。
onnxruntimeは全言語で全然違うインターフェースを持っていそうな雰囲気を受けました。別々な設計方針で開発してる・・・?(流石にそれはめちゃめちゃ大変そう。。。) |
内容
Python版のAPIを眺めていたのですが、普段駆け出しのPythonユーザーがおそらく1回も見たことがないであろうasyncが必須になっていることに気づきました。
asyncはPythonのどの標準ライブラリにもおそらく現れておらず(?)、しばらくプログラミングをしていた方ですら扱い方を知らない人の方がおそらく多いくらい難しいと思います。
なんとなくの直感ですが、VOICEVOX COREを手に取ってくれたプログラマーの3割は脱落しそうかなと・・・。
可能であれば同期版APIを提供してあげるとユーザ数は飛躍的に伸びるだろうなと思いました。
どういう方法があるか、やるやらも含めて議論できるといいのかなと思い、issueを立ててみました。
Pros 良くなる点
初学者に優しくなる
Cons 悪くなる点
下手したら関数の量が倍になる
実現方法
Rust APIで同期版を作り、非同期が難しそうな言語では同期版を提供する。
(非同期が一般的な言語ではasync版だけでもいいかも・・・?)
VOICEVOXのバージョン
0.15より後?
その他
0.15では非同期版だけの提供でいいのかなと思いました!
できる限り優しいexampleにしてあげたいですね・・・!
The text was updated successfully, but these errors were encountered: