Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

[Bug][Linux] /v1/embeddings always fails with qds_device::wait() unexpected command state (Krackan Point, FLM 1.0.6)

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

メンテナーはふだん 1 日以内に返信

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

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
40/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
c, cpp, linux

調査の方向性

The issue is in the NPU driver stack, likely in the XRT plugin or amdxdna driver. Start by examining the server logs around the embedding dispatch and the error 'qds_device::wait() unexpected command state'. Look at the related issues #732, #661, #647, #655 for context on similar Linux/NPU problems. Check the embedding model loading and inference path in the FastFlowLM codebase, focusing on how it interfaces with the XRT API for the Krackan Point hardware. Reproduce the error with the given steps to confirm the environment.

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

説明

Problem Description

On Linux, every request to /v1/embeddings fails with the same internal XRT error, deterministically, while chat completions on the same server instance keep working fine.

Request:

curl http://127.0.0.1:52625/v1/embeddings \
  -d '{"model":"embed-gemma:300m","input":"hola"}'

Response (100% of requests):

{"error":"qds_device::wait() unexpected command state"}

Server log shows the request arriving and being accepted, then the error:

[LOG]  Target: /v1/embeddings
    "model": "embed-gemma:300m"
Embedding input[0]: hola
→ {"error":"qds_device::wait() unexpected command state"}

Notes:

  • Happens with single-string input and with arrays.
  • flm serve llama3.2:1b --embed 1 loads both models successfully (Embedding mode enabled: reserving additional 300MB); failure only occurs at the actual embed dispatch.
  • Without --embed 1, chat on the same box is fine (96 tok/s prefill / 42 tok/s decode with llama3.2:1b).
  • The error message text matches the generic XRT/NPU queue-state error also seen in Xilinx/mlir-aie#1751 and amd/RyzenAI-SW#177.

Related issues (but not the same symptom): #732 and #661 report embeddings that complete but are wrong/collapsed on Linux; #647 reports non-determinism; #655 reports an IOCTL regression on the same chip family (Krackan Point). This report adds the case where the embed dispatch itself errors out on every request.

Environment
Item Value
Hardware AMD Ryzen AI 5 PRO 340 (Krackan Point), PCI 1022:17f0, Lenovo subsystem
OS Omarchy (Arch Linux), Wayland
Kernel 7.2.5-4-omarchy
NPU FW 1.1.2.64
Device /dev/accel/accel0 with 8 columns
amdxdna in-tree, reported as 0.10 by flm validate
XRT xrt 2.21.75-14 + xrt-plugin-amdxdna 2.21.75-2 (Arch extra)
FLM fastflowlm 1.0.6-1 (Arch extra)
Memlock unlimited (via ulimit wrapper)

flm validate output:

[Linux]  Kernel: 7.2.5-4-omarchy
[Linux]  NPU: /dev/accel/accel0 with 8 columns
[Linux]  NPU FW Version: 1.1.2.64
[Linux]  amdxdna version: 0.10
[Linux]  Memlock Limit: infinity
Steps to reproduce
flm pull llama3.2:1b
flm pull embed-gemma:300m
flm serve llama3.2:1b --embed 1

curl http://127.0.0.1:52625/v1/embeddings \
  -H 'Content-Type: application/json' \
  -d '{"model":"embed-gemma:300m","input":"hola"}'
Expected

A vector array response:

{"data":[{"embedding":[...],...}]}
Actual
{"error":"qds_device::wait() unexpected command state"}

CPU governor/pmode (--pmode balanced) does not change the outcome; also reproduced with pmode default. Model files pass flm check after a fresh verified download.

主要言語
C++
スター
1.9k
フォーク
152
平均マージ
2日 2時間
マージ済み PR(30日)
11

環境構築

はじめの一歩

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

ROCm/FastFlowLM のほかの issue

ROCm/FastFlowLM の issue をすべて見る

似ている issue

C++ の issue をもっと見る

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

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