[windows][foundry-local] audio_transcribe 静默挂起:模型加载成功但转录永不返回(无错误、无超时、CPU fallback 不触发)

Ouverte
#1,237 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 1 jour

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
38/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
Active
Stack technique
rust

Piste de recherche

Start by tracing the Foundry Local Whisper audio_transcribe call and the GPU-to-CPU fallback path in the Rust code; the issue does not name files or tests. Check how the call handles a request that never responds and whether fallback is reached. Done means transcription returns or reports a clear error within a reasonable time, and a hung GPU request can trigger CPU fallback.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

环境
  • OS: Windows 11(26200)
  • OpenLess: 2.0.1+build.20261016(C:\Program Files\OpenLess)
  • ASR: foundry-local-whisper / whisper-large-v3-turbo(openai-whisper-large-v3-turbo-cuda-gpu:3,已完整下载缓存)
  • 硬件: RTX 5090 Laptop GPU,驱动 32.0.16.1088(2026-07-22)
  • 相关配置:foundryLocalAsrKeepLoadedSecs: 300、foundryLocalAsrLanguageHint: zh
现象

模型每次都能正常加载到 GPU(日志 Model loaded successfully,耗时 1.1–2.2s),但 audio_transcribe 命令发出后永远没有任何返回——无转录结果、无异常、无超时回调。Foundry 日志在此命令之后只剩下每 3 秒一次的 ModelInfo 轮询,直到进程退出。

OpenLess 侧最终只在 app 自己的动态超时后报错:

[WARN] [coord] core dictation press failed: native ASR provider failed: transcribe Foundry Local Whisper recording (1 chunks) with model whisper-large-v3-turbo

源码中设计的 GPU→CPU fallback 完全没有触发(日志中没有任何 cpu_variant_selected / cpu_download_started 事件),用户侧就是无限等待。

复现步骤
  1. 设置 → 本地 ASR → 选择 Foundry Local Whisper + whisper-large-v3-turbo
  2. 按热键录音,松开送出
  3. 观察:模型加载成功 → audio_transcribe 发出 → 再无下文

已稳定复现 3/3 次(同日 14:00、22:25、22:26)。

关键日志

foundry.core20261019.log:

22:25:39.887 [INF] Model loaded successfully: openai-whisper-large-v3-turbo-cuda-gpu:3
22:25:39.895 [INF] ExecuteCommandWithCallbackManaged: audio_transcribe Data:{"Params":{"OpenAICreateRequest":"{\"FileName\":\"...foundry-whisper-aa863a91-....wav\",\"Language\":\"zh\",\"Model\":\"openai-whisper-large-v3-turbo-cuda-gpu:3\"}"}
—— 之后无任何该命令的响应/错误/完成日志 ——
22:26:34.013 [INF] [Telemetry] Command:ModelInfo Status:Invalid ...(只剩轮询)

(对照:14:00 那次同样 ModelLoad Status: Success Time:1267ms 后 audio_transcribe 发出,同样无下文。)

一台机器上的特殊情况(可能是线索)

该机 nvidia-smi 报 Failed to initialize NVML: Unknown Error(重启 + 已用 powercfg /h off 排除 Fast Startup 后仍然复现)。但 CUDA 计算本身正常:ComfyUI 日常使用正常,Foundry 的 EP registration complete: ... CUDAExecutionProvider ... 成功,ModelLoad 也成功。即问题不是"GPU 完全不可用",而是 Foundry Local Core 在 audio_transcribe 推理路径上静默卡死。

期望
  • audio_transcribe 应在合理时间内返回结果或抛出明确错误
  • GPU 推理失败/挂起时应触发已实现的 CPU fallback,而不是让用户无限等待
  • 建议为 Foundry 调用增加更短的服务端心跳/进度日志,便于定位卡在哪一步
附注

同日该机 sherpa-onnx-local(sense-voice-small-zh)亦无法完成安装(模型从未出现在 models 目录,界面无明确错误提示),如需要可另行开 issue 补充。

Langage dominant
Rust
Étoiles
3.7k
Forks
349
Merge moyen
2 j 14 h
PR mergées (30 j)
97

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de Open-Less/openless

Toutes les issues de Open-Less/openless

Issues similaires

Plus d'issues Rust

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.