[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