A Python wrapper for Qualcomm QAIRT SDK
Project description
QAIRT Wrapper
一个用于高通QAIRT SDK的Python包装器。
安装
pip install qairt-wrapper
使用方法
环境设置
使用前,您需要确保已正确设置QAIRT SDK环境。有两种方式:
-
推荐方式: 运行SDK包中的环境设置脚本
source /path/to/qairt/2.35.0.250530/bin/envsetup.sh
这将自动设置
QNN_SDK_ROOT和SNPE_ROOT环境变量。 -
手动指定SDK路径: 如果无法设置环境变量,可以在代码中手动指定SDK路径。
代码示例
from qairt_wrapper import init_qairt, Model, Config, InterpreterBuilder, DataType, FrameworkType, AccelerateType
# 初始化SDK
try:
# 自动检测环境变量
init_qairt()
except ImportError as e:
print(f"错误: {e}")
# 手动指定路径
sdk_path = input("请输入QAIRT SDK的lib/python路径: ")
init_qairt(sdk_path)
# 创建模型实例
model = Model.create_instance("model.dlc")
model.set_model_properties(
input_shapes=[[1, 224, 224, 3]],
input_dtype=DataType.TYPE_FLOAT32,
output_shapes=[[1, 1000]],
output_dtype=DataType.TYPE_FLOAT32
)
# 创建配置
config = Config.create_instance()
config.framework_type = FrameworkType.TYPE_QNN
config.accelerate_type = AccelerateType.TYPE_CPU
# 构建解释器
interpreter = InterpreterBuilder.build_interpretper_from_model_and_config(model, config)
# 初始化解释器
ret = interpreter.init()
if ret != 0:
print("初始化解释器失败")
exit(1)
# 加载模型
ret = interpreter.load_model()
if ret != 0:
print("加载模型失败")
exit(1)
# 设置输入数据
import numpy as np
input_data = np.random.random((1, 224, 224, 3)).astype(np.float32)
interpreter.set_input_tensor(0, input_data)
# 执行推理
interpreter.invoke()
# 获取输出
output = interpreter.get_output_tensor(0)
print(f"输出形状: {output.shape}")
# 释放资源
interpreter.destory()
要求
- 需要安装高通QAIRT SDK
- 支持通过环境变量
QNN_SDK_ROOT或SNPE_ROOT自动检测SDK路径 - 也可以手动指定SDK路径
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
qairt_wrapper-1.0.2.tar.gz
(5.4 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file qairt_wrapper-1.0.2.tar.gz.
File metadata
- Download URL: qairt_wrapper-1.0.2.tar.gz
- Upload date:
- Size: 5.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3250c946e11642cbfdc5a86e72683bd58142ed90cbeb1cfe4664a877d8051555
|
|
| MD5 |
5fc21b640fac02887f6a0a6b12ae34b8
|
|
| BLAKE2b-256 |
09496da2b9ef4d89a4428f3c5b90b568498bffa0c595fce2c7ffbd81da6b9ea5
|
File details
Details for the file qairt_wrapper-1.0.2-py3-none-any.whl.
File metadata
- Download URL: qairt_wrapper-1.0.2-py3-none-any.whl
- Upload date:
- Size: 6.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.10.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3ceb80a001ad3a7020a48fbec29b256f04a8bdd7250f9e85b6e7373fcaf273f5
|
|
| MD5 |
0769b9a4f6c87ea6f8eff650414ccb3e
|
|
| BLAKE2b-256 |
24cc44743806f6e4773a09333456d9c00666489d1e9574588989093f1cb73a55
|