Skip to content

Is there a public workflow to convert Hugging Face models into Nexa .nexa NPU model packages? #1080

Description

Hi NexaSDK team,

I am currently testing the Android NexaSDK OCR example on a Qualcomm Snapdragon device.

The current OCR model I am using is:

  • NexaAI/paddleocr-npu-mobile
  • Android SDK dependency: ai.nexa:core
  • Runtime/plugin: plugin_id = "npu"
  • Model files include:
    • weights-1-1.nexa
    • attachments-1-1.nexa
    • nexa.manifest
    • ppocr_keys_v1.txt

This works well on device. However, the model card says it is based on PaddleOCR v4 / PP-OCRv4.

PaddleOCR has now released PP-OCRv6, and the latest models are available on Hugging Face, for example:

My questions are:

  1. Is there any public tool or documented workflow to convert a Hugging Face model, such as an ONNX or Paddle model, into Nexa’s .nexa model package format?
  2. For NPU models using plugin_id = "npu", is the .nexa package generated only by the Nexa/Qualcomm team, or can developers generate it themselves?
  3. If self-conversion is supported, what is the recommended path?
    • Nexa CLI?
    • Qualcomm AI Hub / AI Hub Workbench?
    • QNN / QAIRT tools?
    • Another official packaging tool?
  4. If Qualcomm AI Hub can compile a model into QNN DLC, QNN context binary, or precompiled QNN ONNX, can those artifacts be used directly by NexaSDK’s Android CvWrapper, or is an additional Nexa-specific packaging step required?
  5. For upgrading NexaAI/paddleocr-npu-mobile from PP-OCRv4 to PP-OCRv6, should developers wait for an official Nexa/Qualcomm converted model package, or is there a supported way to perform the conversion independently?

The documentation currently explains how to load existing NPU models, but I could not find a public guide for creating .nexa packages from new models.

Any clarification on the official model conversion and packaging workflow would be very helpful.

Thanks!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions