Skip to content

NyaaCaster/NyaaChat

Repository files navigation

🐾 NyaaChat 用户指南

欢迎使用 NyaaChat!这是一个高度可定制、支持深度角色扮演的本地 AI 对话工具。无论你是想和软萌的猫娘聊天,还是想构建一个复杂的世界观,NyaaChat 都能满足你的需求。


🚀 快速开始

1. 配置你的 AI 大脑

在使用之前,你需要配置 AI 模型供应商的信息:

  • 点击界面右上角的 设置 (齿轮图标)
  • 供应商设置:输入你的 API 代理地址(URL)和密钥(API Key)。
  • 模型选择:输入你想要使用的模型名称(例如 gpt-4oclaude-3-5-sonnet)。
  • 提示:NyaaChat 不会内置任何密钥,所有的对话都通过你自己的 API 进行,确保了隐私与自由度。

2. 开始对话

在主界面的输入框输入内容并发送,你的 AI 伙伴就会立刻回复你。你可以点击底部的 清空对话 来开启一段全新的旅程。


🎭 角色管理

切换角色

点击界面侧边或顶部的 角色头像/角色名,可以打开角色选择面板。在这里你可以一键切换当前的对话对象。

创建与编辑

在角色选择面板中,你可以:

  • 新建角色:点击“新建角色”按钮,定义 AI 的名字和它的性格背景。
  • 编辑角色:点击角色卡片上的“编辑”图标,修改现有角色的设定。
  • 角色保护:为了防止误操作,你正在使用的当前角色是不允许被删除的。

导入与导出

你可以将精心调教的角色分享给好友,或者备份自己的设定:

  • 导出:在编辑界面点击“角色导出”,会生成一个名为 NyaaChatChar-时间戳.json 的文件。
  • 导入:在角色选择界面点击“导入角色”,选择对应的 JSON 文件即可快速添加新伙伴。

🌍 世界书 (World Info) 规则系统

这是 NyaaChat 的进阶功能,类似于给 AI 植入“长期记忆”或“特定知识库”。在编辑角色界面,你可以点击 添加规则

触发方式

  • 🔵 永久触发:只要开启,该规则就会一直对 AI 生效。适合存放世界观大背景(例如:现在是 2077 年)。
  • 🟢 关键词触发:只有当你发送的消息中包含特定关键词(如:猫娘, 尾巴)时,AI 才会想起这条规则。适合存放特定设定(例如:关于猫娘尾巴的敏感设定)。

规则设置

  • 插入位置:你可以选择将规则伪装成“系统提示”或“角色自身的记忆”,这会影响 AI 反应的语气。

💬 聊天记录

自动保存

NyaaChat 会自动将你的每段对话保存在浏览器本地,即使刷新页面也不会丢失。

查看与切换记录

点击功能菜单栏中的 聊天记录(时钟图标) 按钮,打开聊天记录面板。每条记录以「角色名-时间戳」命名,点击即可切换到该对话继续聊天。

导出与删除

  • 导出:点击记录条目右侧的下载图标,将对话保存为 JSON 文件备份。
  • 删除:点击记录条目右侧的删除图标,移除该条记录。当前正在使用的对话不会显示删除按钮。

导入聊天记录

在聊天记录面板底部点击 导入聊天记录,选择之前导出的 JSON 文件即可恢复对话。仅支持本项目格式的聊天记录文件。


🃏 SillyTavern 角色卡兼容

NyaaChat 支持导入 SillyTavern 格式的角色卡(.json.png 格式),自动转换角色名称、角色描述、第一条消息和世界书条目。

注意:NyaaChat 不支持 SillyTavern 的前端 UI 渲染功能,例如状态栏、动态数值面板等依赖 SillyTavern 界面渲染的内容将在导入时自动过滤,不会被导入。


🖼️ 图片生成

让你的 AI 伙伴不仅会说话,还能把当下的画面"画出来"。

配置生图端点

设置 面板里找到 生图 API 端点设置

  • 总开关:默认关闭。打开后聊天气泡上才会出现生图按钮。
  • API 来源:目前提供 QinyAPIComfyUI 两个选项;ComfyUI 暂未开放,敬请期待。
  • API Key:与 LLM 的 Key 是独立的两份。点右侧的眼睛图标可以临时显示明文,确认无误后松开恢复。没有 Key?标题旁的 获取 API Key 链接会带你前往注册。
  • 连接 / 模型:和 LLM 的体验完全一致,点 连接 拉模型列表后挑一个。包含 video 字样的模型会被自动过滤。
  • 尺寸参数:仅当模型名包含 gpt-image-2 时出现,可选 默认4K。其他模型 / 渠道不支持 4K 时会自动回退,无需手动调整。

在对话里生成图片

开启总开关后,任何聊天气泡上都会多出一个生图图标(在编辑和复制按钮之间):

  • 点击 🎨 生图按钮:NyaaChat 会自动结合当前角色形象、近期对话场景与这条气泡的内容,组成一个紧凑的画面提示词,发送给生图模型。
  • 生成期间:发送框的发送按钮变红色 ⏹,点击即可中止本次生图请求;同时其他聊天气泡上的生图 / 重新生成按钮会暂时禁用,避免冲突。
  • 生成结果:以一条新的角色消息气泡形式插入在原气泡下方,展示生成的图片。

图片消息的操作

图片气泡下方提供三个按钮:

  • 🔄 重新生成:用同一份提示词再画一张,原图就地替换。
  • 💾 下载图片:尝试触发"另存为"。如果图床域名不允许跨域下载,会在新标签页打开图片,你可以右键保存(不会刷新当前对话)。
  • 🗑️ 删除消息:移除该图片气泡。

图片浏览窗口

点击图片缩略图即可打开沉浸式图片浏览窗口:

  • 自适应屏幕:图片以最佳尺寸等比铺到视口中央。
  • 缩放与拖动:双指捏合 / 鼠标滚轮缩放,按住拖动平移。底部工具栏提供 放大 / 缩小 / 1:1 原始尺寸 / 下载 / 关闭 按钮,右下角实时显示当前缩放百分比。
  • 关闭方式:按 ESC、点遮罩、点关闭按钮均可。

小贴士:生图提示词由当前角色描述、用户角色和最近对话片段共同组成,但为了避免供应商上游超时,会自动控制在精炼范围内。如果你希望影响出图风格或氛围,建议把关键设定写进角色描述或世界书。


🔌 MCP 工具

让 AI 角色不只活在虚构里——通过 MCP(Model Context Protocol),你的 AI 伙伴可以查到真实世界的当前时间和天气,把"两点多了,外面在下小雨"这样的细节自然嵌进对话里,让角色扮演更有沉浸感。

NyaaChat 默认接入 NyaaChat-MCP 服务,提供两个工具:

  • 真实时间 (get_current_time):获取实际当前日期与时间,支持任意时区。
  • 实时天气 (get_weather):获取实时天气情况(仅当下,不含预报)。

隐私优先:NyaaChat 不会获取你的真实地理位置,也不会主动定位。请到工具卡片里手动设置一个角色扮演时所在的城市;不设置的话,所有时间和天气数据都将默认按 北京 返回。

入口与状态

主界面输入框上方的 toolbar 中,点击 🔌 MCP 工具 图标(联网搜索 🌐 右侧)打开 MCP 工具卡片:

  • 服务状态指示灯:绿色表示连接正常,红色表示服务暂不可用,灰色脉冲表示首次探测中。
  • 地理信息按钮:进入城市设置界面,按钮右侧显示当前所选城市。
  • 工具开关列表:每个工具单独的启用 / 禁用开关。默认全部启用,且会保留你的手动设置——即使全部关闭,下次打开页面也不会被默认值覆盖。

设置角色扮演所在城市

在 MCP 卡片中点击 地理信息 按钮:

  • 输入城市、国家或省份名(中文 / 英文均支持),下方候选清单会模糊匹配。
  • 点击候选项即生效,卡片上会立刻显示当前所选城市。
  • 右侧 清除 按钮把所选城市重置为"未设置",重新回到北京默认。

当你在对话中明确指出具体地点(例如"广州现在什么天气"),AI 会优先使用对话里的地点而不是你的全局设置——这让单次对话的灵活查询不会被全局设置干扰。

模型必须支持工具调用

并不是所有 AI 模型都能调用外部工具。MCP 工具只有具备"工具调用"能力的模型才能驱动——例如 GPT-4o、Claude Sonnet/Opus、Gemini Pro、DeepSeek-V3 等主流大模型通常都支持。

为确保 NyaaChat 能正确识别你的模型能力,请务必对接入的对话模型做一次健康测试

  1. 进入 设置 → 对话模型设置 → 管理模型
  2. 给当前模型点击健康测试。
  3. 测试通过后,模型会被自动标记若干能力图标——橙色扳手 🔧 就代表"工具调用"能力。

如果你当前模型没有橙色扳手标记,MCP 工具会自动跳过广播,对话不会出错但角色拿不到时间和天气数据。

从未做过健康测试的模型,NyaaChat 会默认信任你的选择照常广播工具。如果实际不支持,请回到管理模型里补做健康测试,让 NyaaChat 准确识别能力。

角色扮演的"风味"

调用工具时,NyaaChat 会自动给 AI 注入一套"如何使用真实数据"的指南,让角色更自然地表达:

  • 角色扮演场景:时间会模糊化("两点多"而不是"02:32:15"),天气数字感官化(湿度高 → "闷",云厚 → "云压得低"),角色不会念出技术字段。
  • 信息化场景(新闻播报、设备读数等):直接按格式化输出。
  • 工具调用失败:角色会用"困惑 / 不确定"或资讯故障语言自然降级,不会暴露错误内容。

也就是说,你不需要担心 AI 把 UTC+08:00 DST=no 这样的字段硬念给你——它会按角色的方式自然表达。


🎨 界面与体验

  • 外观切换:支持深色模式与浅色模式自动切换,呵护你的双眼。
  • 响应式设计:无论是电脑端还是手机端,都能获得良好的操作体验。

希望你在 NyaaChat 玩得开心!如果有任何天马行空的创意,快去给你的 AI 角色添加新规则吧!🐾


🐳 Docker 部署

# 克隆仓库
git clone https://github.com/NyaaCaster/NyaaChat.git
cd NyaaChat

# 构建并启动
docker compose up -d

服务启动后访问 http://localhost:3095

代码更新后,运行 rebuild.ps1 脚本可自动重构建并重启容器。


🔗 仓库地址

https://github.com/NyaaCaster/NyaaChat

About

基于LLM分词结构原理进行提示词破甲的简易聊天工具

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors