Buda LogoBuda

Chat Session 會話機制

理解 Buda 中 Chat Channel、Chat Session 的概念與隔離機制

Chat Session 會話機制

核心概念

概念說明
Chat Channel一個接入頻道,例如一個 WhatsApp 帳號、一個 Telegram Bot、一個 Discord 頻道。Channel 綁定到某個 Agent,負責接收和傳送訊息。
Chat Session(會話)一次獨立的對話上下文。每個用戶與 Agent 的對話都是一個獨立的 Session,上下文彼此隔離。

會話隔離

一個 Chat Channel 可以承載無數個並發 Session。

以 WhatsApp 客服為例:

WhatsApp Channel(帳號 A)
├── Session:用戶甲  ← 獨立上下文
├── Session:用戶乙  ← 獨立上下文
├── Session:用戶丙  ← 獨立上下文
└── ...(可擴展到百萬級)
  • 用戶甲和用戶乙的對話記錄完全隔離,互不可見
  • Agent 在回覆用戶甲時,不會「記得」用戶乙說過什麼
  • 同一個用戶發起新對話時,可以建立新的 Session,與歷史 Session 上下文隔離

Session 的生命週期

用戶首次發訊息 → 自動建立 Session → 對話進行中 → Session 保持活躍

                                              用戶長時間不活躍 → Session 進入休眠

                                              用戶再次發訊息 → 恢復同一 Session(上下文保留)

用戶也可以主動開啟新 Session,此時舊 Session 的上下文不會延續到新 Session。

與各渠道的對比

不同渠道的 Session 劃分邏輯略有不同:

渠道Session 劃分規則
WhatsApp 私訊每個用戶手機號 = 一個 Session
WhatsApp 群聊每個群 = 一個 Session(群內所有成員共享上下文)
Telegram 私訊每個用戶 = 一個 Session
Telegram 群組每個群 = 一個 Session
Discord每個頻道(channel)= 一個 Session

在客服場景中的意義

客服場景下,Session 隔離是核心保障:

  • 隱私:用戶 A 的訂單資訊不會出現在用戶 B 的對話裡
  • 準確性:Agent 只根據當前用戶的上下文回答,不會混淆
  • 擴展性:無論同時有多少用戶在聊,每個 Session 獨立處理,互不影響

On this page