Clawdbot 串流

了解 Clawdbot AI 助手的串流回應、分塊、輸入指示器和即時訊息傳遞。

Clawdbot 串流概覽

Clawdbot 支援串流回應,實現即時 AI 互動。串流能夠啟用輸入指示器、部分訊息更新和長回應的分塊傳遞。

串流模式

完整串流

完整串流在生成時即時傳遞 token:

{
  "streaming": {
    "mode": "full",
    "chunkSize": 50
  }
}

分塊傳遞

分塊傳遞將長回應分割:

{
  "streaming": {
    "mode": "chunked",
    "maxLength": 4000,
    "delimiter": "\n\n"
  }
}

提供者支援

提供者串流輸入指示分塊
WhatsApp部分
Telegram完整
Discord完整
WeChat
Feishu部分

輸入指示器

配置

{
  "typing": {
    "enabled": true,
    "interval": 3000,
    "stopOnComplete": true
  }
}

行為

  • 每隔 interval 毫秒發送指示器
  • 回應完成時自動停止
  • 因提供者而異的實現

訊息分塊

為什麼需要分塊?

  • 平台訊息長度限制
  • 更好的用戶體驗
  • 降低超時風險

分塊設定

設定預設描述
maxLength4000每塊最大字元數
delimiter\n\n偏好的分割點
delay500分塊之間的毫秒數

範例

長回應自動分割:

[Chunk 1] First part of response...

[Chunk 2] Continuation...

[Chunk 3] Final part...

串流事件

事件類型

事件描述
stream_start串流開始
stream_chunk新的內容塊
stream_end串流完成
stream_error發生錯誤

WebSocket 事件

ws.on('message', (data) => {
  const event = JSON.parse(data);

  switch(event.type) {
    case 'stream_start':
      // Show typing indicator
      break;
    case 'stream_chunk':
      // Append content
      break;
    case 'stream_end':
      // Hide typing indicator
      break;
  }
});

緩衝區管理

配置

{
  "buffer": {
    "maxSize": 10000,
    "flushInterval": 100,
    "strategy": "adaptive"
  }
}

策略

策略描述
immediate立即發送每個 token
batched按間隔批次處理 token
adaptive根據網路狀況自適應調整

錯誤處理

串流錯誤重試

{
  "streaming": {
    "retry": {
      "enabled": true,
      "maxAttempts": 3,
      "backoff": "exponential"
    }
  }
}

降級至非串流

如果串流失敗,Clawdbot 會自動降級至非串流傳遞。

效能提示

  1. 調整分塊大小 根據提供者限制
  2. 啟用輸入指示器 以獲得更好的用戶體驗
  3. 使用自適應緩衝 應對可變網路環境
  4. 監控串流延遲 進行優化

後續步驟