🚀 今日科技圈快訊: 從 AI 模型生態系的權力爭奪,到開發工具追求極致性能的演進,今日的趨勢顯示出技術開發正朝著「更簡單的架構」與「更複雜的數據採集」兩個極端發展。對於開發者與創業家來說,理解如何利用現有工具(如 SQLite)來簡化複雜流程,以及關注 AI 數據來源的變化,將是掌握未來競爭力的關鍵。
🤖 AI/機器學習
Mistral AI 峰會筆記 📝
本文詳細記錄了 Mistral AI 最新峰會的核心內容,探討了開源模型在當前大模型領域的定位與發展戰略。對於關注歐洲 AI 生態系以及開源 LLM 技術路徑的讀者來說,這是不可錯過的深度總結。
三個正交軸線(Model / Effort / Workflow)分開問。對照組是新手會問「給我最好的設定」— 等於要 AI 替你在多維空間做加總決策,你拿到答案也不知道為什麼。
對 AI 協作的特別意義:AI 處理 bundled question 會發生兩種失敗:(1) 只回最顯眼那條,其他偷偷漏掉;(2) 強行給一個整合答案,但每個軸線都妥協。你下意識把 3 軸拆開,等於逼 AI 逐個 expose,你才能照自己的 context 做選擇。這對應的軟工原則是「不讓抽象漏掉」(don’t leak the abstraction)的反向應用:你拒絕 AI 把抽象漏掉。
#3 真實基準 (Representative Benchmarks)
定義:評估新工具用真實場景,不用 toy example。 經典出處:John Hennessy / David Patterson《Computer Architecture》§1.8 Fallacies and Pitfalls(benchmark 永遠騙人)、SPEC CPU 為什麼要 update、ML 領域 distribution shift 一整條研究線。
定義:任務開始前先寫死「做到什麼程度算 done」。 經典出處:Agile user story 的 INVEST criteria、Behavior-Driven Development (BDD) 的 Given-When-Then、Definition of Done 是 Scrum 必備產物。
用 --effort medium 而不是 high 開始,確認 quality 夠才升 effort
跑前先讓 Claude 估算 token cost 跟 agent 數,你 approve 才放跑(workflow 內建這層 approval prompt,但你按 [3] View raw script 之前沒人問你 budget)
對自己設「單條對話 spend 上限」(例如 $10),透過 Claude Code admin page 或 API budget API 強制
對 AI 協作的特別意義:傳統軟工 budget 是「機器跑爛要錢」,AI 場景下 budget 還包含「AI 寫錯 script 跑很久才發現」的 fail-loud delay。Anthropic 自己在他們 multi-agent research system 的 paper 也警告:multi-agent 用 token 是 single-agent 的 3-10×,Research system 是 ~15×。沒 budget cap 等於放任這個倍率,3am 一覺起來收到 $200 帳單是真實風險。
#13 根因分析 (Root Cause Analysis)
定義:遇到問題不停在表象,挖到「為什麼會發生」的最底層。 經典出處:Toyota 的「Five Whys」、Apollo 13 事故報告、Etsy / Google 的 blameless postmortem template、《The Field Guide to Understanding Human Error》。
Anthropic 在 2026-05-28 釋出 Claude Opus 4.8,帶來 Dynamic Workflows(背景跑 JS script orchestrate 數百 subagent)、Effort Control(low/medium/high/xhigh/max/ultracode)、Messages API system entries 中段插入。
Anthropic 在 2026-05-28 同步發佈了 Claude Opus 4.8、Dynamic Workflows research preview、Effort Control、以及 Messages API 的中段 system entries 支援。發佈當天我看了官網內容,隔天 5/29 拿真實專案 Home123 跑了一輪雙軌對照,本文記錄完整數據與啟動 prompt。
三個直接相關的能力更新:
能力
說明
適用 plan
Dynamic Workflows
Claude 寫一支 JS script,runtime 背景跑,內含可數百個 read-only Explore subagent 平行作業
所有付費(Pro 要先去 /config 開)
Effort Control
5 級:low / medium / high / xhigh / max,另有 ultracode(= xhigh + 自動 workflow orchestration)
所有 plan
Messages API system entries
可在 messages array 中段插入 system entry,更新指令但不破 prompt cache、不需要假裝 user turn
API 直連
不是所有 model 都吃所有 effort 等級。實測 claude --effort foo 會回:
error: option '--effort <level>' argument 'foo' is invalid.
It must be one of: low, medium, high, xhigh, max
Workflow plan:
Phase 1: Classify — one Explore agent per function-range chunk
Phase 2: Synthesize — cross-file pattern analysis + suspicious findings
[1] Yes, run it
[2] Yes, and don't ask again for <name> in <path>
[3] View raw script ← 第一次強烈建議按
[4] No
第一次按 View raw script 看 Claude 寫出什麼 JS,看完按 ESC 回去再按 Yes。這是 workflow 教育核心,跟 subagent 的 black box 是完全不同的體驗 — 你看得到 orchestration 的具體 code。
“The audit is complete, but the synthesis agent’s counts look off (it reported total=83, but I dispatched coverage for 109 functions). Let me verify completeness from the authoritative rows array myself.”
這就是 4.8 公告吹的「4× less likely to allow flaws in code it wrote to pass unremarked」實戰演示。
QA agent A — INV-XXX-NNN red-team
QA agent B — INV-YYY-MMM regression
QA agent C (optional) — same scope as A, no knowledge of A's findings
(consistency check; 結果一致則 spec 寫得清楚,
不一致則 spec 有歧義先收斂)
User browser smoke remains the most valuable QA signal.
深挖那個 LEFT JOIN ARRAY_AGG NULL bug
有問題的 SQL 是 CommunityUsers resolver,長這樣:
SELECT u.*, COALESCE(
ARRAY_AGG(ur.role_code) FILTER (WHERE ur.revoked_at IS NULL),
'{}'::text[]
) AS roles
FROM users u
LEFT JOIN user_roles ur ON ur.user_id = u.id
WHERE u.community_id = $1
GROUP BY u.id;
Bug 在哪?LEFT JOIN 對沒匹配的 user 會 pad 一行 ur.* 全部 NULL 的 row。SQL 三值邏輯下,NULL IS NULL 是 TRUE——所以 FILTER (WHERE ur.revoked_at IS NULL) 把這個 pad row放進了 aggregate。結果 ARRAY_AGG 回傳的不是空陣列、是{NULL}(包一個 NULL 元素的陣列)。COALESCE 看到的是非 NULL 陣列,直接 pass through,Go scan 進 []string 時就爆 cannot scan NULL into *string。
修法很簡單:FILTER 加一個 AND ur.role_code IS NOT NULL,把 pad row 排除掉。但為什麼 11 個 verification cycle 都沒抓到?
因為這個 bug 只在「有 user 沒有任何 user_roles row」時觸發。C6 cycle 的 seed-demo.sh 改成 idempotent 之前,所有 demo user 都有至少一個 role;C6 之後,seed 改成「先 DELETE 殘餘 user 的 roles 再 disable user」,結果 DEMO001 多出 11 個 disabled-residue user 帶 zero user_roles row。fixture 狀態改變才暴露 bug,前 11 個 cycle 跑的時候 fixture 還沒進入這個狀態。
這條 cycle file 寫下了 multi-agent 系統最殘酷的真相:
Cycle SOP catches what cycle SOP can imagine; user catches the rest.
monday Trust Center 公開的清單:SOC 1/2/3 Type 2、ISO 27001 / 27018 / 27017 / 27032 / 27701、GDPR、HIPAA、CCPA、LGPD、PIPEDA、APPI、EU-US DPF、TX-RAMP、CSA STAR Level 1。資料中心 3 個 region:US、EU(法蘭克福)、APAC,全部跑在 AWS。
一個容易踩雷的細節:即使選 EU region,monday 自家的 metadata(使用者憑證、profile、usage analytics)仍然存在 US — 只有 Customer Data 在 EU。法務團隊評估時這點要算進去。另外,region 由「第一個開帳號的人位置」自動決定,一旦設定不能改,真要從 US 遷 EU 得走特殊流程。