Back to Nexa Sdk

README

README.md

0.3.1610.6 KB
Original Source
<div align="center"> <picture> <source media="(prefers-color-scheme: dark)" srcset="GenieX-Logo-Hor-1-White.png" /> <source media="(prefers-color-scheme: light)" srcset="GenieX-Logo-Hor-1-Black.png" /> </picture>

The easiest way to run frontier LLMs & VLMs locally on Qualcomm devices

Documentation ยท Quickstart ยท Models ยท Community

</div>

GenieX is an on-device Gen AI inference runtime for Qualcomm devices. Bring almost any GGUF model from Hugging Face โ€” or a pre-compiled bundle from Qualcomm AI Hub โ€” and run it locally on the Hexagon NPU, Adreno GPU, or CPU in a few lines of code. One C SDK underneath, exposed through a CLI, Python, Kotlin/Java, Docker, and an OpenAI-compatible server. It is the community version of Qualcomm GENIE.

<div align="center"> </div>

Supported platforms

GenieX runs only on Qualcomm Snapdragon. Find your platform, then jump straight to the interface you want to use.

PlatformExample devicesJump to a quickstart
๐ŸชŸ Windows ARM64 (Compute)Snapdragon X ยท X EliteCLI ยท Python ยท Local server
๐Ÿค– Android (Mobile)Snapdragon 8 Elite ยท 8 Elite Gen 5Android SDK
๐Ÿง Linux ARM64 (IoT)Dragonwing QCS9075CLI ยท Docker ยท Python

No device on hand? Spin up a remote session on Qualcomm Device Cloud.


Quickstart

Pick your interface below. Each one follows the same three steps โ€” Install, Run, and Docs โ€” and shows both runtimes: a GGUF model from Hugging Face (llama_cpp) and a pre-compiled bundle from Qualcomm AI Hub (qairt, NPU).

CLI

Install

  • Windows ARM64 โ€” download the installer, run it, then open a new terminal.
  • Linux ARM64 โ€” one line, no sudo:
    bash
    curl -fsSL https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-geniex/install.sh | sh
    

Run โ€” chat with any model in one line (drag in an image for VLMs):

bash
# GGUF from Hugging Face โ†’ llama.cpp (NPU / GPU / CPU)
geniex infer google/gemma-4-E4B-it-qat-q4_0-gguf

# Pre-compiled bundle from Qualcomm AI Hub โ†’ Qualcomm AI Engine Direct (NPU)
geniex infer ai-hub-models/Qwen2.5-VL-7B-Instruct

# GGUF from Docker Hub (https://hub.docker.com/u/ai) โ†’ llama.cpp (NPU / GPU / CPU)
geniex infer docker.io/ai/gemma3

๐Ÿ“– Docs โ€” Install ยท Quickstart ยท Command reference

Python

Install

bash
pip install geniex

Run โ€” mirrors Hugging Face transformers (from_pretrained() โ†’ .generate()):

python
# GGUF from Hugging Face โ†’ llama.cpp
from geniex import AutoModelForCausalLM

model = AutoModelForCausalLM.from_pretrained("unsloth/Qwen3.5-2B-GGUF", precision="Q4_0")

messages = [{"role": "user", "content": "What is 2+2?"}]
prompt = model.tokenizer.apply_chat_template(messages, add_generation_prompt=True)

for chunk in model.generate(prompt, max_new_tokens=256, stream=True):
    print(chunk, end="", flush=True)

model.close()
python
# Pre-compiled bundle from Qualcomm AI Hub โ†’ Qualcomm AI Engine Direct (NPU)
from geniex import AutoModelForCausalLM

model = AutoModelForCausalLM.from_pretrained("ai-hub-models/Qwen3-4B")

messages = [{"role": "user", "content": "What is 2+2?"}]
prompt = model.tokenizer.apply_chat_template(messages, add_generation_prompt=True)

for chunk in model.generate(prompt, max_new_tokens=256, stream=True):
    print(chunk, end="", flush=True)

model.close()

๐Ÿ“– Docs โ€” Install ยท Quickstart ยท API reference

OpenAI-compatible server

Install โ€” ships with the CLI (install above).

Run โ€” pull any model (GGUF or Qualcomm AI Hub bundle), then serve an OpenAI-compatible API:

bash
geniex pull ai-hub-models/Qwen3-4B-Instruct-2507
geniex serve   # serves http://127.0.0.1:18181/v1
bash
curl http://127.0.0.1:18181/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "ai-hub-models/Qwen3-4B-Instruct-2507",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

Point any OpenAI client at http://127.0.0.1:18181/v1 โ€” no code changes.

๐Ÿ“– Docs โ€” Local server guide

Android (Kotlin / Java)

Install โ€” add the SDK to your app module's build.gradle.kts:

kotlin
dependencies {
    implementation("com.qualcomm.qti:geniex-android:0.3.1")
}

Run โ€” fastest path is the sample app (chat UI, model picker for GGUF + Qualcomm AI Hub bundles, VLM support):

The Android demo app lives in qualcomm/ai-hub-apps. Clone it, open the sample app in Android Studio, and hit Run.

๐Ÿ“– Docs โ€” Install ยท Quickstart ยท API reference

Docker

Install

bash
docker pull docker.io/qualcomm/geniex:latest

Run โ€” the container wraps the CLI, so geniex infer โ€ฆ works exactly as above.

๐Ÿ“– Docs โ€” Docker guide

C / C++ SDK

Install โ€” link against the single C header sdk/include/geniex.h; every other interface is a thin wrapper over it.

๐Ÿ“– Docs โ€” sdk/README.md ยท notes/build.md


Models

GenieX has two runtimes so you get broad model coverage and peak Snapdragon performance in one stack. Both LLMs and VLMs are supported.

llama.cpp (llama_cpp)Qualcomm AI Engine Direct (qairt)
Get models fromHugging Face (any GGUF)Qualcomm AI Hub (pre-compiled)
FormatGGUFPer-chipset bundle
Compute unitsNPU ยท GPU ยท CPUNPU only
Best forBringing your own GGUFHighest NPU performance

For llama.cpp, pick the Q4_0 precision when prompted โ€” it has the best Hexagon NPU support. See the Models guide โ†’ for the full list, precisions, and how to run a local model.

๐Ÿค Contributing

Contributions are welcome! Before opening a PR, please read CONTRIBUTING.md for branch naming, commit / PR title format, pre-commit checks, and the FFI-update rule for public SDK headers.

๐Ÿ—๏ธ Build the CLI, SDK, or Python bindingsnotes/build.md
โ–ถ๏ธ Run & select compute units / pull modelsnotes/run.md
๐Ÿท๏ธ Release โ€” SemVer tags, channels, HTP signingnotes/release.md
๐Ÿ“š All developer docsdocs/README.md

๐Ÿ’ฌ Community & Contact

Questions, ideas, or want to show off what you built? Come say hi.

  • ๐Ÿ’ฌ Slack โ€” ask questions and chat with the community in real time.
  • ๐Ÿ› GitHub Issues โ€” report a bug or request a feature.
  • ๐Ÿ”— LinkedIn โ€” follow Qualcomm AI Hub for news and updates.

Contributors

Thanks to everyone building GenieX ๐Ÿ’™

<a href="https://github.com/qualcomm/GenieX/graphs/contributors"> </a>

๐Ÿ“„ License

BSD 3-Clause โ€” see LICENSE and NOTICE.

Use of this project is also subject to Qualcomm's Terms of Use.