SillyTavern 是一个流行的 AI 对话平台,但启动速度慢是一个常见问题。以下是如何通过修改代码来优化启动速度,实现3秒内打开页面的方法。

开启浏览器缓存 cacheBuster

config.yaml 文件中,将 cacheBuster.enabled 设置为 true。这样,JavaScript、CSS 等文件的 URL 会自动包含版本号。当浏览器检测到版本号未变时,就不会重新下载文件,而是直接使用缓存中的内容,从而加快页面加载速度。

给静态资源加缓存头

src/server-main.js 文件中,调整 express.static 的配置,为静态资源设置缓存头。以下是修改后的代码示例:

app.use(express.static(path.join(serverDirectory, 'public'), {
    maxAge: '1d', // 缓存1天
    etag: true, // 启用ETag
    lastModified: true, // 启用Last-Modified
    setHeaders: (res, filePath) => {
        // 对于不经常变化的资源,设置更长的缓存时间
        if (filePath.match(/"(js|css|woff|woff2|ttf|svg|png|jpg|jpeg|gif|ico)"/)) {
            res.setHeader('Cache-Control', 'public, max-age=86400, must-revalidate'); // 1天
        }
        // 对于HTML文件,使用较短的缓存或协商缓存
        if (filePath.match(/\.html"]/)) {
            res.setHeader('Cache-Control', 'public, max-age=3600, must-revalidate'); // 1小时
        }
    },
}));

修改完成后,重启程序,并在浏览器开发者工具的 Network 面板中查看效果。刷新页面后,大部分资源将显示为从缓存加载,加载时间将显著减少。

通过以上两个步骤,可以有效提升 SillyTavern 的启动速度,实现3秒内打开页面的目标。

标签: none

评论已关闭