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

Status & Features #4

Open
3 of 7 tasks
lucasjinreal opened this issue Jan 15, 2025 · 6 comments
Open
3 of 7 tasks

Status & Features #4

lucasjinreal opened this issue Jan 15, 2025 · 6 comments

Comments

@lucasjinreal
Copy link
Owner

lucasjinreal commented Jan 15, 2025

Hello, all those interested in Kokoro!

Kokoro is gaining popularity in text-to-speech (TTS) due to its small size and extremely high quality. However, making Kokoro run more easily, especially with languages like Rust and C++, is still an area that has not been fully explored. With the help of buildable languages, Kokoro can run on various platforms such as embedded systems, phones, and also on PCs and laptops without invoking any scripts. As a result, “Kokoros” emerges.

Here are the goals of Kokoros:

  • Achieve high-quality TTS on embedded systems, PCs, laptops, or any cross-platforms.
  • Provide TTS for multiple languages. In the long run, Kokoros will support more variants of TTS, not just Kokoro.
  • Implement local large language model (LLM) + TTS.

The current implemented features and plans are as follows:

  • Fully functional on Rust, including tokenizer, phonemizer, and styles.
  • More comprehensive feature examples.
  • Full support for languages such as Chinese, Japanese, German, etc. (English is already supported).
  • API support in Rust, similar to the OpenAI API, so that users can run “koko server” to start a TTS OpenAI server.
  • Support more variants, not just Kokoro, but any TTS model built upon StyleTTS-V2.
  • Docker container support, anyone want contribute for this?

Leave your desired features or contributions below if you are interested.

Some advanced feature that currently doing:

@lucasjinreal lucasjinreal pinned this issue Jan 15, 2025
@satvikpendem
Copy link

Can it run on the GPU via CUDA or is it only CPU inferencing for now? I believe Rust has CUDA bindings via crates as well, might be a possibility in the future if not now.

@altunenes
Copy link

Can it run on the GPU via CUDA or is it only CPU inferencing for now? I believe Rust has CUDA bindings via crates as well, might be a possibility in the future if not now.

Never tried with NVIDIA but I think it should work with Cuda?

ort = { version = "2.0.0-rc.4", features = ["coreml"] }

then adjust the EP to work with CUDA

https://github.com/lucasjinreal/Kokoros/blob/main/src/onn/ort_base.rs

@lucasjinreal
Copy link
Owner Author

Yes. CUDA is possible, even though CPU is fast enough. Would you guys interested to add a PR to support CUDA ep provider as alternative to device target?

@lucasjinreal
Copy link
Owner Author

video-1737110239209.webm

@Jerboas86
Copy link
Contributor

Docker container support, anyone want contribute for this?

I can push a PR on that

@lucasjinreal
Copy link
Owner Author

@Jerboas86 that would be awesome, we really need a single command make users can run in docker and with minimal docker container size!

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

No branches or pull requests

4 participants