系列精選
查看全部工程師日誌
寫 Code 之外的生活觀察 — 理財、旅遊、健康、居住、時事評論
Elasticsearch 完整指南
從零開始學 Elasticsearch — 環境建置到生產環境優化
Claude Code 完整教學
從入門到進階 — Hooks、Sub-agents、MCP、Skills 開發全攻略
AZ-305 Azure 架構師認證
Azure 解決方案架構設計師五日課程筆記
Java / Spring 學習筆記
Java 核心語法、Stream API、併發控制、Spring Boot 實戰
AI Agent 架構全解析
從 harness 骨架拆解現代 AI Agent — 以 Claude Code 為例的 7 層架...
對話長到開始變鈍:Claude Messages API 的隨選壓縮,跟你自己寫摘要差在一個簽章
你自己寫的 agent loop 跑到後段,回答開始變鈍。 它重複問一個前面已經確認過的欄位,或是把早就被否決掉的方案再提一次。你翻 log,一個錯誤都沒有,請求全部成功,狀態碼整排 200。唯一在變的是 input_tokens 每輪都比上一輪大一點。然後某一輪開始,答案就是不對勁。 官方的壓縮總覽頁把這件事寫得很直白:response quality degrades as a conversation grows。撞到 context window 上限才失敗算是好結局,品質通常在那之前就先掉了。 一個前提先講清楚:如果你的東西是一問一答、一輪就結束的形態,下面整篇都可以跳過,你沒有這個問題。會踩到的是那種一路跑幾十輪工具呼叫的東西。背景自動化、長任務 agent、會一直接話的客服 bot,歷史一直往上疊,而且疊得比你估的快。 第一條路:放著不管,撐到它自己炸什麼都不做,讓對話一路長下去。這條路的結局官方講得很乾脆:超出 context window,請求就失敗。 失敗其實不是最糟的,失敗你看得到,錯誤率會亮燈。難受的是失敗之前那一段路,品質已經在掉,卻沒有任何訊號,監控只...
AI 與科技新聞摘要 - 2026/09/23
九月二十二日,Anthropic 發布 Claude Opus 5.5,把 input 從每百萬 token 五美元調到四美元。九十分鐘之後,OpenAI 發布 GPT-6 Sol 與 Luna,中階那一款的牌價直接砍一半。 兩家動的層級不一樣、幅度也不一樣,挑的日子一樣。這種時候,時間點通常比幅度更值得看。 隔天下午,這兩家公司的執行長出現在同一場會議上。聯合國安全理事會的 AI 高階簡報會,議題是怎麼替 AI 的能力與安全防護訂出跨國可比的基準。 前一天搶價格,隔一天談煞車。指控誰虛偽是最省事的讀法,也是最沒用的:虛偽是道德判斷,判完就沒有下一步。該問的是,如果一家公司即使自己想放慢也停不下來,它在安理會上主張的那套標準,最後會由誰來付代價? 一、九十分鐘Opus 5.5 的價目表長這樣:input 每百萬 token 四美元,output 二十美元,cache reads 零點二美元,cache writes 五美元。對照 Opus 5 的五美元與二十五美元,這兩格各降兩成;cache reads 從零點五掉到零點二,降幅六成。 發布頁上還有另一個數字:整體執行成本降低 4...
OpenAI 的 PostgreSQL 沒有分片,答案要從一個 UPDATE 開始拆
一個 UPDATE 進到 PostgreSQL 裡面,底層到底在做什麼運算? 先問這個,是因為它決定了下面這套架構能不能成立。OpenAI 在 2026 年 1 月 22 日發了篇工程文章,說 ChatGPT 和 API 平台底下的 PostgreSQL 是一台沒分片的 Azure PostgreSQL Flexible Server 主庫,負責全部寫入,後面掛將近 50 台跨區 read replica。原文寫 “a single primary Azure PostgreSQL flexible server instance and nearly 50 read replicas spread over multiple regions globally”,同一段還說過去一年 PostgreSQL 的負載成長超過 10 倍。(作者是 OpenAI 的 Bohan Zhang。原站目前回 403,引用段落核對自 Wayback Machine 存檔。) 轉述這件事的文章大多停在「他們沒分片,猛」。但沒分片是結果不是做法。要看懂它為什麼撐得住,得先回到最上面那個問題。 先釘一個...
文件還寫著沒有後端,changelog 已經在修它的資料庫寫入
2026 年 6 月 18 日之前,要把一次排查的結果拿給同事看,得自己想辦法。貼一整面終端機捲軸,或者請 Claude 寫一個獨立的 HTML 檔,自己按兩下打開確認沒破版,再把檔案丟進 Slack。對方下載、打開,看到的是你按下產生那一刻的樣子。之後任務又跑出什麼,那個檔案不知道。 那天 Anthropic 的部落格宣布 Claude Code 的 session 成果可以直接變成 claude.ai 上的一個網址,原文寫的是「live, shareable visual pages… that update themselves as your session works」。技術文件那邊的界線則很清楚,我查證當天讀到的版本是這樣寫的: “An artifact is a capture of work: one self-contained page with no backend, so it can’t serve multiple routes. For a hosted internal tool with a backend, deploy it on your...
AI 與科技新聞摘要 - 2026/09/22
台北的會場裡,台灣微軟總經理卞志祥在台上講了一句聽起來很平常的話:「未來2到3年看到的態勢依舊是AI算力需求大於供給」。他接著補的那一段更具體:短缺的不只是 GPU 跟 CPU,還有電力,還有新機櫃要塞進去的那塊地板。 往前推三天,有一家專門在補這個缺口的公司,把自己的帳本攤開給美國證管會看了。機房要有人去蓋,電要有人去拉,長約一簽就簽到下個十年,而這些錢通常不是蓋的人自己的。攤開之後真正要讀的,是那些合約後面附的條件。 一、1,034 億裡面,26 億是真的Nscale 是一家總部在倫敦的 AI 資料中心開發商,創辦人暨執行長是 Josh Payne。九月十八日,它向美國 SEC 遞出 S-1 註冊申請文件,準備在紐約證交所掛牌,股票代號 NSCL。 招股書上最顯眼的數字是 1,034 億美元。那是截至八月三十一日的「已生效與已簽約總合約價值」,去年底這個數字還是 380 億。 同一份文件裡還有另一個數字。1,034 億裡面,只有 26 億屬於「已生效」。Investing.com 引的原文是「only $2.6 billion worth was active as of t...
不上鎖、不保證順序、責任歸你:NIXL 這筆交易什麼時候不該接
你正在替一套推論服務挑底層的資料搬移方案。翻開其中一個候選的後端實作指南,讀到這一句: There is no ordering guarantee across transfer requests, and no locking mechanism for any specific memory region; the user is in charge of not corrupting the memory by having two simultaneous transfers to the same location. 傳輸請求之間沒有順序保證,任何一塊記憶體區域都沒有鎖,別讓兩個傳輸同時打到同一個位置是呼叫端的責任。 接,還是不接? 寫下這句話的是 NIXL,全名 NVIDIA Inference Xfer Library,倉庫在 ai-dynamo/nixl。2025 年 3 月 5 日建立,我查證的這天(2026-09-22)還有 push 進來,1,265 顆星、452 個 fork、292 個 open issue,用 GitHub Contri...
description 改再強也沒用:skill 正文在 context 裡的一生
檔案在那裡。YAML 沒問題。/ 選單裡就是沒有它。 monorepo,你在 repo root 跑 claude,前一天替前端寫了一份 apps/web/.claude/skills/deploy-web/SKILL.md,存了檔,路徑確認過三次。打 / 找不到它,直接打 /deploy-web 也叫不動。接下來你會做的事幾乎是固定的:回頭檢查 frontmatter 的縮排、懷疑資料夾名稱要不要跟 skill 名一致、最後乾脆重開一個 session。三件事全部白做。 「我的 skill 好像不靈了」這句話底下藏著兩種完全不同的故障,而它們的解法互斥。一種是它根本沒進場,另一種是它進場過、後來被丟掉了。拿治第一種的方法去治第二種,你改幾次都不會好,而且你不會收到任何錯誤訊息告訴你方向錯了。 它只往上掃,不往下掃文件對第一種故障講得很白: Skills in a .claude/skills/ directory below where you started don’t load at startup. They load the first time Claude rea...
AI 與科技新聞摘要 - 2026/09/21
OpenAI 廣告 pixel 的 SDK 裡有一條不帶 credentials 的路徑,寫得很對,但它從來沒有機會執行。就算執行了也來不及:瀏覽器載入 <script src> 的那一刻就把 cookie 附上去了,那發生在任何一行 OpenAI 的程式碼跑起來之前。防護寫在應用層,洩漏發生在更早的地方。 層級選錯,寫得再對都不會生效。而這個毛病不只長在程式碼裡,也長在「誰有權決定一個 cookie 算哪一類」這種地方。 一、那個 cookie 叫 __obi,被歸類在「分析」Buchodi’s Threat Intel 的研究者在九月二十日把整條鏈逐包拆開了。 從 ChatGPT 網頁端開始:前端產生一個 16 byte 的識別碼,送到 OpenAI 後端換回一個 RS256 簽章的 JWT。那個 JWT 裡帶著 obi 值,還有一個指向已登入帳號的 subject。token 再提交給 OpenAI 的廣告基礎設施,由它把 __obi 這個 cookie 設下來。JWT 裡的 obi 值跟 cookie 的值,一模一樣。 cookie 的屬性逐字是這樣:Same...
會什麼是必填,去哪裡拿是選填:OASF 把資安圈的 schema 搬來描述 agent
一份 agent 的描述檔躺在目錄裡。名字有了,版本有了,schema 版本有了,作者有了,建立時間照 RFC-3339 寫得工工整整,會做哪些事也列得清清楚楚。 唯一沒寫的是:你要去哪裡拿到它。 然後這份檔案完全合法。不是有人偷懶漏填,是規格本來就允許。 要弄懂這個設計怎麼長成這樣,得先往回退一步,退到一個跟 agent 沒什麼關係的地方。 骨架是從資安圈搬過來的OASF(Open Agentic Schema Framework)的 README 第一段是這樣定義自己的: The Open Agentic Schema Framework (OASF) is a standardized schema system for defining and managing AI agent capabilities, interactions, and metadata. It provides a structured way to describe agent attributes, capabilities, and relationships using attribut...
過勞門檻從 92 小時變成 100 小時,但沒有一條標準被放寬
搜尋「過勞 加班 時數」,第一頁大概會給你這個答案:發病前一個月加班超過 92 小時。 這個數字十年前就被改掉了。現行的認定指引寫的是 100。 假設你這個月加了 60 小時,打卡系統上那個數字你自己看了都有點心虛。照 92 算,你離那條線還有 32 小時,這個距離足夠讓人鬆一口氣,也足夠讓人有點火大:原來我這樣還不算。 那 32 小時是拿一個過期的數字算出來的。而 92 跟 100 的差別也不只是 8 小時,它們量的不是同一件事。 先看現在那張表怎麼寫管這件事的文件叫《職業促發腦血管及心臟疾病(外傷導致者除外)之認定參考指引》,現行版本是民國 107 年 10 月 15 日的第四次修正。名字很長,做的事很單純:把「什麼情況下,可以判斷這場腦中風或心肌梗塞跟工作有關」寫成一張可以照著看的表。 長期工作過重的部分,它給了三條線。發病前 1 個月的加班時數超過 100 小時,指引的用詞是「可依其加班產生之工作負荷與發病有極強之相關性作出判斷」。發病前 2 至 6 個月內的任一期間,月平均加班超過 80 小時,一樣是極強相關性。第三條寫得最委婉:如果這幾個期間的加班時數全都小於 45 ...









