[Bug] Voice mode crashes CLI with ONNX Runtime assertion in Nemotron ASR on Linux

未关闭
#4,833 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
5/5
预计耗时
一周以上
新手友好度
35/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
活跃
技术栈
linux, machine-learning, node.js

调研方向

从提供的 systemd-coredump 跟踪以及随附的 Microsoft.AI.Foundry.Local.Core.so 和 libonnxruntime-genai.so 工件开始。跟踪 /voice 录音路径经过 NemotronSpeechState::StepToken 和 OrtSession::Run 的过程,然后使用列出的模型和 runtime 在 Linux x64 上复现。完成的标准是:兼容性故障已得到分析,且 CLI 在转录期间不再中止,或者问题已缩小到随附的 native stack。

由索引模型根据 Issue 内容生成。

描述

triage
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
  1. Start Copilot CLI 1.0.83 on Linux x64.
  2. Enable voice input with /voice.
  3. Start recording and speak into the default microphone.
  4. Stop recording / allow transcription to start.
  5. 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 update confirms that 1.0.83 is 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?

主要语言
Shell
星标
11.2k
派生
1.9k
平均合并
14 小时 16 分钟
30 天内合并 PR
6

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

github/copilot-cli 的其他 Issue

查看 github/copilot-cli 的全部 Issue

相似的 Issue

更多 Shell/Bash Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。