首页 中文文档 接入各家模型 端侧内置模型

把模型下到手机里跑

基于 SillyTavern 1.18.0最后更新:2026-07-27
非官方文档。本站由 PokiTavern 维护,与 SillyTavern 开源项目没有隶属关系, 内容也未经该项目审核。文中的行为描述以 SillyTavern 1.18.0 源码为准,并附出处链接。

这是七条路里唯一完全不联网、也不产生费用的一条:模型文件下到手机本地, 之后飞行模式照样回话。代价写在前面:要先下几百 MB 到几个 GB, 而且能塞进手机的模型都不大,长上下文和复杂设定会明显吃力。

需要准备的东西:一次 Wi-Fi 下载,以及足够的存储空间和内存。 模型不在安装包里,所有可选模型都是首次使用时在应用内下载的。

可选哪些模型

内置三个,都来自 litert-community 的公开镜像,不需要登录、不需要 token。 最小的 Qwen3 0.6B 约 614 MB,最大的 Gemma 4 E4B 约 3.66 GB。

模型下载体积建议内存应用加载时的上下文模型原生上下文
Qwen3 0.6B(Test)约 614 MB2 GB819232768
Gemma 4 E2B(Lite)约 2.59 GB4 GB4096131072
Gemma 4 E4B(Quality)约 3.66 GB6 GB4096131072

最后两列对不上,差距在这里。Gemma 4 标称能吃 128k 上下文, 但按整窗分配 KV 缓存会把手机内存撑爆,所以应用是按「移动端能扛住」的值去加载的: 两个 Gemma 都是 4096,体积最小的 Qwen3 因为余量大给到 8192。 也就是说,你实际能用的上下文是 4k 或 8k,不是宣传页上的 128k。

三个里只有 Qwen3 0.6B 标了思考能力。它主要用来快速验证「这条路通不通」, 真要对话质量还是得上 Gemma 4。

怎么启用

  1. 在应用的 Local Models 页选一个模型,点下载。下载前会弹一个确认框: 默认只走 Wi-Fi,要用移动数据得显式选「Allow cellular」。
  2. 下完之后激活它。
  3. 激活时应用会替你把酒馆的连接设置写好:来源改成「自定义(兼容 OpenAI)」, 端点填 poki://local,模型名填模型的文件名,然后重载页面。
  4. 如果自动写入没成功,应用会提示你手工填这两栏,填法完全一样。

poki://local 是什么

是一个哨兵地址,不是真的网络地址。SillyTavern 前端的来源列表是一个封闭枚举, 加不了新项,所以端侧推理借用了「自定义」这条通道:服务端看到基础 URL 正好等于 poki://local,就把这次请求交给机内的推理引擎, 一个字节都不会出设备,也不会尝试去解析这个地址。

能不能用别的模型

能,只要是公开可直链的 .litertlm 文件。URL 必须是 https, 路径最后一段必须以 .litertlm 结尾,否则在下载开始前就会被拒绝。

下载下来的文件名就是这个模型在列表里的 id,也是酒馆模型栏里要填的值。 需要 token 或登录才能下的仓库不支持,因为下载器不带凭据。 自定义模型的记录会持久化,即使某次下载失败或中断,那一行也会留在列表里, 可以重试或删除,不会凭空消失。

哪些参数会被忽略

端侧这条路只认四个采样参数:温度、top-k、top-p、最大输出长度。 frequency_penaltypresence_penaltylogit_biasstopnlogprobsresponse_formatseed 全部被丢掉。

默认值:温度缺省 0.8,top-k 缺省 64,top-p 会被限制在 0.9 以内。 top-k 的默认值这里有个坑值得单独讲:它绝对不能是 1, 因为 top-k 等于 1 就是贪心解码,每一步都取概率最高的那个 token, 结果是模型逐字复读。之前排查「端侧模型一直重复同一句」时,真凶就是这个。

图片输入这条路目前直接报错,消息里带图会得到 400,不会静默丢弃。

系统提示和多轮对话会被改写

引擎要求严格的用户与助手交替,所以消息在进引擎前会被重排:开头的系统消息合并成 systemInstruction;对话中间出现的系统消息会被折进后面那条用户消息; 连续同角色的消息合并成一条。

这条规则有一个实际后果:以系统身份插在对话中间的内容,比如 世界书里按深度注入的条目、 作者注释,最终会变成用户消息的一部分, 不再有独立的系统身份。想让模型照做,把话写得像用户在说,比写成系统指令更有效。

一次只能跑一个

生成是串行的:同时最多一个在跑、一个在排队,第三个直接被拒,返回 429。 模型没装好返回 500。

应用切到后台并且没有生成在跑时,60 秒后会释放模型占的内存;下次再用会重新加载, 表现为第一次回复慢一些。手动取消激活也会立刻释放内存,这是清理占用最直接的办法。

它做不到什么

如果这些都能接受,它换来的是:断网可用、不花一分钱、聊天内容不出设备。 在飞机上、地铁里、信号差的地方,这条路是唯一还能用的。

常见报错

提示含义
local inference not available服务端没有接上机内推理引擎,常见于纯服务端环境
local model not installed模型栏里填的 id 在设备上找不到。检查文件名有没有写全,包括 .litertlm 后缀
429引擎忙。等上一条生成结束再试
下载点了没反应自定义 URL 不是 https,或者末段不以 .litertlm 结尾,被提前拦下
进度条到一半停住下载失败会在那一行显示原因,可以重试或删除后重来

常见问题

模型在安装包里吗

不在。安装包里只有推理引擎,模型是首次使用时在应用内下载的,免费。 所以「装完就能离线聊」这句话不成立,得先联一次网。

能同时装多个吗

能。列表里可以装好几个,但同一时刻只有一个是激活状态。 切换激活模型时,上一个占的内存会被释放。

模型 id 到底填什么

填带扩展名的文件名,比如 gemma-4-E2B-it.litertlm。 不带扩展名的话,已经下好的模型会被认成没安装。

和在电脑上跑 Ollama 比呢

电脑能跑的模型大得多,质量差距很明显,但要开着那台机器、还得在同一个网络里。 两条路可以并存:在家用 Ollama,出门切回端侧。

换成别的接入方式

对质量要求更高,就得接云端: OpenRouter 一个密钥试多家, DeepSeekClaudeGemini 各有专用来源。 七条路的横向对照在枢纽页

本文讲的端侧推理,是 PokiTavern 安卓端自带的能力: 它内嵌了一个 SillyTavern 兼容服务端,不用 Termux、不用电脑。项目开源在 GitHub