之前尝试过使用本地模型:
最近注意到有较成熟的“破限”生态,由于当前网上在debian环境安装相关服务的文档有逻辑混乱、配置缺失的问题,因此记录我的搭建过程。
写在开头的注意事项:
- 我的需求是在公开环境搭建SillyTavern,对接claude pro cookie。因此如果你只是需要本地一键包之类的东西,拉到本文底部查看参考文档即可。我的环境是debian12.
- 使用claude cookies会删除你的所有历史对话!我在实际运行前没有看到任何提示,非常之坑!一定注意!
- 由于此服务仅对接api,因此对服务器配置要求极低,1H1G即可运行。此外,搭建完成后需要找到相关配置文件才能达到使用目的,这是和claude等公司的对抗过程,可能会消耗不少时间,效果和带来的乐趣也就那样,建议浅尝辄止。
- 本文搭建的主要目的是项目能够正常运行,便于体验功能。因此存在很多安全问题,建议配置过程中自行修改,或配置完成后自行限制访问权限等。
1. 获取claude cookies
在浏览器无痕窗口登录claude.ai,打开f12
随便和claude对话一两句,等待回复完成。
在网络选项卡搜索completion,找到cookies一栏。搜索找到sessionKey项,复制保存。看起来像:
sessionKey=sk-ant-sid01-xxxxxAA
2. 安装Clewd和SillyTavern
2.1 相关环境
apt install curl vim git -y
安装nvm,本文发布时 nvm 最新版本 v0.40.1,nvm官方下载:访问地址
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
看安装版本,安装成功会返回:0.40.1,如果没能查到,可以重新登陆ssh后尝试查询
nvm -v
安装node,本文发布时 node 最新版本 v23.3.0,nodejs 官方下载:访问地址
nvm install node 23.3.0
查看版本,确保返回 v20.4.0 以上的版本
node -v
安装pm2用来管理进程
npm install pm2 -g
2. 安装clewd修改版
git clone https://github.com/teralomaniac/clewd
cd clewd
npm install
首次运行,以生成配置文件
pm2 start clewd.js --name "clewd"
编辑配置文件
vim config.js
示例:
module.exports = {
"Cookie": "",
"CookieArray": [
"sessionKey=sk-ant-sid01-QxxxxxxxxxAA",
"sessionKey=sk-ant-sid01-QxxxxxxxxxAA",
"sessionKey=sk-ant-sid01-QxxxxxxxxxAA"
],
"WastedCookie": [],
"unknownModels": [
""
],
"Cookiecounter": 3,
"CookieIndex": 0,
"ProxyPassword": "password",
"Ip": "0.0.0.0",
"Port": 8444,
"localtunnel": false,
"BufferSize": 1,
"SystemInterval": 3,
"rProxy": "",
"api_rProxy": "",
"placeholder_token": "",
"placeholder_byte": "",
"PromptExperimentFirst": "",
"PromptExperimentNext": "",
"PersonalityFormat": "{{char}}'s personality: {{personality}}",
"ScenarioFormat": "Dialogue scenario: {{scenario}}",
"Settings": {
"RenewAlways": true,
"RetryRegenerate": false,
"PromptExperiments": true,
"SystemExperiments": true,
"PreventImperson": true,
"AllSamples": false,
"NoSamples": false,
"StripAssistant": false,
"StripHuman": false,
"PassParams": false,
"ClearFlags": true,
"PreserveChats": false,
"LogMessages": true,
"FullColon": true,
"padtxt": "1000,1000,15000",
"xmlPlot": true,
"SkipRestricted": false,
"Artifacts": false,
"Superfetch": true
},
"3rdKey": "111"
}
- 修改CookieArray,添加一条或多条,下次运行后clewd会自动进行相关配置。
- 可以修改Ip为0.0.0.0供外部访问
- 可以修改ProxyPassword
- 可以修改port为不常用高位端口
- 可以在末尾添加apikey
"3rdKey": "111"
保存,重启服务
pm2 restart clewd
可以查看日志
pm2 log clewd
设置开机自启
pm2 startup
pm2 save
2.3 安装酒馆SillyTavern
git clone https://github.com/SillyTavern/SillyTavern && cd SillyTavern
编辑配置文件
vim config.yaml
以下为示例,可以参考说明修改,不要直接复制替换:
dataRoot: ./data
listen: true
protocol:
ipv4: true
ipv6: false
dnsPreferIPv6: false
autorunHostname: auto
port: 8000
autorunPortOverride: -1
whitelistMode: false
enableForwardedWhitelist: true
whitelist:
- ::1
- 127.0.0.1
basicAuthMode: true
basicAuthUser:
username: yourusername
password: yourpassword
enableCorsProxy: false
requestProxy:
enabled: false
url: socks5://username:password@example.com:1080
bypass:
- localhost
- 127.0.0.1
enableUserAccounts: false
enableDiscreetLogin: false
autheliaAuth: false
perUserBasicAuth: false
sessionTimeout: 86400
cookieSecret:
disableCsrfProtection: false
securityOverride: false
autorun: true
avoidLocalhost: false
disableThumbnails: false
thumbnailsQuality: 95
avatarThumbnailsPng: false
allowKeysExposure: false
skipContentCheck: false
disableChatBackup: false
numberOfBackups: 50
chatBackupThrottleInterval: 10000
whitelistImportDomains:
- localhost
- cdn.discordapp.com
- files.catbox.moe
- raw.githubusercontent.com
requestOverrides: []
enableExtensions: true
enableExtensionsAutoUpdate: true
enableDownloadableTokenizers: true
extras:
disableAutoDownload: false
classificationModel: Cohee/distilbert-base-uncased-go-emotions-onnx
captioningModel: Xenova/vit-gpt2-image-captioning
embeddingModel: Cohee/jina-embeddings-v2-base-en
speechToTextModel: Xenova/whisper-small
textToSpeechModel: Xenova/speecht5_tts
promptPlaceholder: "[Start a new chat]"
openai:
randomizeUserId: false
captionSystemPrompt: ""
deepl:
formality: default
mistral:
enablePrefix: false
ollama:
keepAlive: -1
claude:
enableSystemPromptCache: false
enableServerPlugins: false
- 开启listen
- port根据情况修改
- 关闭whitelistMode,使用basicAuthUser进行登录认证
运行
pm2 start server.js --name "jg"
设置开机自启:
pm2 startup
pm2 save
可以查看日志
pm2 log jg
3. 配置 SillyTavern
访问之前设置的SillyTavern ip:端口,点击顶部菜单第二个设置
如果按照本文设置,api密钥填写 3rdKey: 111
(不是111,截图填错了)。最后先输入一个模型名(你通常可以在clewd日志看到),再点击连接,然后再选择可用模型,最后发送测试消息。
如果没有可用模型,通常是上一节clewd或酒馆安装配置有问题,你可以通过查看日志解决。
此时已经可以进行正常对话了,你可以在顶部菜单的这里选一个角色卡,尝试能否收到回复
4. 预设、正则、角色卡、世界书
通常可以在此:中文角色卡与破限社区 类脑 Discord 找到。如果邀请失效,请在文章底部参考文档找到新链接。
通过自动认证后,可以在这里找到一些预设:
随便找一个你喜欢的点进去下载就行了。discord这种频道模式对于发布更新+讨论十分不友好。预设更新和说明混杂在普通交流中,需要来回上下文定位。
下载到json文件,在这里导入:
discord中会有相关的使用说明,大体看一下。
在这里导入正则:
此外,世界书大致是环境物品等设定;人物卡是人物设定,通常也包含一些世界书配置。
导入并选择人物卡后就可以开始对话了。
5. 简单体验
我在discord随便找了个破限预设,能够正常解除限制,输出NSFW内容。细节体验优化就没试了。感觉人物语言并不多,都是claude在库库描写。此外tokens消耗挺快,可能是预设内容比较多,一个pro账号很快就达到次数限制了。
claude的中文能力确实不错(不论是3.5sonnet还是opus,sonnet快一点),这里主要指前后逻辑关联性较高,文笔较好(好的有限)。
总之这种破限claude或自托管都可以试试,比较一下,各有优劣吧。
参考
https://sqivg8d05rm.feishu.cn/wiki/RVQ0wka6FiGGWXkc40jc2GHOnyc
https://linux.do/t/topic/223253
https://linux.do/t/topic/270561
暂无评论内容