# 从 SillyTavern 迁移

OMate 对 SillyTavern(ST)生态做了转化式兼容:你的数据在导入时被转化成 OMate 的原生机制运行,不需要理解两边的差异。本页说明能带什么过来、怎么带、以及少数差异。

# 一句话版本

把你的角色卡(PNG/JSON/charx)、世界书 JSON、预设 JSON、聊天记录 jsonl 统统丢进「角色」页右上角 + → 导入(支持多选批量),OMate 会自动识别类型并转化。遇到问题,短按悬浮球问小M同学

# 各类数据怎么迁

# 角色卡(V1 / V2 / V3)

  • 支持 PNG(chara/ccv3 块,ccv3 优先)、纯 JSON、charx(含内嵌资源,icon 自动作为头像)。
  • 全部字段映射:设定/性格/场景/开场白(含备选)/对话示例/系统提示词/历史后指令/作者与版本/tags。
  • depth_prompt(深度提示词)自动转为深度注入,随角色生效。
  • 原卡完整存档:在 OMate 里改过的角色导出 PNG 时以原卡为底稿写回(双 chunk),发回 ST 社区不丢数据。
  • 每次导入会出转化报告:哪些字段完整转化、哪些降级、哪些暂缓。

# 世界书(World Info / Lorebook)

  • 卡内嵌世界书:导入时选「导入为世界书(推荐)」→ 进入世界书引擎并自动绑定角色。
  • 独立世界书 JSON:直接从导入入口选文件,自动识别入库;在角色编辑页勾选绑定。
  • 引擎行为对齐 ST:常驻条目、主/次关键词四种逻辑、正则关键词、插入位置(角色前/后/按深度)、order 排序、概率、递归扫描、sticky/cooldown/delay 时效、token 预算。
  • 管理入口:设置 → 世界书(条目可编辑关键词/位置/深度/常驻等)。
  • 与「知识书」的区别:世界书=确定性关键词触发(ST 行为);知识书=向量检索。两者并存,超大世界书可选择转为知识书换性能。

# 预设(Preset)

  • 导入 ST 预设 JSON 后得到:一组注入提示词(按预设名分组)+ 一个预设对象(含系统提示词覆盖、温度等采样参数、提示词分组引用)。
  • 预设可挂载到:全局(设置 → 预设)、角色(角色编辑页)、单个对话;越靠上优先级越高,可一键启停快速切换。
  • 预设生效时会覆盖模型/温度/系统提示词、批量启用它的提示词分组、追加世界书挂载。

# 聊天记录(jsonl)

  • 从导入入口选 .jsonl 文件:自动建一个新对话(同名角色存在时自动关联),消息按当前 swipe 落库,完整 swipes 保留在存档中。

# 宏(Macros)

已支持:{{char}} {{user}} {{persona}} {{original}} {{random}} {{pick}} {{roll}} 时间宏、{{setvar}}/{{getvar}} 等变量宏(聊天级+全局)、{{if}}...{{else}}...{{/if}} 条件块、{{lastMessage}} 等聊天态宏。未知宏保留原文不报错。

# 差异与暂缓项(诚实清单)

项目 状态 说明
卡内正则脚本(regex_scripts) 暂缓 性能考虑暂不启用(已随原卡存档,未来版本处理);一般只影响显示美化
世界书 AN/EM/outlet 位置 降级 收敛到「按深度/角色后」注入,导入报告会标注
Author's Note 手动 可自建一条「聊天记录」位置的注入提示词(深度 4)等效实现
STscript / Quick Reply 不支持 ST 私有脚本语言
前端卡(HTML/JS) 替代方案 OMate 用 Live Page 承载 HTML 交互(创作者模式),非逐一兼容
Instruct 模板 无需 OMate 走 Chat Completion API,ST 在该模式下同样不使用

# 小M同学

短按悬浮球(设置 → 创作者设置 开启,可交换短按/长按)打开小M面板:她能回答迁移问题、查看你的角色/世界书/预设现状、并直接帮你完成「挂载预设」「绑定世界书」等操作(会先弹确认卡)。