Skip to main content
All posts
AI 員工實戰

為什麼連 Grok Bot 也會半路罷工?用開源 MausBot + bf16.ai 打造 24 小時不斷線的 AI 員工團隊

單步 3% 的偽陽性拒答率,放到 30 步長鏈路自動化就會把完走率壓低到 40%。本文拆解如何以本地開源 MausBot 搭配 bf16.ai 權重級低拒答模型,並依定價試算一次 30 步任務的成本。

省流版 · 核心工程結論

  • 長鏈路失敗率會指數放大:就算雲端模型單輪只有 3% 誤判拒答,連續執行 30 步自動化任務的存活率也會跌到 (0.97)^30 = 40.1%。這正是 Grok Bot 單輪聊天順手、半夜排程卻常卡死的主因。
  • 本地控制面 + 權重級低拒答模型:用開源 MausBot(OpenMausBot,Apache-2.0)把記憶庫、登入憑證與檔案權限留在本地電腦;推論端點改接 https://api.bf16.ai/v1 的 deepseek/deepseek-v4.1-flash-abliterated。
  • 對標官方標準價 + 1M 快取折扣:輸入 $0.30、快取命中 $0.05、輸出 $1.20(每百萬 Token),以下文試算的 30 步代理任務為例,總成本為 $0.0094,並支援每把 API Key 獨立鎖定每日美元上限。

1. 凌晨 3 點 14 分的中斷現場:為何「少說教」的聊天機器人仍會卡死自動化?

許多獨立開發者與精實團隊都試過把 Grok Bot 當成全職數位員工。平心而論,相較於動輒道德說教的 Claude 或 GPT,Grok 在單輪問答時確實乾脆許多。

但只要把任務升級成 30 步以上的無人值守營運流程——例如登入自家 Staging 後台、在測試入駐表單填入虛擬統編、勾選服務條款(ToS)核取方塊、抓取含敏感字眼的競品價格表並寫入報表——問題就來了。因為代理是串行呼叫工具的,只要每一步有 3% 的偽陽性拒答機率,30 步全數通過的機率就只剩 (1 - 0.03)^30 = 40.1%。一旦模型在第 14 步吐出說教文字而非 JSON tool_calls,整條自動化排程就會當場崩潰:

[03:14:08] [mausbot:ops-worker] Step 13/30 OK -> Navigated to https://staging-partner.internal/onboarding/step-4
[03:14:09] [mausbot:ops-worker] Step 14/30 -> Action: check("#accept-msa-checkbox") + fill("#tax-id", env.STAGING_EIN)
[03:14:11] [upstream:cloud-wrapper] STOP_REASON=refusal
  "I cannot click legal binding agreements, submit tax identification numbers, or complete automated account verification steps on your behalf. Please review and submit the form manually."
[03:14:11] [mausbot:supervisor] ERROR: ToolCallExpectedError (received text lecture instead of JSON tool_calls)
[03:14:11] [mausbot:supervisor] Workflow aborted at step 14/30. Downstream Slack report & CSV reconciliation skipped.

2. 架構拆解:本地開源 MausBot 多代理編排 + bf16.ai 正交去拒答推論底座

真正穩定的生產架構,必須把權限控管與模型推論徹底解耦:

  1. 本地控制面(MausBot,Apache-2.0):在自己的工作站或內網主機執行 MausBot,側邊欄可同時配置營運助理、QA 巡檢員、對帳專員與情報分析師。Cookie、私鑰與本地檔案完全不出內網。
  2. 低拒答推論面(bf16.ai):將 base_url 指向 https://api.bf16.ai/v1。bf16.ai 架上的 3 款模型皆在權重殘差流層級正交移除了過度拒答向量(Abliterated / Uncensored),且每個端點都必須先通過 6 維行為驗證閘門,檢查 JSON 工具呼叫格式、數學邏輯與 1M 超長上下文召回能力;遇到複雜視覺彈窗時還可切換至原生支援視覺的 zai-org/glm-5.3-flash-abliterated。

3. 實戰設定檔與強制工具呼叫(Tool Choice)範例

由於 api.bf16.ai/v1 完整相容 OpenAI 與 Anthropic 介面,只需在 ops-worker.toml 指定端點,並將目錄與網域白名單寫進 [sandbox] 即可上線:

# ~/.mausbot/agents/ops-worker.toml
[agent]
name = "ops-worker"
role = "Autonomous Operations, Staging QA & Vendor Onboarding Worker"
max_steps = 45
step_timeout_ms = 45000
require_json_tool_calls = true

[provider]
type = "openai-compatible"
base_url = "https://api.bf16.ai/v1"
api_key_env = "BF16_OPS_WORKER_KEY" # Dedicated per-bot sk-bf16-v1-* key
model = "deepseek/deepseek-v4.1-flash-abliterated"
vision_fallback_model = "zai-org/glm-5.3-flash-abliterated"
temperature = 0.15
max_tokens = 8192

[sandbox]
allowed_fs_roots = ["~/mausbot-workspaces/ops-worker"]
allowed_browser_domains = ["*.internal", "*.staging.example.com", "dashboard.stripe.com"]
require_human_approval_tools = ["wire_transfer", "production_db_drop", "delete_account"]

若以 TypeScript 撰寫外部監督迴圈,建議搭配 tool_choice: "required" 與 X-BF16-Max-Price-Per-M-Output 標頭,並在控制台為每個機器人配置專屬 sk-bf16-v1- 金鑰:

import OpenAI from 'openai';

const bf16 = new OpenAI({
  baseURL: 'https://api.bf16.ai/v1',
  apiKey: process.env.BF16_OPS_WORKER_KEY, // Scoped to $5.00/day in bf16.ai/dashboard/keys
  defaultHeaders: {
    // Hard unit-price ceiling: never route to an endpoint above $1.50 / 1M output tokens
    'X-BF16-Max-Price-Per-M-Output': '1.50',
  },
});

export async function dispatchMausBotStep(messages: OpenAI.ChatCompletionMessageParam[], tools: OpenAI.ChatCompletionTool[]) {
  const res = await bf16.chat.completions.create({
    model: 'deepseek/deepseek-v4.1-flash-abliterated',
    messages,
    tools,
    tool_choice: 'required', // Guarantees structured tool execution without prose filler
    temperature: 0.1,
  });

  const call = res.choices[0]?.message?.tool_calls?.[0];
  if (!call) {
    throw new Error(`Unexpected empty tool_call on request ${res.id}`);
  }
  return { call, usage: res.usage };
}

bf16.ai 控制台實拍(/dashboard/keys):為單一代理金鑰設定每日 $5.00 上限、總額度上限、60 RPM 與 IP 白名單。

▲ bf16.ai 控制台實拍(/dashboard/keys):為單一代理金鑰設定每日 $5.00 上限、總額度上限、60 RPM 與 IP 白名單。

4. 官方同價下的 30 步任務 Token 經濟學

bf16.ai 直接對標模型官方標準定價,並支援 1M 前綴快取自動折扣(快取命中僅 $0.05–$0.06 / 1M)。以一場 30 步 MausBot 任務為例(累計 10 萬輸入 Token、其中 88% 命中快取,另有 1,200 個工具呼叫輸出 Token),依定價計算總花費僅 $0.0094:

bf16.ai 模型 ID模態上下文輸入 / 快取 / 輸出 (每 1M)建議代理角色
deepseek/deepseek-v4.1-flash-abliterated文本 + 工具1M$0.30 / $0.05 / $1.20高頻 CLI、表單與資料清洗迴圈
zai-org/glm-5.3-flash-abliterated視覺 + 文本1M$0.24 / $0.06 / $1.00網頁截圖辨識、Canvas 彈窗與視覺 QA
zai-org/glm-5.3-abliterated文本 + 工具1M$1.40 / $0.30 / $4.40複雜任務拆解、跨檔案重構與資安審計

5. 正式掛機前的 4 條工程避坑守則

  1. 一代理一金鑰並鎖死每日美元上限:低拒答模型遇到程式死迴圈不會主動停機說教,請務必在 bf16.ai/dashboard/keys 設定每日 $5.00 硬上限。
  2. 權限邊界寫進沙盒程式碼:刪除檔案、正式環境資料庫變更與金流操作必須列入 require_human_approval_tools。
  3. 工具迴圈將 temperature 固定在 0.1 ~ 0.2:確保長鏈路 CSS 選擇器與 JSON 結構零漂移。
  4. Flash 跑執行、Flagship 做決策:90% 常規步驟交給 deepseek-v4.1-flash-abliterated 極速執行,關鍵規劃再升級至 glm-5.3-abliterated。