Skip to content

[Feature] 支持在消息记录中分叉(Fork) #60

Description

@maotoumao

What do you want? (你想要什么?)

支持从消息记录中的任意历史消息处分叉(Fork)对话。

用户选择一条消息作为分叉点后,创建一个包含该节点之前上下文的新会话,并在新会话中独立继续对话;原会话及其后续消息保持不变。

Why? (为什么?)

长对话中经常需要回到某个节点尝试另一种提问、模型或处理方式。直接继续会改变当前对话方向,重新新建会话并手动补充上下文又比较繁琐。

分叉可以保留已有上下文和原来的探索路径,同时让用户低成本尝试不同方向,也方便对比不同分支的结果。

How? (怎么做? — 可选)

  • 在历史消息的操作菜单中提供「分叉」入口
  • 复制分叉点之前的必要消息与上下文,创建独立的会话记录
  • 分叉后的会话使用独立 ID,后续消息、模型设置和标题互不影响
  • 创建成功后进入新会话,并提供来源会话或分叉点提示
  • 明确附件、工具调用结果、仍在生成的消息等特殊状态是否可以分叉,以及复制或引用规则

首期可以先完成单层分叉和来源标记,不必立即实现完整的分支树管理界面。

Alternatives considered (考虑过的替代方案 — 可选)

可以新建会话后手动复制上下文,或仅重新生成最后一条回复。前者操作成本高且容易遗漏信息,后者无法从更早的消息节点保留多条独立探索路径。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions