工程

在 Android 上运行端侧模型

端侧模型的价值不是演示能跑,而是在电量、延迟和隐私约束下仍然有用。

在 Android 上运行端侧模型

把模型放进手机,第一眼看到的是它可以离线回答。真正要设计的是它什么时候不该回答。

先定预算

预算包括模型大小、首 token 时间、持续发热和内存。没有预算的端侧方案只是把服务器问题搬到了用户口袋里。

检索仍然有用

小模型更需要准确的上下文。本地笔记、最近的对话和明确的系统指令,通常比再加几十亿参数更有效。

suspend fun answerOnDevice(question: String): String {
    val context = retriever.search(question, limit = 4)
    return model.generate(
        system = "Answer only from the supplied notes.",
        user = context.joinToString("n") + "nn" + question
    )
}

失败要可见

超时、降级到云端、或者直接告诉用户无法回答,都应该是产品的一部分,而不是异常日志里的一行。

本页目录

讨论

留下评论

评论会在审核后公开。姓名和邮箱为必填。