diff --git a/backends/qualcomm/CMakeLists.txt b/backends/qualcomm/CMakeLists.txt index e93731e..4951e1d 100644 --- a/backends/qualcomm/CMakeLists.txt +++ b/backends/qualcomm/CMakeLists.txt @@ -308,8 +308,8 @@ if(${CMAKE_SYSTEM_PROCESSOR} MATCHES Hexagon) ) endif() -# QNN pybind -if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "x86_64") +# QNN pybind — host Python bindings, not for Android cross-compile +if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "x86_64" AND NOT ANDROID) add_subdirectory( ${EXECUTORCH_SOURCE_DIR}/third-party/pybind11 ${CMAKE_CURRENT_BINARY_DIR}/pybind11 diff --git a/extension/android/jni/jni_layer_llama.cpp b/extension/android/jni/jni_layer_llama.cpp index 45f2414..e1c2a8f 100644 --- a/extension/android/jni/jni_layer_llama.cpp +++ b/extension/android/jni/jni_layer_llama.cpp @@ -171,14 +171,17 @@ class ExecuTorchLlmJni : public facebook::jni::HybridClass { model_path->toStdString().c_str(), data_files_vector, executorch::extension::Module::LoadMode::MmapUseMlockIgnoreErrors); - std::string decoder_model = "llama3"; // use llama3 for now + std::string decoder_model = "qwen3"; // Kazeia: our .pte was exported with --decoder_model qwen3-4b runner_ = std::make_unique>( // QNN runner std::move(module), decoder_model.c_str(), model_path->toStdString().c_str(), tokenizer_path->toStdString().c_str(), - "", - ""); + /* performance_output_path */ "", + /* dump_logits_path */ "", + /* temperature */ 0.7f, + /* eval_mode */ 0, // EvalMode::kKVCached (our .pte has only kv_forward, no prefill_forward) + /* shared_buffer */ true); model_type_category_ = MODEL_TYPE_CATEGORY_LLM; #endif #if defined(EXECUTORCH_BUILD_MEDIATEK)