LangGraph 上線後最常爆的是三件事:thread_id分叉、checkpoint 後端扛不住併發寫、以及工具逾時與沙箱配額沒驗就收。下面給決策矩陣、選型提示與遠端 Mac 長跑清單。
延伸閱讀:LLM 工作流與 OpenClaw 主題、本機推理矩陣、工具逾時與重試、沙箱與探針。首頁了解平台;長時程節點見購買頁。
編排決策矩陣(速查)
由原型到多 worker:遠端長跑請同時盯checkpoint 增長與併發寫入。
| 維度 | thread_id | Checkpoint:SQLite/Postgres 提示 | interrupt | Tool timeout | 目錄/工作區配額 |
|---|---|---|---|---|---|
| 本機開發 | 固定字串或 UUID;寫入結構化日誌 | SQLite 單檔於專案外路徑;避免放在會被同步軟體掃描的目錄 | 可開;用於核准敏感工具 | 短(5–30s)逼出錯誤路徑 | 沙箱根目錄 ~/Library/Application Support/youragent/scratch;軟性上限即可 |
| 遠端 Mac 長跑 | 與外部 ticket/會話主鍵對齊;重試不改 thread | 若多行程同時寫入或需備援,優先評估 Postgres;單機仍可用 SQLite 但鎖競爭需壓測 | 與 SLA 綁定;逾時自動拒絕或轉人工佇列 | 依下流年產能設階梯(例如 30s/120s/15m) | 硬性配額:佔用位元組+檔案數;df 與 inode 告警 |
| 多租戶/合規 | 租戶前綴+不可猜測 id;稽核欄位不可缺 | Postgres+分區或依租戶 schema;保留週期與刪除請求(DSR)流程 | 審批鏈與身分驗證掛鉤 | 全域預設+每工具覆寫 | 每租戶獨立沙箱根;配額與備份可獨立執行 |
Checkpoint:SQLite 與 Postgres
SQLite:單機原型快、備份即拷檔;多行程同寫與長跑膨脹要壓測,並訂過期 checkpoint 清理。Postgres:多 worker、HA、可查詢營運面較佳;對 thread_id/時間戳建索引,必要時分 schema隔離 Agent 資料。
thread_id、interrupt 與 tool timeout
thread_id須由上游發放且重試不改,否則狀態分叉。interrupt要配恢復與業務逾時,避免凍結佔滿佇列;與tool timeout(下線護欄)分開設。逾時分類請併用重試策略。
HowTo(最小步驟)
- API 驗證 thread_id;日誌與閘道對齊同一欄位。
- 選定 SQLite 或 Postgres 後做 1–2h soak,看寫入與空間曲線。
- 沙箱僅寫入指定樹;設目錄位元組+檔案數配額與 inode 告警。
- interrupt/棄單/刪快照寫進 runbook;遠端 Mac 模擬斷線、503、磁碟滿。
export LANGGRAPH_CHECKPOINT_URL="postgresql://…/ckpt" # 或 sqlite:////…/graph.ckpt
export TOOL_TIMEOUT_DEFAULT_SEC=60
export AGENT_SANDBOX_ROOT=~/Library/Application\ Support/youragent/sandbox
df -h "$AGENT_SANDBOX_ROOT"; ulimit -n遠端 Mac 長跑:驗收清單
- thread_id 可稽核;checkpoint 增長與備份還原演練過。
- 工具逾時/重試/熔斷有儀表;沙箱配額與暫存清理到位。
- interrupt 佇列有處理或釋放的 SLI,不堆幽靈任務。
摘要:thread_id、checkpoint、interrupt、tool timeout、目錄配額一併驗收後,再放大遠端長跑流量。