你已經進行了 25 則訊息的對話。你建立了上下文、做出了決策,並到達了一個有前景的方向。然後一個想法閃過:如果我嘗試完全不同的方法呢?
在傳統的聊天介面中,你只有兩個糟糕的選項。重新開始並重新解釋所有內容。或者放棄替代方案,寄望目前的路徑能夠成功。
JieGou 的對話分支給你第三個選項:分叉對話。
什麼是對話分支?
對話分支讓你可以從歷史記錄中的任何訊息建立一個新的對話分支。分支繼承到該時間點為止的所有上下文 — 系統提示、訊息歷史、任何壓縮摘要 — 並從那裡開始獨立延續。
把它想成對話的 git branch。
訊息 1 ─── 訊息 2 ─── 訊息 3 ─── 訊息 4 ─── 訊息 5
│
└─── 分支 A:訊息 4a ─── 訊息 5a
│
└─── 分支 B:訊息 4b ─── 訊息 5b
兩個分支共享訊息 1-3 的歷史。從訊息 3 開始,它們完全分岔。一個分支中的變更不會影響另一個分支。
如何建立分支
建立分支是一個簡單的操作。在對話檢視中:
- 將滑鼠懸停在對話中的任何訊息上
- 點擊分支圖示
- 從該時間點建立新分支
- 你被帶到新分支,準備繼續
原始對話保持不變。你可以隨時在分支之間切換。
你也可以透過 API 和 SDK 建立分支:
const branch = await jiegou.conversations.branch({
conversationId: "conv_abc123",
fromMessageId: "msg_xyz789",
name: "替代方案 — 嘗試使用 SQL 而非 NoSQL"
});
// 用新訊息繼續分支
const response = await jiegou.conversations.send({
conversationId: branch.id,
message: "讓我們重新考慮使用 PostgreSQL 的資料模型。"
});
使用案例
A/B 測試提示
你一直在為內容生成任務改進提示。你想比較兩種措辭。在最新提示之前對對話進行分支,在一個分支中發送版本 A,在另一個中發送版本 B,然後並排比較輸出。
建立上下文 ─── 提供範例 ─── 細化指令
│
├─── 提示 A:「撰寫簡潔的摘要...」
│
└─── 提示 B:「歸納要點...」
假設驗證
你正在借助模型分析資料。你已經清理了資料集並建立了分析框架。現在你想測試兩個假設,而不會汙染任一探索。
載入資料 ─── 清理與驗證 ─── 定義指標
│
├─── 假設 1:「流失與使用頻率相關」
│
└─── 假設 2:「流失與支援工單相關」
每個分支都獲得乾淨的資料集上下文。每次探索都是隔離的。
比較模型
使用 Claude Sonnet 開始對話進行初步探索。建立分支,並將分支切換到 GPT-4o。在兩個分支中提出相同的問題。比較推理方法、輸出品質和回應時間。
安全探索
正在處理生產環境的設定?在進行風險變更之前建立分支。如果分支走入死胡同,切換回主對話,像什麼都沒發生一樣繼續。
協作決策
你的團隊正在討論架構決策。對對話建立分支以獨立探索每個選項。探索完成後,檢視兩個分支並將見解合併為最終決策。
分支管理
分支不是用完即棄的東西。它們是具有完整生命週期支援的一等對話物件:
- 命名 — 給分支描述性名稱(「SQL 方案」、「NoSQL 方案」)以便識別
- 列表 — 在樹狀檢視中查看對話的所有分支
- 切換 — 在分支之間跳轉而不遺失狀態
- 比較 — 並排檢視分支以比較它們的差異
- 封存 — 封存不再需要的分支而不刪除它們
分支如何與壓縮配合運作
對話分支與 JieGou 的迭代壓縮系統整合。當你從已壓縮的對話建立分支時:
- 分支繼承壓縮摘要作為其基礎
- 分支也繼承分支點之前所有完整的最近訊息
- 每個分支在增長時獨立壓縮
- 一個分支中的壓縮永遠不會影響另一個分支
這意味著你可以從一個已經壓縮兩次的 100 則訊息對話中建立分支,分支以完整的壓縮上下文開始 — 沒有資訊遺失。
分支比較檢視
比較檢視並排顯示兩個分支,突出它們分岔的位置:
| 分支 A(SQL) | 分支 B(NoSQL) |
|---|---|
| 「關聯式模型給我們強一致性…」 | 「文件儲存讓我們可以快速迭代結構…」 |
| 預估延遲:12ms p99 | 預估延遲:8ms p99 |
| 遷移工作量:3 週 | 遷移工作量:1 週 |
這使得評估權衡和用兩次探索的證據做出決策變得直截了當。
合併見解
分支是獨立的,但見解不是孤立的。你可以在一個分支中引用另一個分支的發現:
- 打開包含你想帶過來的見解的分支
- 複製相關訊息或摘要
- 切換到目標分支
- 將其作為上下文貼到你的下一則訊息中
我們也正在建構專門的合併助手,它將自動綜合跨分支的發現為統一摘要。這在 2026 年第二季的路線圖上。
API 和 SDK 支援
對話分支在 JieGou SDK 和 REST API 中完全支援。你可以程式化地建立分支、列出對話的分支,以及向特定分支發送訊息。
// 列出對話的所有分支
const branches = await jiegou.conversations.listBranches("conv_abc123");
// 取得分支樹狀結構
const tree = await jiegou.conversations.getBranchTree("conv_abc123");
// 比較兩個分支
const diff = await jiegou.conversations.compareBranches({
branchA: "conv_branch_001",
branchB: "conv_branch_002"
});
這使得能夠建立系統性探索替代方案的自動化工作流程 — 例如,一個工作流程步驟對對話建立分支、嘗試三個不同的提示,並根據評估標準選擇最佳結果。
可用性
對話分支在 Pro 方案及以上可用。每個對話在 Pro 上最多可以有 10 個活躍分支,在 Team 和 Enterprise 方案上則無限制。
分支計入你的對話儲存配額,但不計入你的 LLM 使用限制 — 只有你在每個分支中實際發送的訊息消耗 token。
開始探索
最好的想法往往來自提問「如果…會怎樣?」對話分支讓這個問題變得零成本。分叉、探索、比較,然後匯聚到最佳的前進道路。