whisper-windows-mcp 2.2.2 → 2.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{LICENSE-COMMERCIAL.md → COMMERCIAL-LICENSE.md} +58 -58
- package/LICENSE +40 -40
- package/PRIVACY.es.md +192 -135
- package/PRIVACY.id.md +192 -135
- package/PRIVACY.ja.md +192 -135
- package/PRIVACY.ko.md +192 -135
- package/PRIVACY.md +192 -135
- package/PRIVACY.pl.md +192 -135
- package/PRIVACY.pt-BR.md +192 -135
- package/PRIVACY.ro.md +192 -135
- package/PRIVACY.uk.md +192 -135
- package/PRIVACY.vi.md +192 -135
- package/README.es.md +74 -48
- package/README.id.md +77 -40
- package/README.ja.md +100 -72
- package/README.ko.md +63 -37
- package/README.md +76 -39
- package/README.pl.md +77 -40
- package/README.pt-BR.md +71 -45
- package/README.ro.md +78 -41
- package/README.uk.md +77 -40
- package/README.vi.md +67 -41
- package/ROADMAP.es.md +110 -48
- package/ROADMAP.id.md +77 -104
- package/ROADMAP.ja.md +84 -123
- package/ROADMAP.ko.md +73 -97
- package/ROADMAP.pl.md +104 -44
- package/ROADMAP.pt-BR.md +78 -102
- package/ROADMAP.ro.md +102 -44
- package/ROADMAP.uk.md +65 -97
- package/ROADMAP.vi.md +78 -102
- package/SECURITY.es.md +64 -47
- package/SECURITY.id.md +64 -47
- package/SECURITY.ja.md +64 -47
- package/SECURITY.ko.md +64 -47
- package/SECURITY.md +21 -4
- package/SECURITY.pl.md +64 -47
- package/SECURITY.pt-BR.md +64 -47
- package/SECURITY.ro.md +64 -47
- package/SECURITY.uk.md +64 -47
- package/SECURITY.vi.md +64 -47
- package/TROUBLESHOOTING.es.md +309 -323
- package/TROUBLESHOOTING.id.md +333 -323
- package/TROUBLESHOOTING.ja.md +399 -286
- package/TROUBLESHOOTING.ko.md +309 -323
- package/TROUBLESHOOTING.pl.md +355 -323
- package/TROUBLESHOOTING.pt-BR.md +309 -323
- package/TROUBLESHOOTING.ro.md +355 -323
- package/TROUBLESHOOTING.uk.md +369 -323
- package/TROUBLESHOOTING.vi.md +309 -323
- package/dist/index.js +591 -216
- package/package.json +45 -45
- package/patch_roadmaps.py +0 -72
package/TROUBLESHOOTING.uk.md
CHANGED
|
@@ -1,323 +1,369 @@
|
|
|
1
|
-
# whisper-windows-mcp
|
|
2
|
-
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
## Швидкий контрольний список
|
|
6
|
-
|
|
7
|
-
Перед детальнішим розслідуванням перевірте все нижченаведене:
|
|
8
|
-
|
|
9
|
-
- Шляхи в `claude_desktop_config.json` використовують **подвійний зворотній слеш** (`C:\\whisper\\...`)
|
|
10
|
-
- `whisper-cli.exe` існує за шляхом, вказаним у `WHISPER_CLI_PATH`
|
|
11
|
-
- Файл моделі `.bin` існує за шляхом, вказаним у `WHISPER_MODEL`
|
|
12
|
-
- FFmpeg встановлено і доступно (`ffmpeg -version` працює в командному рядку)
|
|
13
|
-
- Claude Desktop **повністю перезапущено** після редагування конфігурації (завершено з системного трея, а не просто закрито вікно)
|
|
14
|
-
- Сервер whisper відображається як **запущено** (зелений значок) у Налаштуваннях → Розробник
|
|
15
|
-
|
|
16
|
-
---
|
|
17
|
-
|
|
18
|
-
##
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
1.
|
|
23
|
-
2.
|
|
24
|
-
3.
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
---
|
|
57
|
-
|
|
58
|
-
##
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
1
|
+
# Усунення несправностей — whisper-windows-mcp
|
|
2
|
+
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
## Швидкий контрольний список
|
|
6
|
+
|
|
7
|
+
Перед детальнішим розслідуванням перевірте все нижченаведене:
|
|
8
|
+
|
|
9
|
+
- Шляхи в `claude_desktop_config.json` використовують **подвійний зворотній слеш** (`C:\\whisper\\...`)
|
|
10
|
+
- `whisper-cli.exe` існує за шляхом, вказаним у `WHISPER_CLI_PATH`
|
|
11
|
+
- Файл моделі `.bin` існує за шляхом, вказаним у `WHISPER_MODEL`
|
|
12
|
+
- FFmpeg встановлено і доступно (`ffmpeg -version` працює в командному рядку)
|
|
13
|
+
- Claude Desktop **повністю перезапущено** після редагування конфігурації (завершено з системного трея, а не просто закрито вікно)
|
|
14
|
+
- Сервер whisper відображається як **запущено** (зелений значок) у Налаштуваннях → Розробник
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## Встановлення і запуск
|
|
19
|
+
|
|
20
|
+
### Whisper не з'являється в Claude Desktop → Налаштування → Розробник
|
|
21
|
+
|
|
22
|
+
1. Відкрийте Claude Desktop → Налаштування → Розробник → Редагувати конфігурацію
|
|
23
|
+
2. Переконайтеся, що JSON є дійсним — вставте його на [jsonlint.com](https://jsonlint.com) у разі сумніву
|
|
24
|
+
3. Переконайтеся, що `WHISPER_CLI_PATH` і `WHISPER_MODEL` вказують на файли, що фактично існують
|
|
25
|
+
4. Завершіть Claude Desktop з системного трея (клацніть правою кнопкою миші на значку → Вийти)
|
|
26
|
+
5. Перезапустіть Claude Desktop і перевірте знову
|
|
27
|
+
|
|
28
|
+
Якщо whisper з'являється, але показує значок помилки замість зеленого:
|
|
29
|
+
- Запитайте Claude: *"Перевір конфігурацію whisper"* — інструмент `check_config` повертає конкретне повідомлення про помилку
|
|
30
|
+
- Перевірте Claude Desktop → Налаштування → Розробник → клацніть на назві сервера для журналу помилок
|
|
31
|
+
|
|
32
|
+
### Помилка "whisper-cli.exe не знайдено"
|
|
33
|
+
|
|
34
|
+
Шлях у `WHISPER_CLI_PATH` не збігається з місцем розташування бінарника.
|
|
35
|
+
|
|
36
|
+
Очікуваний шлях за замовчуванням: `C:\whisper\Release\whisper-cli.exe`
|
|
37
|
+
|
|
38
|
+
Перевірте наявність файлу:
|
|
39
|
+
```powershell
|
|
40
|
+
Test-Path "C:\whisper\Release\whisper-cli.exe"
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
Має повернути `True`. Якщо повертає `False`, або розпакуйте реліз у `C:\whisper\Release\`, або оновіть `WHISPER_CLI_PATH` у конфігурації відповідно до фактичного розташування.
|
|
44
|
+
|
|
45
|
+
### Помилка "Модель не знайдена"
|
|
46
|
+
|
|
47
|
+
Шлях у `WHISPER_MODEL` не збігається з фактичним розташуванням або назвою файлу моделі.
|
|
48
|
+
|
|
49
|
+
Перевірте теку моделей:
|
|
50
|
+
```powershell
|
|
51
|
+
Get-ChildItem "C:\whisper\models\"
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
Назва файлу має включати повну назву разом із суфіксом квантизації, наприклад `ggml-large-v3-turbo-q5_0.bin`, а не `ggml-large-v3-turbo.bin`. Якщо моделі не встановлено, використовуйте `download_model` у Claude Desktop.
|
|
55
|
+
|
|
56
|
+
---
|
|
57
|
+
|
|
58
|
+
## Прискорення GPU
|
|
59
|
+
|
|
60
|
+
### Транскрипція повільна — лише CPU, без GPU
|
|
61
|
+
|
|
62
|
+
Запитайте Claude: *"Перевір апаратне забезпечення системи"*
|
|
63
|
+
|
|
64
|
+
Інструмент `check_system` підтверджує наявність `ggml-vulkan.dll` у теці бінарника whisper. Якщо DLL відсутній, ви працюєте лише на CPU незалежно від вашого GPU.
|
|
65
|
+
|
|
66
|
+
**Виправлення:** Завантажте `whisper-vulkan-win-x64.zip` зі [сторінки релізів](https://github.com/eviscerations/whisper-windows-mcp/releases/tag/v1.4.0) і розпакуйте в `C:\whisper\Release\`. Zip містить DLL — вона має знаходитися в тій самій теці, що і `whisper-cli.exe`.
|
|
67
|
+
|
|
68
|
+
### GPU визначено, але навантаження 0% під час транскрипції
|
|
69
|
+
|
|
70
|
+
Бінарник запущено, але не відправляє задачі на GPU. Зазвичай це означає:
|
|
71
|
+
- Vulkan SDK не встановлено або драйвер GPU не надає інтерфейс Vulkan
|
|
72
|
+
- GPU є старішим за Vulkan 1.0 (рідко — більшість GPU після 2016 року підтримують його)
|
|
73
|
+
|
|
74
|
+
Перевірте підтримку Vulkan:
|
|
75
|
+
```powershell
|
|
76
|
+
vulkaninfo
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Будь-який вивід підтверджує доступність Vulkan. Якщо `vulkaninfo` не працює, встановіть останній драйвер GPU з сайту виробника.
|
|
80
|
+
|
|
81
|
+
### VRAM відображається як половина фактичного розміру (AMD)
|
|
82
|
+
|
|
83
|
+
Це відомий нюанс відображення Windows для GPU AMD з об'єднаною/спільною пам'яттю. Фактичний доступний VRAM для опрацювання зазвичай вдвічі більший за те, що повідомляє `wmic`. Рекомендація моделі може бути надмірно консервативною — ви можете спробувати більшу модель, ніж рекомендовано.
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## Якість транскрипції
|
|
88
|
+
|
|
89
|
+
### Вивід містить галюцинований текст або повторювані фрази
|
|
90
|
+
|
|
91
|
+
Whisper іноді галюцинує на тихих або низькоякісних аудіосегментах. Інструмент за замовчуванням застосовує `--max-context 0` і `--no-speech-thold 0.6` для мінімізації цього.
|
|
92
|
+
|
|
93
|
+
Додаткові підходи:
|
|
94
|
+
- Використовуйте `temperature=0.2` — невелика випадковість допомагає розірвати цикли галюцинацій на шумному аудіо
|
|
95
|
+
- Використовуйте модель VAD: завантажте файл `.bin` моделі Silero VAD і передайте його шлях як `vad_model`. Це видаляє тишу перед транскрипцією — найефективніше виправлення для галюцинацій на записах з паузами.
|
|
96
|
+
- Використовуйте більшу модель (`large-v3` або `large-v3-turbo`) — менші моделі галюцинують більше на складному аудіо
|
|
97
|
+
- Використовуйте `prompt` для встановлення контексту: *"Це інтерв'ю подкасту про розробку програмного забезпечення."*
|
|
98
|
+
|
|
99
|
+
### Вивід транскрипції порожній або дуже короткий
|
|
100
|
+
|
|
101
|
+
Запитайте Claude: *"Проаналізуй цей файл"* (`analyze_media`), щоб підтвердити наявність аудіовмісту і розпізнаний формат.
|
|
102
|
+
|
|
103
|
+
Якщо FFprobe повідомляє про аудіо, але транскрипція нічого не виробляє:
|
|
104
|
+
- Файл може бути мовою, що не збігається з налаштованим параметром `language`
|
|
105
|
+
- Спробуйте `language=auto`, щоб Whisper визначив мову
|
|
106
|
+
- Аудіо може бути надто тихим або сильно обробленим — для транскрипції потрібна розбірлива мова
|
|
107
|
+
|
|
108
|
+
---
|
|
109
|
+
|
|
110
|
+
## Режим конфіденційності і ворота згоди
|
|
111
|
+
|
|
112
|
+
### Я не бачу запиту на згоду перед транскрипцією
|
|
113
|
+
|
|
114
|
+
Ворота згоди спрацьовують **один раз за сеанс** у стандартному режимі. Якщо ви вже підтвердили транскрипцію в цьому сеансі (після останнього перезапуску Claude Desktop), вони не спрацюють знову.
|
|
115
|
+
|
|
116
|
+
Інші причини, чому ворота можуть не з'явитися:
|
|
117
|
+
- `WHISPER_CONSENT_ACKNOWLEDGED=true` встановлено у вашій конфігурації — це повністю пригнічує ворота
|
|
118
|
+
- `WHISPER_PRIVACY_MODE=true` встановлено — режим конфіденційності використовує власні окремі ворота для кожної операції
|
|
119
|
+
- Ви перевіряєте прогрес блокувальної транскрипції, яка вже завершилась — ворота були використані на початку завдання
|
|
120
|
+
|
|
121
|
+
**Щоб скинути і знову побачити ворота:** повністю перезапустіть Claude Desktop (завершіть з системного трея, перезапустіть).
|
|
122
|
+
|
|
123
|
+
### Claude опрацьовує мій файл без запиту
|
|
124
|
+
|
|
125
|
+
Якщо `WHISPER_CONSENT_ACKNOWLEDGED=true` є у вашій конфігурації, ворота пригнічені навмисно. Це передбачена поведінка для користувачів, які ознайомилися з наслідками для конфіденційності.
|
|
126
|
+
|
|
127
|
+
Якщо це не встановлено і Claude продовжив без запиту, ворота сеансу вже були використані попередньою транскрипцією в цьому сеансі. Ворота спрацьовують один раз за сеанс.
|
|
128
|
+
|
|
129
|
+
Для підтвердження перед кожною транскрипцією незалежно від стану сеансу увімкніть режим конфіденційності: передайте `privacy_mode=true` або встановіть `WHISPER_PRIVACY_MODE=true` у конфігурації.
|
|
130
|
+
|
|
131
|
+
### Режим конфіденційності активний, але я хочу прочитати одну транскрипцію
|
|
132
|
+
|
|
133
|
+
Передайте `privacy_mode=false` безпосередньо інструменту транскрипції для цього конкретного виклику. Це перевизначає глобальне налаштування `WHISPER_PRIVACY_MODE=true` лише для одного виклику:
|
|
134
|
+
|
|
135
|
+
- *"Транскрибуй цей файл, privacy_mode=false"*
|
|
136
|
+
|
|
137
|
+
Перезапуск не потрібен. Перевизначення застосовується лише до цього одного виклику інструменту.
|
|
138
|
+
|
|
139
|
+
### Режим конфіденційності запитує підтвердження перед кожним файлом
|
|
140
|
+
|
|
141
|
+
Це правильна і навмисна поведінка. Режим конфіденційності вимагає згоди перед кожною операцією — ворота спрацьовують перед кожною транскрипцією і не можуть бути обійдені, поки режим конфіденційності активний.
|
|
142
|
+
|
|
143
|
+
Якщо вам потрібно транскрибувати багато файлів без підтвердження для кожного і контент не є чутливим, вимкніть режим конфіденційності:
|
|
144
|
+
- Видаліть `WHISPER_PRIVACY_MODE=true` з конфігурації і перезапустіть Claude Desktop
|
|
145
|
+
- Або передайте `privacy_mode=false` для конкретних нечутливих файлів
|
|
146
|
+
|
|
147
|
+
### Фонові завдання і ворота згоди
|
|
148
|
+
|
|
149
|
+
Для фонової транскрипції (`background=true`) у стандартному режимі ворота згоди спрацьовують при `check_progress`, коли повертається транскрипція — **не** при `transcribe_audio`, коли завдання запускається. На момент запуску завдання текст транскрипції ще не існує. Ворота спрацьовують у момент, коли текст транскрипції вперше повертається до API.
|
|
150
|
+
|
|
151
|
+
Для фонових завдань у режимі конфіденційності ворота спрацьовують **перед запуском** — до початку будь-якого аудіоопрацювання.
|
|
152
|
+
|
|
153
|
+
### Як назавжди пропустити ворота згоди?
|
|
154
|
+
|
|
155
|
+
Встановіть `WHISPER_CONSENT_ACKNOWLEDGED=true` у розділі env файлу `claude_desktop_config.json`. Це пригнічує одноразове розкриття сеансу у стандартному режимі.
|
|
156
|
+
|
|
157
|
+
Примітка: не має ефекту, коли режим конфіденційності активний.
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## Фонова транскрипція і пакет
|
|
162
|
+
|
|
163
|
+
### Фонове завдання ніколи не показується як завершене
|
|
164
|
+
|
|
165
|
+
Стан завдання відстежується за виходом процесу whisper-cli.exe. Перевірте:
|
|
166
|
+
|
|
167
|
+
1. Запитайте Claude: *"Перевір прогрес job_id"* — якщо процес ще виконується, інструмент повертає "В процесі" з минулим часом і останньою міткою часу сегмента
|
|
168
|
+
2. Якщо файл дуже довгий (2+ години), дайте більше часу — транскрипція GPU 2-годинного файлу займає приблизно 15–20 хвилин на середньому GPU
|
|
169
|
+
3. Якщо минулий час здається неправильним, відкрийте Диспетчер завдань → Деталі і перевірте наявність `whisper-cli.exe` у списку
|
|
170
|
+
|
|
171
|
+
### Фонове завдання завершено, але вихідний файл відсутній або знаходиться не там
|
|
172
|
+
|
|
173
|
+
Фонові завдання записують вивід до тимчасового шляху в `%TEMP%\whisper-mcp-jobs\` під час опрацювання, а потім переміщують файл до вихідної теки після завершення. Якщо переміщення не вдається (диск повний, проблема з правами доступу або довжиною шляху), `check_progress` повертає конкретну помилку.
|
|
174
|
+
|
|
175
|
+
Перевірте:
|
|
176
|
+
- Вихідна тека існує і доступна для запису
|
|
177
|
+
- Достатньо місця на диску
|
|
178
|
+
- Цільовий шлях не надто довгий (Windows за замовчуванням має обмеження шляху в 260 символів)
|
|
179
|
+
|
|
180
|
+
Необроблений вивід може залишатися в `%TEMP%\whisper-mcp-jobs\` з іменем файлу на основі ID завдання.
|
|
181
|
+
|
|
182
|
+
### Пакет застряг або не переходить до наступного файлу
|
|
183
|
+
|
|
184
|
+
`start_batch` використовує зворотній виклик виходу для самостійного просування без опитування. Якщо пакет здається застряглим:
|
|
185
|
+
|
|
186
|
+
1. Викличте `check_batch_progress` — це примусово перевіряє прогрес і повторно оцінює поточний стан
|
|
187
|
+
2. Якщо поточний файл ще виконується, зачекайте його завершення — перевірте Диспетчер завдань на наявність `whisper-cli.exe`
|
|
188
|
+
3. Якщо `check_batch_progress` показує поточний файл як невдалий, він спробує перейти до наступного
|
|
189
|
+
|
|
190
|
+
### Пакет повідомляє файл як "невдалий", хоча він виглядає завершеним
|
|
191
|
+
|
|
192
|
+
Валідатор перевіряє, що вихідний файл не порожній і має принаймні один рядок на кожні 30 секунд аудіо. Короткі файли або записи з довгими тихими секціями можуть виробляти вивід, який валідатор вважає підозріло коротким.
|
|
193
|
+
|
|
194
|
+
Якщо транскрипція виглядає правильно при відкритті:
|
|
195
|
+
- Валідація є надмірно консервативною для цього файлу
|
|
196
|
+
- Повторно запустіть через `transcribe_audio` окремо і перевірте результат вручну
|
|
197
|
+
|
|
198
|
+
---
|
|
199
|
+
|
|
200
|
+
## Генерація субтитрів
|
|
201
|
+
|
|
202
|
+
### SRT-файл збережено, але з неправильною назвою або не там
|
|
203
|
+
|
|
204
|
+
SRT і VTT файли зберігаються поруч із вихідним файлом з доданим кодом мови, якщо мова джерела не англійська:
|
|
205
|
+
- Англійське джерело: `назвафайлу.srt`
|
|
206
|
+
- Українське джерело: `назвафайлу.uk.srt`
|
|
207
|
+
- З перекладом англійською: `назвафайлу.uk.srt` + `назвафайлу.en.srt`
|
|
208
|
+
|
|
209
|
+
### VTT-вивід для веб — як завантажити у десктопний плеєр?
|
|
210
|
+
|
|
211
|
+
VLC підтримує VTT через Субтитри → Додати файл субтитрів → вибрати `.vtt` файл. Більшість інших десктопних плеєрів краще підтримують SRT, ніж VTT. Використовуйте `output_format=srt` для максимальної сумісності з десктопними плеєрами.
|
|
212
|
+
|
|
213
|
+
VTT найкраще підходить для елементів HTML5 `<video>` і веб-відеоплеєрів.
|
|
214
|
+
|
|
215
|
+
### LRC-файли не відображаються у медіаплеєрі
|
|
216
|
+
|
|
217
|
+
LRC (`.lrc`) файли призначені для плеєрів з функціями відображення текстів/караоке: foobar2000, Winamp, AIMP та різні мобільні плеєри. Стандартні відеоплеєри не відображають LRC. Якщо вам потрібні синхронізовані субтитри для відео, використовуйте `srt` або `vtt`.
|
|
218
|
+
|
|
219
|
+
### CSV-вивід — який формат?
|
|
220
|
+
|
|
221
|
+
CSV-вивід включає час початку сегмента, час закінчення і текст у кожному рядку. Призначений для імпорту в табличні інструменти або скрипти аналізу нижнього рівня. Використовуйте `srt` або `vtt` для фактичного відображення субтитрів.
|
|
222
|
+
|
|
223
|
+
### Генерація субтитрів завершується тайм-аутом з помилкою 4 хвилини
|
|
224
|
+
|
|
225
|
+
`generate_subtitles` за замовчуванням виконується синхронно і може досягти 4-хвилинного тайм-ауту MCP Claude Desktop на довгих файлах. Використовуйте `background=true` для файлів понад 10 хвилин:
|
|
226
|
+
|
|
227
|
+
- *"Створи субтитри для цього файлу, background=true"*
|
|
228
|
+
|
|
229
|
+
Потім перевіряйте прогрес через `check_progress`. Примітка: `translate_to_english=true` недоступно у фоновому режимі. Виконайте другий прохід після завершення фонового завдання для генерації перекладу.
|
|
230
|
+
|
|
231
|
+
---
|
|
232
|
+
|
|
233
|
+
## Управління моделями
|
|
234
|
+
|
|
235
|
+
### `download_model` завершується мережевою помилкою
|
|
236
|
+
|
|
237
|
+
Інструмент завантажує з Hugging Face. Переконайтеся, що ваш комп'ютер має доступ до інтернету і `huggingface.co` не заблоковано брандмауером або проксі.
|
|
238
|
+
|
|
239
|
+
Якщо завантаження починається, але переривається, файл `.part` видаляється автоматично. Повторно запустіть `download_model` для повторної спроби.
|
|
240
|
+
|
|
241
|
+
### `switch_model` повідомляє, що модель не знаходиться в теці моделей
|
|
242
|
+
|
|
243
|
+
Інструмент `switch_model` приймає лише файли в теці, налаштованій у `WHISPER_MODEL` (зокрема, тека, що містить цей файл).
|
|
244
|
+
|
|
245
|
+
Якщо ваша модель знаходиться в іншому місці, або перемістіть її до теки моделей, або оновіть `WHISPER_MODEL` у конфігурації, щоб вказати на файл у тій самій теці, що і ваші моделі.
|
|
246
|
+
|
|
247
|
+
### Активна модель повертається до моделі з конфігурації після перезапуску Claude Desktop
|
|
248
|
+
|
|
249
|
+
`switch_model` є сеансовим за дизайном. Щоб зробити перемикання моделі постійним, оновіть `WHISPER_MODEL` у `claude_desktop_config.json` і перезапустіть Claude Desktop.
|
|
250
|
+
|
|
251
|
+
---
|
|
252
|
+
|
|
253
|
+
## Шляхи до файлів і формати
|
|
254
|
+
|
|
255
|
+
### Імена файлів Unicode спричиняють тихе невдале виконання транскрипції
|
|
256
|
+
|
|
257
|
+
Фонова транскрипція спрямовує весь вивід через санований ASCII-шлях на основі ID завдання, що правильно обробляє імена файлів Unicode. Якщо ви бачите збій з іменем файлу Unicode у блокувальному режимі, перевірте доступність файлу:
|
|
258
|
+
|
|
259
|
+
```powershell
|
|
260
|
+
Test-Path "C:\Users\ВашеІм'я\Documents\запис_наради.mp4"
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
Має повернути `True`. Якщо шлях недоступний для PowerShell, він також буде недоступний для MCP-сервера.
|
|
264
|
+
|
|
265
|
+
### Відеофайл не виробляє вивід або негайна помилка
|
|
266
|
+
|
|
267
|
+
FFmpeg потрібен для всіх відеоформатів. Переконайтеся, що FFmpeg встановлено:
|
|
268
|
+
```
|
|
269
|
+
ffmpeg -version
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
Якщо FFmpeg не в PATH, встановіть `FFMPEG_PATH` у конфігурації на повний шлях до `ffmpeg.exe`.
|
|
273
|
+
|
|
274
|
+
Якщо FFmpeg встановлено, але конкретне відео не вдається, це може бути пошкоджений файл або незвичайний варіант кодека. Спробуйте конвертувати вручну:
|
|
275
|
+
```
|
|
276
|
+
ffmpeg -i input.mp4 -ar 16000 -ac 1 output.wav
|
|
277
|
+
```
|
|
278
|
+
Потім транскрибуйте WAV-файл безпосередньо.
|
|
279
|
+
|
|
280
|
+
### Помилка "Файл надто великий"
|
|
281
|
+
|
|
282
|
+
Інструмент відхиляє файли понад 10 ГБ. Це обмеження безпеки для запобігання надмірному використанню пам'яті. Файли, що наближаються до цього розміру, слід розділити перед транскрипцією.
|
|
283
|
+
|
|
284
|
+
### Відхилення UNC-шляху
|
|
285
|
+
|
|
286
|
+
Шляхи, що починаються з `\\server\share` (UNC-шляхи до мережевих ресурсів), відхиляються валідатором вхідних даних. Підключіть мережевий ресурс як літеру диска (наприклад `Z:\`) і використовуйте цей шлях.
|
|
287
|
+
|
|
288
|
+
---
|
|
289
|
+
|
|
290
|
+
## Очищення тимчасових файлів
|
|
291
|
+
|
|
292
|
+
Файли стану завдань (`.json` і `.log`) у `%TEMP%\whisper-mcp-jobs\` автоматично очищуються при запуску для файлів старших 7 днів. При необхідності можна виконати ручне очищення:
|
|
293
|
+
|
|
294
|
+
```powershell
|
|
295
|
+
Remove-Item "$env:TEMP\whisper-mcp-jobs\*" -Force
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
Тимчасові WAV-файли конвертування (`whisper_tmp_*.wav` у `%TEMP%`) видаляються одразу після завершення кожної транскрипції. Якщо транскрипція аварійно завершилась, вони можуть залишитися. Видаліть їх вручну:
|
|
299
|
+
|
|
300
|
+
```powershell
|
|
301
|
+
Remove-Item "$env:TEMP\whisper_tmp_*.wav" -Force
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
---
|
|
305
|
+
|
|
306
|
+
## Великий автономний пакет з командного рядка
|
|
307
|
+
|
|
308
|
+
Для дуже великих пакетів без Claude використовуйте PowerShell безпосередньо.
|
|
309
|
+
|
|
310
|
+
**Важливо:** whisper-cli.exe не може безпосередньо читати MP4, MKV або більшість відеоформатів. FFmpeg має попередньо конвертувати кожен файл у WAV. Whisper записує транскрипцію у stdout, а діагностику у stderr — використовуйте `Start-Process -RedirectStandardOutput` для правильного захоплення.
|
|
311
|
+
|
|
312
|
+
```powershell
|
|
313
|
+
$whisper = "C:\whisper\Release\whisper-cli.exe"
|
|
314
|
+
$model = "C:\whisper\models\ggml-medium.en.bin"
|
|
315
|
+
$dir = "C:\шлях\до\вашої\теки"
|
|
316
|
+
$ffmpeg = "ffmpeg"
|
|
317
|
+
$tmp = "$env:TEMP\whisper_convert.wav"
|
|
318
|
+
|
|
319
|
+
Get-ChildItem "$dir\*.mp4" | ForEach-Object {
|
|
320
|
+
$out = ($_.FullName -replace '\.mp4$', '') + ".txt"
|
|
321
|
+
if (Test-Path $out) {
|
|
322
|
+
Write-Host "ПРОПУСК (існує): $($_.Name)"
|
|
323
|
+
return
|
|
324
|
+
}
|
|
325
|
+
Write-Host "Конвертування: $($_.Name)"
|
|
326
|
+
& $ffmpeg -y -i $_.FullName -ar 16000 -ac 1 -c:a pcm_s16le $tmp 2>$null
|
|
327
|
+
Write-Host "Транскрипція: $($_.Name)"
|
|
328
|
+
$wArgs = "-m `"$model`" -f `"$tmp`" --threads 8 --max-context 0 --no-speech-thold 0.6"
|
|
329
|
+
Start-Process -FilePath $whisper -ArgumentList $wArgs -RedirectStandardOutput $out -Wait -NoNewWindow
|
|
330
|
+
Write-Host "Готово: $($_.BaseName).txt"
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
Remove-Item $tmp -ErrorAction SilentlyContinue
|
|
334
|
+
Write-Host "Все готово."
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
Замініть `*.mp4` на `*.mkv`, `*.m4a` тощо відповідно до типів ваших файлів. Перевірка пропуску `Test-Path` означає, що повторний запуск скрипту після переривання не переопрацьовуватиме вже завершені файли.
|
|
338
|
+
|
|
339
|
+
---
|
|
340
|
+
|
|
341
|
+
## Розташування файлу конфігурації
|
|
342
|
+
|
|
343
|
+
```
|
|
344
|
+
C:\Users\ВашеІм'я\AppData\Roaming\Claude\claude_desktop_config.json
|
|
345
|
+
```
|
|
346
|
+
|
|
347
|
+
Якщо `AppData` не відображається: Вигляд → Показати → Приховані елементи у Провіднику файлів.
|
|
348
|
+
|
|
349
|
+
---
|
|
350
|
+
|
|
351
|
+
## Повний робочий приклад конфігурації
|
|
352
|
+
|
|
353
|
+
```json
|
|
354
|
+
{
|
|
355
|
+
"mcpServers": {
|
|
356
|
+
"whisper": {
|
|
357
|
+
"command": "npx",
|
|
358
|
+
"args": ["-y", "whisper-windows-mcp"],
|
|
359
|
+
"env": {
|
|
360
|
+
"WHISPER_CLI_PATH": "C:\\whisper\\Release\\whisper-cli.exe",
|
|
361
|
+
"WHISPER_MODEL": "C:\\whisper\\models\\ggml-medium.en.bin",
|
|
362
|
+
"FFMPEG_PATH": "ffmpeg"
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
```
|
|
368
|
+
|
|
369
|
+
`FFMPEG_PATH` типово має значення `ffmpeg` (передбачається наявність у PATH). Задавайте явно лише якщо FFmpeg встановлено в нестандартному місці.
|