SillyTavern(酒馆)一个可以安装在电脑(和安卓手机)上的人工智能互动角色聊天/角色扮演游戏

SillyTavern(酒馆)一个可以安装在电脑(和安卓手机)上的人工智能互动角色聊天/角色扮演游戏

SillyTavern 是一个可以安装在电脑(和安卓手机)上的用户界面,让您可以与文本生成的人工智能互动,并与您或社区创建的角色聊天/玩角色扮演游戏。

官网:SillyTavern/SillyTavern: LLM Frontend for Power Users.

当然可惜的是说明书是英文的:What is SillyTavern? | docs.ST.app

功能亮点‌:

  1. 全平台适配界面‌:专为移动设备优化,操作流畅,体验友好。
  2. 多模型兼容‌:无缝支持主流AI服务与模型,涵盖KoboldAI/CPP、Horde、NovelAI、Ooba、OpenAI、OpenRouter、Claude、Scale等,满足多样化需求。
  3. 沉浸式交互模式‌:独创「Galgame式老婆模式」,结合动态角色互动与情感化叙事,打造个性化体验。
  4. Horde SD整合‌:集成分布式Stable Diffusion绘图功能,实现高效图像生成。
  5. 语音与文本双驱动‌:支持TTS语音合成与文本生成,配备世界观设定(Lorebooks)功能,构建完整叙事宇宙。
  6. 深度定制系统‌:界面主题、交互逻辑均可自由配置,适配个性化使用习惯。
  7. 智能语言中枢‌:内置自动翻译与海量Prompt库,覆盖创作、对话、指令等全场景需求。
  8. 扩展服务矩阵‌:
    • 文生图引擎‌:基于AI的文本绘画生成,一键转化创意为视觉作品。
    • 语音合成模块‌:多音色TTS支持,赋予角色鲜活声线。
    • 智能总结系统‌:依托向量数据库技术,自动提炼聊天信息核心要点。

安装

Windows下安装

创建一个目录,比如e:\github ,在这个目录里下载源代码

git clone https://github.com/SillyTavern/SillyTavern -b release

进入SillyTavern目录

cd SillyTavern

然后启动

Start.bash

启动成功后显示:

If you don't want to receive content updates in the future, set skipContentCheck to true in the config.yaml file. Generating thumbnails cache. Please wait... Done! Generated: 23 preview images Collecting and creating stats for user: default-user Compiling frontend libraries... webpack 5.98.0 compiled successfully in 15025 ms Launching in a browser... SillyTavern is listening on IPv4: 127.0.0.1:8000 ================================================= Go to: http://127.0.0.1:8000/ to open SillyTavern ================================================= Extensions available for default-user [ { type: 'system', name: 'assets' }, { type: 'system', name: 'attachments' }, { type: 'system', name: 'caption' }, { type: 'system', name: 'connection-manager' }, { type: 'system', name: 'expressions' }, { type: 'system', name: 'gallery' }, { type: 'system', name: 'memory' }, { type: 'system', name: 'quick-reply' }, { type: 'system', name: 'regex' }, { type: 'system', name: 'stable-diffusion' }, { type: 'system', name: 'token-counter' }, { type: 'system', name: 'translate' }, { type: 'system', name: 'tts' }, { type: 'system', name: 'vectors' } ]

软件会自动打开http://127.0.0.1:8000/ 这个网址,显示欢迎页面:

Linux下安装

理论上跟Windows下一样,先下载源代码,然后执行

  • ./start.sh 

FreeBSD下安装

理论上应该能装成,但是没做试验。

配置

导入角色:

导入角色

输入要导入的内容的URL

支持的来源:

  • Chub 角色(直链或ID)
    例子: Anonymous/example-character
  • Chub 知识书(直链或ID)
    例子: lorebooks/bartleby/example-lorebook
  • JanitorAI 角色(直链或UUID)
    例子: ddd1498a-a370-4136-b138-a8cd9461fdfe_character-aqua-the-useless-goddess
  • Pygmalion.chat 角色(直链或UUID)
    例子: a7ca95a1-0c88-4e23-91b3-149db1e78ab9
  • AICharacterCards.com 角色(直链或ID)
    例子: AICC/aicharcards/the-game-master
  • 被允许的PNG直链(请参阅 config.yaml
    例子: https://files.catbox.moe/notarealfile.png
  • RisuRealm 角色(直链)
    例子: https://realm.risuai.net/character/3ca54c71-6efe-46a2-b9d0-4f62df23d712

 我们先用Anonymous/example-character测试一下

直接在导入角色那里输入Anonymous/example-character

如何快速开始聊天?

  1. 点击 API连接 并连接一个  API.
  2. 点击 角色管理 并选择一个角色。

你可以点击右侧添加更多 示例角色 或从其他网站中 导入角色 。

您可前往此处 下载扩展和资源菜单 (在这里: 扩展 )以安装拓展功能。

配置API连接 

一开始不熟悉,走了弯路,最终配置是这样的:

API连接配置 API custom Server URL: http://192.168.1.13:1337/v1 Settings Preset: Default 模型 gpt-4o Proxy Preset: None 自定义停止字符串 <Empty> 以...开始回复 <Empty> Reasoning Template: DeepSeek API 选聊天补全 自定义站点填AI API服务器的地址 

然后就可以对话了,还是挺好玩的!

Read more

Qt步进电机上位机控制程序源代码:跨平台C/C++编写,支持多种端口类型与详细注释

Qt步进电机上位机控制程序源代码:跨平台C/C++编写,支持多种端口类型与详细注释

Qt步进电机上位机控制程序源代码Qt跨平台C/C++语言编写 支持串口Tcp网口Udp网络三种端口类型 提供,提供详细注释和人工讲解 1.功能介绍: 可控制步进电机的上位机程序源代码,基于Qt库,采用C/C++语言编写。 支持串口、Tcp网口、Udp网络三种端口类型,带有调试显示窗口,接收数据可实时显示。 带有配置自动保存功能,用户的配置数据会自动存储,带有超时提醒功能,如果不回复则弹框提示。 其中三个端口,采用了类的继承与派生方式编写,对外统一接口,实现多态功能,具备较强的移植性。 2.环境说明: 开发环境是Qt5.10.1,使用Qt自带的QSerialPort,使用网络的Socket编程。 源代码中包含详细注释,使用说明,设计文档等。 请将源码放到纯英文路径下再编译。 3.使用介绍: 可直接运行在可执行程序里的exe文件,操作并了解软件运行流程。 本代码产品特点: 1、尽量贴合实际应用,细节考虑周到。 2、注释完善,讲解详细,还有相关扩展知识点介绍。

By Ne0inhk
【C++】深入拆解二叉搜索树:从递归与非递归双视角,彻底掌握STL容器的基石

【C++】深入拆解二叉搜索树:从递归与非递归双视角,彻底掌握STL容器的基石

【C++】深入拆解二叉搜索树:从递归与非递归双视角,彻底掌握STL容器的基石 * 摘要 * 目录 * 一、概念 * 二、 性能分析 * 三、key结构非递归模拟实现 * 1. 二叉搜索树的插入 * 2. 二叉搜索树的查找 * 3. 二叉搜索树的删除 * 4. 二叉搜索树的中序遍历 * 四、key结构递归的模拟实现 * 1. 递归与非递归二叉搜索树核心操作的对比 * 2. 递归插入 * 3. 递归查找 * 4. 递归删除 * 总结 摘要 二叉搜索树(BST)是一种重要的数据结构,它通过"左子树所有节点值小于根节点,右子树所有节点值大于根节点"的特性实现高效的元素组织。本文详细解析了BST的核心概念、性能特点,并分别通过非递归和递归两种方式完整实现了插入、查找、删除等关键操作,深入探讨了指针引用在递归实现中的巧妙应用,以及两种实现方式在时间复杂度、空间复杂度和适用场景上的差异。 目录

By Ne0inhk
【C++】 —— 笔试刷题day_28

【C++】 —— 笔试刷题day_28

一、游游的重组偶数 题目解析 这道题,有q组数据,每一次输入一个正整数x,让我们将这个数进行重排,变成一个偶数,然后返回(如果x本身就是一个偶数那可以直接返回x); 如果不存在合法解,就是x通过重排后,无法变成一个偶数,就输出-1; 算法思路 这道题,总体来说还是比较简单的; 对于正整数x,我们可以把它当作一个字符串进行输入;(如果按照整数输入,我们还要将这个数x的每一位变换成对应数组) 我们知道,如果一个数是偶数,那最低位一定是一个偶数,这样我们只需判断字符串的最后一位即可知道这个数是否是偶数;如果这个数是偶数,那就直接输出即可;如果最后一位不是偶数,那就从第一位开始向后找,找到一位是偶数,然后把它交换到最后一位;然后输出即可;如果遍历完这个字符串,还没找到一位是偶数的,那就表示这个数x通过重拍无法变成偶数,输出-1即可。 题目解析 #include<iostream>usingnamespace std; string func(){ string str; cin >>

By Ne0inhk
C++ 多线程同步之互斥锁(mutex)实战

C++ 多线程同步之互斥锁(mutex)实战

C++ 多线程同步之互斥锁(mutex)实战 💡 学习目标:掌握 C++ 标准库中互斥锁的基本用法,理解多线程同步的核心原理,能够解决多线程环境下的资源竞争问题。 💡 学习重点:std::mutex 与 std::lock_guard 的使用、死锁的产生原因及规避方法、实际场景中的同步案例实现。 48.1 多线程同步的必要性 在多线程编程中,当多个线程同时访问共享资源时,会出现资源竞争问题。 例如两个线程同时对同一个变量进行读写操作,会导致最终结果与预期不符。 这种问题被称为线程安全问题,而解决该问题的核心就是线程同步。 ⚠️ 注意事项:线程不同步会引发数据竞争,造成程序运行结果不可预测,甚至导致程序崩溃。 举个简单的反例,两个线程同时对全局变量 count 进行自增操作: #include<iostream>#include<thread>usingnamespace std;int count

By Ne0inhk