devfloww commited on
Commit
cef81d4
·
1 Parent(s): 3d1e046

Init + models

Browse files
.idx/dev.nix ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # To learn more about how to use Nix to configure your environment
2
+ # see: https://developers.google.com/idx/guides/customize-idx-env
3
+ { pkgs, ... }: {
4
+ # Which nixpkgs channel to use.
5
+ channel = "stable-25.05"; # or "unstable"
6
+ # Use https://search.nixos.org/packages to find packages
7
+ packages = [
8
+ # pkgs.go
9
+ pkgs.python314
10
+ pkgs.uv
11
+ # pkgs.python311Packages.pip
12
+ # pkgs.nodejs_20
13
+ # pkgs.nodePackages.nodemon
14
+ ];
15
+ # Sets environment variables in the workspace
16
+ env = {};
17
+ idx = {
18
+ # Search for the extensions you want on https://open-vsx.org/ and use "publisher.id"
19
+ extensions = [
20
+ # "vscodevim.vim"
21
+ "google.gemini-cli-vscode-ide-companion"
22
+ "ms-python.python"
23
+ ];
24
+ # Enable previews
25
+ previews = {
26
+ enable = true;
27
+ previews = {
28
+ # web = {
29
+ # # Example: run "npm run dev" with PORT set to IDX's defined port for previews,
30
+ # # and show it in IDX's web preview panel
31
+ # command = ["npm" "run" "dev"];
32
+ # manager = "web";
33
+ # env = {
34
+ # # Environment variables to set for your server
35
+ # PORT = "$PORT";
36
+ # };
37
+ # };
38
+ };
39
+ };
40
+ # Workspace lifecycle hooks
41
+ workspace = {
42
+ # Runs when a workspace is first created
43
+ onCreate = {
44
+ # Example: install JS dependencies from NPM
45
+ # npm-install = "npm install";
46
+ # Open editors for the following files by default, if they exist:
47
+ default.openFiles = [ "README.md" ];
48
+ };
49
+ # Runs when the workspace is (re)started
50
+ onStart = {
51
+ # Example: start a background task to watch and re-build backend code
52
+ # watch-backend = "npm run watch-backend";
53
+ };
54
+ };
55
+ };
56
+ }
.python-version ADDED
@@ -0,0 +1 @@
 
 
1
+ 3.11
main.py ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
 
1
+ def main():
2
+ print("Hello from myapp!")
3
+
4
+
5
+ if __name__ == "__main__":
6
+ main()
models/piper/ryan-high.onnx ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b3990d7606e183ec8dbfba70a4607074f162de1a0c412e0180d1ff60bb154eca
3
+ size 120786792
models/piper/ryan-high.onnx.json ADDED
@@ -0,0 +1,420 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "audio": {
3
+ "sample_rate": 22050,
4
+ "quality": "high"
5
+ },
6
+ "espeak": {
7
+ "voice": "en-us"
8
+ },
9
+ "inference": {
10
+ "noise_scale": 0.667,
11
+ "length_scale": 1,
12
+ "noise_w": 0.8
13
+ },
14
+ "phoneme_map": {},
15
+ "phoneme_id_map": {
16
+ "_": [
17
+ 0
18
+ ],
19
+ "^": [
20
+ 1
21
+ ],
22
+ "$": [
23
+ 2
24
+ ],
25
+ " ": [
26
+ 3
27
+ ],
28
+ "!": [
29
+ 4
30
+ ],
31
+ "'": [
32
+ 5
33
+ ],
34
+ "(": [
35
+ 6
36
+ ],
37
+ ")": [
38
+ 7
39
+ ],
40
+ ",": [
41
+ 8
42
+ ],
43
+ "-": [
44
+ 9
45
+ ],
46
+ ".": [
47
+ 10
48
+ ],
49
+ ":": [
50
+ 11
51
+ ],
52
+ ";": [
53
+ 12
54
+ ],
55
+ "?": [
56
+ 13
57
+ ],
58
+ "a": [
59
+ 14
60
+ ],
61
+ "b": [
62
+ 15
63
+ ],
64
+ "c": [
65
+ 16
66
+ ],
67
+ "d": [
68
+ 17
69
+ ],
70
+ "e": [
71
+ 18
72
+ ],
73
+ "f": [
74
+ 19
75
+ ],
76
+ "h": [
77
+ 20
78
+ ],
79
+ "i": [
80
+ 21
81
+ ],
82
+ "j": [
83
+ 22
84
+ ],
85
+ "k": [
86
+ 23
87
+ ],
88
+ "l": [
89
+ 24
90
+ ],
91
+ "m": [
92
+ 25
93
+ ],
94
+ "n": [
95
+ 26
96
+ ],
97
+ "o": [
98
+ 27
99
+ ],
100
+ "p": [
101
+ 28
102
+ ],
103
+ "q": [
104
+ 29
105
+ ],
106
+ "r": [
107
+ 30
108
+ ],
109
+ "s": [
110
+ 31
111
+ ],
112
+ "t": [
113
+ 32
114
+ ],
115
+ "u": [
116
+ 33
117
+ ],
118
+ "v": [
119
+ 34
120
+ ],
121
+ "w": [
122
+ 35
123
+ ],
124
+ "x": [
125
+ 36
126
+ ],
127
+ "y": [
128
+ 37
129
+ ],
130
+ "z": [
131
+ 38
132
+ ],
133
+ "æ": [
134
+ 39
135
+ ],
136
+ "ç": [
137
+ 40
138
+ ],
139
+ "ð": [
140
+ 41
141
+ ],
142
+ "ø": [
143
+ 42
144
+ ],
145
+ "ħ": [
146
+ 43
147
+ ],
148
+ "ŋ": [
149
+ 44
150
+ ],
151
+ "œ": [
152
+ 45
153
+ ],
154
+ "ǀ": [
155
+ 46
156
+ ],
157
+ "ǁ": [
158
+ 47
159
+ ],
160
+ "ǂ": [
161
+ 48
162
+ ],
163
+ "ǃ": [
164
+ 49
165
+ ],
166
+ "ɐ": [
167
+ 50
168
+ ],
169
+ "ɑ": [
170
+ 51
171
+ ],
172
+ "ɒ": [
173
+ 52
174
+ ],
175
+ "ɓ": [
176
+ 53
177
+ ],
178
+ "ɔ": [
179
+ 54
180
+ ],
181
+ "ɕ": [
182
+ 55
183
+ ],
184
+ "ɖ": [
185
+ 56
186
+ ],
187
+ "ɗ": [
188
+ 57
189
+ ],
190
+ "ɘ": [
191
+ 58
192
+ ],
193
+ "ə": [
194
+ 59
195
+ ],
196
+ "ɚ": [
197
+ 60
198
+ ],
199
+ "ɛ": [
200
+ 61
201
+ ],
202
+ "ɜ": [
203
+ 62
204
+ ],
205
+ "ɞ": [
206
+ 63
207
+ ],
208
+ "ɟ": [
209
+ 64
210
+ ],
211
+ "ɠ": [
212
+ 65
213
+ ],
214
+ "ɡ": [
215
+ 66
216
+ ],
217
+ "ɢ": [
218
+ 67
219
+ ],
220
+ "ɣ": [
221
+ 68
222
+ ],
223
+ "ɤ": [
224
+ 69
225
+ ],
226
+ "ɥ": [
227
+ 70
228
+ ],
229
+ "ɦ": [
230
+ 71
231
+ ],
232
+ "ɧ": [
233
+ 72
234
+ ],
235
+ "ɨ": [
236
+ 73
237
+ ],
238
+ "ɪ": [
239
+ 74
240
+ ],
241
+ "ɫ": [
242
+ 75
243
+ ],
244
+ "ɬ": [
245
+ 76
246
+ ],
247
+ "ɭ": [
248
+ 77
249
+ ],
250
+ "ɮ": [
251
+ 78
252
+ ],
253
+ "ɯ": [
254
+ 79
255
+ ],
256
+ "ɰ": [
257
+ 80
258
+ ],
259
+ "ɱ": [
260
+ 81
261
+ ],
262
+ "ɲ": [
263
+ 82
264
+ ],
265
+ "ɳ": [
266
+ 83
267
+ ],
268
+ "ɴ": [
269
+ 84
270
+ ],
271
+ "ɵ": [
272
+ 85
273
+ ],
274
+ "ɶ": [
275
+ 86
276
+ ],
277
+ "ɸ": [
278
+ 87
279
+ ],
280
+ "ɹ": [
281
+ 88
282
+ ],
283
+ "ɺ": [
284
+ 89
285
+ ],
286
+ "ɻ": [
287
+ 90
288
+ ],
289
+ "ɽ": [
290
+ 91
291
+ ],
292
+ "ɾ": [
293
+ 92
294
+ ],
295
+ "ʀ": [
296
+ 93
297
+ ],
298
+ "ʁ": [
299
+ 94
300
+ ],
301
+ "ʂ": [
302
+ 95
303
+ ],
304
+ "ʃ": [
305
+ 96
306
+ ],
307
+ "ʄ": [
308
+ 97
309
+ ],
310
+ "ʈ": [
311
+ 98
312
+ ],
313
+ "ʉ": [
314
+ 99
315
+ ],
316
+ "ʊ": [
317
+ 100
318
+ ],
319
+ "ʋ": [
320
+ 101
321
+ ],
322
+ "ʌ": [
323
+ 102
324
+ ],
325
+ "ʍ": [
326
+ 103
327
+ ],
328
+ "ʎ": [
329
+ 104
330
+ ],
331
+ "ʏ": [
332
+ 105
333
+ ],
334
+ "ʐ": [
335
+ 106
336
+ ],
337
+ "ʑ": [
338
+ 107
339
+ ],
340
+ "ʒ": [
341
+ 108
342
+ ],
343
+ "ʔ": [
344
+ 109
345
+ ],
346
+ "ʕ": [
347
+ 110
348
+ ],
349
+ "ʘ": [
350
+ 111
351
+ ],
352
+ "ʙ": [
353
+ 112
354
+ ],
355
+ "ʛ": [
356
+ 113
357
+ ],
358
+ "ʜ": [
359
+ 114
360
+ ],
361
+ "ʝ": [
362
+ 115
363
+ ],
364
+ "ʟ": [
365
+ 116
366
+ ],
367
+ "ʡ": [
368
+ 117
369
+ ],
370
+ "ʢ": [
371
+ 118
372
+ ],
373
+ "ʲ": [
374
+ 119
375
+ ],
376
+ "ˈ": [
377
+ 120
378
+ ],
379
+ "ˌ": [
380
+ 121
381
+ ],
382
+ "ː": [
383
+ 122
384
+ ],
385
+ "ˑ": [
386
+ 123
387
+ ],
388
+ "˞": [
389
+ 124
390
+ ],
391
+ "β": [
392
+ 125
393
+ ],
394
+ "θ": [
395
+ 126
396
+ ],
397
+ "χ": [
398
+ 127
399
+ ],
400
+ "ᵻ": [
401
+ 128
402
+ ],
403
+ "ⱱ": [
404
+ 129
405
+ ]
406
+ },
407
+ "num_symbols": 130,
408
+ "num_speakers": 1,
409
+ "speaker_id_map": {},
410
+ "piper_version": "0.2.0",
411
+ "language": {
412
+ "code": "en_US",
413
+ "family": "en",
414
+ "region": "US",
415
+ "name_native": "English",
416
+ "name_english": "English",
417
+ "country_english": "United States"
418
+ },
419
+ "dataset": "ryan"
420
+ }
models/wake/hey_ea.tflite ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:14bff778604985e1b5c19f0f7bbe477a69cf281d8db34b232b3b972411f710e2
3
+ size 1278912
models/whisper/tiny.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:65147644a518d12f04e32d6f3b26facc3f8dd46e5390956a9424a650c0ce22b9
3
+ size 75572083
pyproject.toml ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ [project]
2
+ name = "myapp"
3
+ version = "0.1.0"
4
+ description = "Add your description here"
5
+ readme = "README.md"
6
+ requires-python = ">=3.11"
7
+ dependencies = []
setup_models.py ADDED
@@ -0,0 +1,32 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env python3
2
+ # setup_ea_models.py — run this once, EA never disappears again
3
+
4
+ import os
5
+ from urllib.request import urlretrieve
6
+ from pathlib import Path
7
+
8
+ BASE = Path("models")
9
+ BASE.mkdir(exist_ok=True)
10
+
11
+ models = {
12
+ "whisper/tiny.pt": "https://openaipublic.azureedge.net/main/whisper/models/65147644a518d12f04e32d6f3b26facc3f8dd46e5390956a9424a650c0ce22b9/tiny.pt",
13
+ "piper/ryan-high.onnx": "https://huggingface.co/rhasspy/piper-voices/resolve/main/en/en_US/ryan/high/en_US-ryan-high.onnx",
14
+ "piper/ryan-high.onnx.json": "https://huggingface.co/rhasspy/piper-voices/resolve/main/en/en_US/ryan/high/en_US-ryan-high.onnx.json",
15
+ "wake/hey_ea.tflite": "https://github.com/dscripka/openWakeWord/releases/download/v0.5.1/hey_jarvis_v0.1.tflite",
16
+ }
17
+
18
+ print("Downloading EA’s brain & voice… (≈300 MB total)")
19
+
20
+ for rel_path, url in models.items():
21
+ path = BASE / rel_path
22
+ path.parent.mkdir(parents=True, exist_ok=True)
23
+ if path.exists():
24
+ print(f"Already have {rel_path}")
25
+ else:
26
+ print(f"Downloading {rel_path} …")
27
+ urlretrieve(url, path)
28
+ print(f"Done → {path} ({path.stat().st_size // 1024 // 1024} MB)")
29
+
30
+ print("\nAll EA models ready!")
31
+ print("Now run: git add models/ && git commit -m 'EA models' && git push")
32
+ print("Then every future 'git pull + git lfs pull' will bring them back instantly.")