diff --git a/examples/demo-apps/android/LlamaDemo/app/src/main/java/com/example/executorchllamademo/MainActivity.java b/examples/demo-apps/android/LlamaDemo/app/src/main/java/com/example/executorchllamademo/MainActivity.java index 37268202b69..b26031d89a6 100644 --- a/examples/demo-apps/android/LlamaDemo/app/src/main/java/com/example/executorchllamademo/MainActivity.java +++ b/examples/demo-apps/android/LlamaDemo/app/src/main/java/com/example/executorchllamademo/MainActivity.java @@ -90,6 +90,7 @@ public void onResult(String result) { if (result.equals(PromptFormat.getStopToken(mCurrentSettingsFields.getModelType()))) { return; } + result = PromptFormat.replaceSpecialToken(mCurrentSettingsFields.getModelType(), result); if (result.equals("\n\n") || result.equals("\n")) { if (!mResultMessage.getText().isEmpty()) { mResultMessage.appendText(result); diff --git a/examples/demo-apps/android/LlamaDemo/app/src/main/java/com/example/executorchllamademo/PromptFormat.java b/examples/demo-apps/android/LlamaDemo/app/src/main/java/com/example/executorchllamademo/PromptFormat.java index 5f8ecdd8042..524ad7cbf6d 100644 --- a/examples/demo-apps/android/LlamaDemo/app/src/main/java/com/example/executorchllamademo/PromptFormat.java +++ b/examples/demo-apps/android/LlamaDemo/app/src/main/java/com/example/executorchllamademo/PromptFormat.java @@ -99,6 +99,22 @@ public static String getThinkingModeToken(ModelType modelType, boolean thinkingM } } + public static String replaceSpecialToken(ModelType modelType, String token) { + switch (modelType) { + case QWEN_3: + switch (token) { + case "<|im_end|>": + return ""; + case "": + return "Thinking...\n"; + case "": + return "\nDone thinking"; + } + default: + return token; + } + } + public static String getLlavaPresetPrompt() { return "A chat between a curious human and an artificial intelligence assistant. The assistant" + " gives helpful, detailed, and polite answers to the human's questions. USER: ";