[Bug] Voice mode crashes CLI with ONNX Runtime assertion in Nemotron ASR on Linux
还没有人认领这个 Issue。
- 主要语言
- Shell
- 星标
- 11.2k
- 派生
- 1.9k
- 平均合并
- 14 小时 16 分钟
- 30 天内合并 PR
- 6
描述
Describe the bug
Enabling and using voice input causes GitHub Copilot CLI to abort with signal 6 (SIGABRT) and dump core on Linux x64. The crash occurs while the local Nemotron speech model is processing audio.
Copilot CLI version
1.0.83
Environment
- OS: Manjaro Linux
- Kernel:
7.1.13-2-MANJARO - Architecture:
x86_64 - glibc:
2.44 - Node.js runtime shown by CLI logs:
v24.20.0 - Microphone:
HD-Audio Generic / ALC257 Analog - Voice model:
nemotron-3.5-asr-streaming-0.6b-generic-cpu:3
Steps to reproduce
- Start Copilot CLI 1.0.83 on Linux x64.
- Enable voice input with
/voice. - Start recording and speak into the default microphone.
- Stop recording / allow transcription to start.
- The Copilot CLI process aborts and the system records a core dump.
Expected behavior
The spoken input is transcribed and inserted into the prompt without terminating the CLI.
Actual behavior
The CLI terminates with Signal: 6 (ABRT). The crash stack is in ONNX Runtime GenAI and Foundry Local Core:
__assert_fail (libc.so.6)
libonnxruntime.so
OrtSession::Run (libonnxruntime-genai.so)
Generators::NemotronEncoderSubState::Run
Generators::NemotronSpeechState::StepToken
OgaGenerator_GenerateNextToken
Microsoft.AI.Foundry.Local.Core.so
The process command line was:
/home/soenke/.nvm/versions/node/v24.13.0/lib/node_modules/@github/copilot/node_modules/@github/copilot-linux-x64/copilot --prefer-version 1.0.83
The complete systemd-coredump stack trace is attached in the report supplied with this issue.
Additional context
- The microphone is detected by ALSA and appears as a capture device.
- The voice server starts successfully and accepts a client connection.
- A previous voice-server log entry also reported
PvRecorder failed to read audio data frame, but the fatal crash reported here happens later in the Nemotron/ONNX Runtime inference path. - Updating with
copilot updateconfirms that1.0.83is currently the latest available version. - The crash appears to be in the bundled native voice stack (
Microsoft.AI.Foundry.Local.Core.so/libonnxruntime-genai.so), rather than in repository code or the prompt UI. - Related issue: #4024 (voice transcription routing failure for
nemotron_speech); this report is different because the CLI aborts instead of returning an empty transcript.
Logs
A full stack trace is available from the reporter and can be provided if needed. The key frames are:
#4 __assert_fail (libc.so.6)
#5 ... (libonnxruntime.so)
#20 OrtSession::RunEP ... (libonnxruntime-genai.so)
#21 Generators::NemotronEncoderSubState::Run ...
#22 Generators::NemotronSpeechState::StepToken ...
#23 Generators::Generator::GenerateNextToken ...
#24 OgaGenerator_GenerateNextToken ...
#25+ Microsoft.AI.Foundry.Local.Core.so
Could the voice inference path handle this model/runtime error without aborting the entire CLI, and could the Linux CPU Nemotron model compatibility be investigated?
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
从提供的 systemd-coredump 跟踪以及随附的 Microsoft.AI.Foundry.Local.Core.so 和 libonnxruntime-genai.so 工件开始。跟踪 /voice 录音路径经过 NemotronSpeechState::StepToken 和 OrtSession::Run 的过程,然后使用列出的模型和 runtime 在 Linux x64 上复现。完成的标准是:兼容性故障已得到分析,且 CLI 在转录期间不再中止,或者问题已缩小到随附的 native stack。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- linux, machine-learning, node.js
- 领域
- cli, machine-learning, operating-systems
- Issue 类型
- 缺陷
- 难度
- 5/5
- 预计耗时
- 一周以上
- 活跃度
- 活跃
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100