酒馆是前端,它自己不生成文字。你要么填一个云端服务的密钥, 要么让模型跑在自己的机器上。七条路都走得通,区别只在三件事:要不要联网、 要不要花钱、要不要自己有一台能跑模型的机器。
下面每一页里的端点地址、请求头和字段名,都来自 PokiTavern 服务端的实现, 而那份实现是逐字段对照 SillyTavern 1.18.0 源码写的,关键结论都附了源文件链接。 配置填不对时,对着这些字段查,比试错快。
七条路各自适合谁
只有端侧模型完全不需要联网,只有端侧模型和 Ollama 不产生按量费用。 其余五条都是云端 API:注册、拿密钥、按用量付费给对方。
| 接入方式 | 要联网 | 要花钱 | 要自己的机器 | 适合 |
|---|---|---|---|---|
| 端侧内置模型 | 只在下模型时 | 否 | 否,就用手机 | 想完全离线、不想付费 |
| Ollama | 局域网即可 | 否 | 是,一台能跑模型的电脑 | 家里已经有台式机或笔记本在跑模型 |
| OpenRouter | 是 | 是 | 否 | 不想逐家注册,想一个密钥试多家 |
| DeepSeek | 是 | 是 | 否 | 直连官方端点,中文对话 |
| Claude | 是 | 是 | 否 | 认准 Anthropic 的模型 |
| Gemini | 是 | 是 | 否 | 手上有 Google AI Studio 的密钥 |
| OpenAI 与兼容端点 | 是 | 是 | 否 | 已有 OpenAI 账号,或要接任意兼容端点 |
「聊天补全」和「文本补全」该选哪个
这是两条互不相干的通道,各有一整套设置。上面七条里,只有 Ollama 走文本补全那条, 其余都在聊天补全下面配。选错通道,你会发现该填的框根本不出现。
前端顶部的 API 下拉里,「聊天补全」对应的来源列表包含 OpenAI、Claude、DeepSeek、
Google AI Studio、OpenRouter,以及一个「自定义(兼容 OpenAI)」;「文本补全」对应的
是 API 类型列表,里面是 Ollama、KoboldCpp、llama.cpp、oobabooga、vLLM 这类自建后端。
服务端也按这个分工写成了两组处理器:
chat-completions.js
和
text-completions.js。
「反向代理」那两栏是干什么的
填了「反向代理」,官方地址就被你填的地址整个替换掉;同时凭据也换人, 服务端发出去的密钥变成「代理密码」那一栏的值,你原来填的官方密钥不再参与。
这两栏要一起填。还有一个副作用值得知道:一旦填了反向代理,服务端就不再检查密钥是否为空, 因为中转方可能根本不要密钥。OpenAI、Claude、DeepSeek、Google 这四条路都吃这套; OpenRouter 是例外,它的基础地址写死在代码里,填了反向代理也不生效。
密钥存在哪里
存在服务端的密钥表里,按来源分不同键名:api_key_openai、
api_key_openrouter、api_key_claude、api_key_makersuite、
api_key_deepseek、api_key_custom。
键名沿用 SillyTavern 的
SECRET_KEYS。
在 PokiTavern 上,这个服务端跑在你自己的手机里,所以密钥落在手机的数据目录,不经过我们的服务器。
按接入方式分页
OpenRouter
一个密钥调用多家模型。端点写死不可改,请求头里为什么会带 Referer 和 X-Title。
DeepSeek
生成用带 /beta 的端点,取模型列表又要去掉它;思维链开关对应哪个字段。
Claude
密钥走 x-api-key,端点是 Messages API,点连接为什么拉不出模型列表。
Gemini
密钥拼在 URL 里而不是请求头,安全阈值全部关闭,思考预算怎么换算。
OpenAI 与兼容端点
官方端点、反向代理、自定义兼容端点三种填法,以及那三个 YAML 字段。
Ollama
模型在电脑上,手机走局域网连过去。为什么地址里绝对不能写 localhost。
端侧内置模型
模型下到手机里跑,飞行模式照样回话。以及它的能力边界在哪。
回中文文档
角色卡、世界书、提示词组装、采样参数、正则脚本等功能详解。
一定要有 API 密钥才能用吗
不一定。端侧模型和局域网里的 Ollama 都不需要密钥。云端来源里, 「自定义(兼容 OpenAI)」也允许密钥留空,服务端不会因为它空着就拦下请求。
其余来源密钥为空时,服务端会直接返回 400,根本不去请求上游。所以「点了连接毫无反应」 多半不是网络问题,而是密钥那一栏是空的,或者粘贴时带进了空格和换行。
换一家会丢聊天记录吗
不会。角色、聊天、世界书这些数据存在服务端,和你接哪个模型无关。 换来源只影响下一次生成,已经写好的楼层不动。
能同时接两家吗
同一时刻只有一个来源生效。但每个来源的表单是各自独立的,密钥和模型名填过就留着, 来回切换不用重填。