mirror of
https://github.com/Mintplex-Labs/anything-llm.git
synced 2026-07-19 14:13:35 -04:00
[GH-ISSUE #5129] [BUG]: QNN Engine fails on Snapdragon X Plus (X1P42100) due to unrecognized SoC in cpuinfo (Windows ARM64) #4933
Closed
opened 2026-06-05 14:50:57 -04:00 by yindo
·
9 comments
No Branch/Tag Specified
master
5846-bug-when-scrolling-up-scrolling-jumps
refactor-remove-workspace-pfp
5969-bug-stopgenerationbutton-disappears-on-the-first-prompt-that-initiates-an-agent-session
2235-bug-how-to-upload-a-folder-with-subfolders-with-files-to-anythingllm
5990-workspace-update-fails-with-unknown-argument-router_id-v1130v1150-intel-mac
opencomputer-examples
pg
feat/image-generation-translations
feat/image-generation
5924-bug-meeting-summary-fails-with-sincludes-is-not-a-function-when-default-llm-is-anthropic-claude
render
feat/uniform-modal-component
5883-bug-unescaped-content-in-json-strings-being-passed-to-document-generator-tools
5901-bug-api-update-embeddings-fails-prisma-argument-filename-is-missing-on-workspace_documentscreate-desktop-windows-v1141
hybrid-search
1981-translations
5752-bug-prompts-to-local-jan-endpoint-unresponsive
feat-disable-native-tool-calling-env-var
5676-bug-non-ollama-agent-providers-do-not-parse-and-present-reasoning-content
feat/markdown-web-scraping
5717-bug-apiv1documentupload-silently-drops-metadata-field-in-desktop-1130-arg-count-mismatch-nested-payload-key
fix/aibitat-context-overflow
5711-bug-erratic-deepseek-v4-flash-the-agent-model-failed-to-respond-400-the-reasoning_content
5631-feat-custom-api-request-timeouts-for-ai-providers
feat-reasoning-control
feat-agent-clarifying-questions-translations
5583-bug-lm-studio-provider-does-not-present-reasoning-output
5313-normalize-translations
feat/memory-translations
5305-lemonade-embedding-engine-swallows-errors-falsely-reports-documents-as-embedded
5060-bug-agent-interactions-agent-are-not-persisted-to-thread-history-via-api
pptx-subagent
feat-render-images-from-mcp-tool-results
stt-provider-expansion-openai-api-compatible
feat-file-search-agent-tool
feat-native-embedder-job-queue
5189-normalize-translations
feat-file-search-agent-tool-translations
i18n-eslint
5140-auto-migration
5112-bug-openrouter-failed-message-bug
3506-feat-parameters-for-openrouter-models
4992-feat-preserve-scroll-position
4973-bug-markdown-numbered-list-display-in-reasoning-pane
desktop
4938-bug-pending-chat-rerendering-ui-bug
quickstart-env
node-llama-cpp-in-container-cuda
node-llama-cpp-in-container
ollama-in-container
4817-feat-set-cooldown-per-mcp-server
4845-keyboard-shortcuts-to-navigate-in-chat
4844-feat-reorder-threads-by-latest-interaction
standardize-username-constraints-normalize-translations
4792-feat-refactor-workspacepfp-image
1382-embed-ip-improvements
1382-bug-embed-api-improvements
refactor-eslint-frontend
4687-feat-refactor-vector-db-providers
4615-feat-disable-apidocs-with-environment-variable
4559-feat-agent-web-search-enable-ordering-of-results
4599-bug-ollama-race-condition-bug
4572-bug-lmstudio-provided-llm-stopped-working-with-anything-llm-after-upgrading-to-190
4508-agent-youtube-transcript-analysis
4497-feat-workspace-names
frontend-eslint
ollama-lmstudio-auto-context-window
4431-validate-vector-database-connectioN
2019-slash-command-keyboard-selection
microsoft-foundry-provider
4431-validate-vector-database-connection
4325-sys-prompt-var-improvements
3209-feat-apiv1workspacestream-chat-sources-citations
4210-bug-voice-to-text-overwrite
4136-feat-jan-as-a-backend-server-option
4172-feat-openai-o3-support
1.8.3-rerelease
web-push-notifications-service
tasks
3955-feat-jinaai-embedder-provider-support
3921-feat-agent-skills-uiux-improvements
3901-bug-validfunccall-checks-optional-arguments
keyboard-dev
1787-custom-roles-and-permissions
add-jira-slack-data-connector
office-extension-wip
lightmode-dropdown-color-update
3586-bug-agent-flow-function-description-provided-by-user-is-not-seen-in-the-llm-query
3463-bug-agent-continues-to-run-if-request-failed-even-after-exit
3439-feat-call-variables-within-the-flow-api-block-url-field
3282-manager-view-models-workspace
3280-token-counting-server-side-truncation-improvements
3147-bug-embedded-chat-widget---not-considering-query-mode-option-always-working-in-chat-mode
2995-feat-disable-temperature-setting-for-deepseek-r1-deepseek-reasoner-model
2827-feat-perplexity-citations
2866-feat-finally-a-gemini-models-endpoint
2647-feat-hpp-header-for-a-c++-code-file-mime-addition
lancedb-revert
1656-feat-implement-tooltip-ui-designs
2011-feat-bump-perplexity-models
1873-feat-auto-add-and-watch-folder-for-document-uploads
1297-feat-gemini-agent-support
1759-bug-ui-bug-fixes
1686-feat-implement-winston-for-logging
1536-bug-toggling-on-users-can-delete-workspaces-does-not-take-effect
agent-ui-mobile-styles
1522-feat-chromadb-support
1595-bug-unable-to-get-live-web-search-and-browsing-agent-working-using-google-custom-search-engine-error-getaddrinfo-enotfound-http-errno-3008
1582-bug-lm-studio-does-not-allow-for-different-model-selection
1312-bug-usernames-should-not-be-case-sensitive-when-logging-in
1029-feat-hf-serverless-inference-api
1086-feat-implement-normalized-input-fields
knowledge-graph-support
644-bug-uploaded-file-name-does-not-match-the-displayed-file-name-after-the-upload
v1.15.0
v1.14.2
v1.14.1
v1.14.0
v1.13.0
v1.12.1
v1.12.0
v1.11.2
v1.11.1
v1.11.0
v1.10.0
v1.9.1
v1.9.0
v1.8.5
v1.8.4
v1.8.3
v1.8.2
v1.8.1
v1.8.0
v1.7.8
v1.7.6
v1.7.5
v1.7.4
v1.4.0
v1.3.0
v1.2.4
v1.2.3
v1.2.2
v1.2.1
v1.2.0
v1.1.1
v1.1.0
v1.0.0
Labels
Clear labels
Desktop
Docker
Integration Request
Integration Request
OS: Linux
OS: Mobile
OS: Windows
UI/UX
blocked
bug
bug
core-team-only
documentation
duplicate
embed-widget
enhancement
feature request
github_actions
good first issue
investigating
needs info / can't replicate
possible bug
pull-request
question
stage: specifications
wontfix
Mirrored from GitHub Pull Request
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: Mintplex-Labs/anything-llm#4933
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @IsaacTenorioLondono on GitHub (Mar 3, 2026).
Original GitHub issue: https://github.com/Mintplex-Labs/anything-llm/issues/5129
How are you running AnythingLLM?
AnythingLLM desktop app
What happened?
When running AnythingLLM on a Windows ARM64 device powered by a Snapdragon X Plus (X1P42100, Oryon CPU), the QNN Engine fails to initialize and remains offline.
Although:
The engine ultimately fails with the following error:
After this, the backend repeatedly logs:
The issue appears to stem from the bundled cpuinfo library not recognizing the Snapdragon X Plus (X1P42100) SoC, causing the QNN engine initialization to abort even though the SDK and NPU are functioning properly.
Environment
Observed Behavior
From logs:
The QNN API server boots but never transitions to ready state, causing the backend to report the engine as offline.
I watched the YouTube video "https://www.youtube.com/watch?v=iQvHtubnfcI&t=293s" and everything works perfectly in that video, but it’s because they are using the Snapdragon X Elite processor. I have the Snapdragon X Plus, which has two versions: one with 10 cores and another with 8. Both supposedly have the same NPU according to my research on the Qualcomm website, but still, AnythingLLM doesn't seem to recognize my processor.
Please note that the processor reference used in the video is the Snapdragon X Elite X1E80100, and the one I’m using is the Snapdragon X Plus X1P42100
Are there known steps to reproduce?
Steps to Reproduce
@timothycarambat commented on GitHub (Mar 4, 2026):
The
Unknown chip model nameis innocuous here and can be ignored - it always shows for any CPU. The earlier logs in your screenshot showMATCHso it is still trying to run the service anyway.The fact the NPU based embedder in the 2nd terminal screenshot works but the underlying engine itself is not launching indicates that this could be a
mallocissue with the model binaries themselves, since the embedder is very small for memory but the LLM is comparably massive.Are you/have you tried the llama 3.2 3B 8K model? The phi model is slightly larger with a smaller context, but the binaries require more memory space on the NPU and with the 8-core model it could be the root issue. Discussion staying open and i'm subscribed to this issue so I will keep investigating with you - just closing the issue while under investigation.
@IsaacTenorioLondono commented on GitHub (Mar 4, 2026):
Thank you for analyzing everything I sent: I ran the application again and captured the full output.
I am using the exact model you recommended:
llama_v3_2_3b_chat_8kThe logs show that the QNN engine initializes correctly with that model:
[QNN Engine] Initialized with model: llama_v3_2_3b_chat_8k. Context window: 8192However, shortly after startup, the following error appears:
After that, the backend retries 5 times and eventually throws:
Error: QNN Engine is offline.It seems the Snapdragon X Plus (X1P42100) is detected, but not recognized by the cpuinfo layer used by QNN.
Environment:
Let me know if you need additional logs or testing.
@timothycarambat commented on GitHub (Mar 4, 2026):
Is it possible to post the full log so i can see everyline around the QNN startup? Are you comfortable with Powershell? I can give you some CLI commands to run to help trace the issue with a much more definitive crash
@IsaacTenorioLondono commented on GitHub (Mar 4, 2026):
Yes, I’m comfortable using PowerShell.
I can run whatever CLI commands you provide.
I’ve also attached the full log above including the entire QNN startup sequence.
Let me know the commands you’d like me to execute and I’ll report back with the output.
@timothycarambat commented on GitHub (Mar 5, 2026):
Hm, okay then lets to debug this via calling the engine directly:
First open
%APPDATA%/Local/Programs/AnythingLLM/resources/QnnSDK/LLMServerin terminal.In here should be a file called
AnythingLLMQnnEngine.exeNext open explorer and navigate to
%APPDATA%/Roaming/anythingllm-desktop/storage/models/QNN/llama_v3_2_3b_chat_8kfolder and right click -> Copy as pathIn terminal you should run a command that looks like this
Press enter, you should see the server begin to boot. Now simply wait! After
GenieProfile bound successfully - accurate metrics enabled.you should hopefully see[INFO] "using create from Binary"and some other[INFO]logs.Considering the machine, our timeout may not be long enough to create the binary on your machine and it times out before
malloccompletes.If this works, you can try a simple request in another terminal window.
Should output something like
Kill AnythingLLM before doing this just to be sure there is not port collision.
@takeshy commented on GitHub (Mar 10, 2026):
I can confirm this issue also occurs on Snapdragon X Elite (Lenovo Yoga X Elite), not just X Plus.
Environment:
Error when running AnythingLLMQnnEngine.exe directly:
Key finding — this is a regression:
A Japanese tech article from June 2025 documents Phi 3.5 Mini working correctly on the same Snapdragon X Elite hardware: https://forest.watch.impress.co.jp/docs/serial/usecopilotpc/2022243.html
I also verified that the model binaries currently bundled with AnythingLLM are identical to the official Snapdragon X Elite binaries distributed by Qualcomm AI Hub (
phi_3_5_mini_instruct_4k, downloaded with "Snapdragon X Elite" selected). File sizes and dates match exactly (2024/12/13).This means the model binaries are correct for X Elite — the issue lies in
AnythingLLMQnnEngine.exeitself.Additional finding: Llama 3.2 3B (llama_v3_2_3b_chat_8k) also fails with the same error on Snapdragon X Elite:
[INFO] "Using create From Binary"
[INFO] "Allocated total size = 506298880 across 5 buffers"
[ERROR] "Could not create context from binary for context index = 2 : err 1002"
[ERROR] "Create From Binary FAILED!"
Failed to load model: Failed to create the Genie Dialog.
This confirms the issue is not specific to the Phi 3.5 Mini model — err 1002 occurs with all models on this device. The problem is in AnythingLLMQnnEngine.exe itself.
Update: I also tested Microsoft Foundry Local (which uses ONNX Runtime QNN EP, completely independent from Genie SDK) and got the same failure:
Error code: 14001
Failed to load from EpContext model.
Failed to create context from binary.
This suggests the root cause may be in the Qualcomm NPU driver environment on this device rather than AnythingLLMQnnEngine.exe specifically. Will investigate driver updates.
@timothycarambat commented on GitHub (Mar 10, 2026):
For our engine we use the QNN SDK - which if fails to load due to memory would be code 1005/1004 or something like that.
If MS ONNX format is also failing via the ExecutionProvider (which also uses what QNN SDK uses) then we know its not the code specifically, and it happens on every model size, then that only leaves hardware/drivers.
The above, in a different form has happened before and it was due to a driver issue on a new update of Windows, but IIRC it was on a specific Dell device - not a Lenovo. However, I believe the same situation could be applying here :/
@takeshy commented on GitHub (Mar 10, 2026):
Thanks for the detailed analysis!
Root cause found: Memory Integrity (HVCI) was blocking NPU access
After further investigation, I discovered the actual root cause on my Snapdragon X Elite device (Lenovo Yoga X Elite):
Windows Memory Integrity (HVCI) was enabled, which blocks the Hexagon DSP skeleton library from loading. This caused
err 1002(Genie SDK) anderror 14001(ONNX Runtime QNN EP) across all tools — not just AnythingLLM.Verification:
Fix: Disabled Memory Integrity via Windows Security → Device Security → Core Isolation → Memory Integrity → OFF, then rebooted.
After disabling HVCI, both AnythingLLM QNN Engine and Microsoft Foundry Local NPU models load successfully.
I agree the error code doesn't point to malloc/memory — it was a DSP skel library load failure caused by HVCI blocking the unsigned kernel-level code.
Summary for anyone hitting this issue:
@timothycarambat commented on GitHub (Mar 10, 2026):
@takeshy Excellent work! I will report this to Qualcomm directly since I have a line with them - this is a critical issue that should be fixed by them/vendor/MSFT - because its going to be an issue going forward it seems.