酒馆SillyTavern 的本质 发送给AI的数据格式
前面我们已经动手搭起来了自己的酒馆SillyTavern, 用免费的Gemini API运转了起来, 与AI开始了第1个故事. 我们的酒馆SillyTavern是在命令行运行的, 所以可以通过命令行日志看到底层的运行. 比如, 当我发送了一句"出发! 前往断魂山脉! 获得月影草的最后一关考验." 命令行的日志是这样的. 这个"Streaming request finished"显示之后, 酒馆页面就开始显示AI回复的内容. 所以我们在命令行日志中, 两个"Streaming request finished"之间就是酒馆发送给AI的内容. * 注 在screen中查看日志, 想上下翻页是不能直接使用 pageup pagedown的. (当然你用鼠标拖动是可以的, 不过, 如果你是刚刚以 screen -r 恢复, xshell窗口里只会显示一屏信息, 鼠标拖动也没用) Linux 在 screen 中查看日志 需要使用 Ctrl + A, [ 左方括号 Linux 把 screen 中的日志保存出来也需要特别的办法 复制出来看看, 是个json结构, 大段的内容占空间, 我们放到json格式化工具中 https://tool.chinaz.com/tools/jsoneditor.aspx (特意使用这个工具, 因为会自动给key添加"") * 注意, 要把下图中所示的 "Streaming request finished" 删除, 再把 "Google AI Studio request:" 删除. 这样才是合格的JSON格式 我们来看看, 酒馆SillyTavern 发给 Gemini API 的是什么东西 首先可以看到, 数据分为4大块. 我们一个个打开来看看. contents 部分就是曾经发生过的对话. 能看到, 还区分出哪些是AI"说"的, 哪些是用户"说"的. contents 部分的最后一组数据, 就是用户最后"说"的那句话. 接下来的部分是 safetySettings 看上去是一些开关配置项, 找点工具翻译一下. 可以看到是关闭 危险内容啊, 色情内容...