Skip to content

MAGI系统的设想2:一个用于长篇叙事生成的协作式多智能体框架 #6

@ai2c

Description

@ai2c

1. 扩展后的 MAGI 2.0 架构

MAGI 2.0 System Architecture
图1: 扩展后的 MAGI 2.0 系统架构示意图

1.1. 核心引擎 (Core Engines) - 保持不变

  • 世界引擎 (World Engine):世界观的守护者。
  • 情节引擎 (Plot Engine):故事的驱动者 (DM)。
  • 角色引擎 (Character Engine):角色的扮演者。

1.2. 新增专家顾问 (Specialist Agents) - 负责深度和一致性

1.2.1. 连续性/书记官引擎(Continuity/Scribe Engine)

  • 职责:这是最重要的补充!它的任务是记忆一切。它读取所有生成的内容,并将其结构化地存入一个“故事数据库”中。例如:记录“第3章,主角A在北境城市获得了‘寒冰之刃’”。
  • 解决的问题:从根本上解决 LLM 的遗忘问题。当情节引擎需要信息时,它会问书记官:“主角身上有什么关键道具?”而不是自己去回忆。

1.2.2. 关系引擎 (Relationship Engine)

  • 职责:专门追踪和更新角色之间、角色与组织之间的关系。它维护一个动态的关系图谱,如“A对B的信任度:8/10”、“B对C的仇恨值:-5/10”、“主角与‘兄弟会’的关系:中立”。
  • 解决的问题:让角色互动更加真实、有深度。角色的行为会受到复杂人际关系的影响,而不是一成不变。

1.2.3. 伏笔/主题引擎 (Foreshadowing/Theme Engine)

  • 职责:扮演“编剧”的角色。它不直接生成故事,而是进行宏观规划。它可以根据人类导演设定的主题(如“背叛与救赎”),向情节引擎提出建议:“在这里可以埋下一个关于 B 未来会背叛 A 的伏笔。”
  • 解决的问题:让故事更有文学性和结构感,避免情节完全失控,变成流水账。

1.2.4. 对话/文笔引擎 (Dialogue/Prose Engine)

  • 职责:一个“润色专家”。在情节和角色引擎生成了内容草稿后,这个引擎可以专门负责优化文笔、统一语调、并确保每个角色的说话方式符合其性格。
  • 解决的问题:提升最终输出文本的质量和艺术性。

2. 逻辑问题与解决方案

2.1. 逻辑冲突:谁说了算?

  • 问题:如果角色引擎想做一件违背世界设定的事(比如在无魔世界里搓火球),怎么办? 如果情节引擎想强行推动一个不符合角色动机的剧情,怎么办?
  • 解决方案:引入“仲裁与优先级”机制 (Arbitration & Priority Layer)
    • 最高优先级:世界引擎。它的规则是铁律,可以否决任何违背设定的生成。
    • 次高优先级:人类导演。人类拥有一票否决权,可以随时介入修改。
    • 协商机制:在非原则性冲突时,引擎间可以进行一次“内部协商”。例如,角色引擎想违背情节引擎的安排,系统可以提示导演:“角色 A 的性格使其倾向于拒绝任务,是否允许?这将开启一条新的支线剧情。”

2.2. 创造力耗散:循环的陷阱

  • 问题:固定的“行动-反应”循环可能导致故事失去惊喜,变得平淡。
  • 解决方案:引入“混沌注入”与“宏观规划”
    • 混沌注入 (Chaos Injection):情节引擎可以被设定为有一定概率引入“世界事件”,这些事件独立于主角的行为发生(如远方国家爆发战争、一场突如其来的天灾)。
    • 宏观规划 (Macro-Planning):伏笔/主题引擎负责提供长期的故事弧光(Story Arc)目标,引导情节引擎向着一个更大的高潮发展,而不是只关注眼前的互动。

3. 稳定输出连载小说的核心功能

要实现稳定输出,系统必须超越一个简单的聊天机器人,成为一个项目管理工具。

3.1. 状态化的记忆数据库 (Stateful Memory Database)

这正是“书记官引擎”的核心。它不是一个纯文本日志,而是一个结构化数据库,包含:

  • 事件时间线 (Event Timeline):记录所有已发生的关键事件。
  • 角色状态表 (Character States):HP, MP, 情绪, 物品栏, 技能列表, 当前位置。
  • 世界状态 (World States):哪些城市被毁了,哪些 NPC 死了,政治局势如何。
  • 知识库 (Lore Base):所有已确定的世界设定,由世界引擎管理。

3.2. 动态检索增强生成 (Dynamic RAG)

当一个引擎工作时,它不是读取全部历史,而是由书记官引擎主动推送最相关的上下文。例如,当场景发生在“风雪要塞”,书记官会自动提取出“风雪要塞的地图描述”、“主角上次在这里的经历”、“与要塞相关的 NPC 信息”,并打包成一个简洁的上下文包(Context Package)发送给情节引擎。

3.3. 可视化控制面板 (Visual Dashboard)

给人类导演一个 UI 界面,能直观地看到:

  • 故事大纲树 (Story Outline Tree)
  • 角色关系图谱 (Relationship Map)
  • 待解决的伏笔列表 (Open Foreshadowing List)
  • 世界地图和主角当前位置

3.4. 可回滚的版本控制 (Git-like Version Control)

小说创作充满了“如果……会怎么样?”。系统应允许导演在任何一个节点创建分支,探索不同的剧情走向,就像 Git 管理代码一样。如果不满意,可以随时回滚到上一个版本。

4. 产能与资源消耗的均衡

这是最现实的问题。每次调用强大的 AI 模型(如 GPT-4o)都是有成本的。

4.1. 模型分级与协同 (Tiered Model Strategy)

用最贵的刀刃在最关键的地方:

  • 宏观规划/伏笔设计:使用最强大的模型(如 Claude 3 Opus / GPT-4o),因为这需要深度思考和创造力。但调用频率非常低(可能一章才调用几次)。
  • 核心情节/场景生成:使用性能和成本均衡的模型(如 Llama 3 70B / GPT-4o-mini)。这是系统的主要消耗。
  • 对话生成/润色:可以使用更小、更快的模型(如 Llama 3 8B / GPT-3.5),甚至可以针对特定角色的口吻进行微调(Fine-tuning),成本极低。
  • 信息提取/分类(书记官):使用专门为函数调用或信息提取优化的模型,成本最低。

4.2. 缓存与摘要机制 (Caching & Summarization)

  • 缓存 (Caching):对于世界引擎的查询(“首都的人口是多少?”),第一次生成后就存入数据库,之后直接读取,零成本。
  • 滚动摘要 (Rolling Summaries):书记官引擎定期将前面的章节内容进行高质量摘要。在生成新内容时,上下文包里包含的就不是冗长的原文,而是精炼的摘要,大大缩减了 Token 消耗。

4.3. 人机结合,按需生成 (Human-in-the-Loop, On-Demand Generation)

导演可以先自己写下粗略的“骨架”,比如“主角和 B 在酒馆争吵,然后卫兵介入”。然后圈出这段话,命令 AI:“使用情节引擎和对话引擎填充这段剧情的细节和生动对话。” 这样可以避免 AI 从零开始生成时偏离主题,减少了反复修改的成本。

总结

完善后的 MAGI 2.0 系统,是一个高度结构化、职责分明、并且充分考虑了现实成本的 AI 辅助创作流水线。它将 AI 从一个单一的、不可靠的“灵感缪斯”,转变为一个由多个可靠的、专业的“虚拟员工”组成的团队。人类作者则真正成为了这个团队的“导演”和“总编”,掌控着创作的灵魂,而将繁琐的细节执行和记忆工作交给了 AI。

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions