Reverie LogoReverie
角色故事功能创作者博客
登录注册
← 返回博客
#技术架构#AI工程#群聊#技术深度解析

AI群聊的三种技术实现:为什么我们选择了这条路

Reverie Team
Reverie Team
•2025年12月9日
本页内容
  1. 1. 结构化输出(JSON 数组)
  2. 2. 工具调用(Agent 模式)
  3. 3. 自由文本输出(我们当前的选择)

一切的起点

"为什么不能像其他应用那样,每个角色一条单独的消息?"

我们经常收到这个问题。说实话,这是个好问题。大多数聊天应用都是一人一条消息气泡,那我们的群聊为什么要把多个角色的回复放在一条消息里?

答案不是偷懒,也不是疏忽。这是一个深思熟虑的工程选择,源于我们对三种截然不同的技术方案进行了数月的实验。

三种技术架构

构建多角色 AI 对话时,每个平台都面临同样的抉择。实现方式只有三种,每种都对成本、质量和用户体验有着深远影响。

1. 结构化输出(JSON 数组)

行业内最常见的做法。让 AI 返回一个 JSON 数组,每个元素代表一个角色的回复:

[
  {
    "speaker": "夏洛克",
    "emotion": "好奇",
    "content": "有意思。这泥土的纹路说明..."
  },
  {
    "speaker": "华生",
    "emotion": "困惑",
    "content": "福尔摩斯,你什么意思?"
  }
]

优点:

  • 单次 API 调用,积分只消耗一次
  • 便于解析,可以渲染成独立的消息气泡
  • 可以包含丰富的元数据(情绪、动作、场景描写)
  • 适合生成用户回复建议

现实情况:

  • 只有昂贵的高级模型(Claude、GPT-4)能可靠地支持结构化输出——大多数平价模型难以保持一致的 JSON 格式
  • 格式错误会导致整个回复失败
  • JSON 格式指令会消耗 token,挤占创作空间
  • 模型被格式"束缚"——创意往往受限
  • 内容限制变得更严格:结构化输出模式往往会触发更激进的内容过滤,让成人向或边缘化的角色扮演场景更容易失败
  • 上下文污染:对话历史里充满了 JSON 结构
  • 错误处理复杂:流式输出时解析失败怎么办?

大多数第三方角色对话平台都采用这种方案。能用,但限制是真实存在的。

2. 工具调用(Agent 模式)

最"智能"的方案。AI 自主决定下一个该说话的角色,调用工具指定角色,然后生成该角色的回复。如此循环直到场景完整。

AI 思考:"华生应该对这个发现做出反应"
→ 调用工具:next_speaker("华生")
→ 生成华生的回复
→ AI 思考:"现在夏洛克会插话"
→ 调用工具:next_speaker("夏洛克")
→ 生成夏洛克的回复
...

优点:

  • 对话流程最自然
  • AI 完全掌控场景节奏
  • 每个角色的回复都能获得专注的生成质量
  • 天然产出独立的消息

现实情况:

  • 多次 API 调用 = 多次积分消耗
  • 延迟累积:N 个角色 = N 次网络往返
  • 只有高端模型(Claude、GPT-4)能可靠地处理工具调用——便宜的模型经常失败或产生幻觉式的工具调用
  • 跨调用的状态管理很复杂
  • 有无限循环或异常终止的风险
  • 调试噩梦:问题难以复现

这是纸面上最美好的"梦想架构",但在规模化运营时会带来巨大的运维压力。

3. 自由文本输出(我们当前的选择)

最简单的方案。让 AI 自然地写出场景,由它决定如何在流畅的文字中呈现多个角色:

夏洛克身体前倾,目光锐利。"有意思。这泥土的纹路
说明我们的嫌疑人是从东边过来的。"

华生皱起眉头。"福尔摩斯,你什么意思?这不就是泥巴吗。"

"不就是泥巴?"夏洛克微微一笑。"亲爱的华生,
这世上没有什么是'不就是'的。"

优点:

  • 兼容所有 AI 模型,无需特殊功能支持
  • 创作自由度最高——AI 自然书写
  • 干净的上下文:对话历史读起来像小说
  • 流式输出体验极佳
  • 单次调用,成本可预测
  • 实现和维护最简单

现实情况:

  • 所有角色在一个消息块里
  • 无法单独重新生成某个角色的回复
  • UI 灵活性受限
  • 习惯聊天式气泡的用户可能会困惑

我们是踩过坑的

这是我们之前没有公开分享过的:我们群聊的第一个版本用的就是工具调用。

我们曾经相信"梦想架构"。AI 决定谁来发言,每个角色获得专属的生成质量,漂亮的独立消息气泡。它很优雅,很智能。但在生产环境中,它是一场灾难。

用户遭遇了不可预测的成本——有时同样的对话要多花 3 倍的积分。响应时间也随着 AI 决定让多少角色参与而剧烈波动。便宜的模型会产生幻觉式的工具调用,或者陷入死循环。我们的错误日志里塞满了从未预料到的边缘情况。

在几个月的修补和变通之后,我们做出了艰难的决定:从头开始,用自由文本输出重建。这感觉像是退步。但有时候,"不那么智能"的方案反而是更明智的选择。

我们为什么做出这个选择

在充分测试了三种方案——并把其中一种推上了生产环境——之后,我们为群聊选择了自由文本输出。原因如下:

稳定性优先 - 结构化输出会不可预测地失败。当群聊在对话中途崩溃时,用户不会在乎独立气泡了——他们只想让它正常工作。自由文本永远不会因为格式问题而失败。

质量优先 - 格式约束会微妙地降低 AI 的创造力。对比输出后我们发现,自由文本始终能产出更生动、更自然的角色互动。AI 可以专注于讲故事,而不是 JSON 语法。

成本可预测 - Agent 模式按角色按回复收费。一个五角色场景可能比预期贵 5-10 倍。用户应该享有可预测的定价。

通用兼容 - 我们支持多种 AI 模型。不是所有模型都同样支持结构化输出或工具调用。自由文本到处都能用,给用户更多模型选择。

我们接受的取舍

是的,我们牺牲了"每个角色一个气泡"的体验。但我们获得了:

  • 坚如磐石的可靠性
  • 更好的创作质量
  • 可预测的成本
  • 更广泛的模型支持
  • 更干净的对话历史

对于群聊角色扮演来说,沉浸感最重要,我们相信这个取舍是值得的。

即将推出:故事模式

这里有个令人兴奋的消息:我们正在构建一个使用结构化输出的全新故事模式。

为什么采用不同的方案?因为故事模式有不同的优先级:

  • 精确的场景控制比自由创作更重要
  • 丰富的元数据(镜头角度、音乐提示、章节划分)能增加价值
  • 格式更可预测(清晰的章节/场景结构)
  • 用户期待更"精心制作"的体验

不同的使用场景需要不同的架构。我们不迷信任何单一方案——我们选择最能服务用户的那个。

诚实的真相

多角色 AI 对话没有完美的解决方案。每种方案都在用一些有价值的东西换取另一些。

那些展示独立气泡的平台?他们很可能在用结构化输出,并接受其局限性。那些有更"智能"场景控制的平台?大概是工具调用,伴随着更高的成本和延迟。

我们选择了优先考虑用户最看重的东西的道路:可靠、有创意、成本可控的群聊角色扮演。

独立气泡的体验确实不错。但不值得牺牲所有其他东西。

我们在探索的方向

我们正在实验混合方案:

  • 后处理解析:使用轻量模型在生成后将自由文本拆分成角色片段
  • 可选结构化模式:让高级用户在需要精确控制时选择结构化输出
  • 智能场景检测:自动识别自然的分割点,提供更好的 UI 呈现

目标不是找到"正确"答案,而是在保持有效方案的同时持续改进体验。


对群聊应该如何运作有想法?我们很想听听你的意见。

本页内容

  1. 1. 结构化输出(JSON 数组)
  2. 2. 工具调用(Agent 模式)
  3. 3. 自由文本输出(我们当前的选择)

相关文章

返回博客

同一个模型,为什么会判若两人?Reverie 如何发现并隔离降级节点

同一个模型由不同算力供应商提供服务时,体验并不一定相同。我们介绍 Reverie 如何发现响应缓慢、额外过滤、结构损坏和语言漂移,并让用户避开这些异常路线。

这是工作室,不是仪表盘

我们重建了 Reverie 创作中心,让它回答创作者真正在问的那个问题——有人在用吗?——而不是一块商业仪表盘惯常展示的那些指标。

角色编辑器,正在变成一场对话

介绍 Reverie 全新的 AI 工作台:通过对话创作、测试、检查并持续完善更丰富的 AI 角色,同时让每一次修改都清晰可见、可以撤销,并始终由你决定。

准备体验动态AI对话了吗?

加入成千上万的用户,一起探索无限个性和引人入胜的互动体验。

开始免费对话 →查看定价
Reverie LogoReverie

AI 角色聊天与角色扮演平台。梦想它、创造它、与它对话。

推特·Discord·关于我们·联系我们

产品

功能主题AI 角色扮演角色扮演灵感AI RPG带记忆的 AI 聊天角色故事主题合集瞬间AI 角色创建器可视化角色创建器世界书AI 角色扮演插件故事模式AI 小说写作聊天转小说角色挑战成就年度回顾

探索

NSFW AI聊天无过滤 AI 聊天AI 女友AI 男友AI 伴侣AI群聊用户人设AI 语音通话AI 声音克隆AI 模型对话分叉斜杠指令AI故事生成器会主动找你的 AI无限消息标签创作者

对比

最佳 AI 角色扮演平台最佳 AI 女友应用最佳 NSFW AI 聊天平台Character.AI 替代方案vs Character.AIvs Janitor AIvs Chai AIvs SpicyChatvs Crushon.AIvs Polybuzz.AIvs Chub AIvs SillyTavernvs Talkie AIvs AI Dungeonvs Replikavs Moematevs Figgs AI

资源

指南术语表创作者计划AI 角色 API角色导入器聊天记录导入器常见问题博客更新日志服务状态定价Discord 机器人Telegram 机器人

分类

  • 奇幻
  • 科幻
  • 动漫
  • 游戏
  • 名人
  • 浪漫
  • 主导
  • 顺从
  • 角色扮演
  • 恋物
  • BDSM
  • 奇幻生物
  • Cosplay
  • 虚拟女友
  • 虚拟男友
  • 后宫
  • 兽人
  • 怪物
  • 制服
  • 触手
  • 超自然
  • 虚拟老婆
  • 伪娘
  • 扶她
  • 魔物娘
隐私政策条款和条件社区准则
support@reverie.im
651 N Broad St, Suite 206, Middletown, DE 19709, USA
© 2026 Reverie. All rights reserved.