summaryrefslogtreecommitdiff
path: root/examples/llama.android/app/src/main/java/com
diff options
context:
space:
mode:
authorDean <Dean.Sinaean@gmail.com>2024-03-11 04:03:17 +0800
committerGitHub <noreply@github.com>2024-03-10 22:03:17 +0200
commit7ab7b733bb48250b2df26c12b00256ef42c76932 (patch)
tree2b5596009f19da27436565c20c1fb155389ccb67 /examples/llama.android/app/src/main/java/com
parentd9f65c97c3dc3aa6fa27470b8c6e69b437ec1a27 (diff)
android : fix utf8 decoding error (#5935)
* examples: fix utf8 decoding error some models have a tokenizer that decodes an id into an incomplete utf8 sequence, need to validate and wait for next token one example would be: https://huggingface.co/Qwen/Qwen1.5-1.8B-Chat-GGUF/resolve/main/qwen1_5-1_8b-chat-q4_0.gguf and and an example of the token is 18137 * android : minor --------- Co-authored-by: zhangfuwen <zhangfuwen@foxmail.com> Co-authored-by: Georgi Gerganov <ggerganov@gmail.com>
Diffstat (limited to 'examples/llama.android/app/src/main/java/com')
-rw-r--r--examples/llama.android/app/src/main/java/com/example/llama/Llm.kt4
1 files changed, 2 insertions, 2 deletions
diff --git a/examples/llama.android/app/src/main/java/com/example/llama/Llm.kt b/examples/llama.android/app/src/main/java/com/example/llama/Llm.kt
index 5f327037..d86afee3 100644
--- a/examples/llama.android/app/src/main/java/com/example/llama/Llm.kt
+++ b/examples/llama.android/app/src/main/java/com/example/llama/Llm.kt
@@ -71,7 +71,7 @@ class Llm {
batch: Long,
nLen: Int,
ncur: IntVar
- ): String
+ ): String?
private external fun kv_cache_clear(context: Long)
@@ -115,7 +115,7 @@ class Llm {
val ncur = IntVar(completion_init(state.context, state.batch, message, nlen))
while (ncur.value <= nlen) {
val str = completion_loop(state.context, state.batch, nlen, ncur)
- if (str.isEmpty()) {
+ if (str == null) {
break
}
emit(str)