Jan commited on
Commit
33fb7ab
·
verified ·
1 Parent(s): 08a1cb4

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +114 -1
README.md CHANGED
@@ -10,4 +10,117 @@ tags:
10
  - single-speaker
11
  - kokoro
12
  - text-to-speech
13
- ---
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10
  - single-speaker
11
  - kokoro
12
  - text-to-speech
13
+ - german
14
+ ---
15
+
16
+ # 🗣️ Kokoro TTS - German Voice 'Martin' (ONNX)
17
+
18
+ This repository provides an **ONNX exported version** of the excellent German Kokoro TTS model [kikiri-german-martin](https://huggingface.co/kikiri-tts/kikiri-german-martin).
19
+
20
+ By using the ONNX format, you can run this high-quality Text-to-Speech model without needing PyTorch. This results in significantly faster inference times, a lower memory footprint, and easier integration into various environments like C++, Rust, mobile apps, or web servers using the ONNX Runtime.
21
+
22
+ ## Model Details
23
+
24
+ ### Model Description
25
+
26
+ This is an acoustic Text-to-Speech model based on the Kokoro architecture, specifically tailored for the German language featuring the single male voice "Martin". It has been exported to the ONNX graph format to maximize compatibility and performance.
27
+
28
+ - **Developed by:** Original model by `kikiri-tts`, ONNX conversion by huggingFresse
29
+ - **Model type:** Text-to-Speech (Acoustic Model)
30
+ - **Language(s) (NLP):** German (de)
31
+ - **License:** Apache 2.0
32
+ - **Finetuned from model:** [kikiri-tts/kikiri-german-martin](https://huggingface.co/kikiri-tts/kikiri-german-martin)
33
+
34
+ ### Model Sources
35
+
36
+ - **Original Repository:** [kikiri-tts/kikiri-german-martin](https://huggingface.co/kikiri-tts/kikiri-german-martin)
37
+ - **Kokoro Architecture:** [hexgrad/Kokoro-82M](https://huggingface.co/hexgrad/Kokoro-82M)
38
+
39
+ ## Uses
40
+
41
+ This model is intended to be used with the ONNX Runtime to synthesize German speech from phonemized text. It is ideal for:
42
+ - Local offline text-to-speech generation.
43
+ - Integration into low-resource environments (Edge devices, Raspberry Pi).
44
+ - Building high-performance TTS microservices.
45
+
46
+ ## Bias, Risks, and Limitations
47
+
48
+ As with any TTS model, the output quality heavily relies on the quality of the input text and the phonemizer used.
49
+ - **Pronunciation:** The model might mispronounce rare words, foreign names, or complex compound nouns if they are not correctly converted to phonemes first.
50
+ - **Emotion:** While the model sounds very natural, precise control over specific emotions (like shouting, crying, or whispering) is limited by the training data of the base model.
51
+
52
+ ## How to Get Started with the Model
53
+
54
+ I included a Dockerfile and a main.py file, so you can simply use docker compose to get it started:
55
+
56
+ docker-compose.yml
57
+ ```yml
58
+ services:
59
+ kokoro-onnx:
60
+ build: .
61
+ container_name: kokoro-onnx
62
+ restart: unless-stopped
63
+ ports:
64
+ - "8881:8881"
65
+ environment:
66
+ - KOKORO_ONNX_THREADS=4
67
+ - KOKORO_ONNX_VOICE=martin
68
+ - KOKORO_ONNX_LANG=de
69
+ - OMP_NUM_THREADS=4
70
+ - OPENBLAS_NUM_THREADS=4
71
+ - MKL_NUM_THREADS=4
72
+ - NUMEXPR_NUM_THREADS=4
73
+ - OMP_WAIT_POLICY=PASSIVE
74
+ ```
75
+
76
+ If you want to use it in Home Assistant, this is an easy way to make it wyoming-ready (just add this into your docker-compose.yml):
77
+
78
+ ```yml
79
+ wyoming_openai_onnx:
80
+ image: ghcr.io/roryeckel/wyoming_openai:latest
81
+ container_name: wyoming_openai_onnx
82
+ ports:
83
+ - "10203:10203"
84
+ restart: unless-stopped
85
+ command:
86
+ - python3
87
+ - -m
88
+ - wyoming_openai
89
+ - --uri
90
+ - tcp://0.0.0.0:10203
91
+ - --languages
92
+ - de
93
+ - --tts-openai-url
94
+ - http://kokoro-onnx:8881/v1
95
+ - --tts-models
96
+ - kokoro
97
+ - --tts-streaming-models
98
+ - kokoro
99
+ - --tts-backend
100
+ - KOKORO_FASTAPI
101
+ depends_on:
102
+ - kokoro-onnx
103
+ ```
104
+
105
+ ## Training Details
106
+ This repository only contains a format conversion. No additional training or fine-tuning was performed. For details regarding the training data, hyperparameters, and procedures, please refer to the base model: [kikiri-tts/kikiri-german-martin](https://huggingface.co/kikiri-tts/kikiri-german-martin).
107
+
108
+ ## Citation
109
+ If you use this model, please credit the original authors:
110
+ ```
111
+ @misc{kikiri-german-martin,
112
+ author = {kikiri-tts},
113
+ title = {Kokoro German Voice - Martin},
114
+ year = {2025},
115
+ publisher = {Hugging Face},
116
+ howpublished = {\url{[https://huggingface.co/kikiri-tts/kikiri-german-martin](https://huggingface.co/kikiri-tts/kikiri-german-martin)}}
117
+ }
118
+
119
+ @misc{kokoro-82m,
120
+ author = {hexgrad},
121
+ title = {Kokoro-82M},
122
+ year = {2024},
123
+ publisher = {Hugging Face},
124
+ howpublished = {\url{[https://huggingface.co/hexgrad/Kokoro-82M](https://huggingface.co/hexgrad/Kokoro-82M)}}
125
+ }
126
+ ```