github / github/copilot-cli

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

オープン
#4,833 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

triage
主要言語
Shell
スター
11.2k
フォーク
1.9k
平均マージ
14時間 16分
マージ済み PR(30日)
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
  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?

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

提供された systemd-coredump トレースと、同梱された Microsoft.AI.Foundry.Local.Core.so および libonnxruntime-genai.so のアーティファクトから開始します。/voice 録音パスを NemotronSpeechState::StepToken と OrtSession::Run を通して追跡し、記載されているモデルとランタイムを使って Linux x64 で再現します。互換性の問題が特定され、文字起こし中に CLI が中断しなくなるか、問題の範囲が同梱されたネイティブスタックに絞り込まれれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
linux, machine-learning, node.js
領域
cli, machine-learning, operating-systems
issue の種類
バグ
難易度
5/5
見積もり時間
1週間以上
活発さ
活発
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。