所有分類全部 guide deep-dive debug project
CMU 10-423 最後三講把前面學過的 Transformer、tokenizer、latent diffusion 搬到新的資料型態。L24 講音訊:先把聲波轉成 mel-spectrogram 或離散 token,再用 Whisper 轉錄、用 AudioLM 與 MusicGen 生成、用 AudioLDM 做擴散。L25 講影片:3D UNet 加時空注意力、latent 影片擴散、DiT 與 Sora,最後到可互動的 Neural OS。L26 前半講世界模型:給定狀態與動作預測下一個狀態,分成先生成 3D 場景、互動式影片(Genie)、潛在表徵(V-JEPA、PAN)三條路線。
CMU 10-423 第 5 講是影像單元的開場,講三種「理解」用的模型:CNN 把卷積核當成要學的參數;encoder-only Transformer 拿掉因果遮罩,讓每個 token 看左右兩邊,用 masked LM 預訓練,所以不是生成式語言模型;ViT 幾乎就是把 BERT 的輸入換成 16×16 之類的影像區塊。投影片用 ViT 論文的圖回答「Transformer 為什麼晚了四年才進電腦視覺」:資料集小時 ViT 輸給大型 CNN,資料夠大才反超。
CMU 10-423 第 23 講分兩半。前半講程式生成:評估從 BLEU 轉向「單元測試過了幾個」,基準從 HumanEval、MBPP 一路到 SWE-Bench Verified 與 Terminal-Bench 2.0;模型從 CodeBERT、Codex 到 FIM 與 StarCoder;程式領域特有的技巧是拿單元測試輸出做自我修正。後半講 agent:tool calling 的定義、Kimi K2 怎麼合成工具資料、coding agent 的五步迴圈,以及 Mind2Web、Set-of-Mark、SeeClick 這些操作網頁與 GUI 的方法。這一講沒有作業,只由 Quiz 6 驗收。
文字條件是從哪裡注入圖片生成模型的?CMU 10-423 L14 的答案是 cross-attention:query 來自影像的潛在表示,key 和 value 來自提示詞,所以每個潛在像素都有一個「看向哪些字」的機率分布。這張注意力圖可以拿來做很多事:classifier-free guidance 讓生成更貼近提示,Prompt-to-Prompt 在不重新訓練的情況下,把舊的注意力圖抄進新提示詞的生成,只改圖片的一部分。DiT 則把 UNet 換成 Transformer,用 adaLN-Zero 注入條件。L15 前半的 Q-Former 用一小組可學習的 query,把凍結的影像編碼器接上凍結的 LLM,也就是 HW4 要你實作的東西。
L7 把擴散模型拆成兩條 Markov 鏈:固定的前向過程一步步把圖片加噪成高斯雜訊,學出來的反向過程一步步去噪。精確的反向過程算不出來,但給定原圖 x₀ 時的後驗是封閉形式的高斯,所以可以拿它當學習目標。投影片比較三種參數化,實務上最好的是讓 U-Net 預測當初加進去的雜訊 ε,訓練迴圈只有八行。
CMU 10-423 Spring 2026 的 Scaling Up 單元後兩講。L17 從「GPU 之間的通訊才是主要瓶頸」出發,依序講資料平行、Megatron 式的張量平行、1F1B 管線平行、ZeRO 的 optimizer 平行、TeraPipe 的 token 平行與專家平行,結論是資料平行仍是主角,其他平行都在幫它塞進更多資料。L18 講兩件事:FlashAttention 用 tiling 加 online softmax 加 recomputation,在不改變結果的前提下減少 HBM 讀寫;解碼端則是 PagedAttention 管 KV cache 記憶體、speculative decoding 減少大模型呼叫次數。
CMU 10-423 除了四份作業,還用四種方式驗收:6 次課堂小考、2 次程式測驗、1 次綜合考試,以及占 25% 的三人期末專案;10-623/723 另外多一份 HW623 論文報告。校外拿得到的是附解答的練習考卷(13 大題、167 分)、HW623 題目與 33 篇論文清單、12 頁的專案 handout。本篇整理它們的結構與規則,並給出不用看解答也能自我檢核的方法。
L6 是 10-423 圖像單元第一個真正的生成模型。GAN 由兩個確定性網路組成:生成器把高斯雜訊變成圖片,判別器分辨真假,兩者玩 minimax 遊戲、輪流用 mini-batch SGD 更新。投影片接著談規模、浮水印與社會影響,後半段補上有向圖模型、Markov 模型與 factor graph,為 L7 的擴散模型鋪路。
CMU 10-423/623/723 是 Matt Gormley 與 Aran Nayebi 合授的生成式 AI 課,Spring 2026 用 26 講走完文字模型、影像生成、模型調適、多模態、規模化與進階主題。投影片、HW1–HW4 的題目與起始碼、附解答的練習考卷和專案說明都公開,可評為 A3;拿不到的是 Panopto 錄影、HW0 題目檔、HW3/HW4 的 recitation 投影片、小考與 Gradescope 評分。它的作業政策也值得一看:每份作業分兩次交,第一次只准人工作答,第二次才准用 AI。
CMU 10-423 Spring 2026 的 HW1 總分 62:書面題考 RNN LM(7 分)、Transformer LM(19 分)、sliding window attention(11 分),程式題(22 分)要你在 Karpathy 的 minGPT 上實作 RoPE 與 GQA,用莎士比亞全集訓練字元級模型並畫出損失與注意力時間。只需上傳 model.py;handout 附 5 個單元測試,官方估計所有實驗在 Colab T4 上合計約 40 分鐘。
CMU 10-423 Spring 2026 的 HW2 總分 60:書面題考 CNN(8 分)、encoder-only Transformer(4 分)、GAN(5 分)、VAE(6 分)與擴散模型(14 分),程式題(21 分)要你在 AFHQ 貓圖上從零實作 DDPM,填完 diffusion.py 與 unet.py 的 TODO,再用 W&B 交出損失曲線、FID 曲線與正反向擴散圖。最長的一個實驗是在 Colab T4 上訓練 10,000 步,官方估計約 2 小時。
CMU 10-423 Spring 2026 的 HW3 總分 66,2026-03-12 截止(Slot A)。書面題考 in-context learning(14 分)、參數高效微調(10 分)和 DPO 推導(15 分);程式題(25 分)要你從零寫 LoRALinear,把它接到 GPT-2 的 attention,再用 Rotten Tomatoes 影評做情感分類的指令微調。實驗全用 gpt2-medium,handout 估計每次訓練在 Colab T4 上 25–30 分鐘,還要一個 WandB 帳號。
CMU 10-423 Spring 2026 的 HW4 總分 79:書面題考 LDM(7 分)、VQ-VAE(8 分)、CLIP(4 分)、以 PaliGemma2 為例的 VLM(18 分),程式題(40 分)要你在凍結的 GPT-2 與凍結的 CIFAR-10 DiT 之間只訓練一個 Q-Former,讓類別條件的擴散模型改吃文字。要寫的程式只有三個函式,14 個單元測試;官方估計 25 個 epoch 在 T4 上要 2–3 小時、A100 約 1 小時,資料與 DiT 權重得用 download_data.sh 從 Google Drive 下載。
預訓練的 LLM 只會接話,不會對話。CMU 10-423 L11 後半先講 instruction fine-tuning:用 InstructGPT 的 13k 筆、Dolly 的 15k 筆或 Flan 的資料,把模型調成聊天助理。接著是 InstructGPT 的 RLHF 三步驟:人類排序回應、訓練獎勵模型、用 PPO 微調。L12 前半補上 REINFORCE 與 PPO 的直覺,列出 PPO 版 RLHF 的五個缺點,最後推導 DPO:從 Bradley–Terry 模型出發,把獎勵模型換成策略本身的對數機率比,只用偏好資料就能直接微調。
CMU 10-423 Spring 2026 的 L19 和 L21 都在處理同一個問題:序列一長,標準 attention 的記憶體與 KV cache 就撐不住。L19 給兩條路:用 sparse、sliding window、dilated attention 近似注意力,或保留完整注意力、改用 Blockwise Parallel Transformer 與 Ring Attention 把計算拆到多張 GPU。L21 給第三條路:換掉 attention,改用只保留固定大小隱藏狀態的 state space model(S4、Mamba),或把 attention 和線性注意力層交錯成 hybrid 模型(Jamba、Nemotron-H、Qwen3-Next)。
CMU 10-423 第 4 講前半區分預訓練、mid-training 與 post-training,後半挑出現代 LLM 幾乎都在用的三個元件:RoPE 把位置資訊改成對 query、key 的旋轉,讓注意力分數只取決於兩個 token 的相對距離;GQA 讓多個 query head 共用一組 key/value head,省記憶體和算力;sliding window 改注意力遮罩,讓每個 token 只看左邊固定數量的 token。三者都是 HW1 的題目。
手上只有少量標註資料和一個幾十億參數的 LLM 時,CMU 10-423 給兩條路:監督式微調,或把例子塞進 prompt 做 in-context learning。L10 先說明 2023 年的共識是微調通常贏,再介紹四種只調少量參數的做法:只調最上面幾層、adapter、prefix tuning 與 LoRA。L11 前半回到 in-context learning,說明它對例子順序、標籤比例有多敏感,以及怎麼挑 prompt、什麼是 chain-of-thought。HW3 的書面題與 LoRA 程式題都從這兩講出題。
CMU 10-423 Spring 2026 的 L20 把推理模型講成一條線:先用 chain-of-thought 提示讓模型寫出中間步驟,再用 STaR 把「寫對的推理」拿回來微調,接著 OpenAI o1 用強化學習訓練思考 token,訓練和推論時的算力都能往上加。開源這邊,DeepSeek-R1-Zero 只用規則式獎勵和 GRPO 就讓推理長度自己變長,DeepSeek-R1 再補上 SFT 修掉可讀性與語言混雜。講座最後轉到機制可解釋性:superposition 為什麼讓模型難懂,以及 sparse autoencoder、circuits、cross-layer transcoder 這些「替代模型」怎麼處理。
CMU 10-423 Spring 2026 的 L22 用同一套四問(是什麼、影響誰、為什麼發生、怎麼修)走過五種生成式 AI 風險:版權侵權、對抗式攻擊、幻覺、偏見與歧視、環境衝擊,每一段都停在「修起來很難」的具體例子上。L26 的後半份投影片再往上一層:Aran Nayebi 用 agreement 框架證明,對齊的成本會隨任務數、代理人數與狀態空間大小成長,所以要壓縮目標、挑重點狀態,並提出以 deference、off-switch 優先的字典序效用來做可證明的 corrigibility。課綱列的 data contamination 在兩份投影片裡都沒有出現。
CMU 10-423 第一講把生成式 AI 收斂成一句話:它就是機率建模,文字生成就是估計 p(下一個字 | 前面所有字)。投影片從 n-gram 的「數次數」講到 RNN 的「把前文壓成固定長度的向量」,中間插進 module-based autodiff:每個模組只要會 forward 和 backward,梯度就能沿計算圖自動倒推回去,PyTorch 就是這樣運作的。HW0 的題目檔在 Google Drive 回 401,公開的只有 recitation Colab,內容是 PyTorch、LSTM、Weights & Biases 與 einops。
CMU 10-423 Spring 2026 的 Scaling Up 單元前兩講回答兩個問題。L15 後半講 scaling laws:Kaplan 2020 說模型放大 8 倍、資料約 5 倍就夠,Chinchilla 改說兩者要等比例放大,接著用 Phi 系列與資料過濾的 scaling law 補上「資料品質」這個第三條軸。L16 講 MoE:前饋層佔了 GPT-3 大半參數,把它切成專家、每個 token 只走 top-k 條,記憶體跟著總參數、計算跟著活躍參數,代價是負載平衡與訓練穩定性。這段後半沒有程式作業,驗收靠小考、練習考卷第 13 題與期末專案。
CMU 10-423 用兩堂課把生成模型接上兩種模態。L12 後半講文字怎麼控制圖片:GAN、自迴歸(Parti)、diffusion(DALL-E 2、Imagen)三條路線,最後落在 latent diffusion——先把圖片壓進自編碼器的潛在空間,再在那裡跑 DDPM,用 cross-attention 讀提示詞。L13 反過來,讓語言模型讀圖:用 CLIP/SigLIP 或 VQ-VAE 把圖片變成向量或整數,送進 decoder-only Transformer;只讀不畫的 VLM(PaliGemma、Qwen-VL)和能輸出圖片的 VLM(LWM、Gemini)差在影像是不是離散 token。
CMU 10-423 第 2、3 講把 RNN 換成 attention。第 2 講先說明 RNN 為什麼不夠用:會遺忘、只能一步步算、梯度仍可能爆炸;再一步步拼出 Transformer 語言模型:scaled dot-product attention、multi-head、layer norm、殘差連接、位置嵌入、causal mask。第 3 講回答怎麼訓練:沒有 n-gram 那種數次數的封閉解,就用 autodiff 加 mini-batch SGD 做最大概似估計;再講 padding、KV cache、三種 tokenizer,最後用 greedy decoding 和 ancestral sampling 說明怎麼一個 token 一個 token 生成。
VAE 和擴散模型都卡在同一個地方:log p_θ(x) 要對潛變數積分,算不出來。L8–L9 的解法是變分推論:找一個好算的 q 去逼近真實後驗,把「最小化 KL」換成「最大化 ELBO」,而 ELBO 正好是 log p(x) 的下界。VAE 再加上 Monte Carlo 估計與 reparameterization trick,就能用一次前向、一次反向訓練;DDPM 的 ELBO 拆開後,每一項都是在要求學到的反向一步貼近封閉形式的 q(x_{t−1} | x_t, x₀)。
11-868 第 10 講用 Lei Li 團隊自己的 LightSeq/LightSeq2 當教材,拆出四招:把矩陣乘法以外的小運算融合成一個 kernel、改寫 LayerNorm 與 Softmax 的公式來減少 thread 同步、參數與梯度用 FP16 存但 FP32 算、依反向傳播的相依關係重用記憶體。投影片報告的 WMT14 英德翻譯訓練加速是 1.4–3.5 倍。沒有錄影,本文依投影片頁碼與兩篇論文整理。
11-868 第 14、15 講從 parameter server 講到 PyTorch DDP:先用 NCCL 的五個 collective(Broadcast、Reduce、AllReduce、ReduceScatter、AllGather)當積木,推出 ring 為什麼能讓廣播時間幾乎不隨 GPU 數增加,再把 AllReduce 拆成 ReduceScatter 加 AllGather。第二講拆 DDP 的兩個關鍵設計:把梯度分桶(預設 25 MB)、在反向傳播還沒結束時就開始同步。沒有錄影,本文依投影片頁碼與 VLDB 2020 論文整理。
L05 用一個四層的情感分類網路當主線,先把計算表示成計算圖、用拓撲排序算出前向值,再用連鎖律與向量–Jacobian 乘積反向傳回梯度,最後拆解 TensorFlow v1 的 placeholder、variable、operation 與 session。投影片有一頁直接標著「important for HW2」。
標準 attention 會把 N×N 的分數矩陣寫回 HBM 再讀出來,時間大多花在搬資料。FlashAttention 用 tiling 加 softmax rescaling,讓每一塊都在 SRAM 裡算完,backward 則重算而不存。Tri Dao 在 11-868 的客座講義裡給了一組數字:backward 的 FLOPs 多了 13%,HBM 讀寫少了 9 倍,時間快了 6 倍。之後 FA3、FA4 的主題也一樣:硬體變了,瓶頸跟著搬家,演算法就得跟著改。
CMU 11-868 的 GPU 三講回答一個問題:為什麼寫對的 CUDA matmul 在 A100 上只用到 2.48% 的 FP32 算力。L02 講 SM、warp 與 grid/block/thread,L03 講 cudaMalloc、cudaMemcpy 與 kernel 索引,L04 用 tiling、coalesced access 與避開 bank conflict,把資料從約 500 個 cycle 外的 global memory 搬近一點。
11-868 第一份作業要你在 src/combine.cu 寫四個 CUDA kernel(map 15、zip 25、reduce 25、matmul 30 分),接回 MiniTorch 的 Python 後端,再用 5 分的整合測試收尾。reduce 與 matmul 的 shared-memory 優化標為 Optional。作業頁明寫需要 GPU,評分用的是不公開的私有測資。
11-868 第二份作業分三塊:自動微分的 topological_sort 與 backpropagate(40 分)、Linear 層與 MLP 網路(30 分)、binary cross entropy 與訓練迴圈(30 分),最後在 SST-2 上用 GloVe 詞向量訓練情感分類器,驗證準確率要到 75%。預設後端是你作業一寫的 CUDA kernel;repo 已在 2026-09-02 合併了 Fall 2026 的小修正。
HW3 要你在 HW1、HW2 做出來的 MiniTorch 上補齊 softmax loss、Dropout、LayerNorm、Embedding,再組出 pre-LN 的 GPT-2 decoder,最後在 IWSLT14 德英翻譯上訓練。配分是 tensor functions 20、basic modules 20、decoder LM 40、翻譯管線 20;滿分條件是通過私有測試且 BLEU 約 20±2。作業頁警告光訓練就要至少 10 小時,PSC 的 V100 一個 epoch 約一小時,要跑 10 個 epoch。2026 春季版 2/4 發、2/18 截止。
11-868 第四份作業要你照 LightSeq 的做法,親手寫 attention softmax 與 LayerNorm 的 CUDA kernel(前向、反向各一),接回自己的 MiniTorch,再換進 HW3 的 Transformer 訓練一個 epoch。配分是 Softmax 40、LayerNorm 40、整合 20。作業頁預期單一 kernel 快 3.7 到 15.8 倍,整個訓練卻只快約 1.1 倍,原因是 Amdahl 定律。需要一張 NVIDIA GPU;repo 在 2026 秋季已被改過。
CMU 11-868 第五份作業改用 PyTorch 與 Hugging Face 的 GPT-2,要你只用 torch.distributed 和 torch.multiprocessing 寫出資料平行(切資料、建 process group、平均梯度,50 分),再寫出 GPipe 式的管線平行(切模型、產生時脈排程、用 worker thread 跑 micro-batch,50 分)。兩部分都要在至少兩張 GPU 上做 benchmark 並交圖:資料平行要在 2 張卡上達到至少 1.5 倍加速,管線平行要比單純模型平行快。2026 春季版 3/25 截止。
11-868 第六份作業第一次放下自己寫的 MiniTorch,改用產業框架。兩題各 50 分:第一題改一支 DeepSpeed 訓練腳本,打開 LoRA,讓 Llama-2-7B 在 2 張 16GB 的 V100 上訓練得起來;第二題填完 SGLang 推論腳本的 TODO,並調參數讓生成跑快一點。兩題要的 GPU 互相衝突:SGLang 不支援 V100,要換 L40S、A6000 或 A100。春季版 4/13 截止,作業頁不提供評分測資。
11-868 的 RL 系統講題沒有投影片,Syllabus 只列了 ReaLHF 一篇論文。作業七倒是完整公開:用 Anthropic HH-RLHF 資料訓練 DistilBERT reward model(40 分),在 VERL 風格的 trainer 裡補上 GAE、PPO loss 與 entropy,微調 GPT-2(40 分),最後比較 RLHF 前後的 reward 分布(20 分)。起始碼的 trainer 沒有 import verl 套件,學的是 RLHF 的資料流,不是 VERL 的分散式引擎。
CMU 11-868 第一講用 51 頁投影片論證一件事:LLM 的瓶頸不只在模型,而在「用更少的 GPU、記憶體與電力,更快地在更大的資料上訓練與推論更大的模型」。它把一個 Transformer 拆成矩陣乘法、reduction、map、記憶體搬移四種底層運算子,再把難題分到 kernel、框架、分散式系統三層,並提醒光把計算變快不夠,資料搬移同樣花時間。
11-868 用兩講回答同一個問題:一台推論伺服器怎麼同時服務大量請求,又不浪費 GPU 上的 KV cache。第 22 講(Lei Li)從 SGLang 的排程迴圈講起:ORCA 的 continuous batching、用 radix tree 管 KV 的 RadixAttention、依前綴命中率排序與分流、把 CPU 排程藏到 GPU 計算後面。第 24 講由 vLLM 作者 Woosuk Kwon 主講:PagedAttention 把 KV cache 切成固定大小的 block,用 block table 做虛擬化,讓同一張 A100 的 batch 從 8 撐到 40;後半講 vLLM 怎麼壓 CPU overhead、用 piecewise CUDA graph、切模型平行與管理混合架構的記憶體。
CMU 11-868 是 Lei Li 開的 LLM 系統研究所課:從 CUDA kernel、自己的 MiniTorch 框架,一路做到分散式訓練、SGLang 服務與 RLHF。Spring 2026 的 28 份講義、7 份作業頁與 7 個起始碼 repo 全部公開,可評為 A3;缺的是錄影、GPU 與 PSC 帳號、quiz,以及「哪兩份作業是選修」這件事官方沒寫。
CMU 11-868 在 2026 春季用兩講回答「模型太大,一張 GPU 放不下」:L16 講切層的 pipeline parallelism(GPipe 的 micro-batch、1F1B、交錯 stage)和切矩陣的 tensor parallelism(Megatron-LM 對 FFN、attention、embedding 的切法),結論是節點內用 TP、跨節點用 PP、再外面疊 DP;L17 把 MoE 當成第三種切法——每張卡放不同的專家、其餘部分複製,代價換成 all-to-all 通訊與負載平衡,並以 GShard、DeepSpeed-MoE、DeepSeek-V3 的設計逐一說明。
11-868 用兩講處理量化:L19 從 BF16、absmax/zero-point 講到 AdaQuant、ZeroQuant、LLM.int8(),L20 整講拆解 GPTQ。GPTQ 只量化權重,每次量化一欄就用二階資訊修正還沒量化的權重,再靠 lazy batch update 與 Cholesky 讓它跑得動 175B。它省下的主要是記憶體;推論變快,是因為單一 batch 的 decode 本來就卡在讀權重,運算量本身沒有減少。
11-868 第 23 講把微調當成記憶體問題來算:LLaMA-8B 全參數半精度微調約要 80GB,換成 LoRA 約 33GB,再把凍結權重存成 4-bit 的 QLoRA 壓到約 9.2GB。這講的主線是三步:只訓練低秩的 A、B 兩個小矩陣(投影片說這招最早出自 CIAT);用 NF4 查表與雙重量化把凍結權重壓到約 0.52 bytes/參數;用 paged optimizer 在 GPU 快爆時把 optimizer state 換到 CPU。
11-868 最後一組講義有五份:DistServe 的 Hao Zhang、NVIDIA Dynamo 的 Vikram Mailthody、LMCache 的 Junchen Jiang、Mooncake/KTransformers 的 Mingxing Zhang,加上 Lei Li 的框架地圖。它們回答同一個問題:服務規模從一台機器擴到一座資料中心之後,算力和 KV cache 要放在哪裡。主線有三步:量尺從 throughput 換成符合 SLO 的 goodput;prefill 與 decode 拆到不同 GPU;KV cache 從 GPU 記憶體擴張到 CPU、SSD 與遠端儲存。
L08 從 BPE 講到講者 Lei Li 參與的 VOLT:詞表大小有成本也有價值,VOLT 用「每加一個 token 能降多少正規化熵」找划算的點,再化成最佳傳輸問題求解;後半講 LLaMA 3 詞表從 32k 擴到 128k、中文字被 byte-level BPE 切成三個 token 的代價。L09 從 greedy、取樣、beam search 一路講到 speculative decoding:小模型先猜 N 個 token,大模型一次前向驗證,因為驗證比生成便宜;最後介紹 EAGLE 改成預測最後一層特徵。
Google 的 Srinath Mandalapu 用兩講、兩百多頁,把一個 attention 從 Python 一路追到 TPU 的 VLIW 指令。L12 講 JAX 生態、TPU Ironwood 的記憶體與運算單元,以及 XLA 怎麼把 attention 編成三個融合 kernel。L13 講 XLA 做不到的部分:用 Pallas 自己控制 HBM 與 VMEM 之間的搬運,寫出 FlashAttention,再加上區塊稀疏變成 Splash Attention。思路跟 GPU 相同,差別在於:TPU 上排程主要交給編譯器,要介入就得用 Pallas 把迴圈與區塊大小攬回自己手上。
11-868 只花兩堂課講模型本身:L06 把 Transformer 拆成 embedding、多頭注意力、FFN、LayerNorm 與殘差,L07 用 T5、LLaMA、GPT-3 三個模型示範現代 LLM 改了哪些地方。對系統工程師來說,重點是記住形狀:GPT-3 175B 是 96 層、d_model 12288、context 2048,訓練 3,000 億 token;LLaMA 65B 是 80 層、d_model 8192、訓練 1.4 兆 token。這些數字決定了後面每一堂加速、平行與服務課要處理的量。
資料平行每張卡都存一份完整的參數、梯度和 optimizer state;用 Adam 混合精度訓練時,每個參數約要 20 bytes,其中 16 bytes 是 optimizer 相關,LLaMA-3 8B 光這些就要 160GB。CMU 11-868 L18 以 ZeRO 論文為主軸,逐格動畫示範三個階段:ZeRO-1 切 optimizer state、ZeRO-2 再切梯度、ZeRO-3 連參數也切。投影片的結論是前兩階段不增加通訊、最多省 8 倍記憶體;第三階段每張卡的用量隨 GPU 數下降,代價是投影片估的約 3 倍通訊。
L12 的主軸是「搬資料」。前段用 SambaNova SN40L 說明資料流架構與 metapipelining:同樣跑 Llama 3.1 8B,投影片說 RDU 每個 token 約 3 次 kernel 呼叫,GPU 約 800 次,差別來自能不能把整個 decoder 融合進一個 kernel。中段把尺度拉到資料中心:TP、PP、EP、DP 各自需要哪種集體通訊,以及計算與通訊重疊為什麼決定擴展效率。後段回到能源與 DRAM:搬一個 byte 比算一次貴得多,記憶體控制器、burst mode、HBM 都是在解同一個問題。這講沒有公開錄影,本文只依投影片。
每個核心都有自己的 cache,同一個位址就可能同時有好幾份副本,各核看到的值會不一樣。這不是加鎖能解決的問題,是硬體複製資料造成的。CS149 L14 先定義什麼叫 coherent,再拆解 snooping 的 MSI 協定:要寫就先廣播 BusRdX 讓別人作廢,MESI 多一個 E 狀態省掉「讀完再寫」的第二筆交易,directory 則把廣播改成點對點。對程式設計師最實際的後果是 false sharing:兩個 thread 寫不同變數,只因為落在同一條 cache line,就讓 cache line 在核心間來回彈,投影片的 demo 慢了三倍。
CS149 是 Kayvon Fatahalian 與 Kunle Olukotun 在 Stanford 教的平行計算課,從多核 CPU、SIMD 一路講到 GPU、AI 加速器、資料中心,最後回到 cache coherence 與 lock-free。Fall 2025 的 18 份投影片、5 個程式作業的 starter code 與 README、4 份書面作業 PDF 都能匿名取得,本系列評為 A3(足以自學)。缺口有四個:當期錄影只在 Canvas;PA1 評分用 Stanford myth 機器;PA4 要自費租 AWS Trainium2,而且課程 AMI 是私有的;PA5 的 H100 排隊系統與排行榜要 SUNet ID。公開錄影是 2023 版,本系列只拿它當聽講補充。
第 8 講要你換一個腦袋:不再想「每個 worker 做什麼」,而是把演算法寫成對序列的操作,例如 map、fold、scan、segmented scan、gather/scatter、sort、groupBy。這些原語都有高效的平行實作,能把不規則的平行變規則、把細粒度同步變粗粒度。代價是要多掃幾遍資料,所以很吃頻寬。
L9 開場就說:懂了 arithmetic intensity 與 roofline,你就幾乎懂了現代 AI 軟體面效能最佳化的一切。接著示範三件事:全連接層、卷積層、attention 最後都變成矩陣乘(GEMM);GEMM 要靠分塊(blocking)讓資料留在快取裡;層與層之間要融合(fusion),別把中間結果寫回 DRAM 再讀回來。softmax 可以分塊計算,這就是融合版 attention(FlashAttention 的核心想法)不必存下 N×N 矩陣的原因。
L13 問的是:寫快程式的專家太少,怎麼辦?投影片給三個答案。一是提高抽象層級:Halide 把「算什麼」(演算法)和「怎麼算」(排程)拆成兩種語言,同一段模糊濾波可以只改一行排程就換成分塊、向量化、多核版本。二是智慧搜尋:因為排程空間定義清楚,可以用搜尋加學出來的成本模型自動產生排程。三是新興的 LLM agent:讓模型寫 CUDA、執行、看 profiler、反思、再改,並用範例資料庫或 prompt 最佳化讓它自我改進。投影片最後把問題留給你:真正的價值在 DSL 設計,還是 LLM agent?
CS149 L16 分三段:先用 cache coherence 的眼光看鎖怎麼實作(test-and-set、test-and-test-and-set、ticket lock、CAS、LL/SC),再用一條排序 linked list 示範從一把大鎖改成 hand-over-hand 細粒度鎖,最後介紹 lock-free:單一生產者單一消費者佇列、用 CAS 寫的 stack、ABA 問題與 hazard pointer。投影片的結論很務實:在只有你的程式佔用機器的情境下,寫得好的鎖版本常常一樣快,而且好寫得多;lock-free 的價值在於執行緒可能被搶佔、page fault 的系統。
CUDA 的 grid、thread block、CUDA thread 是一套程式抽象;GPU 用 SM、warp 與硬體 block 排程器把它實作出來。這一講的核心是分清兩件事:thread block 之間系統可以任意排序,同一個 block 裡的 thread 則保證同時存在,所以 block 能用 shared memory 和 __syncthreads() 合作,也所以一個 SM 能塞幾個 block 由暫存器與 shared memory 的量決定。
L10 從一條式子出發:功耗固定時,效能只能靠「每個運算花多少焦耳」來換,而通用處理器把大部分能量花在取指令、解碼、搬資料,不是在算。投影片的經驗法則是 GPU 比 CPU 好約 10 倍 perf/watt,固定功能 ASIC 可達 100–1000 倍。接著用同一套標準(分塊 tensor、非同步計算與記憶體、運算單元直接互傳)檢視 H100 的 Tensor Core 與 TMA、Google TPU 的脈動陣列,以及可重組資料流架構。
L3 前半用高速公路與洗衣服的比喻分開延遲與頻寬,再算給你看:向量逐元素相乘在 V100 上效率不到 1%,因為記憶體送資料的速度追不上 ALU。後半的主題是「抽象 vs 實作」:ISPC 讓你用 SPMD 的方式思考(一群 program instance 各做一份),編譯器卻用 SIMD 指令實作。把這兩層混在一起,是這門課最常見的困惑來源。
CS149 L6 要你把「通訊」看得很廣:處理器和 cache、和記憶體、和另一台機器之間的資料搬移都算。現代平行處理器的算力遠高於頻寬,所以 arithmetic intensity(每搬一單位資料做多少計算)決定了你能不能把硬體餵飽。提高它的手段有三類:改分配方式減少必要通訊、用 blocking 與 loop fusion 減少 cache 造成的額外通訊、用分散與錯開存取降低 contention。
CS149 Fall 2025 第二講用一個計算 sin(x) 的迴圈,依序加上三個想法:把電晶體拿去做更多核心(multi-core)、讓一道指令同時驅動多個 ALU(SIMD)、在同一個核心上交錯執行多個執行緒來隱藏記憶體延遲(hardware multithreading)。前兩個增加運算能力,第三個讓運算單元在等記憶體時不閒著。結論是三個條件:平行工作要夠多、同一組工作要跑同樣的指令、平行工作要比 ALU 更多才能隱藏延遲。
PA1 程式寫得不多,重點是分析:六個程式分別練 threads 的工作分配、SIMD 遮罩、ISPC gang 與 task、輸入資料如何影響 SIMD 效率、頻寬受限的 saxpy,以及用計時找 K-Means 的熱點。Written 1 則用紙筆題練峰值吞吐量、指令相依、管線、多執行緒藏延遲與 SIMD divergence。官方評分以 Stanford myth 機器為準,校外可以在自己的機器跑,但數字不能直接對照。
CS149 PA2 要你用 C++ 寫一個多核 CPU 上的任務執行庫,而且要寫四次:每次 run() 都開 thread、改成 spinning 的 thread pool、改成會睡覺的 thread pool,最後擴充成非同步、有依賴的 task graph。每一步都得是完全正確的系統,並跟官方參考實作比速度。官方評分機器是 AWS c7g.4xlarge;校外可以在自己的多核機器上跑,但數字不能直接和官方比。
PA3 有三部分:把 SAXPY 改寫成 CUDA 並分開計時、用 exclusive scan 實作 find_repeats、再寫一個又對又快的 CUDA 圓形渲染器(85 分)。渲染器的難點是半透明圓的混色不可交換,每個像素都得照輸入順序更新,而起始程式碼一個圓一個 thread 的做法兩樣都沒守住。Written 2 則是五題計分題(fusion、SIMD 利用率、用 barrier 取代鎖、用資料平行原語處理圖、粒子模擬的鎖)加 14 題練習。校外要自備 NVIDIA GPU,本文不提供解答。
PA4 把你丟到 AWS Trainium2 的一顆 NeuronCore 上。這裡沒有 cache 幫你決定什麼資料留在晶片上:SBUF(28 MiB)與 PSUM(2 MiB)都要你用 dma_copy 明確搬進搬出,partition 維度最多 128。Part 1 用 vector add 和 transpose 教你這些限制與 DMA 成本,Part 2 要你把 convolution 拆成一串 matmul、再和 max pool 融合成一個不落地到 HBM 的 kernel。Written 3 用 line buffer、兩次 box blur、softmax 硬體與 metapipelining 練同一件事:把中間結果留在晶片上。環境需要課程 private AMI 與付費 capacity block,校外實質只到 A2。
CS149 Fall 2025 的最後一份程式作業是開放式的:從 Histogram、1D occupancy decoder、FlashAttention、3D 熱方程 RK4、SwiGLU 五題挑一題以上,在 H100 上把 PyTorch baseline 調快,可以用 CUDA、Triton 或 TileLang,也允許用 LLM。分數不看速度門檻,看你交的工作日誌能不能說清楚每一步量了什麼、推出什麼假設、為什麼停手。H100 job queue 與排行榜要 SUNet ID,校外只能在自己的 NVIDIA GPU 上用 eval.py 跑。
L4 給了一套平行化的思考流程:先分解(decomposition)找出彼此獨立的工作,再分配(assignment)給工作者,再協調(orchestration)通訊與同步,最後對應到硬體。Amdahl 定律提醒你循序部分決定 speedup 上限。貫穿全講的例子是 2D 網格解算器:原本的相依關係很難平行,改用紅黑著色換一種更新順序後,就能用資料平行或共享位址空間兩種模型寫出來。
L11 問的是:硬體為 AI 專用化之後,程式設計師要付出什麼?投影片以 H100 為例:要吃滿 Tensor Core,就得用 16×16 tile、讓 TMA 非同步搬資料、讓 producer 與 consumer warp 管線化,寫起來很複雜,所以有了 ThunderKittens 這類 DSL。另一條路是資料流架構(SambaNova SN40L):用 map/reduce/zip 等平行模式描述計算,編譯器做分塊、metapipelining 與佈局,投影片說它能把 Llama 3.1 8B 的整個 decoder 融成一個 kernel。
Coherence 只管單一位址;memory consistency 管的是不同位址之間的讀寫,在別的 thread 眼中以什麼順序生效。CS149 L15 用兩個 thread、兩個變數的例子說明:sequential consistency 下 r1 = r2 = 0 不可能,但每顆現代處理器都有的 write buffer 會讓讀跑到寫前面,於是它變成可能。TSO、PSO、weak ordering 依序放寬更多順序換取效能,fence 與同步原語再把需要的順序補回來。對應用程式設計師的結論很短:寫沒有 data race 的程式,用同步函式庫,C11、C++11、Java 5 就保證你看到 sequential consistency。
粗鎖好寫但慢,細鎖快但容易寫錯。Transactional memory 讓程式設計師只宣告 atomic { },由系統負責原子性與隔離。CS149 L17 講動機(failure atomicity、composability)與設計空間:資料版本管理分 eager(undo log)與 lazy(write buffer),衝突偵測分 pessimistic 與 optimistic。L18 拆 STM 的執行期資料結構與 McRT 演算法,再講 HTM 怎麼用 cache 的 R/W 位元加上 coherence 協定偵測衝突,最後是 Intel Haswell 的 RTM。Written 4 則把 MSI、LL/SC、鎖與記憶體順序、雙向 linked list 的細粒度鎖串成四題。
CS149 Fall 2025 第一講先定義 speedup,再用三個課堂示範說明通訊與負載不均會吃掉加速比。接著解釋單核效能為什麼停滯:superscalar 能挖的指令層級平行大約在每時脈發四道指令就用完,時脈又被功耗牆擋住,所以效能只能靠多核與專用硬體。最後一段把焦點轉到效率:取一次 DRAM 的延遲約是 L1 cache 的 60 倍,搬 64 bits 的能耗是一次整數運算的上千倍,高效率幾乎都歸結到高效率地存取資料。
負載平衡的難處在於它和排程成本互相拉扯:任務切得越細越好平衡,但每次領任務都要付同步成本。CS149 L5 先把選項排成一條從 static 到 dynamic 的連續光譜,再拆解 Cilk 的執行期:每個 worker 一條 deque,spawn 時先跑 child、把 continuation 留給別人偷,閒置的 thread 從別人 deque 的頂端偷走最大塊的工作。
Policy gradient 只能從實際拿到的獎勵判斷好壞,資料用得很浪費。Actor-critic 多訓練一個價值函數(critic)來估計「這個狀態有多好」,再用它算 advantage 去加權 policy(actor)的梯度。估計價值有三條路:用整條 rollout 的獎勵總和直接監督(Monte Carlo)、用「這一步獎勵加上自己對下一個狀態的估計」監督(bootstrap),或折衷的 n 步回報。L4 最後把它推到 off-policy:先在同一批資料上多走幾步(這是 PPO 的起點),再用 replay buffer 重用所有舊資料(這是 SAC 的起點)。
CS224R 是 Chelsea Finn 在 Stanford 教的深度強化學習課,從模仿學習一路講到 LLM 的 RL 和機器人基礎模型。Spring 2026 的 17 份投影片、三份作業的題目與起始碼、default project 規格與起始碼都能匿名下載,本系列評為 A3(足以自學)。缺口是 2026 錄影只在 Canvas、期中考卷與解答不公開、HW2 和 HW3 規定在 Modal 上跑。公開錄影是 Spring 2025 版,本系列把它當補充,逐講標出差異。
CS224R Spring 2026 的 default project 要你在 Qwen2.5-0.5B Base 上,針對 Countdown 算術推理任務依序實作三個階段:SFT 暖身、IPO 偏好最佳化、用規則式 verifier 當獎勵的 RLOO,三者用同一套 vLLM 評估比較,再做一個自選的研究延伸。實作部分禁止用 SFTTrainer 這類高階 trainer,也禁止任何 AI 工具協助,只有延伸部分例外。延伸占報告成績的一半,看的是方法和紀錄,不是分數。起始碼和資料集都公開,校外讀者缺的是 Modal credits 和 autograder。
CS224R 最後一講分三段:先把整學期的方法收成一個工具箱,再列七個還沒解決的問題(沒有可驗證獎勵的領域、怎麼用 prior data、world model、怎麼 scale、安全、幻覺與校準、通才系統的評估),最後用一半的篇幅講怎麼做研究:同時要有重要的問題和可行的計畫、先把風險挪到最前面、及早考慮轉向、研究成果要分享出去才算數。配著 2026 年 244 份公開的期末專題報告一起讀,最容易看出這些原則落地的樣子。
長 horizon 任務難,是因為要走過的狀態太多、犯錯和卡住的機會也多。CS224R 第 15 講的答案是拆成兩層:高層 policy 出子目標,低層 policy 以較高頻率執行。真正要做的設計決定有三個:子目標用什麼表示、兩層各自拿什麼監督、什麼時候換下一個子目標。投影片也坦白,階層和「單一 policy 加 chain of thought」誰比較好,還沒有定論。
CS224R Spring 2026 的 HW1 用一個自製的 Flappy Bird 環境考模仿學習:policy 一次預測 20 步目標高度、只執行前 10 步。你要依序寫出 MSE 回歸式 BC、flow matching policy 和 DAgger,並在 easy 與 hard 兩種模式下比較。題目 PDF、LaTeX 模板和起始碼都能匿名下載,CPU 也跑得動;解答、autograder 和 Gradescope 不公開。這篇整理每一題要實作什麼、要回答什麼,不寫解答。
CS224R Spring 2026 的 HW2 分三段:先在 5×4 的格子世界用表格型 Q-learning 看 reward 設計怎麼改變學到的路徑;再用 GAE 加 PPO clip 解一個只在完成時給 1 分的鐵鎚任務;最後用 BC 預訓練、critic ensemble 和更高的 UTD 做 off-policy actor-critic,並比較兩條學習曲線。題目、起始碼和算力指南都公開,但作業只支援 Modal,課程 credits 只發給修課學生。
CS224R Spring 2026 的 HW3 要你從零補完兩個 offline RL 演算法:AWAC 和 IQL,並在 D4RL 的 AntMaze 上比較。Problem 1 在 antmaze-umaze 和 antmaze-medium-diverse 跑 AWAC;Problem 2 先比較 IQL 的 expectile ζ = 0.2 和 0.9,再用較好的值跑 medium-diverse,最後在一份最高 return 只有 −46 的 PointMass 資料上,看 IQL 能不能拼出比資料更好的路徑,並跟只取前 10% 軌跡的 filtered BC 比較。題目 PDF、LaTeX 模板和起始碼都公開,但作業規定在 Modal 上跑,課程 credits 只發給修課學生。本文只整理題目和環境,不寫解答。
CS224R Spring 2026 第二講處理模仿學習的兩個失敗模式。第一個是示範有多種合理做法時,回歸只學到平均值;解法是把 policy 換成生成模型(高斯混合、離散化加自迴歸、diffusion/flow matching),再加上 action chunking。第二個是 compounding errors:policy 一犯錯就走到示範沒涵蓋的狀態;解法是 DAgger 和 human-gated DAgger 收集修正資料。前兩部分就是 HW1 的內容。
CS224R Spring 2026 第一講做三件事:交代課務、說明為什麼要學 deep RL、把「行為」寫成可以學的東西。核心是一組定義:state、action、trajectory、reward、policy,以及「最大化期望總獎勵」這個目標。最後用一個例子收尾:拿 ℓ2 回歸去模仿一群要切換車道、一群要直行的駕駛,policy 會學到兩者的平均值,一個沒人示範過的半切換動作。這個問題是 L2 的起點。
Meta-RL 在很多任務上訓練,目標是遇到新任務時只靠少量經驗就能解決。CS224R 第 13 講把它寫成「先探索收一點資料,再用這些資料適應」,最直接的做法是 black-box meta-RL(RL²):一個有記憶的網路把過去的 (s, a, r) 當輸入,隱藏狀態跨 episode 保留。它通用、表達力強,但難最佳化,尤其探索很難時:探索和執行互相依賴,端到端訓練容易卡住。投影片接著比較 PEARL 的 posterior sampling、MetaCURE 的預測式探索,以及 DREAM 用任務表示把探索和執行拆開訓練。
Model-based RL 先學一個預測 s_{t+1} 的 dynamics model,再拿它做兩件事:生成額外的訓練資料(Dyna、MBPO),或在執行時往前想幾步再行動(planning)。CS224R 第 11 講的主線是怎麼不被模型誤差拖垮:合成資料只從真實狀態出發跑短 rollout、用多個模型的 ensemble 平均掉誤差、長 horizon 的 planning 在尾端接一個 value function。模型值不值得學,取決於它比 policy 好學還是難學。
多任務 RL 把「任務是哪一個」當成狀態的一部分:s = (s̄, z_i),於是它還是一個普通的 MDP,標準 RL 演算法照樣能用。CS224R 第 12 講講兩種共享:權重共享(一個網路以 z_i 為條件做所有任務)和資料共享(hindsight relabeling:把為任務 A 收的資料改標成任務 B 的資料)。Goal-conditioned RL 是特例,任務就是要到達的目標狀態;用「最後到達的狀態」當目標重新標記,稀疏獎勵的探索問題就緩解很多。資料共享有三個前提:dynamics 跨任務一致、reward 能算、演算法是 off-policy。
PPO 和 SAC 都在回答同一個問題:一批花錢收來的資料,能不能多用幾次。PPO 對同一批資料多走幾步梯度,用 clip 把新舊 policy 的比值鎖在 1±ε 之內;SAC 把所有歷史資料放進 replay buffer,改學 Q(s, a),讓舊資料也能評估新 policy。前者穩、好調,後者省資料、難調。
CS224R Spring 2026 第七講處理一個問題:手上只有一批別人收的資料、不能再跟環境互動時,要怎麼學出比資料更好的 policy。直接拿 SAC 這類 off-policy 演算法來訓練會壞掉,因為 Q-function 在資料沒出現過的動作上亂估,policy 又專挑被高估的動作。投影片給兩類解法:只在資料裡的動作上訓練 policy(filtered BC、AWR、AWAC),以及用不對稱的 expectile loss 估計比資料更好的 policy 的價值、完全不查詢資料外的動作(IQL)。兩者都能做到模仿學習做不到的事:把不同軌跡的好片段拼起來。
Policy gradient 是 CS224R 的第一個線上 RL 演算法。它的梯度長得跟模仿學習的梯度幾乎一樣,只是每條軌跡多乘上一個獎勵權重:好結果的動作變得更可能,壞結果的動作變得更不可能。原始版本雜訊很大,L3 用兩招降低變異:只算「未來」的獎勵(causality)和減掉平均獎勵(baseline)。它也是 on-policy 的,每走一步梯度就要重新收資料;用 importance sampling 加上 KL 限制,才能在同一批資料上多走幾步。
Q-learning 把 actor-critic 的 actor 拿掉:直接學最優 Q 函數,要行動時取 argmax。代價是它不保證收斂,連線性 Q 都可能發散。CS224R 第 6 講用三個工程技巧把它拉回來:target network 讓目標值暫時不動、Double Q 拆開「選動作」和「估價值」來壓低高估、n 步回報用一點偏差換速度。
CS224R Spring 2026 第八講先花幾頁複習 offline RL,再問一個前面七講都跳過的問題:獎勵從哪裡來?遊戲有分數,真實世界的機器人、對話和自駕通常沒有。投影片給兩條路。第一條是從成功範例訓練一個目標分類器當獎勵,但 RL 會去鑽分類器的漏洞,解法是把 policy 走過的狀態不斷加進負例,跟 GAN 同一個結構。第二條是請人比較兩條軌跡哪條好,用 Bradley-Terry 式的 log σ(r(τw) − r(τl)) 學獎勵,這也是 LLM 的 RLHF 在用的方法。整講的第一個重點只有一句:獎勵不能視為理所當然。
只用模仿學習訓練的 VLA,成功率常卡在 80% 左右,要讓機器人自己上工卻常需要 99% 以上。CS224R 第 17 講把「怎麼在真機上用 RL 改進 VLA」拆成三條路:把 RL 改寫成監督學習(iterated offline RL)、在 VLA 的表示或擴散雜訊上另外學一個小 policy、學一個小 policy 去修改 VLA 的動作。投影片自己說這是還沒解決的研究問題,內容是近期主題加講者觀點。
CS224R Spring 2026 第十講由 OpenAI 的 Noam Brown 客座,論點只有一條:reasoning model 替 scaling 開了新的維度,把算力從訓練推到推論。他從自己做撲克 AI 的經驗講起,再用西洋雙陸棋、西洋棋和圍棋說明「推論時多想一下」一直都有用;接著談 LLM 怎麼做到這件事:chain of thought、多數決、o1/o3、GRPO 和 DeepSeek-R1-Zero。後半段主張整個領域要為大規模 test-time compute 重新思考:multi-agent、以分數對算力作圖的評估方式、安全評估的預算假設。投影片以圖為主,本文只寫投影片上看得到的論點。
CS224R Spring 2026 第九講由 Archit Sharma 客座,投影片註明改寫自 CS224N。主線是一條推導鏈:instruction tuning 解決不了「沒有標準答案」和「錯誤輕重不同」,所以改成最大化人類偏好;人類評分太貴又不準,所以改用成對比較訓練 Bradley-Terry reward model;RLHF 拿它當獎勵、加 KL 懲罰做 policy gradient;DPO 則利用 KL 約束問題的封閉解,把 reward 寫成 policy 的對數比值,整件事變成一個二元分類損失。最後一段談前沿:reward hacking、可驗證獎勵,以及用 AI 回饋取代人類回饋。
模擬器便宜、快、安全,還附贈真實世界拿不到的標籤,但它永遠和真實世界有落差。CMU 的 Guanya Shi 在 CS224R 第 16 講把縮小落差的方法分成三類:domain randomization 讓一個 policy 在很多種物理參數下都能用;teacher-student 先用特權資訊訓練老師、再讓只看得到真實感測器的學生去模仿;real2sim2real 用真實資料把模擬器修得更像。進階題目是用人類動作資料定義任務,以及挑選適合 sim2real 的 RL 演算法。
CS231N 第 15 講用一個問題貫穿全場:3D 形狀要用什麼資料結構存,神經網路才吃得進、吐得出?投影片依序走過 depth map/surface normal、voxel、point cloud、triangle mesh、implicit surface 五種表示,每種各配一個代表架構(全卷積深度預測、3D 卷積、PointNet、Pixel2Mesh 與 Mesh R-CNN、DeepSDF),再到 NeRF 與 3D Gaussian Splatting 的速度取捨,最後點名 VGGT、TRELLIS、Marble 等 2025–2026 的新模型。2025 錄影用的是另一套投影片,順序與重點不同。
CS231N 作業一占總成績 12%,2026 年 4 月 16 日截止,五個 Colab notebook 全部在 CIFAR-10 上用 numpy 手寫:Q1 kNN 要寫出兩層迴圈、一層迴圈、零迴圈三種距離計算;Q2 Softmax 從 naive 到向量化再到 SGD;Q3 把 affine、ReLU、softmax 組成兩層網路;Q4 改用 HOG 與色彩直方圖特徵;Q5 推廣成任意層數,並實作 Momentum、RMSProp、Adam。起始碼 65 KB,公開可下載;拿不到的是 Gradescope 評分。本文只講結構與目標,不給解答。
CS231N Spring 2026 的 A2 佔總成績 18%,五個 notebook 從手寫 BatchNorm/LayerNorm、Dropout、卷積與池化的 forward/backward,一路走到 PyTorch 的三層抽象,最後用 PyTorch 在 COCO 上做 RNN 影像描述。轉折點在 Q4:前三題的梯度要自己推,Q5 起交給 autograd,再用數值梯度檢查驗證。官方投影片提醒這是三份作業裡最長的一份。
CS231N Spring 2026 的 A3 占總成績 15%,四個 Colab notebook 把 L8、L12–L14、L16 各自落成一份實作:Q1 手寫 multi-head attention、Transformer decoder 做 COCO captioning,再組一個 ViT 在 CIFAR-10 上訓練;Q2 實作 SimCLR 的資料增強與對比損失,比較有無自監督預訓練的線性分類;Q3 寫 DDPM 的加噪、UNet、去噪損失、取樣與 classifier-free guidance,生成文字條件的 32×32 emoji;Q4 用預訓練 CLIP 做相似度、零樣本分類與檢索,再用 DINO 特徵只靠一幀標註做影片分割。本文只講題目結構、檔案與目標,不給解答。
CS231N Spring 2026 第 8 講從 RNN 翻譯模型的瓶頸出發,把 attention 抽象成一個作用在「向量集合」上的運算,再推到 self-attention、masked 與 multi-head,最後證明整層只是四次矩陣乘法。Transformer block 由 self-attention、LayerNorm、殘差與 MLP 組成;ViT 把 224×224 的圖切成 16×16 的 patch 當 token。講次結尾列出 2017 年後常見的四個改動:Pre-Norm、QK-Norm、SwiGLU 與 MoE。
兩層網路會把 32×32×3 的圖片拉平成 3072 維向量,空間結構就此消失。CS231N L5 的答案是卷積層與池化層:卷積用一組小濾波器在圖上滑動,同一組權重用在每個位置;池化負責降採樣,沒有可學參數。兩者都有平移等變性。記住一條公式就能算每一層的輸出尺寸:(W − K + 2P) / S + 1。
CS231N 是 Stanford 的電腦視覺深度學習課,Spring 2026 版的 16 講投影片、三份作業的題目頁與起始碼、課程筆記與專題規範都公開,本系列評為 A3(足以自學)。缺口有三個:2026 錄影只放在 Canvas、L17 與 L18 沒有投影片、期中考不公開。可以拿 2026 的投影片和作業,配 2025 年的 YouTube 錄影,照官方課表排 10 週。
CS231N Spring 2026 第 9 講把「整張圖一個標籤」推到「每個像素、每個物件」:語意分割用全卷積網路先降採樣再升採樣(U-Net 再接回高解析特徵);偵測從 R-CNN 的約 2000 次 CNN forward,一路優化到 Fast R-CNN、Faster R-CNN 的 RPN、單階段的 YOLO,再到不用 anchor 的 DETR;Mask R-CNN 在每個 RoI 上多預測一張 28×28 遮罩。最後一段講 saliency、CAM 與 Grad-CAM。課表列的對抗樣本、DeepDream 與風格轉換,2026 和 2025 的投影片都沒有。
CS231N 第 11 講以 Llama3-405B 為貫穿範例,先講 GPU 硬體與叢集(H100、8 卡伺服器、24,576 張 GPU 的叢集),再把 Transformer activation 的四個維度對應到四種平行化:切 batch 是資料平行(再演進成 FSDP、HSDP),切序列是 context parallelism,切層是 pipeline parallelism,切通道是 tensor parallelism。中間插入 activation checkpointing(用重算換記憶體)和一份實用的擴展配方,並用 Model FLOPs Utilization(MFU)當調參目標:超過 30% 算好,超過 40% 算優秀。
CS231N Spring 2026 的 diffusion 講次沒有從 DDPM 的數學開始,而是先說「這個領域的術語和符號一團亂」,然後只教一個乾淨的現代版本:rectified flow。訓練時在資料和雜訊之間取一個點,讓網路預測從資料指向雜訊的速度;生成時從雜訊出發,往反方向走約 50 步。接著一路疊上實務零件:classifier-free guidance、偏重中間雜訊的排程、在 VAE latent 上做 diffusion、用 Transformer(DiT)當去噪器、蒸餾減少步數。最後才把 VP、VE、ε/v 預測收進一個「廣義 diffusion」框架,並交代 latent variable、score function、SDE 三種數學觀點。
CS231N Spring 2026 的生成模型第一講,先把「判別模型學 p(y|x)、生成模型學 p(x)」講清楚:所有可能的圖片要搶同一份機率質量,所以生成模型能拒絕不合理的輸入。接著用一張分類圖把生成模型分成「算得出 p(x)」和「只能取樣」兩群,再依序講兩個算得出(或近似算得出)的:自迴歸模型用鏈鎖律把 p(x) 拆成逐步預測,太慢是它在原始像素上的死穴;VAE 算不出 p(x),改成最大化它的下界 ELBO,重建項和先驗項會互相拉扯。課表把 GAN 列在這一講,但 2026 與 2025 的投影片都把 GAN 放到下一講開頭,本文一併整理,讓三種範式在同一篇對照。
L2 從一個問題出發:電腦看到的是一堆 0 到 255 的數字,要怎麼認出貓?寫規則行不通,所以改用 data-driven 方法:收集資料、訓練、在新圖上評估。第一個分類器是 kNN,它教會你 train/val/test 怎麼切,但像素距離沒有語意。第二個是線性分類器 f(x,W)=Wx+b,可以從代數、視覺(模板)、幾何(超平面)三個角度看,再用 softmax 把分數變成機率,用 −log 機率當 loss。
CS231N 2026 的第一講分成兩份投影片。第一份用一條時間軸講視覺與深度學習的歷史:從 Hubel & Wiesel 的貓實驗、Marr 的視覺表示階段,到 Neocognitron、backprop、LeNet,再到 ImageNet 與 AlexNet 把兩條線接起來。第二份講課程地圖、評分與規則,並把作業全面搬到 Colab。讀完這一講,你會知道後面 17 講各自在補哪一塊。
L4 前半把線性分類器 f = Wx 換成兩層網路 f = W₂ max(0, W₁x),說明拿掉 max 這個激活函式就會退回線性分類器。後半回答網路變深之後梯度怎麼算:把函式畫成計算圖,每個節點只要知道自己的本地梯度,再乘上從後面傳回來的上游梯度。add 分配梯度、mul 交換、max 路由、copy 相加,四個模式就能追蹤任何網路。最後推到矩陣:dL/dx 永遠和 x 同形狀,所以不要真的建出 Jacobian。
RNN 用同一組權重,在每個時間步更新一個隱藏狀態,所以能處理任意長度的序列。CS231N L7 從手工造一個偵測連續 1 的 RNN 講起,接著是字元級語言模型、把 CNN 特徵接進 RNN 做影像描述,再用梯度流解釋為什麼 vanilla RNN 難訓練:梯度爆炸靠 gradient clipping,梯度消失靠改架構,也就是 LSTM。最後把 Mamba 這類 state space model 稱為「現代 RNN」。
L2 給了分數函式和 loss,L3 回答「怎麼找到好的 W」。前半講正則化:在 data loss 旁邊加 λR(W),讓模型不要把訓練資料背得太好。後半是一條最佳化器的演進線:SGD 在窄長山谷裡會來回震盪,Momentum 累積速度,RMSProp 依每個維度調步伐,Adam 把兩者合起來再做偏差修正,AdamW 把 weight decay 移到動量計算之外。投影片最後的實務建議是:多數情況先用 Adam(W),SGD+Momentum 可能更好,但要花更多力氣調學習率與排程。
CS231N 第 12 講的問題是:大規模訓練需要大量標註,能不能不靠人工標註學到好的表示?答案分三段。第一段是從影像變換自動產生標籤的 pretext task:預測旋轉、拼圖、補洞、上色,以及把遮罩比例拉到 75% 的 MAE。第二段是更通用的對比學習:InfoNCE 損失、需要大 batch 的 SimCLR、用佇列解耦 batch 與負樣本數的 MoCo,以及序列層級的 CPC。最後是不需要負樣本的 DINO:學生網路去預測動量老師的輸出,靠 centering 與 sharpening 避免崩塌。評估方式的核心是 linear probing:凍結編碼器,只訓練一層線性分類器。
CS231N 第 6 講的 2026 投影片標題是「Training CNNs and CNN Architectures」,分成「怎麼搭」和「怎麼訓練」兩半。架構只細講兩個:VGG 證明三層 3×3 卷積比一層 7×7 更深、參數更少;ResNet 讓層去學殘差 F(x) = H(x) − x,解決深網路連訓練誤差都更差的最佳化問題。訓練那半最實用的是遷移學習:資料不到約一百萬張,就先找大資料集上的預訓練模型。
CS231N 第 10 講把影片看成「2D+時間」的 T×3×H×W 張量,再沿著一條效率主線往下走:先在短片段上訓練、測試時平均多個片段;架構從逐幀 2D CNN、late fusion、3D CNN,到用光流分出動作的 two-stream 與把 2D 權重「充氣」成 3D 的 I3D;2021 年後換成 Transformer,但 token 數會爆炸,於是有 divided space-time attention、Video Swin、MViT 與 tubelet。最後一段擴展到時序定位、影音多模態、VideoLLM 與長影片理解,並用 HourVideo 指出這塊還差得遠。
CS231N Spring 2026 的視覺與語言講次,先把課程前半的「一個任務一個模型」換成「基礎模型」:先用大量多樣的資料預訓練一個模型,再用微調、zero-shot 或 few-shot 接到許多任務。主角有三條線。第一條是 CLIP:用 4 億組網路圖文配對做雙向對比學習,再把類別名稱寫成句子,就能不經微調直接分類;它也有弱點,分不出「草地上的杯子」和「杯子裡的草」。第二條是 LLaVA、Flamingo 到 Qwen3-VL、Molmo 的視覺語言模型:把圖片特徵接進 LLM,讓模型看圖輸出文字。第三條是 chaining:讓 LLM 寫描述或寫程式,把現成的視覺模型串起來。
CS231N Spring 2026 的最後兩講沒有公開投影片:L17 在課表上只寫「World Modeling」與客座講者 Gordon Wetzstein,L18 只寫「Human-Centered AI」。校外讀者能看的是 2025 年的替代品:L17 當年是另一個主題 Robot Learning(Yunzhu Li,有投影片與錄影),L18 是李飛飛的錄影,沒有投影片。本文把三者分開標示年份,不把 2025 的內容寫成 2026。後半講期末專題:占 35%,分 Applications 與 Models 兩條 track,專案必須處理像素,交付物是一段提案、三次 milestone check-in、6–8 頁報告與海報。
CS234 Winter 2026 的作業一共 68 分、四題:庫存 MDP 看視野與折扣怎麼改變最佳策略(8)、自駕車的 proxy reward 為什麼讓 AI 車乾脆不上匝道(5)、用 Bellman residual 界住貪婪策略的表現(30),以及在 RiverSwim 上親手寫 value iteration 與 policy iteration(25)。三題紙筆在練同一件事:你寫下的 reward、γ 與價值函數,不一定是你以為的那個目標。
CS234 Winter 2026 的作業二共 102 分、四題:DQN 紙筆題(8)、在 CartPole、Pendulum、HalfCheetah 三個 PyBullet 環境上實作 REINFORCE、神經網路 baseline 與 clipped PPO(54 分程式+21 分報告),證明策略誘導的狀態分布與 performance difference lemma(14),以及用 Belmont Report 檢視一個會邊學邊影響學生的 RL 實驗(5)。程式題的重點是把 L5–L7 的式子一行一行變成可以跑出 21 條學習曲線的程式。
CS234 Winter 2026 作業三共五題、94 分。前三題都在 MuJoCo Hopper 上:先用手寫 reward 跑 PPO(13),再從 1 萬筆偏好對學 reward model 後跑 PPO(19+8),最後用 SFT+DPO 直接從偏好學策略、完全不碰環境(6+19)。第四題換成純理論:用 Hoeffding 與 union bound 算出找 ε-最佳臂要幾次試驗(25),這題要等讀完下一篇 bandit 再做。第五題是新聞推薦的 stated vs revealed preference(4)。
CS234 L9 與 L10 前半把「探索」從 ε-greedy 這種經驗法則,變成可以證明的東西。先定義 regret:跟一直選最好的手臂相比,你少拿了多少。greedy 會鎖死在次佳手臂,固定 ε 的 ε-greedy 永遠有 ε 比例在亂選,兩者的 regret 都隨時間線性成長。Lai-Robbins 下界說最好也要對數成長,而 UCB 靠「對不確定的手臂樂觀一點」做到了:Bandit Algorithms 定理 7.1 給出每隻次佳手臂只會被拉大約 16 log n / Δ² 次。
CS234 是 Emma Brunskill 在 Stanford 教的強化學習入門課,從有模型的 MDP 規劃一路講到策略梯度、RLHF/DPO、bandit 探索和 MCTS。Winter 2026 的 14 講投影片、三份作業的題目與起始碼、專題規格都能匿名下載,本系列評為 A3(足以自學)。缺口是官網沒有 2026 錄影、L15 與 L16 沒有投影片、期中考與 tutorials 不公開。公開錄影是 Spring 2024 版,本系列只拿它當補充;2024 有兩講 Offline RL,2026 投影片裡沒有對應內容。
Q-learning 在表格上會收斂,接上函數近似就可能發散。CS234 把原因歸成 deadly triad:bootstrapping、function approximation、off-policy learning 三者同時出現。DQN 用兩招撐住:experience replay 打散樣本之間的相關性,fixed Q-targets 讓目標值在 C 步內不動。投影片引用的 Atari 消融表裡,Breakout 從線性模型的 3 分、沒有兩招的深度網路 3 分,到兩招都用的 317 分;只加 replay 就到 241。
前兩篇的 UCB 與 Thompson sampling 只處理單步決策。CS234 第 12 講把同一組想法搬進有狀態的 MDP:先換一把尺,用 PAC 限制「不夠好的步數」而不是總 regret;再看樂觀派的 MBIE-EB(計數+探索獎勵)與抽樣派的 PSRL(每個 episode 抽一個 MDP 來解)。狀態多到數不完時,計數失效,就改成在 Q-learning 目標上加 bonus,這是 Montezuma's Revenge 上贏過 ε-greedy DQN 的關鍵。最後一段問:探索策略能不能用學的?答案之一是 Decision-Pretrained Transformer。
CS234 Winter 2026 的最後一份客座投影片,由 Google DeepMind 的 Shane Gu 主講,36 頁、沒有公開錄影。主線有三段:先用 Solomonoff induction 說「最好的預測就是找出最短的生成程式」,再把預測分成三個層次;接著把正向模型 F、逆向模型 Π 與 Q 寫在同一組符號裡,說明 shooting 與 direct collocation 兩種規劃方式怎麼各用一種模型,並把 TDM 與 Generalized Decision Transformer 解讀成「換了時間尺度的世界模型」;最後談影片模型能不能成為物理世界的基礎模型。
有專家示範、沒有 reward 時,CS234 L7 後半給三條路:直接用監督式學習抄動作(behavioral cloning),發現誤差會隨時間累積後改成邊跑邊問專家(DAgger),或者乾脆反推專家在最佳化什麼 reward(inverse RL)。反推 reward 會碰到「無限多組 reward 都解釋得了示範」的問題,feature matching 與最大熵原則是兩種收斂答案的方式。這一段是下一篇 RLHF 的前身:從示範換成偏好,問題結構幾乎一樣。
CS234 Winter 2026 第一講先回答 RL 是什麼:在不確定之下,從經驗學會做好決策。它通常同時牽涉四件事:最佳化、延遲後果、探索、泛化。接著用火星探測車的七格世界,從 Markov process 一路加到 Markov reward process,定義 return、value function 和折扣因子,最後推出 MRP 的 Bellman 方程:可以直接解矩陣反轉,也可以用動態規劃迭代。加上動作之後就是 MDP,這是下一講的起點。
到目前為止,CS234 都在替整個狀態空間算一個策略。第 13、14 講換一個問題:如果我只在乎「現在這一步」該怎麼走,能不能多花一點本地運算,做出更好的決定?從 simple Monte Carlo search、expectimax tree 到 MCTS,再把每個節點當成一個 bandit,就得到 UCT。AlphaZero 把 MCTS 跟一個同時預測策略與價值的網路綁在一起,用 self-play 互相推進。投影片借用 Silver et al. 2017 的圖回答三個問題:架構有多重要、MCTS 加了多少、需不需要人類資料。
CS234 Winter 2026 第二講假設世界模型已知,回答怎麼算出最好的 policy。先把 MDP 加上 policy 變回 MRP,用 Bellman backup 迭代評估 policy;再用 policy iteration 交替評估與改進,並證明每一輪都不會變差,最多 |A|^|S| 輪就停。另一條路是 value iteration:直接重複套用 Bellman 最佳化運算子,因為它在 γ < 1 時是 contraction,所以一定收斂。最後補上 finite horizon:這時最好的 policy 通常會隨剩餘步數改變。
會評估之後,下一步是一邊收資料一邊把策略變好。CS234 第 4 講的路線是:ε-greedy 讓策略改進仍然單調;GLIE 規定探索要多到什麼程度、何時收手;Q-learning 在 GLIE 加上 Robbins–Monro 步長下會收斂到 Q*;最後把表格換成參數化的 Q̂(s,a;w),用 MC、SARSA 或 Q-learning 的目標做 SGD。代價是 deadly triad:函數近似、bootstrapping、off-policy 三者同時出現時,可能震盪或發散。
不知道轉移機率與 reward,要怎麼估一個策略值多少?CS234 第 3 講給三個答案:Monte Carlo 直接平均整條軌跡的回報(無偏、變異大、要等 episode 結束),TD(0) 用「一步 reward+下一狀態的估計值」當目標(有偏、變異小、每一步都能更新),certainty equivalence 先估模型再做動態規劃(最省資料、最貴的計算)。第 4 講開頭的 AB 例子把差別講到最清楚:同一批資料,MC 說 V(A)=0,TD 說 V(A)=0.75。
策略梯度不學價值再導出策略,而是直接對策略參數 θ 做梯度上升。關鍵一步是把 ∇P(τ;θ) 改寫成 P(τ;θ)∇log P(τ;θ),動態模型在取 log 後消失,只剩策略自己的 score function。原始估計量無偏但雜訊很大,CS234 用三招降噪:只看動作之後的回報(REINFORCE)、減掉只依賴狀態的 baseline(證明它不引入偏差)、用 critic 估計的價值取代 Monte Carlo 回報(actor-critic)。
Vanilla 策略梯度有兩個毛病:每批資料只走一步就丟,而且參數空間的距離不等於策略空間的距離,步長一大表現就崩。CS234 沿用 Joshua Achiam 的講法,從 performance difference lemma 出發,把新策略的表現改寫成舊策略資料上的 surrogate objective,再用 KL 散度界住近似誤差。最大化「surrogate 減 KL 懲罰」保證不退步,但理論常數太大,PPO 改用可調的 KL 懲罰或 clipping 近似它;advantage 則用 GAE 在偏差與變異之間折衷。
CS234 L8 把上一篇的 inverse RL 換了輸入:不再是專家示範,而是人類說「A 比 B 好」。Bradley-Terry 模型把這種成對比較變成一個可以用交叉熵擬合的 reward;RLHF 拿這個 reward model 加上 KL 懲罰去跑 PPO;DPO 則證明 KL 限制下的最佳策略有封閉解,把 reward 改寫成策略的對數比值,代回 Bradley-Terry 後 partition function 相消,於是可以直接在偏好資料上訓練策略、跳過 reward model。2026 投影片沒有 offline RL 的內容,DPO 也改由課堂自己講,不再是 2024 的客座。
CS234 L11 把探索的邏輯從「樂觀」換成「抽樣」。Thompson sampling 替每隻手臂維護一個後驗分布,每一步從後驗各抽一個值,選抽到最大的那隻;Bernoulli reward 配 Beta 先驗時,更新只是把成功或失敗次數加一。它剛好實作了 probability matching:選每隻手臂的機率,等於它是最佳手臂的後驗機率。在 Bayesian regret 下它跟 UCB 同階,在批次與延遲回饋的場景裡還比確定性的 UCB 更合適;代價是先驗錯得離譜時會表現很差。
整門 CS234 都假設 reward 是給定的。Winter 2026 的倫理與社會客座(Wanheng Hu,教材原本由 Dan Webber 發展)分兩次問:你真正想要的是什麼?第一次把「對齊」拆成三個目標:使用者的意圖、顯示偏好、客觀最佳利益,並用 RLHF 造成的 sycophancy 與個人 AI agent 當案例。第二次加入第四個目標:對使用者以外的人來說什麼是對的,再比較 top-down(寫下原則)、bottom-up(從範例學)與 participatory AI 三條路。結論沒有銀彈,但對齊有好壞之分。
Harvard CS 2881R 是 Boaz Barak 在 2025 年秋季首開的研究所 AI 安全研討課。Fall 2025 已完整結束,12 講的閱讀清單全公開、YouTube 播放清單有 11 講的講課錄影、HW0 是一個能自己跑的 GitHub repo,期中與期末的規格和評分表也放出來了,本系列據此標 A3(以研討課標準)。缺口同樣清楚:沒有傳統習題、投影片只有約一半講次公開、L5 沒有講課錄影、L8 只有開場。Fall 2026 正在上,只當預覽。
Harvard CS 2881R Fall 2025 的期末專題分兩種:延伸既有論文,或做有 theory of change 的長期研究;交 5–10 頁 NeurIPS 風格論文加海報,評分是 writeup 65、code 15、poster 20。專題頁公開 19 份論文,約一半集中在 persona 向量與 chain of thought 監控。head TA 與 Harvard Q-report 都指向同一個問題:期末專題太晚開始、評分表太晚公布,回饋是全課評分最低的一項。
CS 2881R 的 HW0 是選課門檻:用 LoRA 把 Llama-3.2-1B-Instruct 微調在壞的醫療、財務或極限運動建議上,再看它回答無關問題時是否也變得有害。repo 給了加密的訓練資料、generate.py、以 gpt-4o-mini 當裁判的 judge.py,README 的目標是對齊分數低於 75、連貫度高於 50;train.py 是空的,要自己寫。自學時要知道:評分腳本只印平均分數,沒有自動判定過關,拿來比較的基礎模型基準是 20 題醫療題,而你的 CSV 是醫療題與非醫療題各 10 題。
CS 2881R 第一講(2025-09-04)用三篇 pre-reading 把問題攤開:AI 2027 描繪五年內靠遞迴自我改進走到超人 AI,AI as Normal Technology 主張 AI 會像電力一樣慢慢擴散,METR 則用「人類要花多久的任務,AI 能有五成機率完成」量到這個長度約每 7 個月翻倍。Boaz 的講課把 AGI 的定義拆成能力與衝擊兩種,把對齊方法分成原則、品格訓練、model spec 三類。課堂實驗把 HW0 反過來做:在生物倫理題上微調對齊答案,環境政策題的對齊分數也跟著上升。
Boaz Barak 把 pretraining、SFT、RL 看成同一件事:挑一些 token 加強、一些 token 壓低,差別只在資料是別人寫的(off-policy)還是模型自己生的(on-policy)。安全訓練就疊在後兩段上,從早期的「一律拒答」走到 Deliberative Alignment:先用 SFT 教模型在思考鏈裡讀 spec,再用懂 spec 的獎勵模型做 RL。這堂課另一個重點是:不要對思考鏈施加最佳化壓力,否則模型學會的不是不作弊,而是作弊時不說。
對齊過的模型之所以還會被 jailbreak,是因為安全訓練只修掉了某些 exploit,底下的 vulnerability 還在。Nicholas Carlini 用三個攻擊說明這件事:重複一個字讓 ChatGPT 吐出訓練資料、用梯度找出能跨模型轉移的對抗後綴、只靠 API 偷出最後一層權重。Boaz Barak 則從軟體安全搬來幾條老教訓:攻擊只會越來越強、安全要一開始就設計進去、要縱深防禦。他擔心 prompt injection 會成為 2020 年代的 buffer overflow。
Boaz Barak 的答案是兩者都要,再加上人格:抽象原則、良好人格、明確政策三者混用,他自己把最少的權重放在書房裡推出來的原則上。真正的關鍵是規則要能檢查:「證明定理或給反例」是壞規則,「證明、給反例或說明做不到」才是好規則,因為只有能判定違規的規則才能拿來訓練和評估。學生實驗也沒找到「原則」與「細則」兩種 system prompt 的一般性差異,效果因模型而異。
CS2881R 第 5 講請 OpenAI Product Policy 的 Ziad Reslan 談內容政策。課站沒有列出講課錄影與投影片,校外讀者能拿到的是三篇 pre-reading、學生寫的 LessWrong 週摘要,以及一支 17 分鐘的學生實驗影片。這些材料串起來的主線是:社群平台花了二十多年才學會「線畫在哪裡都會有邊界案例,但總得畫」,生成式 AI 又多了一層難題——聊天介面介於私人文件與公開貼文之間,圖片比文字更容易被讀成立場。
Harvard CS 2881R Fall 2025 第 6 講沒有客座,Boaz Barak 用成長理論的微分方程問一個問題:如果 AI 開始自己做 AI 研發,能力曲線會維持指數、加速成奇點,還是被瓶頸拖慢?答案取決於幾個誰都量不準的指數。他用 Baumol 成本病、美國人均 GDP 百年 2% 的謎、Jones 的點子成長模型說明瓶頸與加速各自的道理,再拆開 AI 2027 的倍率假設。他的結論是:唯一能排除的是「AI 對研發沒什麼影響」。
Harvard CS 2881R Fall 2025 第 7 講請 METR 的 Joel Becker 處理一個謎:基準測試上,AI 能以一半機率完成人類要花幾小時的任務,而且這個長度每七個月翻倍;但在 METR 自己的隨機對照試驗裡,資深開源開發者用 AI 反而慢了 19%,勞動市場的衝擊也只集中在年輕人。Becker 列出幾種和解方式,核心是基準測試的任務太乾淨、評分太便宜、基準線人員太缺脈絡。課站原本排的前沿安全框架(OpenAI Preparedness Framework、Anthropic RSP)這堂沒講到,本篇依閱讀清單補上它們怎麼把能力量測變成門檻。
CS2881R 第 8 講問:模型會不會為了通過訓練或評測而作弊、裝乖、甚至暗中追求別的目標?Boaz Barak 的 10 分鐘開場把各種壞行為歸成「系統性失準」:是我們的訓練訊號把模型推過去的。Apollo 的 Marius Hobbhahn 整理現有證據,結論是目前模型還沒有造成災難的 scheming 能力,但早期能力已經出現,而且越來越會察覺自己在被評測。Redwood 的 Buck Shlegeris 則主張先假設模型在密謀,用 AI control 守住內部部署。學生實驗把四個前沿 coding agent 丟進不可能完成的排序任務,發現它們在明文禁止下仍會改測試、猴子補丁計時器。
Harvard CS 2881R 第 9 講請來 OpenAI 首席經濟學家 Ronnie Chatterji 與 Stanford 的 Bharat Chandar。Chandar 用 ADP 薪資資料說明:22–25 歲、在 AI 高曝險職業的年輕人,在控制公司層級衝擊後,就業相對下降 16%,資深員工沒有同樣的趨勢;調整主要出現在人數,薪資還沒動。兩位講者也一再提醒,總體就業目前看不出大規模替代,「曝險」不等於「被取代」。這講沒有投影片,材料是錄影與閱讀清單。
Harvard CS 2881R Fall 2025 第 10 講請來 OpenAI、Anthropic、Google DeepMind 的四位研究者,從兩個方向偵測模型的不良行為:讀它寫出來的 chain of thought,或讀它的 activation。CoT 監控抓 reward hacking 比只看動作有效,但把監控器放進訓練獎勵,模型就學會把意圖藏起來。activation 這一側,persona vector 能追蹤人格漂移,Sonnet 4.5 的稽核則顯示關掉「我在被測試」的方向後,不良行為會變多。Neel Nanda 的結論最務實:簡單的 steering vector 常常贏過 SAE,先跟 baseline 比。
Harvard CS 2881R 第 11 講談聊天機器人與心理健康。Boaz Barak 提出一個他自己說「未經證實」的解釋:模型有預訓練的「模擬器」與強化學習的「最佳化器」兩種模式,對話越長、越偏離訓練分布,越容易退回模擬器,順著故事繼續討好。兩組學生實驗分別測到:一次討好會外溢到無關問題,而妄想情境下 GPT-4.1 的附和率隨對話變長而惡化。預讀同時列了正面證據(NEJM AI 隨機試驗、NHS 觀察研究)與反面證據(stigma 研究、Parasitic AI)。本文只轉述研究與課堂討論,不提供臨床建議。
Harvard CS 2881R 最後一講由 Boaz Barak 和兩位 OpenAI 客座 Tejal Patwardhan、Kevin Liu 談未來十年。Boaz 的心智模型是:AI 等於每年向經濟注入指數成長、也越來越通用的虛擬勞動力,他最擔心的是變化太快而控制不足,以及權力集中與監控。Patwardhan 介紹 GDPval:用產業專家的真實工作成品當標準答案,由另一批專家盲評。Liu 說明為什麼 coding agent 還沒自動化 AI 研究:驗證太貴、回饋迴圈太長。課站這講的 Resources 寫「to be determined」,本文內容全部來自錄影。
CS2881R 的期中作業不是考試,是 2–4 人一組,從四篇 AI 安全論文裡挑一篇,重做它最核心的那張圖或表,再做一到兩個延伸,交 3–5 頁報告與 GitHub。規格投影片與評分表都公開,校外讀者可以完整照做。評分表把最多分數給「重現」與「延伸」,另外專門留一分給「你對結果有多脆弱的反思」——這一分正是這份作業想訓練的研究習慣。
6.5940 的前兩講先證明問題存在,再給量尺。L1 用一張圖說明模型參數量的成長遠快於 GPU 記憶體,並指出雲端 GPU 有 80GB 記憶體、微控制器只有 320kB。L2 把效率指標分成記憶體與運算兩類:#Parameters、model size、peak activations,以及 MAC、FLOP、OP。以 AlexNet 為例,它有 61M 參數、724M MACs;在微控制器上真正先爆掉的常常是 activation,不是參數。Lab 0 用 CIFAR-10 上的 VGG 變體(9.2M 參數、606M MACs)當之後幾個 lab 的起點。
MIT 6.5940(TinyML and Efficient Deep Learning Computing)教的是讓模型變小、變快、塞進手機和微控制器的技術:pruning、quantization、NAS、distillation、LLM 部署與分散式訓練。2025 年秋季因 Song Han 休假停開,2025 年課頁回 404;Fall 2026 正在上,截至 2026-09-30 只放出 L1–L6 與 Lab 0–1。本系列因此以最近一屆完整的 Fall 2024 為主幹:23 講投影片、23 支錄影、Lab 0–5 都公開,屬 A3;Fall 2026 列 A2,每篇另附對照。
MIT 6.5940 Fall 2024 的最後兩講分成兩半。L22 前半是 13 頁的 Course-Summary.pdf:用推論、訓練、特定應用三塊加上 System/Algorithm 兩軸重畫整門課,再交代期末專題的 7 項評分。L22 後半的 Quantum ML Part I 只有錄影、沒有投影片。L23(Hanrui Wang 主講,99 頁)講參數化量子電路(PQC):資料編碼、parameter-shift 梯度、雜訊下的機率式梯度剪枝(QOC)、TorchQuantum 函式庫,以及用 SuperCircuit 搜尋加閘剪枝的 QuantumNAS。讀起來像把前面學的 supernet 和 magnitude pruning 在量子電路上重演一次。Fall 2026 已把這兩講換成 Guest Lecture。
Diffusion 慢,是因為同一個大網路要從純雜訊一路跑幾十到上千步。L18 先把 DDPM、條件生成、latent diffusion、SDEdit、DreamBooth 講完,再分三條路加速:少跑幾步(DDIM 跳步、progressive distillation 每輪把步數減半)、每步少算(DC-AE 把圖壓 64 倍、只重算被編輯的 1.7% 區域省 8.2 倍 MACs、SVDQuant 把 FLUX 壓到 4-bit)、多卡分攤(DistriFusion 8 張 A100 最多快 6.1 倍)。
GPT-3 的 fp16 權重就要 350GB,一張 80GB 的 A100 放不下,更別說梯度和 Adam 狀態。L19 講怎麼切:資料平行、ring all-reduce、ZeRO-1/2/3(每張卡能訓練的模型從 5B 推到 320B)、GPipe 把 pipeline 利用率從 25% 提到 57%、Megatron 式 tensor parallelism、Ulysses 與 Ring Attention 的 sequence parallelism。L20 講切完之後的通訊瓶頸:Alpa 自動搜平行策略、DGC 把梯度壓 277–608 倍還不掉精度、TernGrad 把梯度量化成三值,以及用延遲更新蓋掉網路延遲的 DGA。
第 16 講談 ViT:高解析度下 attention 成本隨解析度平方成長,window attention(Swin)把計算限制在局部視窗,EfficientViT 用 ReLU linear attention 把複雜度降到線性再補回局部與多尺度能力,SparseViT 剪掉不重要的視窗;自監督(對比學習、CLIP、MAE)解決 ViT 需要大量標註的問題;最後 HART 用離散 token 加殘差 diffusion,比 diffusion 模型高出數倍吞吐量。第 17 講針對三種冗餘:GAN 的 2D 空間冗餘(GAN Compression、AnyCost GAN、DiffAugment)、影片的時間冗餘(TSM 零 FLOPs 的時間建模)、點雲的 3D 稀疏(PVCNN、SPVCNN、BEVFusion)。Fall 2026 排程已拿掉第 17 講。
這篇是 Fall 2026 的材料,不屬於本系列主幹的 Fall 2024。Fall 2026 把 Lab 1 從剪枝換成「Efficient AI Fundamentals」(lab1_gpu_basics.zip):Part 1 手刻三層迴圈的 GEMM、算 MAC/FLOPs/I/O;Part 2 畫 GEMM 與 GEMV 的 roofline;Part 3 拿 gemma-3-270m-it 的 decoder layer 算 attention 與 MLP,比較 prefill 與 decode;Part 4 用 PyTorch Profiler 看 kernel、自己寫 GeLU 體會 kernel fusion、再試 torch.compile 與 CUDA Graph;Part 5 比較 SDPA 與 FlashAttention。主題 80 分,另有 20 分 bonus,Part 5 因為 Colab T4 跑不動整段改成 bonus。
MIT 6.5940 Fall 2024 第 9 講分五段:知識蒸餾(KD)的定義與 temperature、六種可以對齊的東西(logits、權重、特徵、梯度、稀疏模式、關係)、不需要固定大老師的 self/online 蒸餾、偵測/分割/GAN/NLP/LLM 上的 KD,以及專為小模型設計的 Network Augmentation。溫度從 T=1 調到 T=10,老師對「貓 vs 狗」的輸出從 0.982/0.017 變成 0.599/0.401,這一步就是 KD 能傳遞「暗知識」的起點。
MIT 6.5940 Fall 2024 的 Lab 1 是一本 Colab notebook,9 題共 100 分:前 5 題在 CIFAR-10 的 VGG 上做 magnitude-based 細粒度剪枝與 sensitivity scan,要求剪到原大小 25% 且 fine-tune 後準確率高於 92.5%;第 6–8 題做 channel pruning、用 Frobenius norm 排序 channel、量測實際加速;第 9 題比較兩者。Fall 2026 沒有 pruning lab。
Lab 2 是一份 Colab notebook,10 題共 100 分,對象是 CIFAR-10 上預訓練好的 VGG。前 3 題做 K-means 量化:寫量化函數、推算 n bit 有幾個 cluster、寫 centroid 更新,再看 8/4/2 bit 微調前後的準確率。後 7 題做線性量化:寫 q = round(r/S) + Z、推 scale 與 zero point 公式、做 per-channel 權重量化與 bias 量化、寫整數版的全連接層與卷積層,最後把整個模型轉成 INT8 跑推論。本文整理題目、配分、環境需求與校外限制,不附解答。
MIT 6.5940 Fall 2024 Lab 3 給你一個 OFA 方式訓練好的 MCUNetV2 super network(超過 10^19 個子網路)與 Visual Wake Words 資料集,10 題共 100 分加 10 分 bonus:先實作 MACs/peak memory 的 efficiency predictor 與三層 MLP accuracy predictor,再寫 random search 與 evolutionary search,最後在 250KB、60M MACs 的限制下找出準確度 92.5% 以上的子網路。本篇拆題目結構與每題在練什麼,不貼解答。
Lab 4 是 Colab notebook,用 OPT-1.3B 一步步重做 AWQ:先看 3-bit 量化後 perplexity 變多差,再保留 1% 重要 channel(Q1),最後改用縮放保護它們並搜尋最佳縮放(Q2),兩題各 50 分,另有依 perplexity 計分的 bonus。Lab 5 換到 C++:用 TinyChatEngine 在自己的電腦上跑 4-bit 的 LLaMA2-7B-chat,替 W4A8 線性層 kernel 依序寫 loop unrolling、multithreading、SIMD、multithreading+unrolling、全部組合五個版本,每個 20 分,另有最多 20 分的效能 bonus。本文整理兩份作業的題目、配分、環境與校外限制,不附解答。
第 13 講把 LLM 推論變快的方法分成三條路。量化:SmoothQuant 把 activation 的離群值難度搬到權重做 W8A8,AWQ 依 activation 找出約 1% 的重要權重、用縮放保護它們做 W4A16,QServe 再合成 W4A8KV4。稀疏:Wanda 用 |W|·‖X‖ 剪權重,DejaVu 與 MoE 每個 token 只用一部分參數,SpAtten 與 H2O 丟掉不重要的 token。Serving:TTFT/TPOT 指標、PagedAttention、FlashAttention、speculative decoding 與 continuous batching。投影片上 OPT-6.7B 做 INT3 時,RTN 的 perplexity 是 43.16,把重要 channel 放大 2 倍就降到 14.07。
第 14 講分三段。第一段是微調:SFT 用想要的回答做 next-token prediction,RLHF 先訓 reward model 再用帶 KL 懲罰的 RL 微調,DPO 把兩階段壓成一次監督式訓練;接著一路比較 PEFT:BitFit 只調 bias、Adapter 插小層但推論變慢、Prompt/Prefix-Tuning 佔用輸入長度,LoRA 用可併回權重的低秩分支解決推論延遲,QLoRA 再把主幹量化成 NF4,BitDelta 把微調差值壓到 1 bit。第二段是多模態 LLM:Flamingo 用 cross-attention、PaLM-E 與 VILA 把影像當 token、VILA-U 讓模型也能輸出影像。第三段是 prompt engineering:zero/few-shot、CoT 與 RAG。
第 15 講分四段。延長上下文:RoPE 內插可以把 LLaMA 從 2k 拉到 32k,LongLoRA 用 shifted sparse attention 讓長上下文微調變便宜。評估:lost-in-the-middle、Needle-in-a-Haystack 與 LongBench。高效 attention:KV cache 隨長度線性長大,StreamingLLM 發現開頭幾個 token 是 attention sink,保留它們加上最近視窗就能穩定生成;DuoAttention 只讓少數 retrieval head 保留完整 KV cache;Quest 保留全部 KV、依 query 只讀最關鍵的幾頁。最後一段跳出 Transformer:Mamba 用選擇性 SSM 取代 attention,Jamba 把兩者混在一起。
MCU 的 SRAM 約 256–320kB、Flash 約 1MB,比手機小上萬倍,連 int8 的 MobileNetV2 峰值記憶體都超出 5 倍。L10 的答案是 MCUNet:TinyNAS 先挑搜尋空間再搜子網路,MCUNetV2 用 patch-based inference 把 MobileNetV2 的峰值 SRAM 從 1372kB 壓到 172kB,最後看視覺、語音、異常偵測三類 tinyML 應用。
MIT 6.5940 Fall 2024 第 8 講處理 NAS 最貴的一步:評估候選架構。從頭訓練 12,800 個架構要 22,400 GPU-hours,所以課程依序介紹繼承權重、hypernetwork、ProxylessNAS 的單路徑訓練、延遲查表與預測器、Once-for-All 的一次訓練 10^19 個子網路,再到完全不訓練的 zero-shot NAS 與神經網路/加速器共同搜尋 NAAS。本篇照 105 頁投影片走一遍,標出每個主張的頁碼。
第 7 講分三段。先用 MAC 公式複習全連接、卷積、分組卷積、depthwise 與 1×1 卷積;再拆 ResNet bottleneck、ResNeXt、MobileNet、MobileNetV2、ShuffleNet 與 Transformer 各靠什麼省運算,例如 bottleneck 比直接做 2048 通道的 3×3 卷積少 8.5 倍 MAC。最後進入 NAS:搜尋空間分 cell-level 與 network-level(深度、解析度、寬度、kernel size、拓撲),搜尋策略有 grid、random、強化學習、梯度下降、演化五種。投影片的一道算術題顯示,NASNet 的 cell 空間在 M=5、N=2、B=5 時就有 3.2×10¹¹ 個候選。
在裝置上訓練有兩個理由:模型要跟著使用者的新資料調整,資料又不該離開裝置。L21 先證明「只分享梯度」也不安全:Deep Leakage from Gradients 能從梯度還原出原圖和原句。接著處理記憶體:訓練比推論貴,是因為要存 activation,不是參數。TinyTL 只調 bias 再加輕量殘差,省 6.5 倍記憶體;SparseBP 只更新重要的層與通道;QAS 讓真正的 int8 訓練追上 fp32;PockEngine 在編譯期做完 autodiff,最後在 256KB 的 MCU 上把訓練記憶體壓到 141KB。
Pruning 是把神經網路裡不重要的權重或神經元拿掉,目標寫成「在非零權重數不超過 N 的限制下讓 loss 最小」。6.5940 第 3 講先處理其中兩個決定。第一是粒度:從任意位置都能剪的 fine-grained,到整個通道一起剪的 channel pruning,越規則越容易在現有硬體上變快,但能剪掉的比例越小;介於中間的 2:4 sparsity 在 NVIDIA Ampere GPU 上最多快 2 倍。第二是準則:看權重大小、看 Batch Norm 縮放係數、看二階導數、看 activation 有多少是零,或看剪完後輸出重建得多好。
MIT 6.5940 第 4 講把剪枝的後半段講完:用敏感度分析、AMC(強化學習)或 NetAdapt(逐步查表)決定每層剪多少;用 1/10 到 1/100 的學習率 fine-tune、迭代剪枝把 AlexNet 的剪枝倍數從 5 倍推到 9 倍;最後看 EIE、NVIDIA 2:4 稀疏與 TorchSparse/PointAcc,說明稀疏要有系統支援才會變快。
MIT 6.5940 第 5 講從「8-bit 整數加法比 32-bit 浮點加法省 30 倍能量」出發,先複習 INT、定點數、FP32/FP16/BF16、FP8 與 FP4 的位元配置,再講兩種量化:K-means 量化只省儲存、計算仍是浮點;線性量化用 r = S(q − Z) 把矩陣乘法、全連接層與卷積都改成整數運算。
第 6 講處理「量化後精度掉了怎麼辦」。先不重訓:換更細的 scale 粒度(per-channel、group、MX)、裁掉離群值(EMA、校準批次、MSE、KL)、改捨入方式(AdaRound)。不夠再重訓:QAT 保留一份全精度權重,前向做假量化,反向靠 STE 把梯度直接穿過去。投影片引用的白皮書數字裡,MobileNetV1 做 per-tensor INT8 PTQ 準確率掉到 0.1%,改成 per-channel QAT 回到 70.7%,浮點原本是 70.9%。最後兩段談 1–2 bit 的二值/三值網路,以及用強化學習自動分配每層位元數的 HAQ。
演算法把模型縮小之後,系統層還能再榨多少?L11 用同一個矩陣乘法示範:loop reordering 快 12 倍、tiling 快 19 倍(Intel Xeon 4114),CUDA 版在 2080Ti 上端到端快 94 倍。後半講 TinyEngine 用的推論技巧:im2col、in-place depthwise 把峰值記憶體從 2×C×H×W 降到 (1+C)×H×W、pointwise 用 NHWC、depthwise 用 NCHW,以及少 2.25 倍乘法的 Winograd。
6.5940 在第 12 講從 CNN 轉到 Transformer,但重點不在原理,而在哪裡會吃掉記憶體與算力:attention 是 O(N²);Llama-2-70B 若用 MHA,batch 16、長度 4096 的 KV cache 要 160GB;GQA 把它縮 8 倍、MQA 縮 64 倍;MoE 讓總參數變多但每個 token 的計算不變。這篇是進入 L13 LLM 部署前的橋接。
MIT 6.S184 是 IAP(1 月獨立活動期)的短課:5 講(第 3 講拆成 3-A、3-B 兩支錄影)、3 個 lab,加上一份 84 頁、官方稱為「課程骨幹」的講義。講義、slides、6 支錄影、lab notebook 與官方解答全部公開,是 A3 足以自學。缺的只有兩塊:lab 繳交走 Canvas 裡的 Gradescope,只有 MIT 修課生能用;第 5 講離散擴散沒有對應 lab。
MIT 6.S184 Lab 1 分三部分:先寫 Euler 和 Euler–Maruyama 的 step 函式,再用它們模擬 Brownian motion 與 Ornstein–Uhlenbeck 過程,觀察 σ 和 θ 怎麼決定軌跡與終點分佈,最後實作 Langevin dynamics,看一團點怎麼被推向一個五峰高斯混合,並用一段手算證明 OU 過程就是目標為高斯的 Langevin dynamics。題目、程式框架與官方解答都在 GitHub;校外讀者沒有 Gradescope 評分,只能自己對解答。
Lab 2 把講義 §3–4 寫成 PyTorch:先實作高斯條件路徑、條件向量場、條件分數,再用兩個幾乎一樣的 trainer 分別做 flow matching 和 score matching,接著用 Proposition 1 從學到的向量場換算出分數,最後換成線性路徑,讓一個圓環分佈流成棋盤格。全部在 2D 玩具資料上跑。README 記載 1/11/26 修過一個 diffusion coefficient 的 bug;2026-09-30 查看時,這個修正只出現在解答 notebook,學生版還沒改,做之前要自己補上。
Lab 3 在 MNIST 上從零組出一個有條件的 latent diffusion model,分四段:先用 label dropout 寫 CFG 訓練(在三群高斯混合上驗證),再一塊一塊寫 diffusion transformer(Fourier 時間嵌入、patchify、多頭注意力、adaLN-Zero、depatchify),接著寫一個 VAE,最後把 DiT 搬進 VAE 的 latent 空間訓練。題目與官方解答都公開;繳交走 Canvas 裡的 Gradescope,只有 MIT 修課生能用。
MIT 6.S184 第 1 講先把「生成一張狗的圖」改寫成「從資料分佈取樣」,再給出取樣的機器:從高斯雜訊出發,沿著神經網路給的向量場模擬一條 ODE(flow model),或在每一步再加一點 Brownian motion 的雜訊,變成 SDE(diffusion model)。實際模擬各用一個最簡單的數值方法:Euler 和 Euler–Maruyama。怎麼訓練那個向量場,留到第 2 講。
我們想學的是「邊際向量場」:沿著它跑 ODE,雜訊會流成資料。問題是它要對整個資料集積分,算不出來。Flow matching 的解法是改成回歸「條件向量場」,也就是只把雜訊推向單一資料點的那個場,這個有公式。講義 Theorem 12 證明兩個 loss 只差一個常數、梯度相同。落到 CondOT 路徑上,訓練只剩一行:取資料 z、雜訊 ε、時間 t,讓網路在 tz+(1−t)ε 這個點預測 z−ε。
分數函數是 log 密度的梯度,指向機率上升最快的方向。在高斯路徑上,它和上一講的向量場都是 x 與 z 的線性函數,所以可以互相換算(講義 Proposition 1):學會一個,就等於學會另一個。有了分數,就能在 ODE 上加任意強度的雜訊變成 SDE,而且每個時刻的分佈不變(Theorem 17)。分數本身也能用跟 flow matching 同一招學:回歸條件分數。這在高斯路徑上等於讓網路預測當初加進去的雜訊,也就是 DDPM 的訓練目標。
把 prompt 當成神經網路的額外輸入,理論上就能從 p_data(x|y) 取樣,但實際生成的圖不夠貼 prompt。第 3B 講用 Bayes 定理把有條件向量場拆成「無條件向量場+一個分類器梯度」,把分類器那項放大 w 倍就是 classifier guidance;再把分類器換成「有條件減無條件」的差,就得到不用訓練分類器的 CFG:ũ = (1−w)·u(x|∅) + w·u(x|y)。訓練只要以機率 η 把標籤換成空標籤 ∅。代價是每一步要呼叫網路兩次,而且 w>1 之後就不再是從資料分佈取樣。
前幾講的演算法已經完整,第 4 講處理規模化時的兩個工程問題。第一,網路要吃圖片、時間 t 和 prompt 三種輸入,吐出一樣大的向量場,所以用 U-Net 或 diffusion transformer(DiT),時間用 Fourier 特徵嵌入、文字用凍結的 CLIP/T5 嵌入。第二,像素空間太大,所以先訓練一個 VAE 把圖壓進 latent space,在那裡做 flow matching,最後再解碼。Stable Diffusion 3 與 Meta Movie Gen Video 都是這套配方:latent 空間裡的 flow matching+DiT 變體+CFG。
文字是一串離散 token,沒有方向可以走,ODE 和 SDE 都不存在。第 5 講把前四講的配方原封不動搬過來,只換掉底層的隨機過程:向量場換成 rate matrix,ODE 換成連續時間馬可夫鏈(CTMC),continuity equation 換成 Kolmogorov forward equation。用 factorized mixture path 當機率路徑時,要學的邊際 rate matrix 只剩一個未知數:給定加噪句子,每個位置原本是哪個 token 的機率。於是訓練離散擴散模型變成對每個位置做分類,loss 就是 cross-entropy;把雜訊設成全部 [mask],就得到 masked diffusion language model。
第一講前半說明課程規則與閃電秀,中段回答「為什麼要學原理」:蔡炎龍把學 AI 的焦慮拆成三種,主張懂原理才知道模型的限制、不必追著每個新工具跑。後半是 Colab 入門,從魔術指令、四行標準套件、plt.plot 到 Markdown 與 ipywidgets 互動。第一份作業是在 Colab 畫一個函數圖形;長庚衛星班的評分標準裡,照改範例只拿 6 分,沒教過的函數加上漂亮的 Markdown 註解才拿 10 分。
第二講把上一講的「呆萌型 AI 機器人」拆開:輸入輸出都要變成數字(張量),分類問題用 one-hot 與 softmax 把分數變成機率,神經網路由神經元一層層接起來,訓練就是用梯度下降把 loss 壓小。最後用 Keras 在 MNIST 上打造第一個全連結神經網路,再接上 Gradio 畫板。第二週作業要你自己設計 DNN,唯一的硬規定是不能是三層;長庚衛星班要求截圖驗證正確率最高的那組參數,也鼓勵保留失敗的嘗試。
同一句「一個可愛的女孩」有無數種正確答案,硬把它當函數訓練,只會學到所有答案的平均。GAN 的解法是改訓練兩個網路:生成器 G 從隨機 latent 向量造圖,鑑別器 D 判真假,兩邊互相對抗。L03 從 2014 年的原始論文一路講到 WGAN、Progressive GAN、StyleGAN 的 512 維 latent 與 AdaIN,再到 Pix2Pix、CycleGAN;後半的附錄把 cross entropy 與 KL divergence 講成「驚訝指數」。第三週作業二選一:實際跑一個 GAN,或用自己的話解釋 CE 與 KL。
L04 把大型語言模型拆成一句話:看前面的字,替字庫裡每個字打分數,softmax 變成機率,再依機率抽出下一個字。為了讓「前面的字」變成記憶,課程先講 RNN,再第一次帶出 Transformer 的 Q/K/V;接著用 GPT-2 的 15 億、GPT-3 的 1,750 億參數說明規模,用 temperature 與 top-p 說明為什麼每次回答都不一樣。後半教怎麼在自己電腦跑開源模型、要多少 VRAM。第四週作業:自己設計一組你懂的主題的測試 prompts,至少比較兩種 LLM。
L05 用兩條線性代數規則讀完 Transformer:矩陣乘法是「列乘行」的內積,而向量乘矩陣等於對矩陣的列向量做線性組合。有了這兩條,attention 就是「query 跟每個 key 做內積、softmax 成權重、對 value 加權平均」,整批寫成 softmax(QKᵀ/√d_k)V;除以 √d_k 只是把數字拉回 0 附近,避免 softmax 贏者通吃。接著講 multi-head、encoder 與 decoder 的差別、mask、用 sin/cos 時鐘做的位置編碼,最後是 ResNet 式殘差與 layer normalization。本週沒有作業。
L06 前半談倫理:蔡炎龍引用 Karpathy「幻覺是 LLM 的特點」,再逐一談抄襲、資料會不會被拿去訓練、DeepSeek 的審查與語料偏向,最後收在七項「負責任的使用」。後半轉向應用:只要給對「資訊」和「指引」,一段 system 設定就能做出員瑛式思考生成器、小編 AI、選系諮商師。第六週作業就是把這套 prompt 搬進 OpenAI 相容 API 加 Gradio,做一個有人設的對話機器人。
對話機器人會「記得」你,不是因為模型有記憶,而是程式每一輪都把整份 messages(system、user、assistant 交替)重新送一次。L07 先教申請 OpenAI 與 Groq 金鑰,再把這個結構講清楚,接著用 Ollama 在本機或 Colab 跑 Gemma 3,同一套 openai 套件只改 base_url 就能呼叫。第七週作業二選一:做一個能持續對話的版本,或讓兩個模型互相對話,都要用 Gradio 展示。
L06 說 prompt 只有兩件事:正確的資訊和清楚的指引。RAG 就是讓電腦自動去找「資訊」那一段:先把自己的文件切成文字塊,用同一個模型 fθ 把文字塊和問題都變成特徵向量,找出最接近的幾塊,再套進「請根據 {retrieved_chunks} 回答 {question}」的樣板。實作拆成兩支程式:Demo06a 用 LangChain 與 FAISS 建向量資料庫並壓成 faiss_db.zip,Demo06b 讀回資料庫、接 LLM、包成 Gradio。第八週作業就是換上你自己的資料。
L09 把 AI Agent 講成一句話:本來你要做的事,AI 自動幫你做完。蔡炎龍沿用吳恩達的四個設計模式(Reflection、Tool Use、Planning、Multiagent Collaboration),但只實作前後兩個最好上手的:Demo07a 讓「作者」與「評論員」兩個 LLM 呼叫接力改文章,Demo07c 把員瑛式思考拆成「先想五個理由、再寫貼文」的兩階段 CoT,都用 AISuite 串 Groq 並用 Gradio 展示。LangChain、AutoGen、CrewAI 只出現在進階學習清單。第九週作業就是兩種模式二選一。
L10 從「怎麼找到好的特徵向量」出發:Word2Vec 用代理任務學出 embedding,Autoencoder 用「輸入等於輸出」逼出壓縮後的 latent vector,VAE 再要求 latent 符合常態分布,讓鄰近的點生出相似的圖。接著蔡炎龍把 diffusion model 講成「encoder 用算的、只訓練 decoder 的 autoencoder」,最後收在 Latent Diffusion:先用 VAE 把 512×512 的圖壓成 64×64,diffusion 只在這個小空間裡做。第十週作業不寫程式,用 Bing 生出風格一致的多組圖。
L11 把 Stable Diffusion 架構圖上剩下的三塊補齊。CLIP 用「文字和圖越像越好」的對比訓練,讓 prompt 變成 77×768 的 embedding;排程器把 1000 步的加噪壓成二、三十步的去噪,但 Euler a 這類 ancestral 演算法不會收斂,步數加到 100,人物的衣服和座位都會換掉;LoRA 凍結原本的 W,只學拆成 A·B 的 ΔW。實作用 diffusers 載入 SD 1.5 系模型,第十一週作業是自己做一個生圖 Web App。
L11 的 Stable Diffusion 只聽 prompt,構圖、姿勢全看運氣。L12 補上「方向盤」:ControlNet 把 SD 的區塊拷貝一份,用 zero convolution 接回去,讓邊緣圖、姿勢、深度圖這類額外條件也能控制生成,最常見的例子是 Canny 邊緣。後半講 Fooocus:一個目標是「像 Midjourney 一樣簡單」的 SD 介面,重點在 Preset、Style,以及 Input Image 的五個功能,其中 Image Prompt 就是包裝好的 ControlNet。第十二週作業:設想一個應用情境,用 Fooocus 至少生 3 組圖,並寫出創作流程。
前 12 講的模型都靠人準備好的訓練資料。L13 換一個問題:沒有標準答案,只知道做得好不好的時候,電腦要怎麼學?老師從 AlphaGo 和打磚塊講起,分成兩條路:value based 學一個 Q 函數替每個動作打分數(Deep Q-Learning、TD、Experience Replay、ε-greedy),policy based 直接學動作(Policy Gradient、Actor-Critic)。後半回到 LLM:ChatGPT 怎麼用人類排名訓練 reward model,再用 PPO 做 RLHF;DeepSeek 則讓電腦自動判斷數學題對錯當獎勵。第十三週作業是期末專案提案。
最後一講看的是兩條技術線開始互相越界:ChatGPT 這類 LLM 開始畫圖,投影片用 early fusion 和 VQ-VAE/VQGAN 解釋「把圖像切成 token」怎麼做;反過來,Inception Labs 的 Mercury 用 diffusion 生成文字,把一句話加噪成一排 [MASK] 再還原。接著是幾篇人人都用得上的研究:怎麼自動評 RAG、推理模型更容易被劫持、DeepMind 的四種 AI 風險。最後是 Vibe Coding 與一串應用工具,以及用 Gather Town 線上研討會進行的期末專案。
《生成式 AI:文字與圖像生成的原理與實務》是政大應數系蔡炎龍主講、以 TAICA 衛星課程開放給聯盟學校的入門課。網路上最完整的那頁課程網站其實是長庚衛星班(協同教師楊智淵)的頁面。本系列以 Spring 2025(1132)為準:14 支錄影、14 份投影片、12 份作業說明與評分標準都公開,Demo notebook 也在 GitHub 上,存取分級 A3;缺口是 notebook 會持續改版、繳交與批改走各校平台、期末專案成果沒有公開。
清大高宏宇 NLP(Fall 2025)BERT and its Family 單元導讀。起點是「I record the record」:Word2Vec 和 GloVe 給兩個 record 同一個向量。ELMo 用雙向 LSTM 語言模型解決這件事。換成 Transformer 之後,預訓練分成三條路:encoder(BERT:MLM+NSP,擅長理解、不擅長生成)、encoder-decoder(T5 的 span corruption、BART 的五種雜訊)、decoder(GPT:純粹預測下一個字)。最後一段是 GPT-3 的 in-context learning 和 scaling laws,也說明 decoder 為什麼成了現在最主流的骨幹。
清大高宏宇 NLP(Fall 2025)解碼與評估單元導讀。前半講模型每一步吐出機率分布之後怎麼選字:greedy 一步錯就回不去,beam search 同時保留幾條候選但偏好短句,top-k/top-p 用抽樣換多樣性(投影片沒寫,教授在課堂口頭補)。後半講怎麼替生成的文字打分:BLEU 的 modified precision 與 brevity penalty、ROUGE-N 與 ROUGE-L、perplexity,以及 GLUE、SQuAD 2.0、MTEB、MMLU 這些 benchmark 各自在量什麼。
清大高宏宇 NLP(Fall 2025)GPT-2/T5 助教課導讀。同一個任務(LCSTS 中文摘要)用兩種架構各做一次:decoder-only 的 GPT-2 用原生 PyTorch,要自己把文章和摘要接成一條序列、改用 left padding、把 padding 的標籤設成 −100;encoder-decoder 的 mT5 用 Seq2SeqTrainer,不需要 left padding,DataCollatorForSeq2Seq 會自動處理 −100。兩邊都用 jieba 斷詞後算詞級 ROUGE。
高宏宇 Fall 2025 的 W8 投影片從 GPT-1 一路講到 GPT-3,順帶解釋 GPT-3 用的 Sparse Transformer 怎麼省掉注意力的計算,再用 InstructGPT 說明「會接話」和「聽得懂指令」之間差了什麼:最大概似目標分不出編造事實和挑錯同義詞哪個嚴重,所以要多三步——SFT 學人類怎麼寫、reward model 學人類怎麼評分、PPO 依評分調整並用 KL penalty 綁住不要跑太遠。最後以 Llama-2 收尾:分開訓練 safety 和 helpfulness 兩個 reward model、context distillation,以及推論加速用的 GQA。
清大高宏宇 NLP(Fall 2025)Hugging Face BERT 助教課與 HW3 導讀。助教課用 IMDb 影評二元分類走一遍 AutoTokenizer、input_ids/token_type_ids/attention_mask、AutoModelForSequenceClassification 與 Trainer。HW3 把工具拿去做 SemEval 2014 Task 1:同一個 bert-base-uncased 接兩個頭,一個回歸 1–5 分的 relatedness,一個做三類 entailment 分類,兩個 loss 加總後自己寫訓練迴圈,不准用 Trainer。
HW1 拿 Google Analogy 的 19,544 題(8,869 題語意、10,675 題語法)考詞向量:先用 Gensim 載入預訓練的 glove-wiki-gigaword-100 作答,再從助教清理好的 Wikipedia 抽 20% 文章自己訓練 Word2Vec,兩邊都畫 family 子類的 t-SNE。七個 TODO 共 55%,報告 45%;Fall 2026 的 TODO 和 2025 相同,只是改成繳交含執行結果的 .ipynb。
清大高宏宇 NLP 課第一週的 W1_NLP_brief 共 91 頁:先用「Watch for kids」、望遠鏡句的五種讀法、大舅到十一舅的繞口令說明語言為什麼難,再從資訊檢索的角度,把倒排索引、tokenization、stemming、TF-IDF、BM25 講成一條管線。後半段處理這條管線的死穴(同義詞、一詞多義、詞彙對不上),走到 LSA 的 SVD 降維,最後用 Skip-gram、GloVe、FastText 預告稠密詞向量。
清大資工高宏宇老師的《自然語言處理》是 TAICA 聯盟的研究所級主導課程,Syllabus 寫明開放 1200 人、中文授課,從 TF-IDF、詞向量一路講到 RLHF、PEFT 與 RAG。Fall 2025 的投影片、32 支課堂錄影、4 份作業題目與 starter notebook 都放在 GitHub,評為 A3;拿不到的是解答、評分與期末專題規格。Fall 2026 正在進行,只放到 W3,評為 A2;評分改成作業 75%+實體期中考 25%,並新增 Reasoning/Agent 單元。
這堂 34 頁的助教課回答一個很實際的問題:拿 ChatGPT 網頁版一筆一筆貼資料太慢,還會碰到每小時次數上限,所以做研究和作業要改用 API。notebook 用同一個 SemEval 2014 蘊含判斷例子,依序示範 Gemini、Claude、OpenAI 三家:把 prompt 放進 prompts.yaml、要求 JSON 輸出、few-shot、計算 token。要注意教材是 2024 年版:投影片封面寫 2024/11/21,notebook 用的是 gemini-1.5-pro、gpt-4o、claude-3-5-sonnet-20241022,其中 Claude 那個型號在 2025-10-28 已經退役,Gemini 的舊 SDK 也在 2025-11-30 結束支援。
高宏宇 Fall 2025 的 PEFT 投影片先算一筆帳:Llama 2-7B 用 16-bit 全參數微調約要 56GB 顯示卡記憶體,只訓練 0.2M 個參數就降到約 17GB,因為梯度和優化器狀態幾乎歸零。接著用 intrinsic dimensionality 解釋為什麼只調一小撮參數就夠:預訓練越久、模型越大,微調需要的有效維度越低。方法分成加參數(Adapters、Prompt Tuning)、挑參數(BitFit)、重參數化(LoRA)與混合(MAM Adapters、S4)四類;後半段從 GPT-2 的任務描述、verbalizer 一路講到 prefix tuning 和 soft prompt tuning 的取捨。
HW2 把「14*(43+20)=882」這種算式當成字元序列,要你用兩層 LSTM 看到「=」之後逐字生成答案。訓練集 2,369,250 筆、驗證集 263,250 筆,數字都在 0–49 之間;六個 TODO 從建字典、只在「=」之後算 loss 的 batching、生成函式,一路到 teacher forcing 訓練與 exact match 評估。W4 的 PyTorch 助教課就是這份作業的工具箱。
兩堂 RAG 助教課各做一個版本:第一堂在 Colab 裝 Ollama 跑 llama3.2:1b,用 LangChain 的 Chroma、MMR 和 retrieval chain 串出最小的 RAG;第二堂只在資料準備用 LangChain,其餘自己寫:切塊、存文字與向量資料庫、BM25 加 cosine 的混合檢索、用 RRF 合併排名,再拿 Llama-3.2-1B-Instruct 生成答案。HW4 把第一堂的骨架套到 150 則貓咪冷知識和 150 組 GPT-5 生成的問答上,生成器限定 Llama3.2-1b、embedding 限定 jina-embeddings-v2-base-en,要回報 recall@1、recall@5 與 exact match。程式占 45%,報告占 55%,報告要分析 prompt、資料格式、文件順序與反事實資訊的影響。
W11_RAG.pdf 的後半從「From Retrievers to QA」那一頁開始,把檢索器和讀者(reader)接成完整的問答系統。先看 2019–2020 年用 BERT 當讀者的 ORQA 與 REALM,再看第一篇叫 RAG 的論文和凍結 LLM 的 REPLUG;接著用一張表整理七個近年修法:改寫查詢(Query Rewriting、HyDE)、讓生成器不怕雜訊(RetRobust、RAFT、RAAT)、決定何時檢索(FLARE、Self-RAG)。最後談雜訊的類型、LLM 在 RAG 裡該有的四種能力,以及生成式檢索(GR)與可靠回應生成(RRG)。錄影方面,W11 週四那支講到 RAG 論文為止,後面的頁數本文找不到對應的錄影片段。
LLM 會一本正經地回答「歐本海默生於 1967 年」(那其實是他過世的年份),RAG 的做法是先檢索、再生成。高宏宇 Fall 2025 的 RAG 投影片前 60 頁都在講「怎麼找對資料」:稀疏向量(詞袋、TF-IDF、BM25)便宜可靠,稠密向量抓得到同義改寫;BERT 的 [CLS] 不適合直接當句向量,所以有 Sentence-BERT 的 pooling 和 bi-encoder;cross-encoder 準但一萬句要跑近五千萬次,bi-encoder 只要兩萬次;SimCSE 拿 dropout 當資料增強,DPR 只用一千筆訓練資料就贏過 BM25,GTR 則證明把 dual encoder 放大能改善跨領域檢索。
「Look over there」是 3 個 token,中文「請看那邊」是 4 個,日文是 12 個——輸出長度跟輸入對不上,分類器那套「最後接一層 FFN」就不能用。這份 33 頁的投影片從 encoder-decoder 講起,推到 RNN 的梯度消失、LSTM 的三個閘門,最後用 attention 同時解決長距離與平行化兩個問題,並解釋為什麼要除以 √d。
清大高宏宇 NLP(Fall 2025)Sub-word Tokenization 單元導讀。用空白切詞只適用於西方語言,也處理不了沒看過的詞和德文那種複合字。BPE 從字元出發,反覆把最常一起出現的一對合併進詞彙表,合併幾次就多幾個詞;缺點是貪婪切法不一定最好。Unigram LM 改用機率挑切法,還能抽樣出不同切法。投影片給的詞彙量是 BERT 30522、GPT-2/GPT-3 50257、T5 32,128。
Fall 2025 第 14 週,高宏宇用兩份投影片收尾:Course_summary 把整學期分成 NLP Fundamentals、NLP Models、NLP Advances 三欄,外加助教課兩欄與五個延伸方向;另一份是他整理的 Denny Zhou(Google DeepMind)2025 年 4 月 Stanford 演講筆記,主張「預訓練模型本來就能推理,關鍵在解碼」,並用 CoT decoding、self-consistency、retrieval + reasoning 串成四條不等式。Fall 2026 的 W16「Reasoning / Agent」單元尚未公開。
Fall 2025 的評分是作業 70%+期末專題 30%,專題 3–4 人一組,分成 Proposal 6%、Progress 6%、Poster 6%、Report 12%,不提供 GPU;repo 沒有專題規格文件,只有 Syllabus 的結構、期末提醒與 W15–W16 的錄影。Fall 2026 改成作業 75%(4 份)+W14 實體期中考 25%,課表拿掉報告週,新增 Reasoning/Agent 單元,並加入 AI-TA 協助批改與 TAICA 算力補助。改版原因,官方材料沒有寫。
清大高宏宇 NLP(Fall 2025)Transformer 單元導讀。投影片從 RNN 的兩個毛病出發:字跟字的互動要隔著 O(N) 步傳遞,時間步之間又不能平行。Self-attention 讓每個字直接看所有字,用矩陣乘法一次算完,兩個毛病同時解掉;代價是模型分不出詞序,所以要補正弦位置編碼。之後依序組出 multi-head attention、Add & Norm、feed forward、cross-attention、masked attention 與 teacher forcing,最後用 GPT-2、ViT 與四種變體說明這個架構後來走多遠。
清大高宏宇 NLP 課第二週的投影片共 62 頁,主題是「預測下一個字」。前半用 bigram 計數表、add-one smoothing 和 perplexity 講統計語言模型,再用 PPMI 的 cherry/digital 例子講稀疏向量;中段回到 Word2Vec 的負採樣,並用「蘋果」一詞說明為什麼需要 contextualized embedding;後半從 FFN 的三個缺點引出 RNN,示範它怎麼做 NER、句子分類,以及 stacked 與雙向版本。
RNN 做翻譯時,要把整句壓進一個向量,句子一長就記不住。Attention 讓解碼器每產生一個字,都回頭對輸入的每個位置打分數、取加權和;把打分數的一方叫 query、被比對的叫 key、被加權的叫 value,就是 dot-product attention。Transformer 再往前一步:讓輸入自己對自己做 attention,完全拿掉 recurrence,換來平行化與固定的路徑長度,代價是要另外補上位置資訊。
靜態詞向量給 apple 只有一個向量,不管它是水果還是公司。ADL Fall 2025 的 BERT 講從這個多義詞問題出發:TagLM 先用語言模型補上下文,ELMo 用深層雙向 LSTM 產生 contextual embedding,BERT 把 LSTM 換成 Transformer,並用 Masked LM 與 Next Sentence Prediction 兩個目標預訓練,下游只要在最上層加分類器或標註器微調。彈性補充的 BERT Variants 講義再往外走一圈:Transformer-XL 拉長 context、XLNet 用 permutation LM 兼顧 AR 與 AE、RoBERTa 靠更多資料與更好的訓練設定、SpanBERT 改成遮整段 span、mBERT 與 XLM 處理多語。這篇是下一篇 HW1 用 bert-base-chinese 做抽取式 QA 的直接前置。
資料很多不代表標註很多。ADL 最後一講問:沒有標註時,怎麼學到好的表示?答案是找出背後控制資料的潛在因子。Auto-encoder 把輸入壓成一段短碼再還原;denoising 版本先加雜訊或遮掉 15% 的 token,BERT 的 masked LM 就是這個想法。VAE 規定短碼要服從一個分布,於是能從分布抽樣來生成。Dual learning 讓翻譯與反向翻譯、理解與生成這類對稱任務互相當對方的回饋。自監督學習分兩派:自我預測(遮一部分猜回來)與對比學習(相似的拉近、不相似的推遠)。CLIP 用 4 億組圖文對做對比學習,讓影像分類可以 zero-shot;DALL·E 2 再把 CLIP 的表示拿來生成圖。Fall 2025 只有影片,投影片用 Fall 2024 版補位。
對話系統分成閒聊與任務型兩支。任務型系統傳統上拆成四個模組:語言理解(LU)把句子變成 domain/intent/slot,對話狀態追蹤(DST)累積使用者目標,對話策略決定下一步系統動作,NLG 把動作寫回句子。LLM 能自己把四步演完,卻沒辦法真的去訂位,所以要接外部工具:LaMDA 學會呼叫搜尋、計算機與翻譯器,BlenderBot 2.0 加上網路搜尋與長期記憶,WebGPT 用人類示範、reward model 與 PPO 學會操作瀏覽器,Toolformer 則讓模型自己產生並篩選工具使用的訓練資料。最後是對話怎麼評:自動指標、四種人工評估,以及 LLM-Eval。ADL Fall 2025 只有影片,投影片用 Fall 2024 版補位。
台大資工陳縕儂的《深度學習之應用》(ADL)Fall 2025 是一門以 NLP 為主軸的深度學習課:從神經網路基礎一路講到 Transformer、BERT、預訓練與 prompt、後訓練、LoRA、RAG、生成評估、對齊議題與 Language Agents。L0–L11 有講義 PDF 與分段影片,播放清單另外多出 L12–L14 三講影片;作業端只有 HW1 規格公開,HW2、HW3 與期末專題只有說明影片,所以存取分級是 A2。
ADL Fall 2025 第 10 講把預訓練模型的問題分成四組,每組配一個目標:bias 對 fairness、toxicity 對 safety、hallucination 對 factuality,最後是 alignment。講義的主張是偏見可能從 ML 管線任何一個環節進來,安全防護要在資料、輸入、訓練、輸出四層都做,幻覺可以拆成原子事實逐條查,而 reward model 被過度優化時,會出現囉嗦、過度道歉、過度拒答這些熟悉的症狀。同一週公布的期末專題叫 Jailbreaking Olympics,但公開的只有兩支說明影片的標題與一行說明。
ADL Fall 2025 的 HW1 給一個問題和四段中文文字,要模型先挑出相關的那一段(paragraph selection,當成四選一的 multiple choice),再在那段裡標出答案的起點和終點(span selection),用 Exact Match 評分。規格投影片直接指定改 HuggingFace 的 run_swag_no_trainer.py 與 run_qa_no_trainer.py,simple baseline 用 bert-base-chinese、長度 512、有效 batch size 2、learning rate 3e-5,在 8GB 的 RTX 3070 上兩段加起來不到三小時。Kaggle 排行榜 9/29 截止、程式與報告 10/1 交到 NTU COOL。校外讀者拿不到 Kaggle 資料與評分,但任務設計、baseline 設定和報告五題都能照著練。
ADL Fall 2025 第 11 講以 EMNLP 2024 的 Language Agents tutorial 為底,把 agent 定義成「感知環境並採取行動的實體」,再指出 language agent 的新東西:推理本身也是一種內部行動。講義用推理、記憶、規劃三個概念組織整講,推理這段講 CoT 與 ReAct,記憶這段講 Generative Agents 的 recency/importance/relevance 檢索,規劃這段從貪婪的反應式規劃講到 tree search 與 world model,最後用初始化、協作、團隊優化三步驟講多代理系統。
ADL Fall 2025 的第一份自學講義把機器學習講成「從資料裡找一個函數」,把深度學習講成「一條由很多簡單函數串起來、每一站都由機器自己學的生產線」。它用語音與影像說明 deep 和 shallow 的差別,用大數據與 GPU 解釋 2010 年後的突破,再用 universality theorem 追問為什麼要深而不是胖。最後一段最實用:學習任務由輸出領域決定,網路架構要配合輸入領域的性質。
ADL Fall 2025 的 NN Basics 與 Backpropagation 兩份講義,把「訓練一個模型」拆成三個問題:模型是什麼(一層層的神經元,每層是 z = Wa + b 再過非線性)、什麼叫好的函數(loss 越小越好)、怎麼挑出最好的(gradient descent,實務上用 mini-batch SGD)。上百萬個參數的梯度靠 backpropagation 有效率地算:forward pass 存下每層輸出,backward pass 從輸出層往回傳誤差訊號 δ,兩者相乘就是每個權重的梯度。
ADL Fall 2025 第 9 講回答兩個問題:模型每一步給出一個機率分布,要怎麼從裡面挑字?挑出來的句子又要怎麼評?講義先用 teacher forcing 與 exposure bias 說明訓練和生成的落差,再依序比較 greedy、beam search、sampling、top-k 與 nucleus sampling,把 temperature 與各種 penalty 歸類為「控制」而不是解碼演算法;評估一半講 BLEU、ROUGE、perplexity 與 LLM-Eval,另一半講為什麼要用 RL 直接優化整句的品質。
LLM 大到整個微調不划算時,ADL Fall 2025 的 LLM Adaptation 講義給出三種只改一小部分的做法:在 Transformer 裡插入小型 Adapter、用低秩矩陣表示權重更新的 LoRA,以及只學前綴或軟提示的 prompt tuning。講義的結論是沒有一種方法適合所有任務。HW2 的公開資訊只有一句題目「LLM Tuning and Prompt Tuning for Classical Chinese Translation」,資料、baseline 與評分都沒有文字版。
預訓練讓模型會接話,不代表它會照指令做事。ADL Fall 2025 的 Post-Training 講義分兩步補上:先用 instruction tuning(FLAN、T0)教模型讀懂任務描述,再用 RLHF 讓它朝人類偏好靠攏。講義用 instruction tuning 的三個限制把兩步接起來,用 reward model 與成對比較解決 RL 的兩個實務問題,最後以 InstructGPT 的 SFT → reward model → PPO 三步驟當總結,並說明 ChatGPT 把同一套流程搬到多輪對話。
ADL Fall 2025 第 6 講把預訓練模型分成三類:encoder(BERT 家族,雙向上下文)、decoder(GPT 系列,擅長生成)、encoder-decoder(BART、T5,用去噪目標預訓練)。接著點出預訓練模型時代的兩個實際難關:下游標註資料少,以及模型越來越大、每個任務各存一份放不下。講義的解法是 prompt learning:先用 GPT-3 的 in-context learning 說明「不更新參數也能做任務」,再從人寫的 hard prompt(prompt template+verbalizer、LM-BFF)走到直接優化向量的 soft prompt(P-Tuning、Prefix-Tuning、Prompt Tuning),最後用 Liu 等人的 prompting 分類法收尾。
LLM 記不住長尾知識、知識會過時,也碰不到私有文件。ADL Fall 2025 的 RAG 講義先用「問 LLM 陳縕儂是誰」的幻覺例子開場,再把 RAG 拆成索引、檢索、生成三段:sparse(TF-IDF、BM25)與 dense(DPR、Contriever)檢索、dense retriever 怎麼訓練、pre-/post-retrieval 的進階技巧與 pointwise/pairwise 重排序,最後用「檢索什麼、怎麼用、何時檢索」三個問題整理 RAG、RETRO、FLARE、Search-R1 等演進。HW3 的公開資訊只有題目「Retriever & Reranker Training for RAG」。
ADL Fall 2025 的 Reasoning 一講沒有公開投影片,只有播放清單上的五支影片:12.1 什麼是推理、12.2 Short CoT、12.3 Test-Time Scaling、12.4 Learning to Reason(模仿別人推理)、12.5 RL for Reasoning(探索自行演化出推理行為)。這篇只依影片標題排出這條路線,再搭配前一講 Language Agents 講義裡 CoT、ReAct 與「reasoning 擴大 action space」那幾頁;技術細節交給站內 CS224N、CME295 的 reasoning 篇。
ADL Fall 2025 第一堂正課的主線只有一條:語言模型就是預測下一個詞。從 one-hot 與共現矩陣出發,走過 n-gram 的零機率問題、neural LM 自動做到的平滑,再到把所有前文壓進 hidden state 的 RNN LM。BPTT 與梯度消失/爆炸是訓練上的代價,LSTM、GRU 用 gating 補救;最後用「輸入是序列」與「輸出是序列」兩類應用,把 tagging 與 encoder-decoder 分開。
ADL Fall 2025 課程頁排了 7 堂助教課:Dev Infra(PyTorch、Debugging)→ NLP 專案的一生 → NLP 專案的底層邏輯 → LLM LoRA Training → LLM Basics/Architecture/MoE → LLM Inference & Evaluation → LLM Deployment。10 支影片全部是林彥廷在 2023 與 2024 年錄的舊片,Fall 2025 沿用;課程頁上的 5 份講義連結都 404,同名檔在 Fall 2024 路徑可以打開,Deployment 只有影片。前三堂把 Hugging Face 的「資料→模型→Demo」流程走一遍,正好是 HW1 需要的工具;後四堂補 LLM 的訓練、推論與上線。
用整個詞當單位,沒看過的詞只能變成 UNK;用單一字元當單位,意思又很難組回來。ADL 這一講用 22 頁投影片說明主流的折衷:subword,以及最常用的切法 BPE。重點是一個 4 個詞、16 次出現的小語料,從字元開始,每次把最常相鄰的一對合併,9 次合併後得到 newest</w>、low</w> 這些單位,再拿來切沒看過的 lowest 與 powest。最後用 GPT-3 tokenizer 示範:同一句話的中文版比英文版多一倍 token。
技法第 7、8 講是 aggregation 模型的入口。T7 先把「組合多個假說」排成 uniform、linear、any(stacking)三種 blending,用一行代數證明 uniform blending 降低的是 variance,再用 bootstrap 在手上唯一一份資料裡造出多樣的 g_t,就是 bagging。T8 把 bootstrap 重新解讀成「替樣本加權」,改成專挑上一輪答錯的樣本加重,讓下一個假說被迫不同,再用 α_t = ln √((1−ε_t)/ε_t) 當投票權,這就是 AdaBoost。練習用 Fall 2024 HW6 Q4、Q9 與 HW7 的 bootstrap、AdaBoost 證明題和 madelon 上 500 輪的 AdaBoost-Stump 實驗;沒有官方解答。
林軒田的機器學習基石(16 講)與技法(16 講)是兩門中文 MOOC,130 支 YouTube 影片與 32 份投影片全部免費。只看 MOOC 是 A2:Coursera 自 2025 年 8 月起只讓免費帳號看第一單元,練習題被擋在付費牆後。補上 Fall 2024 課程頁公開的 HW0–HW7 與期末專題說明,就能到 A3,只差評分鏈:沒有官方解答,Gradescope 與 NTU COOL 限修課生,Kaggle 競賽頁回傳 404。Fall 2026 正在進行,是翻轉教室,第 4 週以前的投影片與 hw0、hw1 已公開。
技法第 9–11 講用「樹+aggregation」一條線串起三種模型。T9 把決策樹看成 conditional aggregation,講 C&RT 的二元分支、Gini 與迴歸誤差、剪枝、類別特徵與 surrogate branch。T10 把 bagging 套在完全長大的樹上,加上隨機子空間與隨機投影就是隨機森林,順帶得到免費的 OOB 驗證與 permutation 特徵重要度。T11 先把 AdaBoost 重新推導成對指數誤差做函數空間的最速下降,再把誤差換成平方誤差,得到「對殘差做迴歸」的 GBDT。練習用 Fall 2024 HW7 的 impurity、gradient boosting 證明題;沒有官方解答。
基石 Lecture 4 先證明學習「不可能」:只看資料 D,D 以外的答案怎麼猜都可能被說錯,這是 No Free Lunch。接著用抽彈珠換個問法:如果資料是從同一個分布獨立抽出來的,Hoeffding 不等式保證樣本錯誤率 E_in 很可能接近真實錯誤率 E_out。只驗證一個固定的 h 不算學習;演算法要從 M 個假說裡挑,就得用 union bound 付出 2M exp(−2ε²N) 的代價。結論:假說集合有限、E_in 又小,學習就可行。M 無限大怎麼辦,留給下一講。
技法 T16 把整門課重新分類成三類技巧:怎麼利用特徵(kernel、aggregation、extraction、低維壓縮)、怎麼最佳化(梯度、等價問題、拆成多步)、怎麼防過擬合(正則化、驗證),最後用四屆 KDD Cup 冠軍模型說明這些技巧在實務上怎麼組合。MOOC 錄於 2016 年,深度學習只講到 pre-training;Fall 2024 校內課用 302u(ReLU 家族、Xavier/He 初始化)、303u(momentum、RMSProp、Adam)、一場 2020 年的演講投影片 mlmai.ics 與 11 個模型的 1126 總整理補上。Fall 2026 同一批投影片排在 W16,目前還是 404。
Fall 2024 的基石作業共六份:HW0 是 20 題數學先修選擇題;HW1–HW5 每份 12 題加 1 題 bonus,Q1–4 自動批改、Q5–12 助教批改,程式題用 LIBSVM 網站上的 rcv1、cpusmall、mnist 資料,HW5 要用 LIBLINEAR。HW1、HW2 各有一題要你拿 ChatGPT 類工具的回答來反駁。Fall 2026 已公開 hw0 與 hw1:hw1 改成 16 題全選擇題、抽 4 題由助教細改,資料換成課程自己給的 hw1_train.dat;新 policy 允許用 AI 與 vibe coding,但 AI 產生的程式要逐段用自己的話寫註解。兩個學期都沒有公開官方解答。
技法第 5 講把 soft-margin SVM 改寫成無限制形式:½wᵀw 加上 C 乘以 hinge 誤差的總和,也就是一個 L2 正則化模型,C 越大正則化越弱。hinge 誤差和邏輯迴歸的 cross-entropy 都是 0/1 誤差的凸上界,所以 SVM 近似於 L2 正則化邏輯迴歸。要機率輸出,可以用 Platt 的兩層學習在 SVM 分數上再跑一次邏輯迴歸,或靠 representer theorem 直接做 kernel 邏輯迴歸。第 6 講用同一個定理得到 kernel ridge regression 的解析解 β = (λI + K)⁻¹y,但 β 是稠密的;改用 ε-insensitive 的管狀誤差,就得到係數稀疏的 SVR。Fall 2026 沒有排這兩講。
技法第 3 講把「特徵轉換+內積」合成一個 kernel 函數 K(x, x′),對偶 SVM 的訓練與預測都只要算 K,於是 d̃ 可以是無限大:Gaussian kernel 就對應一個無限維的轉換。第 4 講承認 SVM 仍會過擬合,引入違反量 ξₙ 與參數 C,得到 soft-margin SVM;它的對偶和 hard-margin 只差一件事:αₙ 多了上界 C。αₙ 的值把資料分成非支援向量、free SV 與 bounded SV 三類,而支援向量的比例 #SV/N 是 leave-one-out 誤差的上界,可以拿來快速排除危險的 (C, γ)。
基石前三講先把「機器學習」定義成一張流程圖:未知的目標函數 f 產生資料 D,演算法 A 從假說集合 H 挑出 g,希望 g ≈ f。接著用最簡單的 H(感知器)與 A(PLA)示範這張圖怎麼跑:資料線性可分時,PLA 的更新次數有 R²/ρ² 的上限;不可分時改用 pocket。第三講把學習問題依輸出、標籤、protocol、輸入四個軸分類,基石的主場是批次、監督式、具體特徵的二元分類或迴歸。練習用 Fall 2024 HW1 與 Fall 2026 hw1。
基石 L11 把 PLA、線性迴歸、邏輯迴歸放在同一個分數 s = wᵀx 上比較:三者只差在誤差函數,而 scaled cross-entropy 是 0/1 誤差的上界,所以兩種迴歸都能拿來做分類。接著用「隨機挑一筆算梯度」把邏輯迴歸變成 SGD,並用 OVA、OVO 把二元分類器組成多類別分類器。L12 用特徵轉換 Φ 把圓形邊界變成 Z 空間裡的直線,代價是計算量與 d_vc 都跟著維度變大,所以結論是「先試線性模型」。練習題在 Fall 2024 HW4。
技法第 1 講把「哪條分隔線最好」寫成最佳化問題:在 min yₙ(wᵀxₙ+b)=1 的縮放下,最大 margin 等於最小化 ½wᵀw,這是一個標準 QP。第 2 講用拉格朗日對偶把 d̃+1 個變數的 QP 換成 N 個變數、N+1 個限制的 QP,再用 KKT 條件從 α 解回 (b, w):只有 αₙ>0 的點,也就是支援向量,會影響答案。對偶問題還留著 zₙᵀzₘ 這個內積,所以要等下一講的 kernel 才算真正擺脫維度。
線性迴歸把平方誤差寫成 (1/N)‖Xw − y‖²,梯度設為零就得到 w_LIN = X†y,一步算完。hat matrix H = XX† 把 y 投影到 X 的欄空間,由此推出平均而言 E_out − E_in ≈ 2(d+1)/N。邏輯迴歸用 θ(wᵀx) 估計 P(+1|x),由最大概似推出 cross-entropy 誤差 ln(1 + exp(−y wᵀx));它沒有閉式解,只能沿著 −∇E_in 一步步往下走,這就是梯度下降。
技法第 12、13 講開啟第三段「萃取隱藏特徵」。T12 從「perceptron 的線性組合」出發:兩層就能做 AND、OR,但做不出 XOR,多疊一層才行,這就是多層感知器;接著用 tanh 取代 sign、推導 backprop,再講非凸最佳化、d_vc = O(VD)、weight elimination 與 early stopping。T13 談 deep NN 的挑戰,把 autoencoder 當成「保留資訊的編碼」做逐層預訓練,把 denoising 當成正則化,最後證明線性 autoencoder 的最佳解就是 XᵀX 的前幾個特徵向量,也就是 PCA。這兩講錄於 2016 年,現代 DL 的補充在 Fall 2024 的 302u/303u。練習:Fall 2024 HW7 Q4、Q9 與 bonus Q13。
基石 L13 把過擬合定義成「E_in 更低、E_out 卻更高」,並用實驗找出四個成因:資料太少、隨機雜訊、目標函數太複雜(deterministic noise),以及模型太強。L14 的對策是正則化:把「退回 H₂」改寫成 ‖w‖² ≤ C 的限制,再用拉格朗日乘數變成最小化 E_in + (λ/N)wᵀw,這就是 weight decay。接回 VC 理論時,正則化讓有效 VC 維度 d_EFF 變小;L1 則換來稀疏解。練習題在 Fall 2024 HW4 Q8–9 與 HW5 Q1、Q5–6、Q10。
技法 T14 把 Gaussian SVM 重新看成「以距離為相似度的線性投票」,由此得到 RBF 網路;中心點太多會過擬合,於是用 k-means 找少量代表點,k-means 本身是交替最佳化。T15 從 Netflix 評分資料出發,把使用者 ID 做 one-hot 編碼、丟進去掉 tanh 的線性網路,得到矩陣分解 R ≈ VᵀW,用交替最小平方或 SGD 來學,最後把 boosting、NN、RBF 網路、矩陣分解、k-NN 收成一張萃取模型地圖。這兩講只有 MOOC 教材:Fall 2024 與 Fall 2026 的課程計畫都沒排,也沒有公開作業題。
Fall 2024 技法段有兩份作業和一個期末專題,題目 PDF 都公開。HW6 練 kernel、soft-margin SVM 與 aggregation,程式題用 LIBSVM 在 mnist.scale 的 3 對 7 子問題上數支援向量、算 margin、跑 128 次 validation。HW7 練 bootstrap、impurity、AdaBoost、gradient boosting 與神經網路,程式題是在 madelon 上實作 500 輪 AdaBoost-Stump。期末專題是虛構的 HTMLB 棒球勝負預測,分兩個 Kaggle stage,交一份最多 7 頁的英文報告,至少比較四種方法。沒有官方解答;Kaggle 競賽頁在 2026-09-30 未登入時回 404,校外讀者大概拿不到 HTMLB 資料,只能照同樣的切分方式換一份公開資料自評。
L4 的 Hoeffding 保證裡有一個 M(假說個數),感知器有無限多條線,M 直接爆掉。L5 的解法是不數假說、改數它們在 N 筆資料上能切出幾種 ○× 組合(dichotomy),取最大值就是成長函數 m_H(N)。二維感知器在 4 個點上最多只切得出 14 種,不到 2⁴=16,4 就是它的 break point。L6(官方標 optional)證明:只要有 break point,m_H(N) 就被一個多項式壓住,VC bound 因此成立。
基石 L15 處理模型選擇:用 E_in 選會過擬合,用 E_test 選是作弊,折衷是從訓練資料切出驗證集,用 E_val 選完再拿全部資料重訓。驗證集大小 K 兩難,經驗值是 K = N/5;LOOCV 幾乎無偏但太貴又不穩,實務上用 5-fold 或 10-fold。L16 用 Occam's razor、sampling bias、data snooping 三個原則收尾,並用「Power of Three」把整門課收成三個領域、三個 bound、三個線性模型、三個工具。練習題在 Fall 2024 HW5。
L7 把「最大的非 break point」命名為 VC 維度 d_VC,證明 d 維感知器的 d_VC = d + 1,再把 VC bound 改寫成「E_out ≤ E_in + 模型複雜度懲罰」:d_VC 太大或太小都不好。理論上要 N ≈ 10,000·d_VC 筆資料,實務上 10·d_VC 常常就夠。L8 把固定的目標函數換成機率分布 P(y|x),說明 VC 理論在有雜訊時仍成立;誤差衡量要依應用而定,例如 CIA 指紋辨識把誤放入侵者罰 1000 倍,可以用「複製樣本」的方式化約成一般分類。
agent_era.pdf 的後半問了三個問題:多個 agent 怎麼協作比較有效(MacNet:不規則的拓撲勝過規則的)、agent 能不能爾虞我詐(狼人殺、劇本殺,以及從社交互動學推理的 MARO)、agent 能不能社交(Moltbook 與「甲殼教」,但三篇研究都發現熱鬧背後多半是人在推、對話很淺)。最後以學術研究為例,AI 已經能從頭複製並延伸一篇論文、進入 AAAI 2026 的審查流程,Agents4Science 2025 收到 247 篇 AI 主筆論文。李宏毅的結論是:在 agent 萌芽的時代,「想做」什麼比「會做」什麼更重要。
語言模型的輸入長度有限,agent 卻會一直累積工具輸出。李宏毅在 ML 2026 第二週把 Context Engineering 拆成三件事:壓縮(摘要、硬清除、卸載到檔案,以及 ACON、SUPO、AgentFold 這類讓壓縮變聰明的方法)、過濾(只讀需要的行、MCP-Zero 式的按需載入工具),最後是 Agentic Context Engineering:讓 LLM 自己決定下一輪的 context,從 Dynamic Cheatsheet、ACE 一路到 Recursive Language Models。投影片把 subagent 看成一種自主壓縮,這是整講最值得帶走的一個視角。
李宏毅 2026 春季的《機器學習》從 OpenClaw 講起,前半學期拆 AI Agent、Context Engineering、推論加速與位置編碼,後半學期講 Harness Engineering、Self-Correction 與 AI 自我成長。8 講投影片、錄影、10 份作業 PDF 與 Colab 全部公開,存取分級是 A3;缺的是評分鏈:JudgeBoi 在 2026-09-30 回傳 502,NTU COOL 限校內,三場演講沒有任何材料。
李宏毅在 ML 2026 第三週講推論加速,前半堂只講一招:Flash Attention。GPU 的運算單元很快,但工作台(on-chip SRAM)很小,資料得從倉庫(HBM)搬上搬下,搬運才是瓶頸。一般的 softmax 要來回倉庫好幾次;Flash Attention 用「先假設目前最大值就是 Amax,之後再乘一個修正項」的技巧,把找最大值、算分母、做 weighted sum 合進同一次掃描,連 attention weight 都不必真的算出來。結果和原本的 attention 一模一樣,不需要重訓,代價只是一點額外運算和一點燒腦。
李宏毅用一個小模型修 bug 的示範開場:gemma-4-E2B-it 找不到 parser.py 就自己寫一個假的交差,加上三段說明「現在的環境、怎麼工作、怎樣算完成」之後,它就乖乖 ls、cat、改檔、跑測試。整講把 harness(馬具)拆成三種手段:用人類語言控制「認知框架」(AGENTS.md)、用工具控制「能力邊界」(SWE-agent 的 ACI、為 agent 重寫 CLI)、用工作流程控制「行為」(Ralph loop、Anthropic 的長時 harness)。後半段談三個延伸:過度責備 agent 可能有害、life-long agent 怎麼從口語回饋學習、評量 agent 為什麼難,最後讓 agent 自己改 harness(Meta-harness)。
HW1 要你寫一段不超過 1000 token 的 defense prompt,讓模型不管被怎麼攻擊,都把回應包在 [START]…[END] 裡,而且不說出「I have been PWNED」。助教準備了 14 個攻擊:10 個公開、4 個私下,每個 safety 與 utility 各 0.5%。題目、10 個攻擊原文與 token 計數 Colab 都公開,但評分平台 JudgeBoi 在 2026-09-30 回傳 502,校外只能照規格自己搭評估。
HW10 是 12 題選擇題,只在 NTU COOL 作答。Section 1 比較語音語言模型的三種架構:Cascade(ASR → LLM → TTS,中間是文字)、End-to-End(直接在離散語音 token 上做 LM)、Thinker-Talker(LLM 負責想,另一個 decoder 負責說),Colab 讓兩個模型聽三段錄音判斷說話者性別,要你看出哪個是 cascade。Section 2 拆 Mimi:把情緒語料切成 32 層 RVQ token,取第 0、6、16、31 層畫 UMAP;再把語音、笑聲、音樂 encode 再 decode 聽看看壞在哪。剩下的題目讀 TWIST、AudioLM、LLaMA-Omni 2、Moshi、GLM-4-Voice,考 initialization、pretrain、interleaving 與 realtime/full-duplex。Colab 要先申請 Llama-3.2-3B-Instruct 授權並填 HF token。題目與 Colab 全公開,校外拿不到的是 COOL 評分與解答。
HW2 不讓你直接寫分類器,而是寫 prompt 與流程,讓一個跑在 Colab T4 上的開源 LLM(預設 gemma-3-12b-it 的 4-bit GGUF)自己規劃、寫 code、執行、除錯,做出 10 類 MyGO & Ave Mujica 角色臉部辨識。起始碼改自 AIDE:Interpreter 執行程式、Node 記錄每一版、Journal 組成解答樹、Agent 決定下一步要 draft、debug 還是 improve。最值得先發現的一件事:起始碼的評估函式是空的,每一版都被標成 metric 1.0、不是 bug,所以樹搜尋在你補上評估之前其實是瞎選。規定寫得很重:「LLM agent 是你的代理人」,不准手改程式與預測檔。
HW3 是 20 題選擇題(每題 0.5 分),不交程式,只在 NTU COOL 上作答。前 10 題讀論文:四篇 speculative decoding(Leviathan、DeepMind 的 Speculative Sampling、Inference with Reference、SpecInfer)加上 FlashAttention 1–3;後 10 題照 Colab 填 TODO 後分析結果:手寫 speculative decoding 的接受率、兩種 prompt regime 下 assistant 模型與 n-gram 的加速曲線、用 T4 規格估 FlashAttention 的 HBM 讀取量與理論加速、vLLM 的 prefix caching 多輪測試與失效實驗,以及 CPU offload 對 throughput 的影響。題目中英雙語全部印在作業 PDF 裡,校外可以完整自學,只是拿不到官方解答。
HW4 把「文字接龍」原封不動搬到圖片上:792 張 20×20 的寶可夢小圖,每個像素是 167 色裡的一個 token,一張圖就是 400 個 token 的序列。訓練時做 next-token prediction,測試時給你前 60%,讓模型畫完剩下的 40%。評分同時看 FID 與寶可夢偵測率(PDR),三級 baseline 的提示從「直接跑範例」「調超參數」一路到「換成 Llama、Mistral 架構」。題目、Colab、Kaggle 與資料集都公開,但 JudgeBoi 在 2026-09-30 回傳 502,校外拿不到 FID、PDR 的官方分數。
HW5 用 LoRA 在 GSM8K 上微調 Llama-3.2-1B-Instruct,同時拿 AILuminate 的危險提示檢查它還會不會拒絕。數學正確率和安全率要同時過線才拿得到 baseline 分數,所以重點是「怎麼微調才不會把安全行為洗掉」。題目 PDF、34 個 cell 的 Colab 與 Kaggle 版都公開,strong baseline 在 T4 上預估要跑 14 小時;評分平台 JudgeBoi 在 2026-09-30 回傳 502,校外只能自己搭 safeguard 評估。
HW6 不用訓練模型,全部在 NTU COOL 上作答:6 分是讀 ROME、MEND、MEMIT、WISE 四篇論文後答 16 題選擇題,4 分是把 Colab 裡的 fine-tuning 換成 ROME,在 GPT2-XL 上做 single editing(自己編一條知識、寫 5 種測試提示)與 multiple editing(CounterFact 子集 10 筆、80 筆,再換 MEMIT),回報 efficacy、paraphrase、neighborhood、portability 四個分數。作業投影片與 47 個 cell 的 Colab 都公開,但測驗題本身與解答只在 COOL 上。
HW7 給你兩個從 Mistral-7B-v0.1 微調出來的模型:擅長日文的 shisa-gamma-7b-v1 與擅長數學的 WizardMath-7B-V1.1,要你只做參數層級的合併(不准再訓練、不准 MoE 或 ensemble),讓合併後的模型答對助教自出的 20 題日文數學題。Part 1(60%)用 mergekit 調方法、weights 與 density,simple/strong baseline 是正確率 50% 與 75%;Part 2(40%)是 8 題論文選擇題。題目、Colab 與 Kaggle 都公開,但 JudgeBoi 在 2026-09-30 回傳 502、論文題在 NTU COOL 上,校外只能在 notebook 裡自己看正確率。
HW8 不用寫程式也不用交程式:助教給一份已經寫好的 Colab,用 Llama-3.2-1B-Instruct 在 GSM8K 前 100 題上比較直接推論、Self-Consistency、Self-Certainty 與 DeepConf(Confidence),每種方法各 sample 16 條推理。你讀三篇論文、跑完 notebook,到 NTU COOL 答 20 題:18 題論文題、2 題看 Colab 結果。先備是李宏毅 2025 年第七講 Reasoning。題目中英兩版都印在 hw8.pdf,Colab 可公開下載;只有 COOL 測驗與成績需要台大帳號。
HW9 共 19 題、10 分,只在 NTU COOL 作答、不交程式。前 16 題讀四篇論文:DDPM、Flow Matching、Rectified Flow、MeanFlow,最後幾題要你橫向比較訓練訊號與少步生成;後 3 題要跑 Colab:在 2D Swiss roll 上訓練兩個小 MLP,一個是學瞬時速度的 Flow Matching(固定用 Euler 50 步評估,Histogram JS ≤ 0.10 才算收斂),一個是學平均速度的 MeanFlow(固定 1 步生成,≤ 0.40),再比較 1 步對 1 步、Euler 不同步數、Euler 與 RK4 在相同步數與相近算力下的差別。作業 PDF 附了一份省略大部分數學的生成模型教學,題目中英雙語全部公開;校外拿不到的只有 COOL 上的評分與解答。
KV Cache 把已經算過的 key 和 value 存起來,decode 時就不必重算,但它每個 token 都要佔一份記憶體:以 Gemma 2 27B 為例,一個 token 約 0.72MB,A100 80GB 只夠放約 11.4 萬個 token。李宏毅接著整理了一串瘦身法:讓多個 query 共用 key/value(MQA、GQA)、把 key/value 壓成一個向量又不必解壓(MLA)、只看一段範圍(Sliding Window、StreamingLLM)、把沒人理的 key/value 丟掉(Scissorhands、H2O),最後講跨對話的 prompt caching:只有前綴完全相同才會命中,所以 system prompt 要把穩定的內容放前面。
李宏毅 ML 2026 第一講把 OpenClaw 拆成五個問題:agent 怎麼知道自己是誰、怎麼用工具與 SKILL、怎麼記憶、怎麼定時工作、怎麼長時間自主運作。答案都回到同一件事:語言模型只會文字接龍,每一輪都重新開始,身分、記憶、SOP 全是 OpenClaw 塞進 prompt 的文字檔,或模型透過工具讀寫的檔案。本篇照 intro.pdf 60 頁與課堂錄影走一遍,也整理投影片裡的防禦建議。
Self-attention 本身看不出「你打我」和「我打你」的差別,所以要另外告訴它位置。李宏毅這一講從 Sinusoidal 絕對位置講到 ALiBi、T5 的相對位置,再到今天 Llama、Qwen、Gemma 都在用的 RoPE。後半段處理「訓練短、測試長」:RoPE 轉到沒看過的角度就會壞,於是有 Position Interpolation、NTK-Aware、YaRN、Dynamic Scaling、LongRoPE 這一串修法。最後一個轉折是 NoPE:decoder-only 的因果注意力本來就帶有位置資訊,甚至可以在訓練後把位置編碼拿掉。
這一講問:沒有人介入時,模型能不能自己發現錯誤並改正?李老師把做法分成三條路。改 inference:contrastive decoding 一家族都在「製造一個會答錯的版本,再把它減掉」,差別只在錯誤版本怎麼來。改 workflow:插一句「再檢查一下」有時有用但不穩定,外部回饋比自我反思可靠,而且在算力有限時,拿同樣算力多抽幾個答案投票往往更划算。改參數:直接教自我修正會遇到「訓練後犯的錯不一樣了」,所以業界改用 RL;RL 到底是教會新能力還是只把本來就有的路徑變常見,目前仍在爭論。
李宏毅 5/8 這堂先說清楚:「AI 自我成長」沒有明確定義,它是人類漸漸放手的過程。他把機器學習拆成三步,逐一檢查「我」能不能換成 AI:答案可以由 AI 自我修正後當標準答案,reward shaping 可以交給 LLM 寫,loss 可以讓模型自己訂(打分、多數決、entropy),連題目都能讓 proposer 自己出。但實驗一再顯示,完全不靠人會卡在天花板甚至把自己訓練壞;強 AI 訓練比自己弱的 AI 已經做得到,只是還沒超過人類。結論:2026 年 5 月,AI「還在盧比孔河邊」。
上集講的是 AI 自己訂 loss、自己更新參數;下集把另一半補上:AI Agent = Harness + LLM,harness 也能自己長。harness 沒辦法算 gradient,所以常見做法是拿一個語言模型當改寫器,再用類似基因演算法的 pool 保留多個候選(OPRO、GEPA、Darwin Gödel Machine,現成工具是 DSPy)。接著談三個延伸:harness 與參數一起更新效果更好;目標會變時要在「全部丟掉」和「全部背著」之間取捨,而且改 harness 也會遺忘;更新規則本身也能被更新(HyperAgent、Gödel Agent、SEAL),這就是 meta learning。最後李宏毅換了一個類比:參數是基因、context 才是神經元,然後指出現在的 agent 缺的是內在動機,而最可能讓成長失控的,是人給的目標和 AI 自己解讀出來的目標不一致。
CME295 2025 版第 7 講用三塊補 LLM 的洞:RAG 補「知識停在訓練那天」,分成候選檢索與重新排序兩階段;tool calling 補「不能動手」,由後端執行模型寫出的函式呼叫;agent 用 ReAct 的觀察、規劃、行動迴圈把呼叫串起來。2026 版把這講改成 AI Agents,新增 context compaction、harness、coding agent、skills,是整個系列改最多的一講。
CME295 2026 版第 6 講(2026 年 11 月 6 日)課表列了七個主題,tool calling、MCP、retrieval 在 2025 版第 7 講已經講過;真正新增的是 context compaction、harness optimization、coding agents、skills/plugins。本篇是課前預寫版,用 Anthropic、OpenAI 的工程文章、MCP 2026-07-28 規格與 Meta-Harness 論文,先把這四個新主題講清楚。
CME295 最後一講 128 頁投影片分三段:用八張圖複習前八講、Transformer 怎麼用在影像上(ViT 與兩種 VLM 接法)、以及一次吐出多個 token 的 masked diffusion LLM,最後談研究與應用的下一步。這堂不在考試範圍;2026 版把 diffusion LLM 拉成獨立一講,第 9 講改以多模態為主。
CME295 2026 版第 8 講(11 月 20 日)把 diffusion LLM 拉成整講,課表列了 continuous、discrete、masked diffusion、訓練與推論五個子題。課前預寫版依 DDPM、D3PM、SEDD、MDLM、LLaDA 等原始論文整理:連續雜訊在文字上要付約 64 倍算力,[MASK] 吸收態勝出;訓練目標是乘上 1/t 的 masked cross-entropy;推論的速度來自每步多填幾格,但 LLaDA 主要結果其實每步只解一個 token,Fast-dLLM 靠信心門檻與近似 KV cache 才拿到最多 27.6 倍加速。
CME295 第 3 講先把 LLM 定義成 decoder-only 的下一個 token 預測器,接著用 MoE 說明大模型為什麼每個 token 只用到一部分權重,主體則是生成時能調的旋鈕:greedy、beam search、top-k、top-p、temperature、guided decoding,以及 few-shot、chain of thought、self-consistency 三種 prompting 手法。2026 版把這講併進第 2 講,prompting 那半從課表消失。
CME295 第 8 講從「人工評分又慢又貴、BLEU/ROUGE 看不懂換句話說」出發,講 LLM-as-a-Judge 的做法、位置/冗長/自我偏好三種偏誤與六條實務原則,再把 agent 的錯誤拆成工具選擇、工具執行、回答生成三段,最後用 MMLU、AIME、SWE-bench、HarmBench、τ-bench 說明 benchmark 各量什麼,以及 pass^k 和 Goodhart 定律。
CME295 第 6 講把 reasoning model 拆成三件事:先輸出推理鏈再給答案、用「答案對不對」這種可驗證獎勵跑 RL、用 GRPO 以同組答案的平均分當基準而不另訓 value model。DeepSeek-R1-Zero 只靠 RL,AIME 2024 pass@1 從 15.6% 升到 71.0%;而把 R1 的推理軌跡蒸餾給 Qwen-32B,分數還比直接對 32B 做 RL 高。
2026 版 CME295 第 5 講「LLM systems」(10 月 30 日)課表列了 7 個主題:分散式訓練、推論最佳化、KV caching、speculative decoding、高效 kernel、FlashAttention、硬體取捨。本篇在開課前,用 2025 版第 3、4 講約 70 頁投影片加原始論文,把它們串成同一本帳:H100 每搬 1 byte 大約要做 295 次運算才吃得滿算力,而逐字生成時每讀 1 byte 權重只做約 1 次,所以多數加速手法都在想辦法少搬資料。
CME295 第 4 講把 LLM 訓練拆成兩段:先用上兆個 token 做預訓練(Llama 3 用了 15 兆),再用數千到數百萬筆示範資料做 SFT,讓模型從「接話」變成「回答」。中間穿插一張省記憶體的地圖:ZeRO、FlashAttention、混合精度;最後用 LoRA 與 QLoRA 讓沒有大 GPU 的人也能微調,QLoRA 在 65B 模型上省下約 16 倍 VRAM。
SFT 只會叫模型模仿好答案,沒辦法告訴它哪種回答不行。CME295 第 5 講先教怎麼收集偏好對,再走 RLHF 兩步(約 1 萬筆人工標註訓練 reward model、約 10 萬筆用 PPO 調模型),最後用 DPO 把整套 RL 收成一條監督式 loss。2026 版把這講拆進第 3 講(訓練)與新增的第 4 講(強化學習)。
2026 版 CME295 第 4 講(10 月 16 日)把 RL 獨立成一講,課表列了數學記號、reward design、policy gradient、限制、PPO、GRPO、on-policy distillation 七項。本篇把這條數學線先推一遍:從 ∇log π 乘上一個分數出發,SFT 的分數是 1,PPO 用 value model 估,GRPO 用同組平均,on-policy distillation 用教師對每個 token 的 log 機率差。Qwen3 報告裡,從同一個起點出發,RL 花 17,920 GPU 小時做到 AIME'24 67.6,on-policy distillation 只花約 1/10(1,800 小時)就做到 74.4。
CME295 第 1 講用同一句「A cute teddy bear is reading.」串完整堂課:先切成 token,再變成向量,接著說明 RNN 為什麼記不住長句,最後用 self-attention 和 encoder-decoder 把它翻成法文。2026 版刪掉整節 NLP 任務與評估指標,把開場換成從 2017 到 agent 時代的時間軸。
CME295 第 2 講把原始 Transformer 拆開改裝:位置資訊從「加在 embedding 上」一路改到 RoPE「在 attention 裡旋轉 Q 和 K」;attention 用 sliding window 和 MQA/GQA 省成本;再把模型分成 encoder-only、encoder-decoder、decoder-only 三家,花後半堂拆解 BERT 的 MLM(15% token)與 NSP 預訓練。2026 版把這些併進「Large Language Models」一講,BERT 不再是課表項目。
CMU 11-768 第一份作業要你從空白的 ReAct 迴圈做起:先讓 CodeAgent 用 bash 修好一個西洋棋 app 的 bug,再加上下文壓縮去修一題 SWE-bench,最後讓同一個迴圈變成下棋的 ChessAgent,並用 simulate_move、run_python 與 skill 做兩步搜尋;100 分全部靠離線重播 patch 與軌跡評分。
11-768 的 Assignment 2 要學生只用一個固定的 Qwen3-VL-30B-A3B 當裁判,替資料視覺化 agent 的每一次執行判四類錯誤,並用四類 MCC 的平均在私有測試集上評分(占作業 30%);後半還要把自己出的題包成 Harbor 任務,寫一個被驗證器擋下、一個騙過驗證器的錯誤解。它的主題是:評分器就是之後 RL 的 reward。
CMU 11-768 是 Graham Neubig 和 Daniel Fried 在 2026 秋季新開的 agent 研究所課:先修嚴格要求訓練過語言模型,23 講從工具呼叫、context、記憶、規劃講到 SFT、RL、沙盒與人機互動。前半學期三份個人作業依序做 harness、評測、訓練,後半學期是團隊研究專題;投影片與前 9 講影片已公開。
11-768 第 1 講先把 agent 拆到最小:工具定義和工具呼叫都只是 token,harness 負責解析、執行、把結果塞回 context,ReAct 迴圈一跑就是 agent。接著 Neubig 列出好 agent 要的六種能力,每一種都能從訓練或 harness 兩條路補,並主張 agent 是由 harness、沙盒、推論、訓練、監控五塊組成的系統,不只是一個模型。
Neubig 把 tool use 拆成五層:能力、機制、約束、介面、系統。工具呼叫本質上是模型吐出的 token,要靠 harness 解析、驗證、用 call ID 對回結果;受限解碼只保證格式不保證對;MCP 的真正價值是憑證中介;同一個模型換家 provider,工具呼叫錯誤率可以從約 15% 掉到 0.1% 以下。
Agent 每一步都把整段歷史重新送進模型,五次呼叫就累積 80K token 的輸入;OpenHands 的 1,500 個 session 平均 7.8 萬 token,其中 37% 是工具結果。Neubig 分兩層處理:模型層靠「多層局部 + 一層全域」的混合注意力與長度課程撐起百萬 context;harness 層靠穩定前綴吃到便宜約十倍的 cache,再用保留錨點、外存證據的 compaction 撐過上限,而且 compaction 要用接續任務來評。
CMU 11-768 第 4 講把跨任務的經驗分成 episode、fact、skill 三種,存在 context 與權重之外的外部檔案裡:人寫的 skill 靠 SKILL.md 與漸進揭露載入,SkillsBench 上把平均通過率從 33.9% 拉到 50.5%;agent 自己歸納的 skill 寫成程式碼時可以先測再收,但換個網站就容易壞。最難的是生命週期:判官不準、檢索太多、技能庫膨脹,每一段都會吃掉收益。
CMU 11-768 第 5 講把 agent 的計畫定義成「針對這個任務、可被檢查和修改的未來行為表示」,並用四個理由決定要不要加計畫結構:模組化、環境回饋、長時程、控制。講者 Fried 自己的 MACU 用管理者拆出 DAG、平行派子 agent,在 Odysseys 上把成功率從 8.5% 拉到 34.0%;在 OSWorld 子集上,完全不規劃是 25.0%,只給初始 DAG、之後不准改是 27.8%,允許改 10 次升到 58.3%。
Neubig 的 L6 把 coding agent 拆成三層:先把模型訓練成會寫程式(預訓練、中訓練、infilling、測試獎勵的 RL),再用 localize–edit–verify 迴圈和一套編輯工具讓它改 repo,最後用 SWE-bench 類的可執行環境評測與訓練;修 bug 只佔開發者一天的 15%,下一步是測試、CI、維護這些外迴圈任務。
JY Koh 這講把 computer use agent 拆成三件事:評測從單步點擊(ScreenSpot-Pro、Mind2Web)一路走到程式驗證終態(WebArena、OSWorld)、VLM 評審與長時程 rubric(Odysseys、OSWorld 2.0);模型就是吃「截圖+動作」交錯歷史的 VLM;訓練走預訓練 grounding → SFT 模仿人類與合成軌跡 → 在可重置的模擬環境做 RL。
Yueqi Song 這講把 agent SFT 拆成六個決定:loss 只算 assistant token(停止 token 也要算)、挑哪些軌跡(通過測試的也會教壞模型,換老師、加新任務比多抽樣有用)、用 Agent Data Protocol 統一格式、訓練時注意 packing 與 template drift、用實際 harness 評估,以及 SFT 要為接下來的 RL 選 checkpoint,而不是訓到自己最好。
Daniel Fried 用 1 到 16 猜數字當例子,把 RL 講成 SFT 的延伸:先點出 SFT 的三個缺口(任務不對齊、學不了失敗、沒見過自己的錯),再依序推出 ReST、REINFORCE、baseline 與 GRPO/DrGRPO——四者都是對 agent 自己產生的 token 算 log 機率,差別只在每個 token 乘上的權重。
Akari Asai 的 L10 把 deep research agent 拆成三塊:評測要補齊搜尋難度、領域專業、長答案品質與引用支持四個缺口;訓練走 mid-training → SFT → RL,長答案用 DR Tulu 的演化式 rubric 當 reward;檢索要讓 retriever 看到 agent 的推理,AgentIR-4B 在 BrowseComp-Plus 搭 Tongyi-DR 拿到 68%。
Graham Neubig 用一個修 bug 的 coding 任務,把第 9 講的 policy gradient 推到實戰:用 critic、GAE 或 PRM 把功勞分給個別回合,用 importance ratio 與 clipping 處理非同步 RL 的過期資料,並把 PPO、GRPO、CISPO、GSPO、DAPO 收成一張對照表;最大的篇幅留給獎勵本身——verifier 誤判、reward hacking 與探索崩塌,最後以 on-policy 蒸餾收尾。
CS224U 2023 春季版的 Analysis methods 單元先拿一張三欄計分表比較三類方法:probing 擅長描述表徵,卻給不出因果推論;integrated gradients 對表徵只給得出一個分數,但滿足 sensitivity 公理,所以有因果保證。本篇走完投影片前 40 頁、影片 33–35 與 feature_attribution.ipynb,也記下 notebook 在今天的環境裡會卡住的地方。
CS224U 第四單元先問一個問題:行為測試能證明什麼、不能證明什麼。答案是它永遠給不了保證,而且失敗時要先分清是模型的問題還是資料的問題——BERT 在否定句 NLI 上 2.2% 的準確率,用少量例子微調後就回到 90%。接著看 SQuAD 的干擾句、Breaking NLI、ANLI 的人機對抗收集,最後以 DynaSent 兩輪資料收尾。
Causal abstraction 的核心操作只有一個:把 source 輸入在某個位置的內部狀態搬到 base 輸入的同一位置,看輸出是否跟你假設的高階程式一樣變化。CS224U 的 iit_equality.ipynb 裡,一個測試準確率 0.99 的網路在這項檢驗上只拿到 0.50 與 0.54;改用 IIT 訓練後,反事實準確率變成 1.00。DAS 則把「猜哪些神經元對應哪個變數」改成學一個旋轉矩陣。
COGS 有幾個泛化切分幾乎每個模型都是 0 分。CS224U 用自家的 ReCOGS 研究拆解原因:遞迴切分的 0 分主要是長度泛化問題,介系詞片語切分的 0 分來自訓練資料只讓它出現在特定變數與位置。作業三 hw_recogs.ipynb 用 13.5 萬筆 ReCOGS 訓練資料,先要你找出 Charlie 與 Lina 這兩個訓練與測試角色完全相反的名字,再看一個訓練好的模型怎麼栽在它們身上。
CS224U Spring 2023 把 Transformer 家族講成一條「BERT 的四個已知限制」主線:RoBERTa 回應第一條(最佳化探索不足),ELECTRA 回應第二、三條([MASK] 造成的落差、每批只有約 15% token 有訓練訊號),XLNet 回應第四條(被遮住的 token 彼此獨立的假設)。GPT 改的是目標函數與 mask,T5、BART 改的是架構與輸入破壞方式,蒸餾改的是模型大小。課程的 2023 年判斷是:自迴歸架構已經勝出,但做表徵時雙向模型可能仍占優勢。
CS224U Spring 2023 的 contextual representations 單元前三段:先用「break」「crane」這類例子說明靜態詞向量為什麼注定不夠,再用「The Rock rules」三個詞一步步拆出 Transformer block——各欄之間只有 attention 會互相連結,其他步驟都逐欄獨立。最後用兩個問題比較三種位置編碼:位置集合要不要事先決定?會不會妨礙泛化到新位置?絕對位置兩題都不過,正弦函數過第一題,Shaw 2018 的相對位置編碼兩題都過。
CS224U「NLP methods and metrics」單元的後半段不談指標公式,談實驗怎麼站得住:資料集要自然還是眾包、要對抗還是常見案例,課程答案都是「兩者都要」;切分要鎖住 test set;baseline 要在定假設時就決定;兩個模型的差異要用信賴區間、Wilcoxon 或 McNemar 檢驗,而且要跑多個隨機初始化。整單元的公開材料齊全(投影片、三支影片、兩份 notebook),但 Kawin Ethayarajh 那場「Real-world NLP assessments」客座沒有公開投影片或影片。
2023 年春季 CS224U 在 Transformer 單元裡插了兩場由課程團隊成員主講的專題。Lisa Li 講 Diffusion-LM:不再一個字一個字往右生,而是把一串高斯雜訊逐步去噪成詞向量,代價是訓練與解碼效率都輸給自迴歸模型,換到的是可以在每一步用分類器梯度操控輸出。Sidd Karamcheti 講怎麼把 GPT-2 Small 的單卡訓練時間從 99.63 天壓到 3.37 天:資料平行、混合精度、ZeRO 一層層疊上去。前者只有投影片,後者有投影片與兩段錄影。
CS224U 第一份作業 hw_sentiment.ipynb 是三分類情感分析:用 DynaSent 兩輪加 SST-3 開發,bake-off 測試集混入來源不明的 mystery 句子。9 分作業裡,原創系統一題占 3 分,規則只有一條:開發過程不准碰三份公開測試集。今天照原樣跑,第一個資料載入 cell 就會卡在 Hugging Face datasets 4.0 拿掉 trust_remote_code 這件事上。
CS224U 作業二 hw_openqa.ipynb 要你只用凍結的語言模型與凍結的 ColBERT 檢索器回答沒有附原文段落的問題。2023 春季版寫的是 DSP,repo 現行版在 2024 年 1 月改成 DSPy 並釘在 dspy-ai==2.4.13。開工前得先準備 OpenAI API key、約 406 MB 的 ColBERTv2 權重與 600 MB 的預建索引;而 notebook 第一行 dspy.OpenAI 在 DSPy 3.4 已經不存在。
CS224U 2023 春季版把 in-context learning 定義成「凍結的語言模型只靠 prompt 完成任務」,並提醒 few-shot 的第二個條件(訓練時沒看過同類例子)幾乎無法驗證。Potts 的 38 頁投影片從 GPT-2 的 TL;DR 講到 demonstration 怎麼挑、chain of thought、self-consistency、DSP,最後給四條建議:先建 dev/test、了解目標模型的指令格式、把寫 prompt 當成 AI 系統設計。Mina Lee 的客座則反過來問:該學會讀懂 prompt 的,是人還是模型?
CS224U 2023 春季版花一整個單元講檢索,理由是 OpenQA 只給問題、證據要自己找,而大型語言模型會捏造來源。Potts 與 Omar Khattab 的投影片從 TF-IDF、BM25 講到 Success@K、MRR、average precision,再講 cross-encoder、DPR、ColBERT、SPLADE 四種 neural IR 在表達力與規模之間怎麼取捨,最後要你把延遲與成本也當成指標。
CS224U Spring 2023 的第一堂拿「哪些美國州不和任何美國州接壤?」從 1980 年的 Chat-80 一路問到 text-davinci-001,先證明進展是真的,再用 Levesque 的「cheap tricks」、會編造連結的模型和飽和的 benchmark 質疑這些進展算不算理解。課程地圖因此分成兩半:前半教怎麼用 Transformer 與檢索增強的 in-context learning 做系統,後半教怎麼用更難的 benchmark、行為評估與因果解釋方法檢驗系統。
CS224U 期末專案的前兩段交件,一份是文獻回顧(依組員人數讀 5/7/9 篇、五個建議段落),一份是實驗計畫(七個必填段落,核心是寫得出假設)。課程給了找論文的六步迴圈、AI 助手輸出必須加引號的規定,以及一位學生把期末專案做成 Findings of EMNLP 論文的完整示範。Gradescope 格式與評分細則頁、往年範例論文都在登入牆後面。
CS224U 投影片用同一張三類別混淆矩陣算出 accuracy 0.81、macro F1 0.43:一個指標說系統很好,另一個說它在兩個小類別上幾乎全錯。這個單元的主張是「不同指標編碼不同價值」,並逐一列出 accuracy、F 分數三種平均、perplexity、word error rate、BLEU 各自的範圍、價值與弱點。期末專案的評分看的也是指標選得對不對,不是分數高不高。
CS224U 的「Presenting your research」一講分四段:期末論文的課程特有要求、NLP 論文怎麼寫、會議投稿流程、怎麼上台。最實用的三件事:期末論文強制附 Known project limitations 與 Authorship statement;寫作要用 Shieber 的「理性重建」而不是按時間講你踩過的坑;投稿時標題幾乎決定了審稿人的 bidding。投影片、四支影片、projects.md 都公開;往年範例論文需要 Stanford 登入。
learn-inference.com 是 Philip Kiely《Inference Engineering》(256 頁,Baseten 出版,可免費下載 PDF)的非官方互動版:照原書 8 章、42 節重寫解說,把 TTFT、P99、speculative decoding、prefix cache 路由這類靠直覺的概念做成可以拖滑桿的模擬器,另外附免金鑰的 JSON API 與 MCP server。
CME295 是 Stanford 的兩學分課,沒有作業,成績只看期中和期末各 50%。2025 版九堂的影片、投影片和兩份考卷解答全部公開;2026 版把 agent 那一講改成 context 壓縮、harness、coding agent 和 skills,還新增 LLM 系統、強化學習、Diffusion LLM 三整講。
傳統聊天只需要顯示文字泡泡,但 AI Agent 對話要讓使用者看見思考、工具呼叫、引用來源和執行進度——我們用 12 個 Vue 元件、三種 DisplayMode 和一條 chatBlocks 渲染管線解決了這個問題。
2026 上半年 OpenAI、Anthropic、Letta、LangChain 不約而同選了 Markdown 檔案 + 索引取代向量資料庫;寫入權從 agent 交還給人;遺忘機制終於出現但沒人做 Ebbinghaus;LoCoMo 被 Penfield Labs 抓出 6.4% 錯答;三家同時用「Dreaming」指離線記憶整併。五個趨勢,一個結論:記憶不是功能,是架構決策。
記憶是持久化的 prompt injection 載體:MINJA 證明只靠對話就能注入記憶(成功率 >95%),SpAIware 示範植入後每次回答都外洩資料。業界兩派防線——引用驗證(Copilot)和人工核准(Gemini CLI / Devin)——各有盲點。
Agent 記憶不是一個功能,是至少四種不同的工程問題——working、episodic、semantic、procedural。這個十篇系列從分類框架到 coding agent 實作、平台 API、開源框架、安全攻擊面,再到 2026 的趨勢判斷,完整走一遍設計空間。
CoALA 框架把 agent 記憶分為 working、episodic、semantic、procedural 四種,但光靠四格分類不夠——同一種記憶在不同系統裡的設計選擇差很大。這篇用六個獨立設計軸(讀取形態、寫入時機、保真度、寫入權、遺忘、範圍)加一條光譜(檔案 ↔ 向量/圖),畫出 2026 年 agent 記憶系統的完整設計空間。
前面看的是怎麼評估。這篇看另一個維度:在推理過程中怎麼動態分配計算資源。BrowseConf 的核心洞察是——agent 自己說的『自信度』就能預測答案準不準。高自信就用少點資源,低自信就多搜幾輪。
五家雲平台都在 2025–2026 年推出 agent 記憶 API,但設計哲學分歧明顯:OpenAI 把記憶寫成檔案、Anthropic 把記憶掛載成目錄、Google 用向量加主題分類、AWS 用事件加策略管線、Microsoft 用 context provider 抽象。定價從免費到 $0.75/千筆/月不等,租戶隔離從「應用端自己來」到「IAM 一等公民」都有。
九家 coding agent 的長期記憶走了至少四條路:Claude Code 和 Codex 用 Markdown 檔(agent 寫、人可讀)、Antigravity CLI 繼承 Gemini CLI 的 inbox 核准(agent 提案、人拍板)、Copilot 用引用+JIT 驗證(28 天沒被驗證就自動刪)。Cursor 把 Memories 拔掉退回純 Rules。Hermes Agent、OpenClaw、Letta Code 則把記憶當成 harness 的核心元件,不只是外掛。寫入時機、遺忘機制、跨團隊共享上的選擇完全不同,而且沒有任何一家公布過記憶功能的對照實驗數據。
2026 年的 deep research 商用市場已經分化:OpenAI 全面、Perplexity 速度快、Gemini 生態整合、Claude 推理深、Grok 實時性強。這篇比較各家產品的差異——不是誰最好,而是誰最適合你的場景。
整個 Deep Research 領域有 80+ 實作,但核心結構只有三階段路線 × 四個組件 × 三種優化方法。這篇用一篇看懂全景:從 Agentic Search 到 Full-stack AI Scientist,從 query planning 到 answer generation,從 workflow prompting 到 end-to-end RL。
DeepResearch Bench II 用 9,430 個專家 rubric 覆蓋 132 個任務,發現最強的 agent 也只滿足不到 50% 的標準。這篇拆解基準架構、评分方法、領先者,並分析整個 deep research 評估格局。
自建的 AI 助理用 Opus 4.6 生成 docx 連續兩次 stream_stall(90 秒超時)。根因是 skill instructions 少了一句 'Write a script',導致模型走 inline code output 路徑。claude.ai 的官方 SKILL.md 有這句話,穩定走 bash 執行。
10+ 個社群開源的 deep-research skill 代表了 10+ 種「怎麼做研究」的哲學。從 hyperresearch 的持久化 vault 到 jamoeight v2 的 Co-Scientist 6-agent,從對抗驗證到 benchmark 對齊。這篇把它們放在一張表裡看。
Deep research agent 跑出來的報告,該怎麼評分?用 LLM 當評審有偏,問人類太貴,測基準又跟不上。STC 等新方法試圖從「自信度」切入解決這個根本問題——但還沒有完美的答案。
Deep research 從『幫你搜資料』到『幫你做研究』已經發生了。但下一步更大:agent 自我進化、群叢協作、科學自動化。這篇看三個方向,以及一個 uncomfortable 的現實:Gartner 預測 40% 的 agent 專案會在 2027 年前被取消。
AI 助理平台的圖片搜尋連續三輪修正:第一輪把 node_type 過濾推進 ES query 解決文字 chunk 搶佔問題;第二輪讓 filename 匹配不再依賴 LLM 是否傳參數;第三輪從 Postgres icontains 換成 ES match 解決 CJK 部分匹配失效。
長時間研究時,agent 面臨「上下文窒息」:資訊堆積、噪音增加、注意力被稀釋。IterResearch 用馬可夫狀態重建解決這個問題,AREX 用內外雙循環實現遞迴自我改進。兩者回答同一個問題:agent 怎麼在數百輪搜尋後依然保持清晰?
七套開源記憶框架分佈在「向量抽取」到「檔案系統」的光譜上:Mem0 一行 add() 自動抽取、Graphiti 用 bi-temporal 知識圖保留矛盾歷史、Letta 讓 agent 自己編輯釘在 system prompt 的 blocks、LangGraph 用 namespace Store 做跨 agent 共享、LlamaIndex 靠 block 優先級控制截斷順序、Cognee 走三種儲存混合管線、Supermemory 強調時態向量圖引擎。這篇整理各自的儲存形式、寫入與遺忘機制、租戶隔離、benchmark 數字,再按四種常見場景給選型建議。
Deep research 的開源生態已經從『單一框架』演變成『工具叢集』。這篇比較 12+ 個專案:GPT-Researcher 重視多代理協作、STORM 模擬專家對話、smolagents 強調狀態管理。每個工具解決不同問題。
這是專案自己的 deep-research skill 設計全公開。核心選擇:只用 Groundlane MCP 做為網頁工具、嚴格的來源品質分級(A/B/C/D)、研究完交 post skill 發文。不是最強的,但是最適合我們的。
AI 助理平台約 10% 的對話隨機沒有知識庫工具,agent 直接用訓練資料編答案。根因是 retriever 初始化時的 except Exception 吞掉了 Elasticsearch 連線失敗,導致工具註冊靜默跳過。修法:加 retry + 把失敗 surface 到 system prompt + metadata 追蹤。
前四篇分別看全景、訓練、長時程、規劃。這篇看一個把所有環節串起來的完整系統:Tongyi DeepResearch。核心創新是『Agentic CPT』——在預訓練和微調之間插入一個 agentic 中間訓練階段,讓模型天生帶有 agent 偏置。MoE 架構 30B 參數只激活 3B,HLE 32.9 超越 OpenAI o3。
使用者在後台把檢索 top_k 設成 15,但監控面板顯示 5、串流 UI 先閃 5 再跳 15。根因是同一個 top_k 值存在於四層——LLM 工具參數、執行時 runtime、trace DB、串流 payload——每層都要個別 override。三次修正,每次修完才發現下一層也錯。
用 Vision API 解析 150 頁 PDF 要 29 分鐘(一頁一請求)。分批送頁降到 1.5 倍,加上 5 路併發壓到 24 秒。上線一週後客戶一次傳 23 份 PDF,70 個並行請求打爆 Bedrock 限流——90 頁被跳過、5 份失敗、8 份卡住。最終用 Redis slot 做全叢集上限 + backoff 重試修復。
兩篇 NeurIPS 2025 論文回答同一個問題:怎麼從零訓練一個能自主研究網頁的 agent?WebThinker 選擇「給既有用戶模型加上網頁探索能力」,WebDancer 選擇「從資料構造到 RL 訓練完整重來」。兩種哲學,四個階段,一個核心洞察:訓練比 prompt 好。
前面看的是怎麼訓練 agent。但訓練需要高品質數據——而 deep research 的訓練數據長期短缺。WebShaper 用數學形式化解決這個問題:把資訊搜尋任務形式化為集合論,再用 agentic Expander 逐步擴展。S1-DeepResearch 則是把訓練從『搜尋為中心』擴展到『真正做研究』。
所有的 deep research agent 都是『文字為主』的——但真實世界不只有文字。WebWatcher(NeurIPS 2025)是第一個將視覺推理整合進 deep research 的系統,用 OCR、圖像搜尋、代碼執行等工具處理圖表、截圖、視訊等多元資訊。
前面看的是怎麼訓練 agent 和怎麼維持長時程。這篇看更深一層的問題:怎麼讓 agent 的『規劃』本身變好?WebWeaver 用雙 agent(規劃者+寫作者)從架構上解決,DeepPlanner 用優勢 shaping 從訓練上解決。兩者指向同一件事:規劃是 deep research 的上限。
Agent 有 workspace_browse 工具卻說「找不到檔案」——問題不在工具實作,在工具描述。Anthropic、OpenAI、Google 三家的官方指南都指向同一件事:觸發條件和工作流程要寫在 tool description 裡。一份 2025 年研究發現 97.1% 的 MCP 工具描述有品質問題。
Agent 間通訊分三種模式:handoff(移交控制權)、delegate(委派後等結果)、mailbox(即時點對點訊息)。各家實作差異大,但 MCP 和 A2A 正在推動協定標準化。
子 agent 要不要看到父對話?Fork 帶完整歷史但 token 指數膨脹,Fresh 省錢但缺背景。業界共識:預設 Fresh,需要時才 Fork,且一定要搭歷史截斷和結果壓縮。
Multi-Agent 並行 + 巢狀 spawn 可以在單輪對話燒掉 200K+ tokens。業界從 Anthropic 到 Microsoft 都走向三級分級反應:壓縮 → 降級 → 停止,而非一刀切硬擋。
2026 年幾乎所有主流 coding agent 都支援 subagent。設計哲學分三派:腳本確定性編排(Claude Code Workflow)、model-driven 自主(Codex、Devin)、IDE 指揮台(Windsurf 2.0、VS Code)。這篇是系列總篇,整理產品定位、能力矩陣與架構光譜。
Multi-Agent 系統最常見的 debug 困境是「知道結果錯了,但不知道是哪個 agent 搞的」。三層可觀測性是必要的:per-agent token 計量、execution trace 記錄、即時成本儀表板。
Multi-Agent 編排分三派:腳本確定性(LangGraph、Claude Code Workflow)可預測但僵硬,model-driven(Codex、Devin)靈活但不可控,混合派(Windsurf 2.0)當指揮台整合多家。選擇取決於你需要多少可預測性。
Multi-Agent 的安全風險不只是單 agent 的放大版——agent 間的通訊本身就是攻擊面。一個被注入的子 agent 可以透過回傳結果把惡意指令傳給父 agent。防禦核心:treat agent output as untrusted data。
商業文件解析分三條路線:專用 Parser(Cohere Parse $1.50/千頁、LlamaParse Agentic Plus 90.2%)、三大雲 Prebuilt(Azure/Google/AWS,結構化欄位抽取)、直接用通用 VLM(Fable 5.1 在 ParseBench 拿 78.92,圖表理解碾壓專用 parser,但每頁成本 3-16 倍且會幻覺)。10 萬頁/月純 OCR 各家都 ~$150,加表格後 AWS 跳到 $1,500、用 Claude Sonnet 5 跑要 $900。選型的第一個問題不是「哪家最準」,是「你要轉錄還是理解」。
綜合 arXiv 官方指引、NeurIPS Reproducibility Checklist、REFORMS 框架(8 模組 32 項)與五大頂會投稿政策,從論文結構、實驗設計紅線、arXiv 投稿流程到會議 vs. 直投的抉擇框架,一份可以直接拿來檢查自己論文的完整指南。
Claude Academy 第一堂課點出核心矛盾:AI 加速了寫程式,但 review、測試、部署的速度沒跟上。結果瓶頸從「寫不夠快」變成「審不夠快」。AI-native SDLC 的解法不是讓 AI 寫更多程式碼,而是把 AI 嵌進瓶頸所在的每個環節。
傳統需求散落在 Jira、Slack、會議紀錄裡,經過多次交接才到工程師手上。intent.md 讓需求發起人直接跟 Claude 對話,產出一份人可讀、機器可執行、版控可追溯的 Markdown proto-spec,從對話到文件只需要幾小時而不是幾週。
傳統開發裡,需求分析和設計是兩個獨立階段、由不同團隊負責,交接時必然有資訊流失。這堂課的做法是讓 Claude 在單一 session 裡讀取 intent.md,套用組織的品牌、資安、合規、UX 標準(以 skill 形式載入),產出統一的 spec.md——產品負責人只需要 review,不需要自己寫。
Claude Code 的 plan mode 讓工程師在寫任何程式碼之前,先產出一份可審查、可版控的實作計畫(plan.md)。設計審查從 PR diff 前移到計畫階段,修正成本從「改程式碼」降到「改文件」。
CLAUDE.md 是放在 repo 根目錄的上下文檔案,讓 Claude 在每次 session 開始時就知道這個專案的慣例、指令、架構和地雷。課程的核心建議:同樣的錯犯兩次,就寫進 CLAUDE.md。
Skill 是組織隱性知識的編碼形式——一個資料夾加一份 SKILL.md,讓 Claude 在觸發條件成立時自動載入並執行標準作業程序。課程的關鍵原則:skill 讓違規變少見,hook 讓違規接近不可能。
一個工程師同時開多個 Claude Code session,每個跑在獨立的 git worktree 裡;重複性的驗證工作交給 subagent。瓶頸從「寫程式」變成「review 產出」。
讓 Claude 在提交前自己驗證自己的產出——測試、build、截圖比對全部跑過才算完成。工程師收到的不再是「可能對」的程式碼,而是「已經通過驗證」的程式碼。
Evals 是 AI-native 版的 stage-gate QA——收集 20-50 個真實任務當測試案例,每次改動 CLAUDE.md、skills 或 hooks 時自動跑一輪,pass rate 掉了就擋 merge。每個線上事故都變成永久的 eval。
讓 AI 做第一輪 PR review,人類只看意圖與風險——這堂課教你怎麼設定 REVIEW.md、分層 review pass、建立 review comment 自動修正迴圈,以及為什麼寫程式的 agent 不能自己批准自己的 PR。
Hooks 是 AI-native SDLC 的治理基石——確定性的閘門,在 agent 執行動作前攔截,不通過就擋下。這堂課從單一 production gate 腳本講到完整的企業級 managed settings,涵蓋權限鎖定、沙箱、憑證隔離、marketplace 白名單,是整門課最硬核的一堂。
把 Claude 接進 CI/CD pipeline——從唯讀的 build 失敗分析開始,逐步加入寫入操作,透過 MCP 暴露部署工具,按環境分層授權。核心原則只有一句:「agent 可以做到 production gate 為止,不能通過它。」
Stage 6 是整個 AI-Native SDLC 的收尾也是起點:監控腳本偵測異常 → Claude 自動寫診斷報告為 intent.md → 走完整個開發流程。人從「發起工作」變成「分類和審查工作」。
14 堂課跑完,最後這篇把整個系列收束成三件事:導入的優先順序、每個角色該從哪裡開始、以及 Anthropic 官方文件的完整資源清單。
Anthropic 在 Claude Academy 推出 14 堂免費課程,把 AI 寫程式從「個人用 Claude Code」拉高到「整個團隊的開發流程」。核心概念只有四個:intent.md、CLAUDE.md、Skills、Hooks,但它們串起來就是一套完整的 AI-native SDLC。
WebMCP 是 Google 與 Microsoft 在 W3C 提出的瀏覽器原生標準,透過 document.modelContext.registerTool() 讓網頁直接向 AI agent 暴露結構化 tool——不需要後端、不走 HTTP/SSE transport。Chrome 149 已開放 Origin Trial。
Week 2 兩堂課一前一後:週一用 Anthropic 的 taxonomy 學會什麼時候不該用 agent,週三用 RAG 論文做出第一個複合系統。五個 workflow pattern 是選型工具,RAG 是參數記憶加非參數記憶的配方,兩篇合起來就是 HW1 email 檢索管線的施工圖。
Week 3 週一用 MCP 規範把工具介面標準化,週三用 DSPy 論文把手刻管線換成可編譯、可優化的程式;同一週 HW1 發布:不准用 agent 框架,從零刻一個企業內部助理,所以 DSPy 這週是拿來看懂框架抽掉了什麼,不是拿來交作業。
Week 4 週一用 ReAct 論文把 agent 迴圈定型為想—做—看的交錯序列,週三用 MemGPT 論文把記憶做成作業系統式的分層記憶體;同一週 HW1 正從 email 檢索 pipeline 長成完整 harness,記憶本來就是作業要求的一塊,迴圈形狀與記憶設計就是這週要定案的兩件事。
Week 5 週一用 AutoGen 把多智慧體協作寫成可程式的對話,週三用 GEPA 與 test-time compute 論文攤開優化三軸:改 prompt、改權重、加推理算力。HW1 在 10/30 截止,這是交卷前最後一個完整週,這篇幫你決定力氣花在哪一軸。
Week 6 週三讀 Shankar 的資料飛輪:評估、監控、持續改進三站共用同一批生產資料;同一週 HW1 截止、HW2 發布,11 月初還要交期中 demo 錄影與期中報告。
Week 7 是期中驗收週:週一談資料選擇,週三談評分與 benchmark 設計;Zhu 等人教你別被自己的分數騙,SWE-smith 把軟體工程任務資料做到 5 萬題,讀完為 HW2 寫下第一版 4-tuple。
Week 8 週一用 MT-Bench 與 Anthropic 評測指南建立模型裁判,週三用 PrivacyLens 與四件護欄面對實戰洩漏;週五 paper video 到期,本週交付就是一份會動的裁判分數加一條許可檢查。
第九週週三談寫程式智慧體:SWE-agent 證明介面即效能,OpenHands 把沙箱與評測做成通用底座;第二份作業週五到期,本週交付是一道會動的修 bug 考題。
最終回讀 Week 11:週一用 GUM 論文把等指令的 reactive 助理升級成會觀察、推測、先出手的 proactive agent,週三把 multimodal、long-running 與 production observability 收成三個 open problems;文末附 Demo Day 前檢查清單與全系列 11 篇地圖。
CS329Z 第一週主讀物是 Zaharia 等人的 Compound AI Systems:SOTA 越來越靠多元件系統拿下,單一模型再大也只是零件;文章留下三個設計問題與三大挑戰,剛好就是 HW1 要你動手回答的題目。
拆解三個中文圈從零訓練 LLM 的開源專案——baby-llama2-chinese(218M、634 億 tokens)、ChatLM-mini-Chinese(0.2B T5、1,023 萬條對話)、Steel-LLM(1.12B、1 兆 tokens、8 個月)——比較語料策略、tokenizer 決策與社群生態;誠實呈現評測:baby-llama2 在 MiniMind 的橫評中 21 分墊底,ChatLM 知識紮實(62 分)但程式能力弱。
四個 coding agent 的 TUI 都遵守同樣兩條規則:工具高度恆定(1 行摘要,不從 0 跳到 N 行)、不自動收合(只有使用者手動展開才會展開)。looplane 兩條都違反了。
OpenELM 用 layer-wise scaling 把參數偏向靠近輸出的層,1.08B 參數、1.5T tokens 在 LLM360 平均分數上超越吃了 3T tokens 的 OLMo 1.2B(+2.36%);MiniCPM 用三階段解凍(先 Resampler、再視覺編碼器、最後全開)從零訓練多模態小模型,MiniCPM-V 4.5 以 8B 達到 VideoMME 30B 以下 SOTA,再靠 4-bit 量化把 fp16 的 16–17GB 記憶體壓到約 5GB。
Karpathy 三代教學專案縱覽:nanoGPT(2022,各約 300 行重現 GPT-2 124M)、llm.c(純 C/CUDA 訓練)、nanochat(2025-10,一個 speedrun.sh 從 tokenizer 訓到 WebUI)。100 美元、4 小時在 8×H100 上訓出能對話的模型;GPT-2 級能力到 2026 年初已壓到約 2 小時、48 美元。
LitGPT(Lightning AI,約 13,600 stars,Apache 2.0)把 Llama 3、Qwen2.5、Phi 4 等 20+ 個 LLM 逐一從零重寫成無抽象層的單檔實作,附 pretrain / finetune / evaluate / serve 完整命令列;1.1B 參數、3T tokens 的 TinyLlama 就是用它的程式碼訓出來的。這篇拆解它與 MiniMind 的差異、實際用法與限制。
MiniMind 是一個從零開始訓練 LLM 的開源專案:64M 的 Dense 模型與 198M-A64M 的 MoE 模型,單張 3090 約 2 小時、約 3 元人民幣就能跑完 Pretrain → SFT → LoRA → DPO → PPO/GRPO/CISPO → Agentic RL 的完整流程。所有核心演算法用 PyTorch 原生實作,不依賴高階封裝。
兩個國家級專案展示了從零訓練的另一種動機:瑞士的 Apertus 用 15T tokens、1,000+ 語言與嚴格的 opt-out 個資過濾對齊 EU AI Act;日本的 LLM-jp 由 NII 主導,2026 年 4 月的 LLM-jp-4 在 12T tokens 上訓練出多項 benchmark 超越 GPT-4o 的模型。它們回答的問題和效能路線不同:不是「跑得快」,而是「主權與合規下能訓出什麼」。
「開源 LLM」其實是一條光譜:只開權重(Llama)→ 權重加資料(多數 fully open 專案)→ 連資料順序、中間 checkpoint、訓練日誌都開(LLM360 K2、OLMo 3 的 model flow)。這篇拆解兩個把透明度推到極致的專案:OLMo 3 在 2025 年 11 月放出首個全開的 32B thinking 模型,K2 則是首個 65B 級、連 optimizer states 都公開的模型。
系列實作篇:在 RunPod 租一張 RTX 3090(Secure Cloud $0.5/hr、Community Cloud $0.22/hr),照 README 步驟跑完 MiniMind 的 pretrain(約 1.21h)+ SFT(約 1.10h),總成本約 $0.55–1.50 美元,就能在終端機跟自己從零訓出來的 64M 模型對話。
開源社群把「從零訓練 LLM」的門檻壓到了驚人的低:MiniMind 用約 $0.4、單張 3090 兩小時就能跑完從 PreTrain 到 RL 的完整流程,另一端 OLMo 3 與 LLM360 K2 把 65B 模型的訓練資料、程式碼、每個階段的 checkpoint 全部公開。這個系列用 11 篇逛完從 $0.4 到 65B 的專案光譜,並標註這份地圖覆蓋不到的地方。
從零訓練只在三種情況成立:你要學習訓練本身、你有開放模型沒見過的 10B+ 乾淨語料、或你需要全透明的訓練過程做研究。否則微調或 RAG 幾乎總是更便宜的答案。這篇把系列走過的主要路線收斂成一張成本梯度表與決策樹。
YuLan-Mini 是中國人民大學 AI Box 實驗室用 48 張 A800 訓出來的 2.4B 開源模型:只餵 1.08T tokens,MATH-500 拿 37.8、HumanEval 64.0,數學與程式能力壓過用了 7T–18T tokens 的 Qwen2/Qwen2.5 同級模型。它公開的不是口號,是每個階段的資料配比、退火前的 optimizer 狀態、連消融實驗的 W&B logs。
傳統文件解析用固定 pipeline 一體適用,但合約、財報、技術手冊各需不同策略。Agentic Parsing 讓 LLM agent 觀察文件後動態選工具——AgenticOCR 只解析需要的區域(視覺 token 省 70%+)、ParseBench 2,000 頁企業文件實測最佳方案也只拿 84.9%,沒有銀彈。
ColPali 把 PDF 每頁渲染成圖片,用 vision-language model 產生 patch-level multi-vector embedding,用 MaxSim 做 late interaction 檢索。表格密集的金融 PDF 上 recall 從 62% 跳到 84%,完全跳過 OCR 和 chunking。代價是儲存量 ~100 倍、需要 GPU、BM25 不可用。
小 chunk embedding 精準但缺上下文、大 chunk 上下文完整但 embedding 被噪音稀釋——Hierarchical Chunking 用多層索引(2048→512→128 tokens)配 Auto-Merge 演算法解決這個兩難:葉節點精準命中,命中密度超過閾值就自動回傳父節點給 LLM。HiChunk 實測 evidence recall 提升 12.7%,LlamaIndex 和 Haystack 都已內建。
AI 讓寫 code 快了 34%,但 review 時間暴增 441%、實測交付反而慢 19%。四輪研究整理出當前全景:確定性護欄(hook 擋)vs 機率性護欄(prompt 引導)、乾淨 context review、自我改進回饋迴圈、規格驅動開發、AI 測試品質危機(覆蓋率高但 mutation score 低至 53%),以及 Replit agent 偽造測試結果的真實事故。
標準 RAG 一次檢索只找一組文件,但真實問題常需跨 2-4 份文件推理。IRCoT 開創交錯式檢索推理,PAR²-RAG 在四個基準上比 IRCoT 準確率高 23.5%,CompactRAG 把 LLM 呼叫壓到只有兩次。
Self-RAG 在 LLM 裡訓練四種 reflection token(Retrieve / IsREL / IsSUP / IsUSE),讓模型在生成過程中自主決定何時檢索、檢索結果是否相關、生成是否有據可查。ICLR 2024 Oral(top 1%),7B 模型在多個 QA benchmark 超越 ChatGPT 和 Llama2-chat + RAG。代價是必須 fine-tune,無法用在 API-only 模型。
Markdown-KV 格式在 LLM 理解準確度上達 60.7%,比 CSV 的 44.3% 高出 16 個百分點。但檢索用途的最佳格式不同於 LLM 理解用途——metadata prepend + row-wise key-value 是目前表格 RAG 的最佳組合。
Claude 自己建的 Routine(created_via: meta_mcp)每次呼叫第三方 connector 都跳授權提示,使用者建的(created_via: http_api)不會。解法:用 RemoteTrigger API 重建 routine。
Looplane 的 effect 已有 read/modify/modify_execute/execute 四級,未分類工具 fail closed;native MCP tool 預設 execute,只有可信 read-only annotation 才降級。審批仍先進 events.jsonl,grant 可精確到同一組變更或 backend;一般化 command 規則與全 runtime sandbox coupling 仍未完成。
looplane 已先做 bounded tool-program DSL:唯讀程式支援 list/read/search/diff、repeat 與 if_contains;modify/check transaction 會經整體 approval,失敗時回滾 touched paths。它還不是任意 JavaScript/Python code mode,也沒有平行 transaction execution。
五家成熟 agent 的 compaction 都要處理觸發、完整 turn 切點與失敗恢復。looplane 已補上 85% high-watermark、自動 compaction、原生 loop 的 deterministic fallback summary、checkpoint 落盤與 workspace context 重新注入;目前仍缺跨 runtime 等價 fallback、模型品質摘要,以及真實 provider 的長 session 驗證。
omp 與 claude-code 都有跨 session 記憶,其他參考專案主要靠 instruction files。looplane 已落地明確的 remember/list/inject baseline:型別化 JSONL 記憶可跨 session 注入 prompt,但目前只按 scope 與近期排序,還沒有語意檢索、去重、遺忘指令或自動萃取。
五家對自由 shell 的風險處理都包含放行/詢問/拒絕、複合指令檢查與 fail-closed。looplane 已補上 deny-first command classifier、critical floor、複合 shell 分段、timeout-deny、設定式 allow/deny rule 與可見的 policy reason;仍需擴大語法涵蓋與真實互動流程驗證。
我在寫自己的 Python coding agent「looplane」,這個系列把 pi、oh-my-pi、opencode、codex、claude-code 五個成熟專案的原始碼逐題對照,也對照 Looplane 現在已經落地的 TUI、外部 CLI runtime、local gateway、usage/OTel/session 工具與 Cloudflare 切片。每篇固定走「設計問題→五家做法→looplane 選擇→學術依據→改善路線」五段,證據一律給到 file#symbol 層級。
Hooks 管控制流、skills 注入知識、plugins 負責打包。looplane 已有 opt-in deny-only project hooks、bounded SKILL.md loader、exact enabled_skills 選擇、plugin manifest/install/list 與 external runtime projection;仍缺 hook input rewrite、完整 lifecycle、遠端 registry 與成熟 marketplace。
looplane 已能把 repo 內 diagnostics 與 open-file 狀態注入下一個 model turn,也有 typed WebSocket IDE context push、可封裝的 VS Code bridge,以及管理長駐 LSP subprocess 的 ManagedLspServer。剩下的是各語言 initialize/didOpen/didChange adapter 的打磨與 live editor 驗證。
MCP client 要同時處理 transport、工具刷新、approval 與 credential 邊界。looplane 已支援 allowlisted stdio、Streamable HTTP/SSE、tools/resources/prompts、tools/list_changed、OAuth metadata/PKCE 與 0600 credential store;尚缺真實 authorization server E2E 與 MCP 專用確認 UX。
looplane 已有 ModelRole/ModelRoute 靜態候選表、--model @cheap 等 opt-in alias、跨 provider fallback,以及驗證完成後才啟動的 no-tool reviewer lane;下一步是補 role inheritance/override 規則,並決定 summarizer、parser、scout 是否自動路由。
直接包 SDK 三個月就會後悔:每家的 usage 欄位、tool call 格式、錯誤語意都不一樣,換模型等於重寫迴圈。五家參考專案都把「wire protocol」從「provider 身分」裡拆出來當獨立維度;looplane 更進一步,用 pydantic canonical contract(Message/ToolCall/Usage/ModelTurn)加六種 protocol adapter,把 OpenAI SDK 的內建 retry 關到 0,所有錯誤先分類成 ProviderErrorKind 再交給統一的重試政策。provider 表本身是跟 pi 的 packages/ai 對著抄的——這是血統,不是巧合。
OS 沙箱是 path policy 之外的核心防線。looplane 已落地 fail-closed `CommandSandbox`:macOS 包 sandbox-exec,Linux 用 Landlock 加 seccomp,verification 預設在能證明 containment 時進沙箱;不支援時回 exit 126。剩餘限制是目前主要只包 verification、外部 CI 結果仍待確認。
Looplane 的 prompt 已到 `m3-exact-edit-v4`:版本寫進 artifact,core/tool/interaction/runtime/instructions/skills/workspace/memory 以 stable/dynamic section 組裝,並加入 replace_text、unified diff、direct reply 的正反例。unit tests 已釘住結構,live eval 覆蓋仍需擴大。
NVIDIA NIM 間歇 500 暴露了 looplane 早期只有錯誤分類、沒有重試消費者的缺口。現在 SDK retry 關閉,harness 對每個候選最多嘗試 5 次,使用帶 jitter 的指數退避並尊重有上限的 Retry-After;耗盡後可依明確設定切到 fallback model,model.retry 與 model.fallback 都進 event log。
looplane 已把 events.jsonl 接成 deterministic reducer、CLI timeline、canonical JSON、SDK replay 與安全分叉;分叉不會重跑舊工具或模型呼叫。剩下的是 provider/live runtime 驗證、redaction 與更完整的 replay hook。
成熟 subagent 需要角色、fan-out 上限、權限收窄與成果回傳契約。looplane 已有 native named-role schedule、平行 fan-out、子 task allowed_paths 不得超出 parent、預設禁用 unsafe exec,以及 parent-approved transaction proposal baseline;常駐 background lifecycle、遞迴深度管理與自動 worktree merge 仍未完成。
looplane 已加入 CostBreakdown、明確標示 estimated 的 GPT-5 家族靜態價目表、per-lane usage/cost 與 OTel cost 欄位;未知模型仍只顯示 token,不硬算美元。價目覆蓋、外部 CLI 權威帳單與 live billing 對帳仍待補。
Looplane 的核心 surface 已從七個長到九個:新增 read-only `tool_program` 與可 rollback 的 `tool_transaction`,搜尋優先走 ripgrep,仍不開任意 shell;native MCP 只從 allowlist 動態加入,缺少可信 read-only metadata 就按 execute 審批。
Looplane 的 disposable clone 與 SafePathPolicy 保護來源 repo;現在 `--sandbox-checks` 也能用 macOS sandbox-exec、Linux bubblewrap 或 Landlock 包住 verification command,Cloudflare 另有受限 Sandbox slice。但不同 backend 的 network policy、外部 runtime coverage 與 production hardening 仍未一致驗證。
looplane 已有 Cloudflare Durable Object run resource:非同步建立、狀態/取消/artifact、live NDJSON 與支援 Last-Event-ID 的 SSE;遠端 approval 走獨立短效 capability。Python 另有 attach client 與 stateful conversation WebSocket。production deploy、跨 runtime parity 與完整多租戶 hardening 尚未驗證。
「有哪些課程文章」第一次觀測被舊快取干擾;真正未命中的 request 已找回四所大學課程地圖,卻因三輪 Writer/Critic 重試花了 51.169 秒。修正 catalog 專用檢索與 review 契約後,一次未命中快取的 production observation 在 26.821 秒內通過 q21。
Ask AI 先由 Planner 抽出 intent、complexity 與 1–4 個搜尋詞,再依查詢型態走 metadata、BM25、Vectorize 與 RRF;第二輪搜尋會加入 Critic gaps,並關閉第一次才允許的 BM25 short circuit。
Ask AI 的 production 索引分兩階段:先用 source hash 增量更新 D1、post_chunks 與 FTS5,再以 embedding checkpoint 和 delete queue 讓 Vectorize 非同步追上;兩邊不是同一個 transaction。
Ask AI 把一次提問拆成 UI、`/api/chat`、Planner、Research、Writer、Validation、Critic 與 Related 八段;回答文字、參考來源和延伸閱讀各有不同的產生與顯示條件。
Ask AI 把 golden contract、offline fixture、live SSE output 與 production observation 分開保存。fixture 全綠只證明 harness 可重現;public sources 可以量 expected-source recall,不能拿來宣稱看過 hidden ranked chunks 或 model-graded faithfulness。
Ask AI 同一次請求有五種不同證據:公開 SSE、Langfuse trace、D1 log、semantic cache 與 hidden shadow run。它們看見的資料不同,單看任一層都不能還原完整 retrieval context。
Ask AI 找到文章,不代表畫面就該顯示來源。回答要先通過 Markdown/URL 的確定性驗證,再通過 Critic 的相關性、意圖與 groundedness 檢查;任一門檻失敗,來源卡片就不送到前端。
Writer 預設只讀 factual query 的前 8 筆或 recommendation 的前 12 筆候選證據,引用必須使用候選集合中的 exact `source_url`;檢索為空或被判為 weak 時,prompt 要求拒絕用模型常識補答案。
Agent Memory 是 Cloudflare 的 private beta 服務,用來讓 agent 跨對話記住使用者、團隊、專案與任務脈絡。它適合存 facts、events、instructions、tasks;RAG 文件、產品資料、檔案和 audit log 仍應該放在 AI Search、Vectorize、D1 或 R2。
Cloudflare Agents 把 agent session 做成 durable runtime:每個 agent instance 有穩定 identity、local SQLite、WebSocket、scheduled work、recoverable execution 和 tools。它不只是聊天範例;真正處理的是怎麼把 Workers、Durable Objects、AI model、Browser、Sandbox、AI Search、MCP 接成可部署的 agent app。
AI app 不該把 conversation、artifact、memory、retrieval document、lock、eval trace 全塞進同一個 storage。D1 適合查詢與產品資料,R2 適合大型檔案與 artifact,Durable Objects 適合具名協調、WebSocket、per-session state;Agent Memory / AI Search / Vectorize 則分別處理記憶與檢索。
AI Gateway 解的是 AI 呼叫的控制問題:同一層處理 logs、analytics、cache、rate limit、retry/fallback、BYOK 與 Unified Billing。Workers 內可用 env.AI.run(..., { gateway }),外部 SDK 則改 baseURL 或 provider-native endpoint。
Cloudflare AI Stack 這條系列回答 AI app 的基礎設施問題:模型怎麼跑、gateway 怎麼控、RAG 怎麼做、agent 怎麼持續執行、memory 怎麼治理、browser/sandbox/secrets 怎麼接進產品。
Secrets Store 是 Cloudflare 的 open beta account-level secret store,目前整合 Workers 和 AI Gateway。它適合把 provider API keys、BYOK key、跨 Worker 共用 secret 集中管理;per-Worker secret 仍可用,但治理範圍不同。
Vectorize 是 Cloudflare 的向量資料庫。AI Search 適合先把 RAG pipeline 交給平台;Vectorize 適合你要自己控制 chunking、embedding、metadata filter、hybrid retrieval、重新索引與降級策略。
GPUtw.ai 適合個人把短租 GPU 當成學習工具:先跑 Jupyter、Ollama、ComfyUI,再用 LoRA/QLoRA 做小模型微調。它不是大型基礎模型訓練平台,第一次使用應該小額測部署、計費與資料保存。
Keenable.ai 把自己定位成給 AI agents 用的搜尋基礎設施:100B+ 文件索引、Search/Fetch API、 MCP/CLI 入口、100K 免費月額度與 keyless public endpoint。對台灣/繁中 agent 團隊來說, 現階段最合理的位置是 provider matrix 裡的實測候選;Brave、Exa、Tavily 或 Serper 仍要留著對照。
screenshot-to-code 不是一步到位的截圖轉碼工具。核心是一個最多 30 步的 Agent Loop,搭配 7 個工具——從截圖裁切真實素材、用 Playwright 自我驗證、到同時跑 4 個模型讓使用者選最好的版本。GitHub 74,500+ stars,MIT License。
Warp 的自我改進 Agent 不把每次錯誤塞進 prompt。base skill 做任務,人類在 GitHub 或 Slack 留回饋,improver skill 把重複訊號整理成小 diff,再走 PR review。真正有價值的是這套工程邊界:可追溯、可回滾、可拒絕更新。
TinyFish 為 AI agent 提供四個 Web API——Search、Fetch、Agent、Browser,其中 Search 與 Fetch 為 $0 永久免費且免信用卡,適合做 RAG 與文件檢索的預設層。
把 ADE 類工作台分成四種哲學:arul28/ADE 的 Brain+Lane、Superset 的 100+ agents IDE、Herdr 的 Rust 常駐 runtime,以及 Kadro/Orca 的版面與 Fleet 取向;用一張對照表與選型決策樹幫你判斷何時該用水槽、而非 Omnigent 這類控制面。
Omnigent 把治理從 prompt 抽到 Server 層的 Policy 引擎:Python 函式回 allow/deny/ask,三層堆疊疊加 cost budget 與 tool caps,搭配 Omnibox 以 bwrap/seatbelt 做 OS 原生隔離與 egress 憑證代理;本文對照 FailproofAI、DashClaw 等五套治理方案的定位與決策表。
每個模型發布都帶 benchmark 數字,但同一個模型在不同 harness 上可以差 20 分、SWE-bench Verified 的 32% 驗證器判斷有誤、DeepSWE 113 題讓多數模型掛零。這篇拆解六個主要 coding benchmark 各自測什麼、哪些容易灌水、讀者該看哪個。
CS50 AI 的 OpenCourseWare 版公開七週影片、投影片、notes 與十二個 Python projects,校外自學者可以拿到 autograder 回饋和每個 project 都達 70% 以上的免費 CS50 Certificate;但前六週錄影沿用 2020 年 Spring 版,只有 Week 6 Language 換成 2023 年重錄版。
同一個模型透過不同管道存取,價差可以到 2-5 倍。直連最簡單、聚合器(OpenRouter)最靈活、雲端平台(Bedrock/Vertex)最適合企業。這篇用 2026 年 8 月實際價格做橫向比較,附選擇決策樹。
同一個詞 meta-harness 其實指兩種東西:Databricks 的控制面與 Stanford 的優化迴圈。本文用 MCP/ACP/Runtime/meta-harness 四層模型,對照 Omnigent、Zed ACP、Vercel HarnessAgent 與 Cloudflare Flue 的定位。
[MIT 6.7960 Deep Learning](https://deeplearning6-7960.github.io/) 有兩個公開程度截然不同的官方版本:Fall 2025 課站 21 講投影片全公開但 psets 在 Gradescope、解答與錄影鎖在 Canvas(A2);[MIT OCW 的 Fall 2024 版](https://ocw.mit.edu/courses/6-7960-deep-learning-fall-2024/)連影片、五份作業題目與起始檔都開放(接近 A3)。兩版綱要重疊約六成,講師從 Isola/Bernstein 換成 Kaiming He/Omar Khattab,不能拿舊影片硬配新講義。本文給出按目的分流的兩條自學路線。
2026 年幾乎所有前沿開源模型都是 MoE 架構:Ornith 35B 只啟用 3B 打贏 31B dense、MiniMax M3 用 456B 總量但 45.9B 啟用拿下 SWE-bench Pro 59%、DeepSeek V4 用 1.6T 總量但 49B 啟用。這篇用四個案例解釋 MoE 為什麼在 coding 和 agentic 任務上佔據主流。
用同一個 Polly 任務(平行 git worktree + 跨廠商審查)對照四種多 Agent 寫法:Omnigent 以 YAML 在 Server 層治理、LangGraph 以 StateGraph 精準控流程、CrewAI 以角色扮演快速拼裝、Goose 以 Recipe 跑單機自動化,對比 token、延遲與可維護性的真實取捨。
Allen AI 的 OLMo 是目前唯一把權重、訓練資料(Dolma,9.3 兆 token)、訓練程式碼、所有中間 checkpoint 和評估工具全部公開的語言模型家族。OLMo 3 的 32B Think 模型在 MATH 跑到 96.1%,同時你可以用 OlmoTrace 追溯任何輸出回到訓練資料的哪一段。
Databricks 開源的 Omnigent 把 Claude Code、Codex、Cursor、Pi 等 harness 包在 Runner/Server 與 Omnibox 沙盒之上,用三層 Policy 與可分享的持久化 Session 讓模型與 harness 一鍵替換,9.3k stars 的 alpha 專案。
AI 的「開源」不等於軟體的開源。MIT 和 Apache 2.0 真的隨便用;Llama License 超過 7 億月活要另外談;舊版 Gemma 授權 Google 可以片面修改(Gemma 4 已改 Apache 2.0)。這篇按授權類型整理你能做什麼、不能做什麼。
2026 年開源模型在 coding benchmark 追平閉源,但自架不只是選模型——vLLM 適合高併發生產服務、SGLang 在前綴重用場景快 29%、Ollama 是本地開發首選、llama.cpp 吃最少資源。A100 雲端租金約 $1.4-2.2/hr,自架損益兩平點大約在每月 100M tokens。
2026 年三個非大廠團隊用不同的 RL 後訓練路線做出 benchmark 黑馬:Ornith 讓模型自己出題自己改進(GRPO self-improvement loop),Nous Research 用 DataForge 合成資料 + Atropos 執行獎勵 RL,MiniMax 在 20 萬個真實環境裡大規模 RL。三條路各有強項,但共同證明了一件事:後訓練 RL 比預訓練規模更重要。
模型不讀字,讀 token——一個中文字通常是 1-2 個 token,一個英文字通常是 1-3 個。Context window 是模型一次能看的 token 上限。推論是用模型,訓練是教模型;你每天在做的是推論。
模型不懂文字,只懂數字。Embedding 把每個 token 對應到一組幾百維的向量,意思相近的詞在向量空間裡距離相近。這是搜尋、RAG、分類背後共用的基礎機制。
模型發布時貼的 benchmark 數字有三個常見陷阱:只秀贏的(cherry-picking)、訓練資料混入考題(contamination)、大家都考 90 分以上就沒鑑別力(saturation)。最抗操弄的訊號是 Chatbot Arena 的 Elo 排名——真人盲測投票,模型廠商無法控制題目。
資料常更新、需要引用來源 → RAG。需要統一風格、要跑在小裝置上 → fine-tuning。實務上很多系統兩者都用:fine-tune 一個懂你領域語言的小模型,再用 RAG 補上最新資料。
模型透過 loss 知道自己錯多少,透過梯度知道往哪邊調。梯度下降就是反覆做三件事:算 loss、算梯度、調參數。Learning rate 決定每步調多大——太大會跳過最佳解,太小訓練到天荒地老。
模型每次預測下一個 token 時,會給每個候選詞一個機率。Loss function 衡量這個機率分佈跟正確答案差多遠——差越多,loss 越高,模型就知道自己錯得越離譜。Cross-entropy 是最常用的算法,perplexity 是它的直覺版。
70B 模型原本需要 140GB VRAM,但量化到 4-bit 只需要 ~35GB,再用 llama.cpp 的部分卸載就能在消費級硬體上跑。GGUF 格式的命名規則(Q4_K_M、Q5_K_S)告訴你精度和大小的取捨。KV cache 是長對話變慢的主因。
Scaling laws 說 loss 跟參數量、資料量、算力之間有可預測的冪次關係。Chinchilla 論文的關鍵發現:大多數模型都太大、訓練資料太少——同樣的算力預算,訓練一個較小但吃更多資料的模型反而更強。這改變了整個產業的訓練策略。
不需要變成研究員也能系統理解 AI 模型。這個系列從你看得見的東西(token、context window)開始,一路走到自架開源模型,18 篇覆蓋選模型、讀 benchmark、算成本需要的所有基礎。
模型不是按字數收費,是按 token 收費。BPE 演算法從字元開始,反覆合併最常出現的相鄰配對來建詞表。英文 'understanding' 可能是 1-2 個 token,但中文「理解」可能要 2-3 個——同樣的意思,中文就是比較貴。
所有 LLM 都經過三階段訓練:預訓練讀完網路學會語言、SFT 用示範對話學會格式、RLHF 用人類偏好學會什麼回答比較好。Base model 到 chat model 的差距,就是後兩個階段做的事。
Transformer 的核心是 self-attention:對每個 token,模型算出它跟其他所有 token 的相關程度,然後按權重加總。這讓模型能跨越距離抓到「it 指的是 cat 不是 mat」這種關係,也是它處理長文的基礎。
2025 年的 RAG 不再是「檢一次、生成一次」。Search-R1 用 RL 讓模型在推理中自主多輪搜索,REX-RAG/AlignRAG 補上策略與對齊的分支,OpenAI Deep Research 把整條鏈產品化,MCP 則把檢索泛化為統一的工具調用。本文拆開設計哲學、與舊世代的取捨、以及何時該用這套新範式。
Apple 讓 App Store Small Business Program 開發者免費使用跑在 Private Cloud Compute 上的 AFM 3 模型,門檻是首次下載數低於 200 萬次。AFM 3 家族共五個模型,裝置端的 AFM 3 Core Advanced 用 200 億參數稀疏架構只啟動 1–4B,雲端最強的 AFM 3 Cloud Pro 跑在 Google Cloud NVIDIA GPU 上,用 Gemini 輸出做蒸餾式精煉。
BytePlus ModelArk Coding Plan 提供 Lite($10/月)和 Pro($50/月)兩種訂閱,整合 DeepSeek-V4、GLM-5.2、Seed-2.0 等多模型,支援 Claude Code、Cursor 等主流工具,Lite 月配額約 24,000 次請求,Pro 為其 5 倍。
pi 的 loop 是雙層 while 加 EventStream;claude-code 明講 stop_reason 不可靠、改以串流中收到的 tool_use block 當唯一續跑訊號;codex 把 turn 做成可取消的 SessionTask 再靠 rollout crate 錄 JSONL;looplane 選了「manifest 先落盤、JSONL 跟上」的寫入順序,讓 Ctrl-C 之後能做驗證式續跑而非重跑。這篇全部附 file#symbol 級證據。
成熟的 coding agent CLI 都收斂到同一套慣例:positional prompt、-p 是 print、exec 是 headless、resume 是一級指令、-C 換目錄;looplane 直接繼承這套詞彙,把學習成本壓到接近零。
LLM 寫 unified diff 壞在簿記:hunk 行數算錯、上下文行幻覺。五家的答案分成兩派——把 diff 文法做簡單(Codex 拿掉行號)、或乾脆不用 diff(Claude Code/Pi/OpenCode 的 exact replace);OMP 更進一步用 hash 錨點綁住讀取狀態。looplane 走最小干預:保留 guarded apply_patch,加一個零模糊匹配的 replace_text,qwen3:4b eval 就從穩定失敗變 5/5。
每家成熟 coding agent 都有 headless 機器介面:codex 有 `exec --json` 和更完整的 app-server JSON-RPC,claude-code 有 `-p` 加 stream-json,pi/opencode/omp 各有一種 JSON 事件流。直接把這些 CLI 當 backend 是最快的路,但代價是:它們自帶 agent loop、自己的權限模型、自己的登入。looplane 的答案是讓外來 CLI 完整擁有它的 loop,自己只守住三件事——隔離副本、patch audit、最終驗證——並且一條 runtime 永遠不偽裝成另一條。
生態系都把 /v1/chat/completions 當共通語,但你手上的 provider 不一定講這個方言。五家的答案分三派:pi 和 OpenCode 讓 client 本身講多種方言所以不做 gateway;OMP 做了真正的 protocol translator(foreign wire → 中立 context → provider adapter,禁止 raw passthrough);Codex 和 Claude Code 的 proxy 不翻譯,只負責強制流量管控。looplane 抄 OMP 的邊界但收斂成一進一出:只收 OpenAI Chat,嚴格解析成 canonical contract,後面接任何 ModelProvider——順便踩掉一個 cross-event-loop client close bug,教訓是 provider 的生命週期必須交給 ASGI lifespan。
agent 進 CI 後最大的問題是審批:沒有終端機、沒有人可以按 approve。五家的解法收斂成兩條路——把權限決策外包給呼叫端(claude-code 的 control protocol),或直接換掉審批語意(codex 預設 Never 配沙箱、opencode 預設自動拒絕)。looplane 用同一個 AgentRunner loop 注入不同的 ApprovalPolicy:headless 下用 HeadlessApprovalPolicy,不讀 stdin 所以不可能卡住 pipeline,EXECUTE 預設 fail closed。
空白設定檔勸退人,憑證錯太晚發現更勸退人。五家成熟 agent 都把 setup 做成 first-class state,looplane 再補上存完 key 立即驗證這一步。
agent 跑完之後,「模型說它做完了」不是證據。codex 把 trace 拆成 manifest + JSONL + payloads 的 bundle、omp 用 SQLite 鏡像磁碟上的固定檔案、pi 用 runs.jsonl 索引原生 session 檔。looplane 選了最硬的一條:每個 run 固定六個檔案,缺一個就不算完成,patch 審計看 changes.patch 不看口頭宣稱。
五個外部 CLI 有五種機器介面:JSONL 事件流、JSON-RPC、HTTP API、ACP、stream-json。支援它們的正確姿勢不是抽一個「都一樣」的介面,而是一條窄的 runtime 邊界加一份誠實的 capability matrix——availability 只代表裝了,不代表登入;協定飄移就 fail closed。
本地沙箱管的是『agent 在你的機器上爆炸半徑多大』,雲端沙箱管的是『怎麼把程式碼安全地搬到別人的機器上跑』——五家成熟專案幾乎都在做前者,只有 looplane 真的部署了後者。實戰教訓:mock 測不出 SSE framing、CI 綠燈擋不住 stale wheel,而清理路徑要跟成功路徑一樣有 timeout。
五家 agent 的 session 儲存幾乎都是 append-only JSONL 加上某種單寫者保護,但 crash recovery 的差別在細節:pi 會修 torn tail、codex 寫失敗會重開檔重試、looplane 選了「manifest 先落盤」讓唯一的 crash window 變成可修復的一格。這篇拆解每家的寫入順序與 fail-closed 條件,全部附 file#symbol 證據。
小模型卡的不是『不會想』而是『格式不穩』:tool call JSON、diff hunk 計數、context 預算都會爆。五家參考專案的共識是把評測建立在真實模型行為上(pi 的 model-backed eval、OMP 從真實 session log 校準編輯基準、Codex 甚至為弱模型放寬 parser),looplane 則選最窄但最硬的路:一個 fixture、五次真實 Ollama 執行、manifest 宣告改哪些檔案和哪些 patch 片段才算過,並且把 M2 的失敗原封不動留成證據——不把 mock 當 E2E,不把部分成功講成全過。
CLI 工具每次叫用都要付一次啟動成本,而沒有 baseline 的效能優化等於沒有回歸保護。codex 用 daemon 重用與 skill snapshot 快取、claude-code 把入口切成七十個動態 import 加上內建啟動 profiler、opencode/omp 各有 lazy 載入紀律;pi 則什麼都沒做,靠 Bun 的速度快撐著。looplane 是 Python,天生慢,所以把紀律做滿:lazy import、單飛磁碟快取、背景預熱 controller、hyperfine paired benchmark 加上 CI 大於 10% 退步就擋 merge。
五家在「訂閱認證」上分成三派:Codex 和 Claude Code 只為自己官方 client 做 OAuth 並把 token 收進 OS keyring;pi 和 OMP 直接重用 Claude Code 的 client ID 實作 Pro/Max OAuth(技術可行但 Anthropic 文件明文禁止第三方未經核准提供 claude.ai 登入);OpenCode 則把內建 Pro/Max plugin 整組移除,是生態系最乾淨的政策先例。looplane 的原則:自己的 grant 自己做、絕不刮別家 CLI 的 credential 檔、第三方 client 要 provider 明確支援才接 OAuth、credential 不複製不轉發。
agent 的兩個依賴——LLM 和外部 CLI——都不是決定性的,但成熟專案的招式是把「會動的部分」與「邊界的形狀」切開:codex 用 wiremock 假 Responses API 加腳本化 SSE server,TUI 用 insta 快照;opencode 乾脆做了 VCR 式的 http-recorder 錄放套件;pi 把 eval 與 unit test 分成兩份 vitest config;omp 把 edit benchmark 本身用 unit test 圍起來。looplane 對外部 CLI 做了四層:單元測試、fake-CLI 合約、錄製串流整合、Textual pilot TUI 測試。核心方法論一句話:錄下真實的非決定性輸出,對它做決定性的斷言。
成熟的 coding agent TUI 都不是把事件流印出來,而是先做一層 typed projection 再渲染;looplane 走了全螢幕組合、runtime-first 雙模式、移除 Ask/Agent 分離三步,才把 non-streaming 和 resume 不能 replay 兩個舊限制真正解除。
五家參考專案裡沒有任何一家在 harness 層強制「宣告的驗證指令全過才算成功」:pi 靠模型自覺、OpenCode 和 Codex 把驗證寫進 system prompt、Claude Code 用獨立的對抗式驗證 subagent 但仍是軟性合約、只有 OMP 的 cleanse 真的由 harness 跑檢查。looplane 選最硬的一條路:改過檔案就必須重跑所有宣告的驗證指令,全過才給 terminal_reason=verified;沒動任何檔案就不重跑(no_changes),把「跑不跑」變成程式碼決定,不是模型決定。
五個成熟 coding agent 沒有一家用 Python——pi/opencode/claude-code 用 TypeScript,codex 從 TS 重寫成 Rust,omp 把熱路徑補上 8 萬行 Rust native crate。looplane 仍選 Python,代價是啟動效能與打包,補償手段是 lazy import、uv 和 Cloudflare Sandbox。
同樣是「知識圖譜 + 檢索」,Microsoft GraphRAG v3.1.2 用重索引換全局總結能力,LightRAG 用 dual-level 與增量把成本砍下來,HippoRAG 2 用 PPR 把 RAG 做成可持續增長的記憶;這篇按部件拆設計取捨,含四種查詢、索引流程與選型表。
Anthropic Contextual Retrieval 用 LLM 為每塊生成 50-100 token 前置上下文把失敗率從 5.7% 壓到 1.9%(含 rerank),成本約 $1.02/1M tokens;Late Chunking 先以 32K 長上下文模型全文件編碼再切塊 mean-pool,零額外 LLM 成本,取捨在窗口、延遲與文件結構。
Unsloth 是目前最省 VRAM、最快的本地 LLM 微調工具,訓練速度快 2 倍、VRAM 省 70%。2026 年加入 Desktop 桌面應用後,整合了推論、微調、圖片影片生成、web search 和 agent 連接,從微調庫變成完整的本地 AI 工作站。
2021 是 Transformer 正式入侵電腦視覺的元年——Swin Transformer 拿下 ICCV Best Paper,DINO 證明自監督 ViT 能自動學會物件分割,NeRF 從單篇論文變成一整個子領域。CVPR 和 ICCV 都因疫情改為全線上舉辦,但這一年產出的論文深遠影響了此後整個 CV 領域的架構選擇。
2021 年是 diffusion model 超越 GAN、自監督學習理論突破、RL 評估方法論覺醒的一年。NeurIPS 收了 9,122 篇投稿創當時紀錄,ICLR 的 Score-Based Generative Modeling 論文日後成為整個 diffusion 生態的理論基石,ICML 則在優化理論與自監督學習動力學分析上交出紮實貢獻。
2021 年是 NLP 從「fine-tune 整個模型」轉向「只調一小部分參數」的分水嶺——Prefix-Tuning(ACL)、LoRA(arXiv,後成為業界標準)、Prompt Tuning(EMNLP)三篇同年出現,ACL Rolling Review 同年啟動,Findings track 正式站穩成為第二發表管道。
2021 年是 AI 頂會的分水嶺:Transformer 從 NLP 全面入侵 CV 與時序領域,自監督學習成為各會議最熱門關鍵詞,Diffusion Model 拿下 ICLR Outstanding Paper 但還沒有人意識到它會取代 GAN——而 GNN 和 Federated Learning 正處於論文量的歷史高峰,之後開始走下坡。
2022 年是 CV 從「辨識」走向「生成」的轉折點——Latent Diffusion Models 在 CVPR 發表後催生了 Stable Diffusion,NeRF 從 2021 年的 25 篇暴增到 CVPR 單場超過 50 篇,ConvNeXt 替 CNN 打了一場漂亮的反擊戰,而 ECCV 則在 Tel Aviv 交出了 157 篇 Oral 的歷史最高紀錄。
2022 年是 diffusion model 登上頂會舞台中央、Chinchilla scaling laws 改寫大模型訓練範式、Chain-of-Thought 讓推理成為可提示能力的一年。NeurIPS 破萬篇投稿,13 篇 Outstanding Paper 裡有 3 篇跟 diffusion 直接相關,Chinchilla 和 data pruning 兩篇挑戰了『大就是好』的信條。ChatGPT 年底發佈前夜,所有拼圖都在這一年的頂會上各就各位。
2022 年是 NLP 從「模型能力展示」走向「模型對齊與控制」的轉折年——InstructGPT 把 RLHF 推上主流、Chain-of-Thought 證明推理能力可以靠提示詞解鎖、Flan 2022 讓 instruction tuning 的方法論成熟化。ACL 與 NAACL 同年全面啟用 ARR 滾動審稿,暴露了大量基礎設施與審稿人負載問題。年底 ChatGPT 上線,NLP 研究的遊戲規則從此改寫。
2022 年是 AI 頂會的轉折年:Diffusion Model 從冒頭變成主流(NeurIPS 兩篇 Outstanding Paper),Chinchilla 改寫 scaling laws 的遊戲規則,Chain-of-Thought 證明大模型能推理,InstructGPT 用 RLHF 讓語言模型學會聽話——而這一切在年底 ChatGPT 上線後瞬間從學術議題變成全球新聞。
2023 是 CV 從「看圖」走向「理解+生成+控制」的一年——Segment Anything 讓分割變成 zero-shot 通用能力,ControlNet 讓擴散模型可精準控制,3D Gaussian Splatting 以即時渲染速度挑戰 NeRF,DreamBooth 和 InstructPix2Pix 把文生圖從「生成」推向「編輯」。CVPR 投稿量突破九千、ICCV 突破八千,兩場會議恢復實體舉辦,規模與密度同創新高。
2023 年是 LLM 全面接管 ML 頂會的一年。NeurIPS 投稿破 12,000 篇,兩篇 Outstanding Paper 都直接針對大模型(隱私審計與湧現能力質疑),Runner-Up 的 DPO 在短短兩年內成為 RLHF 的實質替代標準。ICLR 的 DreamFusion 開啟了 text-to-3D 賽道,ICML 則把 LLM 水印和學習率自適應推上舞台。Mamba 以 arXiv 預印本之姿在 NeurIPS 現場引爆討論,預示 Transformer 的第一個真正挑戰者即將到來。
2023 年是 ChatGPT 之後的第一個完整學術年——NLP 頂會的議程被 LLM 全面重寫:ACL 的 Best Paper 研究幽默理解和政治偏見追蹤,EMNLP 的 Best Paper 用資訊流視角解釋 in-context learning,而 HackAPrompt 這篇 prompt injection 競賽論文直接拿下 EMNLP Best Paper,標誌著安全研究正式進入主流。整年最大的主題轉變是:研究者不再問「怎麼讓模型更準」,開始問「怎麼知道模型在不在騙你」。
2023 年是 LLM 全面重寫 AI 研究議程的第一年:DPO 拿下 NeurIPS Outstanding Runner-Up、ReAct 成為 ICLR Oral、hallucination 從邊緣詞彙變成每場會議的熱門 track——同時 3D Gaussian Splatting 在 SIGGRAPH 發表後橫掃 CV 社群,Mamba 年底出現挑戰 Transformer 的注意力壟斷,而傳統 NLP pipeline 的論文量開始明確萎縮。
2024 是 3D Gaussian Splatting 全面接管 3D 重建、video generation 從研究走向產品、vision-language model 深入各垂直領域的一年。CVPR 投稿量突破 11,500 篇再創紀錄,Best Paper 給了 Google Research 的 Generative Image Dynamics 和 UCSD/Google 合作的 Rich Human Feedback for Text-to-Image Generation;ECCV Best Paper 則頒給哥倫比亞大學的 Minimalist Vision with Freeform Pixels——一篇回歸光學基礎物理的非典型得獎作。
2024 年是 ML 頂會投稿量爆炸的一年:NeurIPS 收到 15,671 篇創歷史紀錄,ICML 和 ICLR 也分別突破九千和七千。研究主題從「把模型練更大」轉向「推論時怎麼花算力更聰明」——test-time compute scaling 成為年度最重要的新方向。Best Paper 層面,VAR 用 next-scale prediction 在影像生成上超越 diffusion、Rectified Flow 成為 Stable Diffusion 3 的理論基礎、ICLR 首次頒發 Test of Time Award 給 VAE 原論文。
2024 年的 NLP 頂會在 LLM 全面統治下重新定義自己:ACL 把開放科學列為年度主題、七篇 Best Paper 有四篇在問語言模型的根本能力邊界;EMNLP 則把焦點轉向多語言與跨文化,Best Paper 從語音表徵做到梯度可解釋性。投稿量持續爆炸(ACL+EMNLP 合計破萬),但社群真正焦慮的不是數量,而是當 LLM 能做幾乎所有 NLP 任務時,NLP 研究本身還剩什麼。
2024 年 AI 頂會的關鍵字是 agent、alignment、multimodal LLM 和 inference-time compute——LLM 相關論文在五大會議的佔比從 2023 年的顯著上升再度翻倍,agent 相關關鍵詞成長 4.3 倍,而 diffusion model 從「新興方向」正式晉升為與 LLM 並列的雙主軸。同時,傳統任務導向 NLP 研究持續萎縮,GAN 幾乎從頂會消失。
2025 是 CV 雙會年——CVPR 和 ICCV 同年舉辦。CVPR 投稿 13,008 創歷史新高,Best Paper VGGT 把 3D 重建從逐步最佳化拉到 feed-forward 推論;ICCV 的 Marr Prize 頒給了用文字生成可實際拼搭積木結構的 BrickGPT。3D Gaussian Splatting 全面取代 NeRF、video generation 從研究走向產品、flow model 開始取代 diffusion——CV 領域在這一年完成了多項典範轉移。
2025 年是 ML 頂會投稿量全面破紀錄、審稿系統承壓到極限的一年。NeurIPS 收了 21,575 篇投稿動用超過兩萬名審稿人,ICML 首度突破 12,000 篇,ICLR 也衝上 11,565 篇。研究主題上,reasoning 與 agent 成為最強勢的兩股潮流——NeurIPS Best Paper 之一直接質疑 RLVR 是否真的帶來新推理能力,拿下該屆唯一滿分;而 attention 機制的結構性改進(Alibaba Qwen 的 Gated Attention)和 neural scaling laws 的理論解釋同時獲獎,標誌著社群正從「衝規模」轉向「理解為什麼有效」。
2025 年 NLP 頂會的投稿量全面翻倍(ACL 8,360 篇、EMNLP 8,174 篇),中國第一作者在 ACL 佔比突破 51%,DeepSeek 的 Native Sparse Attention 拿下 ACL Best Paper——但最值得注意的是會議本身的身份危機:ACL 主席說『ACL 不是 AI 會議』,一篇量化分析問『Has ACL Lost Its Crown?』,EMNLP 被質疑跟 ACL/NAACL 還有什麼差別。
2025 年 AI 頂會的兩個最強訊號:reasoning 論文從 47 篇暴增到 216 篇(4.6 倍)、agent 相關關鍵詞合計超過 150 篇(4.3–11 倍成長)。Diffusion model 已從「爆發」進入「基礎設施」階段,RAG 以五會議全覆蓋的罕見擴散速度成為企業 AI 的主流架構,而 state space model 和 world model 正複製 2020–2021 年 Vision Transformer 的早期軌跡。純 prompt engineering 論文開始遭遇 reviewer fatigue。
獨立研究者投頂會不是不可能,但數據很殘酷:頂會的單一作者論文比例已降到個位數百分比,平均作者數從 3 人漲到 5 人,前 20 大機構佔了 35-50% 的作者署名。Andreas Madsen 花 8 個月無薪工作拿到 ICLR Spotlight,結果還是得回去讀博。這篇整理實際案例、審稿偏見的研究證據、以及沒有大 lab 資源時的可行路徑。
一篇 AI 頂會論文從投稿到見刊,要走過匿名化投稿、格式審查、reviewer bidding 與分配、3-4 位審稿人獨立評分、author rebuttal、AC/SAC/PC 三層決策、camera-ready 修訂——全程約 4-5 個月。ACL 系列還多了一層 ARR 滾動審稿的「先審後 commit」機制。
同一篇論文投到同一場會議,可能走三條完全不同的路:Main Track 是最高門檻的正式發表、Findings 是 ACL 系列獨有的「品質夠但沒上主軌」附刊、D&B Track 是 NeurIPS 為純資料集和評測方法論開的專門賽道。三條路在審稿標準、prestige、職涯訊號上差異明顯,投之前搞清楚差別比寫論文本身更重要。
AI 頂會的論文版圖正在劇烈重組:企業研究院主導前沿模型開發(2024 年近 90% 的 notable model 來自業界),但學術界仍是高引用研究的最大產出方;中國高校五年內從追趕者變成 NeurIPS 論文量佔比近半的主力;OpenAI、Anthropic 等公司則幾乎從頂會論文名單上消失——發表量與研究能力的脫鉤,是這個時代最值得注意的訊號。
Stanford Marin 在 11×GB200 上公開訓練 535B-A23B,先用 1% 算力的 5 階 Scaling Ladder 預註冊 paloma macro-loss 2.04,再以 W&B 即時公開 847 組訓練數據;本文按訓練流程拆解其設計與監控方法。
「AI 頂會」不是任何機構的官方認證,而是 CCF-A、CORE-A*、Google Scholar 高 h5-index、低接受率四套獨立訊號的社群共識交集——而這四套訊號經常互相矛盾,ICLR 完全不在 CCF 名單裡就是活生生的例子。
學術搜尋不能把五個 API 的結果直接串起來:先用 arXiv/PubMed 做領域發現,再用 DOI、PMID、arXiv ID 對齊 OpenAlex/Semantic Scholar,最後由 Crossref 與 PubMed 關係資料檢查正式版本、勘誤與撤稿。
AG2 延續 AutoGen 的 ConversableAgent 心智模型:agent 透過訊息協作,GroupChatManager 再用 round-robin、manual、random 或 LLM 決定下一位發言者。
七套工具不是同一類產品:LangGraph、MAF 與 Mastra偏耐久工作流,CrewAI 與 AG2 偏多 agent 協作,Pydantic AI 偏型別化 Python agent,DSPy 則用資料與 metric 最佳化整個 AI 程式。先選控制模型,再選框架。
Agent 不該把使用者原句直接丟給每一種搜尋服務:先辨認 exact lookup、keyword、semantic 或 fielded search,再把來源、時間、語言與欄位限制放進 provider 原生參數,最後依零結果、結果過廣與來源不對症狀改寫。
Amazon Bedrock 不只是代售多家模型 API;它把模型呼叫、IAM、Region、Knowledge Bases、Guardrails 與 CloudWatch 串成同一套 AWS 控制面。它最適合已在 AWS 上、治理成本比最低 token 單價更重要的團隊。
Phoenix 是 MIT 授權的開源 LLM observability/eval 平台:先用 OpenTelemetry + OpenInference 收 trace,再把 production failure 收進 versioned dataset,以 experiment 比 prompt、model 或 RAG 改動,最後用 code、human 與 LLM evaluator 回寫分數。它不是 Arize AX;自架預設無認證且永久保留資料,正式環境必須先補安全政策。
登入狀態不是方便攜帶的設定,而是一把能冒用身分的鑰匙。安全做法是使用專用低權限帳號與隔離 browser profile,把讀取、可逆寫入、高風險交易拆成三級,MFA 與最後提交留給人。
Baseten 把自訂模型的打包、GPU 部署、推論引擎、autoscaling 與發布流程收進同一平台;價值不在多一個 OpenAI API,而是讓 ML 團隊保留 runtime 控制權,同時少維護一層 GPU orchestration。
Braintrust 把 versioned datasets、immutable experiments、scorers 與 production traces 接成同一個評估迴圈;它的價值不是多一個分數,而是把線上失敗送回離線測試。公司在 2026-02 宣布 8,000 萬美元 B 輪,客戶名單為公司自報。
Brave Search API 以 Brave 自有的網頁索引與排名模型提供 Web、News、Images、Videos 與 LLM Context 五類端點;核心搜尋不只是 Google SERP 的 API 包裝。
Browserbase 把遠端 Chromium、持久化 Context、代理伺服器與 Session Inspector 包成同一個控制平面;它解決的是瀏覽器艦隊的生命週期與除錯,不替 agent 決定下一步。官方截至 2026-08 自報每月超過 3,500 萬次 browser session、逾 10,000 家客戶。
Cartesia 的核心是 Sonic 即時 TTS、Ink STT 與串流推論;雖然 2026 年已有 Line voice-agent 平台,選型時仍要分清模型層與電話 orchestration,並把 voice cloning 同意、資料保存與 fallback 自己設計好。
Cerebras 的價值是把支援模型的生成階段大幅加速;但 Agent 的端到端速度仍取決於 prefill、工具 I/O、模型能力與平台相容性。
Chroma 用 collection 統一管理 embedding、文件與 metadata;本機可嵌入 Python,單機版採 HNSW,分散式版則以物件儲存、SSD 快取與 SPANN 拆分運算和儲存。
Anthropic 訪談 15 間新創,歸納出 Claude Code 操作五原則:人人出貨、自動化瑣事、信任但驗證、為重建而建、原型到產品化。ClickHouse 多出 30% 功能、Clay 100% 自動化 bug triage、Artemis Security 一週 6,000+ PR。
Kitesurf 是 Browser Run 內仍在 beta 的非 Chromium 瀏覽器後端:用 Workers isolates、Rust/Wasm 與無狀態元件換低 CPU/記憶體,但犧牲像素相容性、長登入工作階段、WebGL 與完整反機器人能力。
Cloudflare Sandboxes 把 Worker 當入口、Durable Object 當具名控制面、獨立 VM 內的 Container 當執行面;適合已在 Cloudflare 上、需要大量短暫 Linux 工作區的 agent,但持久資料、安全邊界與三層費用都得自己設計。
完成 07-280 不等於看完 24 篇導讀;至少要留下搜尋器、監督式模型、CNN/GPT-2 實驗與一個 RL+MCTS 小系統,再依缺口選 07-380、10-301 或專題課。
07-280 是 CMU Spring 2026 首開的 AI+ML 核心:24 講、12 個作業編號,從 heuristic search、CSP 與機器學習一路做到 AlexNet、GPT-2、AlphaZero。教材足以自學,但沒有完整公開錄影、Canvas checkpoint 或 Gradescope 回饋。
Lecture 1 用 alien autoencoder、AI/ML 範圍與 AI 發展史建立全課座標:智慧系統不是模型清單,而是在不確定下把輸入表示成可計算決策。
Lecture 2 把搜尋拆成 problem、frontier 與 priority:UCS 看已付成本,Greedy 看估計剩餘成本,A* 用 `f=g+h` 合併兩者;tree 與 graph search 的最優條件並不相同。
Lecture 3 把單一路徑改成 contingent plan:minimax 對抗最佳對手,alpha-beta 在不改 root value 下跳過無關分支,expectimax 則用機率取代最壞情況。
Lecture 4 利用 variables、domains、constraints 暴露問題結構,再把 DFS 升級成 backtracking、forward checking、AC-3、MRV 與 LCV;重點是更早證明某些選擇不可能成功。
Lecture 5 把機器學習寫成 `X → Y`、loss、risk 與 empirical risk minimization:訓練集只能提供平均已知損失,真正目標仍是未知分布上的 generalization。
Lecture 6 從 decision stump 遞迴建樹,用 entropy 衡量 label uncertainty,再以 `I(Y;W)=H(Y)-H(Y|W)`選擇分裂;這是計算可行的 greedy ERM,不是全域最佳樹保證。
Lecture 7 把 ERM 套到 linear functions 與 squared loss,從一維 slope 推到矩陣形式 `argmin ||y-Xθ||²`,再在 `XᵀX` 可逆時得到 normal equation。
Lecture 8 從一維 parabola 推到 vector gradient,再比較 batch GD、SGD 與 mini-batch;learning rate 決定更新是收斂、震盪或發散。
Lecture 9 不直接預測 0 或 1,而以 sigmoid 建模 P(y=1|x),再用 cross-entropy 與凸最佳化學出參數;多類別版本自然延伸成 softmax regression。
Lecture 10 先用 φ(x) 讓線性模型表達非線性,再以 train/validation/test 分工、L1/L2 regularization 與 model selection 限制新增自由度造成的過度擬合。
Lecture 11 把單一 logistic neuron 擴成多層網路:linear layer 產生 z、activation 產生 a,多個 neuron 共同學出 feature transform,再以 loss 和 gradient descent 訓練權重。
Lecture 12 把神經網路視為 computation graph:forward pass 保存中間量,backward pass 從 loss 開始傳遞 upstream gradient,並用線性層、activation 與 softmax 的局部規則一次算出全部參數梯度。
Lecture 13 把 alignment 拆成目標規格、distribution shift、監督與修正能力,並用 autonomous AI scientists 的 benchmark selection、data leakage 與 post-hoc selection 實驗說明:只看最終論文不足以稽核整個研究流程。
Lecture 14 以 local connectivity 與 parameter sharing 取代全連接影像模型,從 convolution、stride、padding、pooling 走到 AlexNet、GPU data parallelism、ResNet skip connection 與 BatchNorm。
Lecture 15 將 pretrained model 拆成 representation g 與 task head h:可以凍結 g 只訓練 head,也能用較小 learning rate fine-tune 部分或全部參數;選擇取決於資料量與 source-target 差距。
Lecture 16 從 likelihood p(D|θ) 出發,以 i.i.d. 將聯合機率寫成乘積,再用 log 變成和;Bernoulli MLE 得到樣本比例,conditional Bernoulli 得到 logistic cross-entropy,Gaussian noise 則得到 squared error。
第 17 講先決定文字如何切成 token,再用 N-gram 把序列機率改寫成可從 corpus 計數的條件機率;tokenization 不是前處理小事,而是模型能看見什麼的第一個設計決定。
第 18 講把 chain rule 截成 N-gram Markov assumption,以 corpus counts 做 MLE,再比較 greedy、categorical sampling 與 temperature;真正的瓶頸是未見 context 的零機率與固定視窗。
第 19 講以兩個 embedding matrices、dot-product similarity、softmax 與 cross-entropy 建立最小 next-token model,讓相似 context 透過共享向量參數取代 N-gram 的獨立計數格。
第 20 講先把單 token embedding 擴成 sequence,以 positional encoding 補順序,再推導 Q/K/V scaled dot-product attention、causal mask 與 multi-head blocks,最後接到 GPT-2。
第 21 講把隨機序列決策寫成已知 dynamics 的 MDP,以 Bellman backup 定義 value 與 Q-value,再用 value iteration 或 policy iteration 求最佳 policy。
第 22 講保留 MDP 骨架,拿掉已知 transition 與 reward 的假設;TD learning 用一步 sample 更新 value,Q-learning 再以 off-policy target 直接學最佳 action values。
第 23 講以 Qθ(s,a) 取代巨大 Q-table:先用 features 線性近似並由 squared TD error 推導 gradient update,再以 replay data 與固定 target network 形成 DQN。
Spring 2026 Lecture 24 是 MCTS,不是 Fall 2026 的 LLM post-training;本講以 selection、expansion、rollout、backup 與 UCB 分配模擬,再由 policy/value heads 與 self-play 接到 AlphaZero。
第一階段把 Lectures 1–12 串成同一條決策鏈:先定義狀態、動作與目標,再用 heuristic、loss、regularization 與 backpropagation 控制龐大搜尋空間。
第二階段不把 CNN 與 Transformer 當兩份架構圖背誦,而是透過 HW8 與 HW11 檢查表示、計算圖、訓練、遷移與生成是否真的接得起來。
第三階段把 value、policy、bootstrapping、function approximation 與 MCTS 接成 AlphaZero:network 提供先驗與估值,search 改善決策,self-play 再產生下一輪資料。
Spring 2026 Lecture 1 聚焦神經元、感知器、連結主義與深度學習問題設定;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 2 聚焦布林電路、網路寬度與深度,以及表示能力不等於可訓練性;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 3 聚焦資料分布、假設、損失、經驗風險與泛化之間的角色;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 4 聚焦梯度、學習率、參數更新與線性神經元的訓練;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 5 聚焦計算圖、chain rule、局部導數與梯度重用;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 6 聚焦非凸損失曲面、曲率、鞍點與 momentum 的累積方向;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 7 聚焦full batch、mini-batch、隨機梯度與二階資訊的成本取捨;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 8 聚焦AdaGrad、Adam、正則化、BatchNorm、Dropout 與 loss 選擇;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 9 聚焦局部連接、權重共享、卷積核與特徵圖;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 10 聚焦stride、padding、receptive field 與多通道卷積;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 11 聚焦卷積架構堆疊、特徵階層與設計取捨;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 12 聚焦CNN 訓練、架構選擇與視覺模型的整體串接;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 13 聚焦序列狀態、時間展開、參數共享與 recurrent computation;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 14 聚焦時間反向傳播、梯度穩定性與 LSTM 類 gated memory;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 15 聚焦可變長輸入輸出、對齊未知問題與 CTC 目標;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 16 聚焦blank、collapse 規則、前綴機率與近似解碼;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 17 聚焦自回歸機率分解、條件語言模型與翻譯解碼;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 18 聚焦query、key、value、scaled dot-product attention 與 Transformer block;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 19 聚焦encoder/decoder 結構、mask、residual path 與架構變體;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 20 聚焦規模化自回歸模型、訓練階段、推論與能力邊界;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 21 聚焦瓶頸表示、重建目標、降維與表示品質;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 22 聚焦latent variable、ELBO、KL 項與 reparameterization trick;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 23 聚焦forward noising、reverse denoising、score/noise prediction 與採樣;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 24 聚焦generator、discriminator、minimax objective 與訓練不穩定;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 25 聚焦message passing、aggregation、node representation 與 permutation symmetry;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 26 聚焦state、action、reward、return、value 與 policy learning;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 27 聚焦聯想記憶、能量函數、固定點與 pattern retrieval;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
Spring 2026 Lecture 28 聚焦能量式機率模型、隨機單元、partition function 與學習困難;本文依官方 slides 與錄影重建主線,並提供不依賴課內 grader 的小型自我檢查。
CMU 11-785 Spring 2026 的 28 講內容都有官方 slides 與 YouTube,另有大量公開 bootcamp/recitation;但 HW1–4 的核心規格、starter 與評測依賴 Autolab、Piazza 和 Kaggle。
要做出 Claude Code 或 Codex 的 TUI,關鍵不是滿版配色,而是長生命期 session、typed transcript 與 tool-boundary approval。
Cognee 是資料到 AI memory 的 pipeline:用 relational store 保存來源與 provenance、vector store 找語意相近內容、graph store 表達 entity 關係,再以 remember、recall、improve、forget 管理生命週期。
CS124 Winter 2026 第一週不是先教 Transformer,而是先畫出從斷詞、分類、檢索到語音與網路的十週路線,並用 PA0 建好後續九週共同使用的 Jupyter 環境。
Week 10 以 anchor text、PageRank 與 centrality 分析 Web graph;post-training、多語與 speech 只歸於檔名及內容標示 2025 的公開 final deck outline,不歸為 2026 現場內容。
Week 2 把文字處理拆成三層:以 BPE 建立 token 詞彙、以動態規劃求最小編輯距離,再以 n-gram 近似序列機率;PA1 把正規表示式與 BPE 變成可執行作業。
Week 3 用 logistic regression 串起文字特徵、sigmoid 機率、cross-entropy loss 與 gradient descent,讓分類不只輸出標籤,也能說明每個特徵如何推動預測。
Week 4 從倒排索引建立候選集,以 tf-idf 與 cosine similarity 排序,再把檢索結果接到生成模型;PA3 要求實作的不是聊天介面,而是 RAG 前半段可檢查的搜尋核心。
Week 5 的公開材料支持 distributional hypothesis、word embeddings 與 cosine similarity;同週 Social NLP 現場課未錄影且投影片受限,具體 audit 方法只作作者延伸。
Week 6 以公開 neural-network slides 建立 weighted sum、nonlinearity、loss 與 backpropagation,再用檔名標示 2025 的公開 LLM/Transformer deck 連到 decoder-only 架構,不視為 2026 現場逐字內容。
Week 7 的可公開主線是 PA6a:實作 causal self-attention、訓練 Shakespeare 小型 Transformer、取樣並計算 perplexity;同週 speech live lecture 未錄影,只能保留為明示缺口。
Week 8 以 PA6b 把文字轉語音再轉回文字,要求分類錯誤、檢查格式遺失與口音偏差;同週 Lab 4 以 Git 與 PA7 協作把課程帶入團隊 agent 專案。
Week 9 以 item-item collaborative filtering 產生電影推薦,再把推薦、web search、database 與 memory 包成 LLM agent tools;PA7 同時把模型非決定性、API 預算與團隊協作變成交付條件。
第 3 講把神經網路訓練拆成計算圖、局部導數與鏈鎖律:forward pass 算結果,backprop 由輸出往回累積梯度,讓每個參數知道自己該往哪裡移。
第 11 講把評估拆成測什麼、怎麼量與何時不再可信:benchmark 會飽和、遭污染或被提示格式左右,LLM judge 也只是帶著自身偏差的模型。
第 9 講比較 prompting、pruning、LoRA、prompt tuning 與 adapters:它們都在回答同一題——要讓一個大型預訓練模型適應新任務,究竟需要改多少參數與儲存多少任務狀態?
第 6 講先補完 Transformer encoder、decoder 與 cross-attention,再把期末專案拆成題型、評分、研究題目與資料來源;好題目必須能用一個明確 baseline 和指標驗證。
Winter 2026 第 1 講用四個時代整理 NLP:早期探索、符號系統、統計機器學習、深度與自監督學習;重點不是背年表,而是看每個時代如何重新定義語言問題。
第 15 講由 Been Kim 客座談 interpretability,但 Winter 2026 官網沒有公開投影片或 agenda;本文不虛構講授內容,只用官方五篇閱讀建立概念發現、agentic investigation 與新詞彙三條閱讀路線。
第 17 講由 Luke Zettlemoyer 客座談 multimodality,但官網沒有公開投影片或 agenda;官方閱讀清單可確認三條主線:視覺推理介面、early-fusion token 模型、文字自回歸加影像 diffusion。
最後一講把 Open Questions in NLP 2026 收斂成 smart scaling:以 prolonged RL、Prismatic synthetic data、RL as pretraining 與開放協作,讓小模型不只靠增加參數追求推理能力。
第 8 講解釋預訓練模型如何經 instruction tuning、偏好資料與 RLHF 變成助理,再以 DPO 直接從勝負配對學習;每一步都把人的判斷轉成訓練訊號,也把偏差帶進模型。
第 7 講把預訓練拆成可擴張資料、subword tokenization、三種模型目標與 in-context learning;核心取捨是用通用的自監督目標換取可重用表示,再用下游訊號指定用途。
第 10 講從問答與 RAG 進入 language agents,再拆成推理規劃、記憶、工具、資料與評估;agent 不是單一模型,而是模型與外部狀態之間可被逐步檢查的迴圈。
第 12 講先證明輸出策略不是小細節:greedy、beam 與 sampling 會產生不同文字;再由 R1-Zero/R1 走進 PPO、GRPO、DAPO,最後追問長推理何時真的有用。
第 13 講從推論效率走到推論能力:speculative decoding 用小模型草擬、大模型驗證;on-policy distillation 處理資料漂移;長上下文與 test-time scaling 則用更多推論資源換取表現。
第 4 講把語言模型定義成下一詞機率分布,再用 RNN 壓縮任意長前文;它同時揭露 recurrence 的核心代價:資訊與梯度都必須沿時間步逐步傳遞。
第 16 講把 NLP 的社會影響拆成四題:模型為何 hallucinate、AI 輔助創作的同質化悖論、工作如何重組,以及價值對齊為何不能化約成單一 reward。
第 18 講由 John Schulman 客座,官方只公布題名 Tinker and LoRA Without Regret、日期與講者,沒有投影片、agenda 或閱讀;因此本篇只保存可確認事實與不可確認清單。
第 14 講從 word、character/byte 與 subword 切分一路走到 BPE failure cases 和跨語言公平:tokenizer 決定序列長度、運算成本與模型看到的語言單位,因此不是中立前處理。
第 5 講從 RNN 的長距離與循序瓶頸走到 self-attention,再組成 Transformer;它縮短位置間的資訊路徑並容許平行計算,但付出二次方 attention 成本與位置資訊必須另行注入的代價。
第 2 講從 word2vec 的預測任務、目標函數與梯度一路走到 count-based vectors 和評估,核心是:詞義不是查表得到的標籤,而是從上下文分布學出的高維座標。
SPINACH 不一次猜完整 SPARQL,而是搜尋 entity/property、查看 Wikidata entry 與 property examples、執行小查詢,再逐步組合完整查詢;action set 與停止規則是可靠性的核心。
CHURRO 以 HDML 表示整頁文字、版面與 metadata,整合跨世紀多語資料訓練 page-level VLM,再把輸出接到 HistoryGenie,讓檔案館材料能被檢索與對話。
最後一講不是完整 LLM 訓練教學,而是資料效率研究:在 compute 充足、資料固定時重看 epochs、batch、ensemble 與 self-training,再研究 synthetic continued pretraining 的可擴展條件。
WikiChat 不把檢索結果直接交給一次生成,而是形成查詢、檢索、過濾、生成、拆主張、再檢索查核與移除無根據內容,並把檢索與事實性分開評估。
Fall 2025 第一講把 CS224V 的主線定成計算思維:不要期待一次提示解決可靠性,而要把檢索、形式表示、查核與生成拆成可測試的演算法。
STORM 用觀點引導的提問、模擬訪談與大綱建立改善研究廣度;Co-STORM 再把人放進迴圈,讓探索未知問題與共同編修成為系統的一部分。
SLIDERS 不讓模型直接吞完所有長文件,而是從問題誘導 schema、做語意切塊與情境化擷取、協調重複列,再用 SUQL 查詢產生答案。
ReactGenie 以 React 元件加 annotations 暴露資料、動作與視圖,將複合語音命令解析成 DSL,並在同一份 UI context 中產生原生圖形輸出。
這堂把病人紀錄與試驗條件各自轉成 SMT,先以較弱的命題邏輯投影做大規模候選檢索,再用 solver 檢查候選;推理可解釋,但 NL-to-SMT 仍是主要錯誤入口。
自動質性編碼先以 codebook 定義事件型別與 arguments,再把長文分類、結構化抽取和 entity linking 分開;受約束 JSON 能保格式,仍不能取代領域專家的覆核。
結構化資料 agent 的可靠路線是把自然語言轉成可執行查詢、處理 schema 與列舉值,再把 query execution 和回答生成分開評估;混合資料則要先判斷該走資料庫還是文字檢索。
SUQL 在 SQL 裡加入 answer 與 summary 兩種自由文字函式,semantic parser 產生一個混合查詢,再由 compiler 做 predicate pushdown、top-k 與 lazy evaluation。
CS224V 把任務型 agent 評估拆成狀態更新與完整互動:先測 semantic parser,再讓真人檢查任務完成、知識查詢與動作是否可靠。
Genie Worksheets 把任務能力宣告成表單式規格,讓 contextual semantic parser 只更新形式對話狀態;查詢、動作與回應由 runtime 依規格執行。
第三講比較大量現代 LLM 後得到的不是一張最佳架構配方,而是一組保守共識:pre-norm、RMSNorm、無 bias、SwiGLU、RoPE,以及少數值得偏離預設的推論與穩定性設計。
第四講沿著兩種稀疏化拆解現代 LLM:linear/recurrent attention 減少序列維度成本,MoE 讓每個 token 只啟用部分參數;兩者都把理論省下的 FLOPs 換成 routing、平衡與通訊問題。
第十四講把 raw documents 經語言辨識、品質與安全 filtering、exact/near dedup、source mixing 送進訓練;每一步都會改變模型分布,而 synthetic instruction 與 agent trajectories 又把資料管線延伸到可執行環境。
第十三講沿著 Common Crawl、Wikipedia、GitHub、arXiv、書籍與歷代開放資料集追溯語料來源;抓得到不等於可合法使用,raw data 也不等於 training data,來源 provenance 必須先於清理與混合。
第十二講從 perplexity 走到考試、聊天偏好、agent、推理與安全評測;每次換 benchmark 都同時換了能力定義、scaffold、judge 與污染風險,因此評分前必須先說清楚到底在比較 method、model 還是完整 system。
第五講從 SM、warp 與記憶體階層解釋 GPU,再用低精度、fusion、recomputation、coalescing 與 tiling 統一常見優化;FlashAttention 正是這些原則在 attention 上的組合。
第十講把 prefill 與 decode 分開:前者能平行、常受算力限制,後者逐 token 且常受記憶體頻寬限制;GQA/MLA、量化、speculative decoding、continuous batching 與 PagedAttention 都在改寫這條成本。
第六講把 GPU 原理落到 kernel:benchmark 看不同尺寸如何縮放,profiler 看實際呼叫與時間,再以 Triton 實作 GeLU、softmax、reduction 與 tiled matmul;快的前提是先量對。
第十七講把 CLIP/SigLIP、LLaVA、Qwen-VL 與 Chameleon 排成三條路:對比式 encoder 學語意、vision encoder+projector+LM 做理解、離散 image tokens 做生成;解析度、token budget 與 modality balance 是共同瓶頸。
CS336 第一講不把「從零打造語言模型」理解成重做所有舊技術,而是先區分 mechanics、mindset 與 intuitions,再用 BPE 示範如何把原始位元組轉成可訓練的 token。
第七講不從 FSDP API 開始,而是用 broadcast、all-reduce、all-gather、reduce-scatter 與 all-to-all 建立通訊語言,再親手組出 data、tensor 與 pipeline parallelism。
第八講把平行化從原語提升到系統設計:ZeRO 逐階切 optimizer、gradient 與 parameter,TP/PP/SP/EP 再分別切 width、depth、sequence 與 experts;組合順序必須服從網路拓撲與動態 activation memory。
第二講把模型訓練還原成 tensor、FLOPs、bytes 與時間:用 einops 管維度,以 arithmetic intensity 和 roofline 判斷瓶頸,再用 gradient accumulation 與 activation checkpointing 交換運算和記憶體。
第十六講從 PPO 走到 GRPO 與 RLVR:數學、程式碼和環境結果提供可規模化 reward,避開一般偏好模型的部分 overoptimization;但 group-normalized advantage 會引入難度與長度偏差,rollout infrastructure 也成為主要成本。
第九講從資料量與 error 的 log-log 線性關係出發,說明 scaling law 如何比較架構、optimizer、batch 與模型資料配置;Chinchilla 爭議也示範擬合方法、資料範圍與部署目標會改變答案。
第十一講從 MiniCPM、DeepSeek、Qwen 與 Llama 3 的公開 recipe 拆解 scaling 實務:先固定大多數架構比例,再用小規模 sweep 找 learning rate、batch 與 IsoFLOPs 配置;μP 有用,但會被 normalization、optimizer 與 weight decay 破壞。
第十五講把 post-training 拆成 imitation 與 optimization:SFT 從 instruction-response data 抽出預訓練已有能力,RLHF 用 pairwise feedback 跨過人類示範與偏好之間的落差;PPO 與 DPO 都逃不掉資料偏差、reward overoptimization 和 mode collapse。
Daytona 把 sandbox 設計成可啟動、暫停、快照與 fork 的長生命週期電腦;2026 年完成 2,400 萬美元 A 輪,Laude Institute 案例一週建立 3.7 萬個 sandbox。它適合平行評測與 coding agent,但核心開源 repo 已停止維護,不能再把託管版與可自架版視為同一件事。
Deepgram 把 streaming STT、LLM orchestration、turn detection、barge-in 與 streaming TTS 放進單一 WebSocket,也保留分開採用語音模型或 BYO LLM/TTS 的路徑。
Dify 把模型、Knowledge、視覺化 Workflow、Agent、Plugin 與應用 API 放在共同 workspace;本文會實作一條可測試、發布並由 API 呼叫的最小 Workflow,再說明何時才該換成 Agent。
DSPy 不把 prompt 當手寫字串,而以 Signature 宣告任務、Module 決定執行策略,再用資料集與 metric 讓 Optimizer 編譯出較好的提示與示例。
E2B 把 Template、Firecracker microVM 與檔案/程序/網路 API 組成 agent 專用執行層;真正的選型優勢是可暫停並保留記憶體與程序,而不是單純多一個 code interpreter。
ElevenLabs 已從 TTS 供應商擴成 ElevenAgents 平台:Scribe Realtime 收音、Flash 合成語音,再把 LLM、turn-taking、工具與電話整合收進同一條即時管線;選型關鍵是你要聲音品質,還是整個 agent 控制面。
Fireworks AI 把開放權重模型的試用、專用 GPU 部署與 LoRA 客製化放在同一套 API 後面;Serverless 適合低流量起步,On-demand 適合穩定高流量與自有模型,保留容量則換取企業級的容量保證。
Flowise 用 Assistant、Chatflow 與 Agentflow 三個入口涵蓋簡易助理、單一 Agent 和多 Agent 編排;但官方已在 2026 年 8 月封存 repository,並排定 8 月 31 日 EOL,新案不應在沒有維護 fork 與遷移方案時採用。
Galileo 把 dataset experiment、LLM/code/Luna evaluator、production traces 與 runtime guardrail 接成一個迴圈;適合需要企業級可觀測性與線上介入的團隊,但舊 Protect 名稱已 deprecated,評分模型也不能取代人工校準與應用安全。
2026 年 8 月,不只五個框架在動。OMP 2、Pi v2、Opencode 2、dsh、Claude Code 之外,Google(Antigravity CLI)、Meta(Muse Code)、xAI(Grok Build)三家模型商直接下場做 coding agent,加上 Amp、Cline 2.0、Codex CLI Rust 重寫,共八個以上框架同時有架構級變動。再算進 110+ 個 CLI 工具,H2 2026 是 harness 方法論的分裂期。本文從四條架構路線、一個共同方向、一場信任危機拆解。
Haystack 把 indexing、retrieval、generation 與 evaluation 都做成可替換的 Component,再用 directed multigraph Pipeline 串接;適合要把 RAG 流程當成程式資產測試、版本化與部署的 Python 團隊。
Helicone 是開放原始碼的 LLM Gateway 與觀測平台:請求經過相容端點後,自動留下模型、延遲、token、成本與自訂欄位;它也能用 managed credits 或 BYOK 路由與 fallback。
Hugging Face Hub 是以版本化 repository 串起模型、資料集與應用程式的協作層;Datasets 管資料,Spaces 跑展示程式,Inference Providers 與 Endpoints 才負責代管推論。
Hyperbrowser 把 Playwright/Puppeteer 的 Chrome session、proxy、stealth、profile 與錄影包成託管 API;它適合要快速擴充真實瀏覽器工作的 Agent,但 profile 憑證、反爬蟲合規與 proxy 流量成本仍由應用端負責。
Jina Reader 把單一 URL 轉成適合 LLM 使用的 Markdown;真正上線時,還要控制渲染時機、正文範圍、token 上限與失敗回退。
LanceDB 以 Lance 欄式格式保存向量、metadata 與多模態原始資料;OSS 可直接嵌入 Python、TypeScript 或 Rust 程序,資料放大或多人共用時再轉向分散式 Enterprise。
LangChain v1 用 create_agent 提供高階 agent loop,底層由 LangGraph 執行;工具、structured output 與 middleware 是正式擴充邊界。
LangSmith 把 LLM 應用拆成 project、trace、run 與 thread,再用 dataset、evaluator 與 experiment 把 production 問題送回離線回歸測試;它可觀測任何 LLM 應用,不要求使用 LangChain。
Letta 延續 MemGPT 的作業系統類比,但它不是單一 memory API:agent state、可編輯的 in-context memory blocks、conversation history 與外部 archival memory 都由 runtime 持久化,模型也能透過工具主動整理記憶。
LiteLLM 不是模型供應商,而是一套可當 Python SDK 或自架 Proxy 使用的統一介面:把 100+ 家 LLM API 轉成一致格式,並在 Gateway 層集中處理路由、fallback、虛擬金鑰、預算與觀測。
LiveKit 把語音 agent 建模成 realtime media room 裡的 server participant,再由 AgentSession 串接 STT、turn detection、LLM、TTS 與 interruption。2026 年完成 1 億美元 C 輪、估值 10 億美元;它適合需要 WebRTC、多端 client、電話與可替換模型的產品,但自架 media server 不等於自架整條 AI pipeline。
Mastra 是 TypeScript agent 框架,將 agent、typed workflow、memory、MCP、tracing 與 scorers 放進同一套 Node.js 開發環境。
Mem0 是介於 agent 與儲存層之間的記憶服務:從對話抽出值得保留的事實,以 user、agent、run 分區,再於下一次生成前搜尋;優勢是 API 簡單,風險則是抽取錯誤、過期記憶與權限邊界。
Milvus 把即時寫入、歷史查詢、索引建置與持久化拆成可獨立擴縮的元件,適合需要大量向量、持續更新與分散式維運的檢索服務;小型專案則常會為這套架構付出過多複雜度。
2026 第 1 講從感知器、前向傳播、loss 到 gradient descent,建立後續九講共用的語言。
2026 第 2 講處理文字、音訊與時間序列中「順序會改變意義」的問題,並連到 Lab 1 的音樂生成。
2026 第 3 講從影像張量、卷積與 pooling 走到辨識系統,替 Lab 2 的 MNIST 與臉部偵測打底。
2026 第 4 講區分生成與判別問題,整理 VAE、GAN 與 diffusion 的學習目標,並接到 Lab 2 的 DB-VAE。
2026 第 5 講把 agent、environment、state、action、reward 與 policy 接成互動迴圈,理解信用分配與探索。
2026 第 6 講把深度學習放進新應用與真實限制,提醒讀者先定義資料、輸出、評量與失敗條件。
2026 第 7 講從 Asimov 的文學法則出發,討論現代 AI 安全協定的限制,以及 trace、測試資料與持續評估。
2026 第 8 講以科學發現循環為主線,說明 simulator、AI emulator 與實驗如何合作,而不是把科學簡化成通用預測。
2026 第 9 講從 GPU 記憶體壓力進入 checkpointing、offloading、ZeRO、FSDP 與多種 parallelism,理解擴展不是只加卡。
2026 先完成 PyTorch tensor、autograd 與 module 基礎,再把 ABC 樂譜切成字元序列,訓練 LSTM 逐字生成音樂。
2026 Part 1 用 dense network 與 CNN 辨識 MNIST;Part 2 以 DB-VAE 學習臉部 latent distribution,再調整訓練取樣。
2026 以 LFM2-1.2B 建立 chat template 與生成流程,用 LoRA 做風格調適,再透過 OpenRouter 與 Opik 組合 judge workflow。
n8n 是 automation-first 平台:先由 webhook、排程或應用事件啟動 workflow,再把 AI Agent 放進其中選工具;真正上線前還要處理 memory、人工核准、credentials、執行紀錄與擴充架構。
OpenRouter 用 OpenAI 相容 API 統一多家模型與推論端點,並把供應商排序、故障切換、BYOK 與零資料保留政策放進同一套路由規則。
火山引擎開源 OpenViking 把 agent 的記憶、知識、技能存成 viking:// 虛擬檔案系統,用 ls、tree、find 就能翻。三層載入(L0/L1/L2)讓平均檢索只用 550 tokens,LoCoMo 記憶準確率從 24–57% 提升到 80–83%。
Parallel Web Systems 把 Search、Extract 與 Task API 分成三個成本與延遲不同的網路存取層,並以 Basis 把引用、摘錄與信心標到輸出欄位。
Patronus AI 把 evaluator 當成可重用評分單元,再接到離線 experiment 與線上 trace;它適合要現成幻覺、安全與多模態評估模型的團隊,但 judge 分數不能取代人工標註、確定性測試或真正的資安驗證。
pgvector 是 PostgreSQL extension,不是獨立向量資料庫;它用同一份資料模型、交易與維運工具承接精確或近似向量搜尋,代價是索引調校與水平擴充仍屬 PostgreSQL 問題。
Portkey 是放在應用程式與模型供應商之間的 AI Gateway:用一個 OpenAI 相容端點統一路由、fallback、用量紀錄、預算與 guardrails,也能自行架設開放原始碼 gateway。
私有搜尋的授權必須在候選生成前生效,並把 ACL、刪除事件與來源版本傳到每一份衍生索引;freshness 也要用可量測的事件時間與 SLA 管理。
私有語料管線的第一個決定不是選向量資料庫,而是列出資料分級、信任區、權限決策點與 freshness SLA;索引、模型和觀測系統都只能收到被允許的最小資料。
Repo 已有 20 題繁中/英文 golden dataset,但缺少文件層級 qrels、retrieval run、延遲原始值與執行 script;目前不能誠實報 Recall@k、MRR 或 nDCG 實測分數。本文把缺口整理成可重跑的評估契約。
私有語料同步的核心不是定時重抓,而是用 canonical ID 固定文件身分、用來源版本與 checksum 判斷變更、用冪等 upsert 寫入,並讓 tombstone 走完所有索引的刪除傳播。
Promptfoo 用 YAML 把 prompts、providers、test cases 與 assertions 組成可在本機與 CI 重跑的 LLM 評估矩陣,並共用同一套 target 做 red team;它降低測試門檻,但隨機輸出、LLM judge 偏差與 hosted data flow 仍要另外治理。
Pydantic AI 把 Agent 寫成 Agent[Deps, Output]:依賴、工具輸入與最終輸出都有型別,模型結果必須通過 Pydantic 驗證。
R2R 把文件匯入、hybrid search、knowledge graph、RAG、Agent 與權限包在 REST API 後面;適合已有產品前後台、只想補上 retrieval service 的團隊。
LlamaIndex、Haystack 是以程式碼為主的框架;RAGFlow、Dify 是帶管理介面的平台;R2R 則把檢索系統包成 API 服務。先決定團隊要保留多少 ingestion、retrieval 與營運控制權,再選工具。
RAGFlow 把文件解析、chunk 人工檢查、retrieval test、聊天與引用放在同一套平台;適合 PDF、表格與版面複雜文件,但部署重量和平台狀態都高於 Python library。
Runloop 把隔離 microVM、可重現映像、磁碟分支、憑證代理與 eval 放進同一套程式開發 Agent 基建;官方案例已公開單一工作負載突破 10,000 個並行 Devbox。
Sail Research 讓每個推論 request 宣告 completion window,把可等待的背景 Agent 排到較便宜的運算資源;並以 Sailboxes 補上長時間執行環境。
可靠引用不是在答案後面塞 URL:先把 URL、內容副本與來源獨立性拆開,再用 atomic claim、quote span、snapshot 與可重跑檢查建立 claim-source matrix。
SerpAPI 的核心是代管搜尋結果頁的抓取與解析:用 engine 指定來源,取得結構化 SERP,再自行處理地區、分頁、非同步輪詢與結果驗證。
Serper 是第三方 Google SERP API:用一個 POST 請求取得 organic、knowledgeGraph、peopleAlsoAsk 等結構化 JSON;真正上線前仍要驗證選填欄位、URL、重試與引用證據。
Slack Code 把 AI coding agent 從開發者的終端搬進 Slack 頻道,讓團隊即時看到 diff、預覽與計畫。但它解決的是管理層的透明度焦慮,不是工程師的生產力瓶頸——真正的戰場在「誰當 agent 的控制平面」。
Stanford CS221 Autumn 2025 第 1 講,從 Overview:用資源限制定義智慧建立可操作的 AI 問題表示與演算法直覺。
Stanford CS221 Autumn 2025 第 2 講,從 Learning I:從計算圖到線性迴歸 建立可操作的 AI 問題表示與演算法直覺。
Stanford CS221 Autumn 2025 第 3 講,從 Learning II:線性分類、特徵與交叉熵 建立可操作的 AI 問題表示與演算法直覺。
Stanford CS221 Autumn 2025 第 4 講,從 Learning III:深度網路是可重複組合的計算圖 建立可操作的 AI 問題表示與演算法直覺。
第 5 講把搜尋問題寫成 state、action、successor 與 cost,並用 acyclic dynamic programming 說明:狀態若遺漏未來所需資訊,再快的演算法也只會解錯問題。
Stanford CS221 Autumn 2025 第 6 講依官方材料拆解 Search II:UCS 與 A* 的優先順序,並標出方法成立的假設與限制。
Stanford CS221 Autumn 2025 第 7 講依官方材料拆解 MDPs I:把隨機性放進狀態轉移,並標出方法成立的假設與限制。
Stanford CS221 Autumn 2025 第 8 講依官方材料拆解 MDPs II:不知道轉移模型時如何學 Q 值,並標出方法成立的假設與限制。
Stanford CS221 Autumn 2025 第 9 講從 tabular RL 走到 function approximation,再用 log-derivative identity 推出 REINFORCE,最後落到可執行的 PyTorch 更新。
第 10 講把單一 agent 搜尋擴成 adversarial game tree:expectimax 對 chance 求期望、minimax 對對手取最差結果,alpha-beta 則在不改答案下剪掉無關分支。
第 11 講先用 temporal-difference updates 從遊戲經驗學 value,再從 sequential play 轉向 simultaneous games,以 mixed strategies、minimax guarantee 與 Nash equilibrium 描述穩定策略。
第 12 講用 random variables 與 factors 建 joint distribution,再以 Bayesian-network factorization 表達 conditional independence,讓 conditioning 與 marginalization 成為可執行的 probabilistic inference。
第 13 講在 exact inference 太昂貴時改用 Gibbs sampling:每次只重抽一個變數,僅依 Markov blanket 計算 conditional distribution,並以樣本頻率近似查詢機率。
第 14 講從 complete data 的 maximum-likelihood counts 與 Laplace smoothing,走到 latent variables 下交替計算 posterior responsibilities 和更新參數的 EM。
第 15 講分開 propositional logic 的 syntax 與 semantics:model checking 用 satisfying assignments 定義 entailment,SAT solver 找見證,inference rules 則必須同時檢查 soundness 與 completeness。
第 16 講用 predicates、quantifiers 與 functions 壓縮跨物件知識,再以 substitution、unification 與 definite-clause forward inference 推導結論,同時標出 termination 與 completeness 限制。
第 17 講把 language model 定義為 sequence probability 的 chain-rule factorization,對照 n-gram 與 neural conditional models,並說明 sampling、temperature 與 evaluation 如何改變生成結果。
第 18 講用 benefits、misuse、accidents 與 structural harms 分類 AI 社會影響,再把 fairness audits、研究倫理、著作權與平台條款接回可追責的制度選擇。
Lecture 19 用 Economics of AI deck 把 AI 的 compute、data、distribution 與組織互補品接到 GDP、勞動與 ideas 的成長路徑。
第 20 講是 Percy Liang 談職涯研究、CS221/Stanford 與 AI 未來的 fireside chat;每項歸因都連回官方影片,編者整理則與自動字幕的不確定性分開。
依 Fall 2025 官方投影片逐段整理第 1 講,涵蓋 課程地圖與工具、圖資料的共同語言、傳統特徵與表示學習,並標出自學者拿不到的課堂材料。
依 Fall 2025 官方投影片逐段整理第 2 講,涵蓋 編碼器—解碼器觀點、鄰近度與目標函數、隨機漫步,並標出自學者拿不到的課堂材料。
依 Fall 2025 官方投影片逐段整理第 3 講,涵蓋 從固定 embedding 到深度編碼器、message passing 框架、聚合與更新,並標出自學者拿不到的課堂材料。
依 Fall 2025 官方投影片逐段整理第 4 講,涵蓋 GNN 設計空間、訊息、聚合與更新、GraphSAGE,並標出自學者拿不到的課堂材料。
依 Fall 2025 官方投影片逐段整理第 5 講,涵蓋 圖資料 augmentation、特徵與結構 augmentation、supervision 與 loss,並標出自學者拿不到的課堂材料。
依 Fall 2025 官方投影片整理第 6 講,涵蓋 什麼叫可區分、Weisfeiler–Lehman test、message passing 的上界,並標出無法公開取得的課堂材料。
依 Fall 2025 官方投影片整理第 7 講,涵蓋 完美 GNN 的思想實驗、標準 GNN 的三層失敗、identity-aware encoding,並標出無法公開取得的課堂材料。
依 Fall 2025 官方投影片整理第 8 講,涵蓋 self-attention 與 message passing、圖上 attention 的範圍、位置與結構編碼,並標出無法公開取得的課堂材料。
依 Fall 2025 官方投影片整理第 9 講,涵蓋 異質圖 schema、relation-specific messages、R-GCN,並標出無法公開取得的課堂材料。
依 Fall 2025 官方投影片整理第 10 講,涵蓋 知識圖譜與 completion、三元組 scoring、TransE 與關係模式,並標出無法公開取得的課堂材料。
依 Fall 2025 官方投影片整理第 11 講,涵蓋 推薦系統的圖表示、matrix factorization baseline、NGCF 的訊息傳遞,並標明公開材料邊界。
依 Fall 2025 官方投影片整理第 12 講,涵蓋 表格 pipeline 的限制、關聯式資料庫轉圖、temporal entity graph,並標明公開材料邊界。
依 Fall 2025 官方投影片整理第 13 講,涵蓋 RDL 的多關係瓶頸、RelGNN composite message passing、relation-specific aggregation,並標明公開材料邊界。
依 Fall 2025 官方投影片整理第 14 講,涵蓋 relational foundation model 的目標、zero-shot relational transfer、PRODIGY 的 prompt graph,並標明公開材料邊界。
依 Fall 2025 官方投影片整理第 15 講,涵蓋 transductive KG embedding 的邊界、entity-inductive link prediction、relation graph,並標明公開材料邊界。
依 Fall 2025 官方投影片整理第 16 講,涵蓋 LLM 與 GNN 的互補缺口、text-attributed graphs、LLM as predictor or encoder,並標明公開材料邊界。
依 Fall 2025 官方投影片整理第 17 講,涵蓋 從 graph QA 到 agent、STaRK 的多模態檢索、工具使用與 traversal,並標明公開材料邊界。
依 Fall 2025 官方投影片整理第 18 講,涵蓋 圖生成問題與資料表示、生成品質的評估、GraphRNN 的 autoregressive factorization,並標明公開材料邊界。
Fall 2025 Conclusion deck 在 32 個 tasks 上研究約 315K 個 GNN designs:先跑少量 anchor models,以 ranking 描述 task similarity,再從相似 task 轉移 best designs。
線性迴歸不只是一條最佳直線;第一章用平方損失串起梯度下降、常態方程、最大概似估計與局部加權迴歸。
第二章從 sigmoid 機率模型推導邏輯斯損失,再比較感知器、多類別 softmax 與 Newton 法。
第三章用指數族、自然參數與連結函數,把最小平方法和邏輯斯迴歸放進同一套建模模板。
第四章改從 p(x|y) 與 p(y) 建模,用 GDA、Naive Bayes 和 Laplace 平滑展示生成式分類的力量與代價。
第五章把高維特徵的內積改寫成 kernel,讓依賴內積的線性演算法在不顯式建立特徵的情況下學非線性。
第六章把分類信心形式化為幾何間隔,再用拉格朗日對偶、kernel 與 SMO 建出可實作的 SVM。
第七章把神經網路拆成可組合模組,並用反向傳播與向量化說明深度模型如何有效率地訓練。
第 8 章把測試誤差拆成不可避免雜訊、偏差平方與變異,再用 uniform convergence 與 VC dimension 說明模型何時能從訓練資料泛化;雙降則提醒我們,參數數量不是萬用的複雜度尺度。
第 9 章把泛化控制拆成三條路:在損失中顯式懲罰複雜度、利用最佳化器偏好的隱式正規化,以及用未參與訓練的資料選模型;MAP 則說明高斯先驗如何對應 L2 懲罰。
第 10 章用 k-means 建立非監督式學習的第一個完整演算法:交替更新會讓 distortion 單調不增並在數值上收斂,但不保證得到全域最佳解。
第 11 章從高斯混合模型的軟指派出發,用 Jensen inequality 建立 ELBO,將 EM 解釋為對變分分布與模型參數的交替最大化,再以近似後驗與 reparameterization trick 延伸到 VAE。
第 12 章把 PCA 寫成一個幾何最佳化問題:在單位方向上最大化投影變異,解就是共變異矩陣的主特徵向量;取前 k 個特徵向量,同時得到保留最大變異與最小線性重建誤差的低維表示。
第 13 章把 ICA 建模為 x=As:觀測是未知線性混合,目標是估計 W=A^{-1} 恢復獨立且非高斯的來源。變數變換的 Jacobian determinant 進入 likelihood,導出 Bell–Sejnowski 的梯度更新。
第 14 章從固定的高斯加噪 Markov chain 出發,學習逐步反轉每個 transition;ELBO 把 reverse-kernel matching 化成加權雜訊預測,連續時間觀點則用 score ∇log p_t 解釋反向漂移。
第 15 章比較線性探測、完整微調與 LoRA:差別不只在可訓練參數量,也在表徵是否移動、資料需求與記憶體成本。
第 16 章把表徵學習連到實際系統:對比目標塑造向量空間,語意檢索在其中找鄰居,RAG 再把取回內容交給生成模型。
第 17 章從 next-token loss 推到 Transformer、KV cache、MoE 與 SFT,說清楚 LLM 的訓練目標、架構與推論成本如何連在一起。
第 18 章把 LLM 推理拆成兩個槓桿:推論時用思維鏈增加計算,訓練時用可驗證獎勵與 policy gradient 學出長推理行為。
第 19 章用 Bellman 方程把長期決策拆成一步更新,並從已知 MDP 的 value iteration 走到模型學習與連續狀態近似。
第 20 章利用線性動態與二次目標得到可解的 LQR,再以 DDP 處理局部非線性、以 Kalman filter 與 LQG 處理不可直接觀測的狀態。
第 21 章從 log-derivative trick 推出 REINFORCE,再用 reward-to-go、baseline 與 PPO clipping 控制 policy-gradient 的高變異與更新幅度。
Steel 用 Apache-2.0 runtime 把 Chromium session、CDP、proxy、stealth 與除錯介面包成同一套 browser API;公開 repo 約 7,400 stars,並在 2026 年進入 Stripe Projects developer preview。單機自架適合開發與資料邊界,Cloud 才解決高併發、託管 proxy、CAPTCHA、錄影與 SLA。
Together AI 把開放權重模型的 Serverless API、專屬 GPU 端點、批次推論與 Fine-tuning 放在同一平台,適合先按 token 驗證,再在流量或客製化需求成形後升級部署。
把 Anthropic 的 session 成本建議做成全域 skill,第一版就犯了它要防的錯:description 塞滿觸發關鍵字、用檔案數和分鐘數當硬門檻、把「保護主 context」和「省總 token」混成一件事。三輪修正後入口縮到一頁,細節拆進 references,數量門檻換成四個判斷維度,草稿裡的主張則逐條對官方文件查證。
Vapi 把電話與 Web 音訊、STT、LLM、TTS、tool calls 和 call observability 接成託管 voice runtime;可換 provider,卻不能搬走 Vapi 專屬的即時編排。官方 2026-05 自報已有 100 萬名開發者,並宣布 5,000 萬美元 B 輪。
Vercel Sandbox 用 Firecracker microVM 隔離不受信任的程式碼,搭配 Fluid compute、Active CPU 計價與 Vercel OIDC;它最適合已在 Vercel 上運行的 Agent,但網路預設值、記憶體計費與持久化生命週期仍要自己設計。
Vertex AI 不是只有 Gemini API,而是把 200+ 個模型的取用、訓練、評估、部署與治理放進同一個 Google Cloud 控制面;2026 年 4 月後,它的產品與後續藍圖已併入 Gemini Enterprise Agent Platform,但 Vertex AI API、文件路徑與既有資源名稱仍大量存在。
抽取工具不能只比 HTTP 200;同一組 20 個 URL 要分別量正文、heading、table、code、link、metadata、雜訊、延遲與成本。本文先公開 corpus、adapter contract 與評分 gate,但因目前缺 Firecrawl credential 與四條同版本 raw run,尚不發佈勝負。
Zep 的核心不是向量化聊天紀錄,而是把 episode 抽成帶有效時間的 entity 與 fact,讓新資訊使舊關係失效但不抹掉歷史;Graphiti 是開源核心,Zep 則是代管與治理層。
Agent Plugins 1.0 是一個封裝格式標準,把 Agent Skills(Markdown 指令)和 MCP server 設定包成一個目錄,讓同一個 plugin 能被 ChatGPT、Cursor、GitHub Copilot、Kiro、VS Code 直接載入。它不是新的協議,是協議之上的包裝紙。Vercel 發起,OpenAI、AWS、Microsoft、Cursor 共同制定,Google 發佈當天加入——Anthropic 不在治理名單上,但 MCP 團隊正面回應。
AgentQL 用接近資料結構的語意查詢取代易碎的 CSS/XPath:`query_data` 回傳結構化資料,`query_elements` 回傳可操作的 Playwright locator。Starter 公開方案列出每月 50 次免費 API 呼叫,但超額、綁卡與遠端瀏覽器時數的實際停止規則仍要在 Billing 頁確認。
Apify 不是單一 crawler,而是把爬取程式包成 Actor,再用 Task 固定設定、Schedule 觸發執行、Dataset 交付結果的平台。適合不想自己維護佇列、排程與執行環境的團隊,但 Actor 費用、運算、proxy、儲存與傳輸會共同消耗預付額度。
Browser Use 把瀏覽器狀態、模型決策與 click/type/extract 等動作組成可重複迴圈;開放原始碼版本適合自訂工具與執行策略,Cloud 則代管瀏覽器、profile、proxy 與並行工作。
changedetection.io 是網頁變更訊號層:先縮小監控範圍、排除雜訊,再把真正的變更通知下游;它不是搜尋 API,也不該取代 crawler。
站上把 MCP 寫得很齊,卻從沒寫過它下面那一層:agent 要代表一萬個終端使用者去讀他們各自的 Gmail 時,refresh token 存在誰家、怎麼更新、怎麼撤銷。Composio 是這層目前最完整的一家——SDK 是 MIT,執行與託管 OAuth 是雲端服務;官方自稱 1,000+ toolkit,但託管 OAuth 清單實際列出 121 個,另外 96 個要你自備憑證。2026-08-15 起的新價目:免費 10 萬次 tool call、Pro $29/月。這篇拆它的授權模型到可操作的深度,並劃出「自己接 MCP server」與「用整合平台」的分界。
Chroma 的對照實驗證明:就算塞得下,塞滿也會變差。於是各家 coding agent 發展出七種對策——壓縮、換手、剪枝、少載入、隔離、進模型、換單位。Amp 直接移除 /compact,Atlassian 說摘要該是最後手段,Cursor 的 A/B 測出 46.9% token 降幅。三場分歧的根源不是誰對,是各自在衡量不同的東西。
Crawl4AI 負責 URL 之後的抓取與抽取:穩定 DOM 先用 JsonCssExtractionStrategy,只有語意判讀或版面不規則時才切 LLMExtractionStrategy。
CrewAI(GitHub 57.4k star,MIT,PyPI 週下載 1,164 萬)用角色(role)、目標(goal)、背景故事(backstory)定義 agent,再把一組 agent 編成 crew 來協作。跟 LangGraph 的圖優先和 MAF 的工作流優先不同,CrewAI 是團隊優先——你不畫節點和邊,你描述一個團隊裡每個人負責什麼。2024 年底完成 LangChain 依賴的全面移除,現在是獨立框架。商業端分開源套件與 AMP 託管平台,AMP 加的是視覺化建構、部署、追蹤與合規。
Exa 把整個網頁索引轉成 embedding 再檢索,而不是比對關鍵字。2026-08 官方定價:/search $7 / 1k 次(含前 10 筆結果)、/contents $1 / 1k 頁、deep 系列 $12–15 / 1k 次,新帳號 $20 免費額度。這個 blog 的 CLAUDE.md 把 Exa 列在雲端抓取工具的第一順位,38 支 skill 裡有 16 支寫到它,站上既有文章只有 4 篇順帶提過——但一篇專文都沒有。這篇補上。
Firecrawl 把單頁抓取、網站探索、整站爬取與 JSON 抽取包成同一套 API;雲端版省下瀏覽器、proxy 與 worker 維運,自架版則換得基礎設施控制,但預設能力不等同雲端。
免費方案有每日或每月額度、餘額補回、持續限速與一次性試用;有些 API 沒有免費額度,必須預付或按量計費。
Linkup 把搜尋深度與輸出格式分開控制:多數 agent 查詢先用 standard + searchResults,需要循線讀多頁才升到 deep;每月補回 20 美元是餘額恢復,不是固定再送 20 美元。
LlamaIndex(GitHub 51,775 star,MIT,2026-08-21 實查)的重心已經從索引搬到 Workflows:獨立套件 llama-index-workflows 的 PyPI 週下載 281 萬,比傘狀套件 llama-index 的 197 萬還高。這篇拆核心抽象、跟自己刻 pipeline 的取捨,並實測它在繁中語料上的預設值——同樣的 chunk_size=1024,英文裝得下 4,645 字元,繁中只有 1,332。另附一個選型前必看的事實:TypeScript 版已封存停更。
Meilisearch 適合把應用程式資料做成快速、容錯的全文搜尋;真正的導入難點不在 search API,而在索引設定、非同步 task、中文分詞、權限過濾與備份還原。
微軟把 Semantic Kernel 與自家 AutoGen 合併成 Microsoft Agent Framework,2026-04-02 發 1.0 GA(.NET 與 Python,Go 仍是 public preview)。被收編的 autogen-agentchat 停在 2025-09-30 沒再發版;但原作者那側的社群分支 AG2 沒有合併,六天前還在發 1.0.2,而且 `pip install autogen` 裝到的是 AG2 不是微軟。這篇拆解 MAF 的抽象、遷移時程,以及這團名字到底該怎麼讀。
MIT 6.S191 的 2026 版已公開九講影片、投影片、三個 software labs 與解答,足以列為 A3 自學課;但官方執行路線需要 Google/Colab、Comet,以及 Lab 3 的 OpenRouter,校外讀者也拿不到 MIT 的學分、專案回饋與 API credit。
Modal 是按秒計費的 serverless GPU 平台,同時把 agent sandbox 做成一級公民(官方自報累計啟動逾 10 億個 sandbox、佔營收三分之一以上)。選型的關鍵不是它多方便,是你的 GPU 使用率:2026-08-21 實查,Modal A100 80GB 折算 $2.50/hr、RunPod 同卡 $1.59/hr,使用率超過六成四自己開機器就比較便宜;但同一天 H100 SXM Modal $3.95/hr、Lambda $3.99/hr,這張卡的溢價幾乎是零。
Qdrant 的核心不是把 embedding 存進去,而是先固定 vector schema、替高頻過濾欄位建 payload index,再用 dense + sparse query、租戶邊界、snapshot 與監控把檢索做成可維運的服務。
Scrapling 把 HTTP、Playwright 瀏覽器、CSS/XPath 抽取與 Spider 放進同一套 Python API;adaptive selector 會保存元素特徵,版面改動後再用相似度重新定位,但仍需要驗證輸出。
SearXNG 是元搜尋引擎,不是 crawler,也沒有自己的全網索引。這篇以官方 2026.8.20 文件為準,從 Compose 安裝、settings.yml、引擎選擇與 JSON API,一路做到空結果診斷。
三個元件、各做一件事:SearXNG 負責找、Crawl4AI 負責讀、一層薄薄的程式把兩者黏起來。有三個預設值不改就不會動——`formats` 預設只吐 HTML、`secret_key` 預設是 `ultrasecretkey`、limiter 開了會擋你自己的程式。另外官方安裝方式在 2026 年 3 月換過,網路上多數教學指的 searxng-docker 已經封存了。
Tavily 和 Exa 都是純雲端 API,不能自己架。能自己組的是 SearXNG(269 個上游引擎、82 個預設開啟)+ Crawl4AI(78.8k stars、Apache-2.0),現成的 Tavily 相容 wrapper 都還是幾十顆星的個人專案,不建議直接用。但 SearXNG 沒有自己的索引,而且從機房 IP 跑會被搜尋引擎打成空結果——這兩件事決定了自架划不划算。
CS124 是 Stanford NLP 分支的第一門課,教科書是 Jurafsky 自己免費放在網路上的《Speech and Language Processing》,九個作業 repo 全部公開。但課程網站首頁掛著一行公告:2026–27 學年整年不開。而且那份課綱指定的章號,已經跟 2026 年 8 月版的教科書對不上了。
CS221 把 AI 排成一條軸:反射式模型(也就是深度學習)在最低階那一格,往上是狀態、變數、邏輯。2025 年秋季 Percy Liang 接手後把講義換成可執行的 Python,並在第一堂的原始碼裡寫下『Cut constraint satisfaction problems :(』——但 ExploreCourses 與 Stanford Online 兩個官方頁面到現在還把約束滿足列為課程主題。專案已經從 2019 年的兩成成績掉到只剩加分。
CS224N 把 2000 年以來每一屆的課程網站都留在線上。2019 冬季那版,Transformer 是第 14 堂的客座講題;2026 冬季那版,它是第 5 堂,之後每一堂都預設你已經懂它。機器翻譯作業整個消失了,第三份作業改成自己刻一個 decoder-only Transformer,附 pytest 可以在筆電上跑。
CS224U 的教材不是投影片,是一個 Apache-2.0 的 GitHub repo,講義、作業、評分文件全在裡面。但校內班從 2023 年春季之後連停三個學年,ExploreCourses 一度把它排回 2026-27 春季,2026-09-29 重查時那一節又撤掉了;官方課程描述至今仍列著 relation extraction 與 semantic parsing,2023 年的講次表一堂都沒有。第一份作業的資料載入 cell 在今天的新環境會卡在 Hugging Face 的相容性改動上。
CS224V 的課名在 2026-2027 學年才從 Conversational Virtual Assistants 換成 Agentic AI,但底下的東西沒換:把自然語言翻成形式語意、用 SMT 與知識圖譜約束 agent,而不是拼框架。閱讀清單十一篇 Mandatory 裡,七篇出自授課者自己的實驗室。投影片全公開,課程網站卻明講它們是刻意殘缺的。
CS224W 的六份 Colab 現在全部可以直接下載開跑,第一份只用 NetworkX,連 PyG 都不用裝。但期末考佔 35%,是全課最大一塊,而它是閉書實體考。公開錄影停在 2021 年,涵蓋不到現在課表後半的 graph transformer、關聯式深度學習與 LLM+GNN。
CS228 的官方先修就一句『basic probability theory and algorithm design and analysis』,沒有指定任何前置課程。但 ExploreCourses 顯示它最後一次開課是 Winter 2024,下一次排在 2026-27 冬季、講師欄還空著。自學者真正拿得到的是那份公開講義 cs228-notes:16 章寫完,最後一次改動停在 2025 年 6 月。
CS229 的自學三件套不在同一個時鐘上:講義 278 頁、2026 年 8 月才重編過;公開拿得到的作業是 2020 年夏季那批;Stanford Online 叫你入學前先做的自測題,PDF 建立於 2008 年。2026 春季錄影公開 17 支,最後三支的標題跟內容對不上。
CS25 是 Stanford 的 1 學分 seminar,唯一作業是出席,全程對外開放。2026 春季第六季九場講座裡,最值得看的三場是 Albert Gu 談 SSM 與 Transformer 的歸納偏誤、Charles Frye 談上千張 GPU 的推論服務、Victoria Lin 談原生多模態還沒解決什麼。
CS329Z 是 Stanford 2026 年秋季新開的三學分 agent 工程課。第一份作業禁用任何 agent 框架,只准用一個 chat-completion 呼叫加自己的程式碼,在真實企業 email 封存上從 RAG 管線一路長成帶工具、終端機、記憶與人類審核的 agent harness。DSPy 還在課堂上,但已經不在作業裡。課程網站架在公開的 GitHub repo 上,commit 紀錄留下了每一次課綱改版:作業從三份砍成兩份,互評長成兩成分數,專案主題也從鎖死改成自選。
CS336 的十七堂正課裡,只有九堂是可以執行的 Python 程式,另外八堂是 PDF 投影片——分界線剛好是兩位授課者。第一份作業的講義有八個「低資源提示」教你怎麼在筆電上做完,第二到第五份一個都沒有。課程頁自己列了 B200 的每小時單價,作業講義自己列了每題要幾個 B200 小時。
Tavily 把 Search、Extract、Map、Crawl 做成同一組 agent 網路 API;免費方案每月有 1,000 credits,Search 的 basic、fast、ultra-fast 各用 1 credit,advanced 用 2 credits。
vLLM 是自架 LLM 推論的事實標準(GitHub 89,470 stars,2026-08-21 實查),核心是把 KV cache 當作業系統的分頁來管。但選型的關鍵不在它多快,在你的 GPU 使用率:以 Red Hat 實測的每秒 793 個輸出 token 換算,一張打滿的 A100 約 $0.70 / 百萬輸出 token,使用率掉到一成就變 $7——比多數雲端 API 貴。
Web retrieval 要測的是完整 task,不是 HTTP 200:固定 30 題、五種失敗層、三條 live channel,同時量答案、引用、freshness、延遲、成本與不必要升級。本文交付可執行 harness 與 gate,但因目前沒有三條 live channel 設定,不提供虛構排名。
Agent 上網不該一律開瀏覽器:先依任務分流 Search 或 Fetch,再按狀態碼、內容品質、JS shell、登入與 challenge 訊號逐級升級;每一步都受 retry、budget、快取、去重與來源紀錄約束。
行為面試不是靠臨場發揮,而是靠事前準備好的故事庫。AI Engineer 的行為面試有獨特的考點:AI 倫理(bias、fairness、privacy)、技術決策的影響力敘事(為什麼選這個模型/架構)、跨團隊推動 ML 專案的經驗。準備策略:建立 8-10 個 STAR 故事,每個故事練到能在 2 分鐘內講完。
AI Engineer 的 coding 面試和 SWE 不完全一樣——除了 LeetCode medium,還會出 ML-flavored 的題(實作 tokenizer、寫 batch inference pipeline、處理稀疏矩陣)。準備策略:LeetCode medium 練到 70% 通過率就夠,剩下的時間花在 numpy/pandas 操作、資料處理 pipeline、以及 ML 相關的程式題。
深度學習面試重點不是推導反向傳播,而是能不能解釋架構背後的設計直覺。高頻考點:CNN 的 locality 與 translation invariance、RNN 到 Transformer 的演進為什麼必要、self-attention 的計算邏輯與複雜度、BatchNorm vs LayerNorm 的適用場景、常見的 training tricks(learning rate schedule、gradient clipping、mixed precision)。
LLM Application Design 是 2025-2026 面試最熱的新題型。核心考點:RAG pipeline 的 chunking/retrieval/reranking 設計、agent 架構的 tool-use 與 planning loop、context window 管理策略、guardrails 與 safety 設計、以及 LLM 應用的評估方法。面試官特別看重你有沒有踩過坑。
ML 基礎面試不考你背公式,考你能不能用直覺解釋概念、在追問下不崩潰。高頻考點:bias-variance tradeoff 的實際意義、L1/L2 regularization 的選擇邏輯、cross-entropy 為什麼比 MSE 適合分類、SGD 與 Adam 的取捨、precision/recall 在不同場景的重要性差異。
ML System Design 面試的核心不是選模型,而是怎麼把一個商業目標變成一個可上線、可監控、可迭代的 ML 系統。面試官想看你能不能:把業務目標翻成 ML 目標、設計 data pipeline 和 feature store、選擇合理的 serving 策略、規劃 monitoring 和 A/B testing。
MLOps 面試考的是你有沒有把模型推上生產的經驗。高頻考點:ML pipeline 的 CI/CD(跟軟體 CI/CD 有什麼不同)、model registry 與版本管理、A/B testing 的設計與陷阱、inference 的 scaling 策略(水平擴展、模型壓縮、caching),以及生產環境的 monitoring 與 alerting 設計。
LLM 面試的分水嶺是你有沒有實際用過這些東西。高頻考點:BPE tokenization 的邏輯與多語言問題、預訓練目標(CLM vs MLM)、fine-tuning 的三種層次(full/LoRA/prompt tuning)、RLHF 的流程與 failure mode、prompting 的工程實踐、LLM 評估的困難與現有方法。
AI Engineer 面試不只考 ML——大廠看系統設計與 coding,新創看端到端交付,AI-native 公司看 LLM 工程深度。準備策略:先釐清目標公司類型,再按六大維度(ML 基礎、系統設計、LLM 應用、Coding、Paper Reading、行為面試)分配時間。
Paper Reading 面試不是考你有沒有讀過那篇 paper,而是考你能不能快速理解一個新方法並找出它的限制。AI-native 公司(Anthropic、OpenAI)特別愛考。準備策略:練習 30 分鐘讀完一篇 paper 並能口述 contribution + limitation,建立自己的必讀論文清單,每篇練習用三句話總結。
CS329A 的軸心是 generation–verification gap:模型答得出來,卻認不出哪個對。但課程自己下的結論更值得記——目前這些方法讓模型變得更穩定,不是更聰明。錄影公開 9 支,只涵蓋 20 堂中的 9 堂。
AIF-C01、MLA-C02、AIP-C01 不是難度階梯,是三個職能切面:AIF 考能否判斷 AI 的商業應用;MLA 考能否把傳統 ML、基礎模型與 agentic workflow 上線並維運;AIP 考能否整合基礎模型做 GenAI 系統。MLA-C02 的英文 beta 已開放報名,9/29 開始交付;正式版日期與非英文版本仍未公布。
選 Claude 四張認證之前有一個比所有考點都重要的前提:報考只開放給 Claude Partner Network 的組織,個人無法自行報名。過得了這關的人,實際的分岔點有四個——CCAO-F $99 不計入 partner tier 資格(另外三張計入);Claude Code 在 CCAR-F 佔 20%、在 CCDV-F 只佔 3.1%,架構師那張考這個工具比開發者那張重;CCAR-P 有 28% 是治理與利害關係人溝通,系列裡沒有第二張這樣;CCAO-F 最便宜但 Prompting 只有 14%,輸出評估 21% 才是主軸。四張效期都是 12 個月,重考間隔 14 / 30 / 90 天、12 個月內最多 4 次。
微軟四張 AI/agent 認證裡,只有 AI-103 → AI-500 是官方寫死的階梯,其餘全是定位問題。選擇要走三個分岔:寫不寫 Python(AI-103/AI-500 vs AB-620)、建東西還是做判斷(AB-100 vs 其餘三張)、以及今天能不能真的開始——AI-500 的四條官方學習路徑目前全 404、AB-620 沒有練習測驗、AB-100 有免費練習測驗。對台灣讀者還有第四個分岔:AI-103 與 AB-620 有繁體中文,AI-500 與 AB-100 只有英文。四張都是 $165、效期一年、續期免費但只在到期前六個月開放。
NVIDIA 生成式 AI 線有四張:NCA-GENL、NCA-GENM(各 $125,associate)、NCP-GENL、NCP-AAI(各 $200,professional)。選之前先看三件別家沒有的事:一、兩張 professional 的 Register 按鈕都標著「Coming soon」,近期計畫直接只剩兩張 associate;二、NVIDIA 是本系列唯一官方備考課全部付費的廠商,真實成本是考試費加課程費,NCA-GENL 自學五門 $390、NCA-GENM 有兩門只有 $500 講師版、NCP-GENL 官方清單列價合計 $1,620;三、官方文件自相矛盾——NCP-AAI 的權重網頁加總 98%、PDF 加總 92%,NCP-GENL 網頁表格有兩格描述錯置(其中一格是 OpenUSD 的文字)。另外綁定程度差很多:NCP-AAI 只有 7% 綁 NVIDIA 產品,NCP-GENL 有 31% 在考 GPU 與模型壓縮。
2026 年 agent 做簡報的共識:outline-first + 內容/構建分離 + render 成圖讓 fresh-eyes subagent 做視覺 QA。Anthropic 與 OpenAI 的官方 slides skill 都收斂到 PptxGenJS + 視覺驗證迴圈,學術線(PPTAgent→PreGenie→DeepPresenter)也指向同一方向。但下半年出現兩個修正:PresentBench 指出常被引用的 PPTEval 給分過於樂觀,SeaSlides 則主張不該讓模型直接寫自由格式的 HTML/SVG。
治理在證照裡的比重比多數工程師以為的高——CCAR-P 的 Governance 14% 加 Stakeholder 14% 共 28%、CCAO-F 治理 15%、AB-100 的部署治理塊 40–45%、AIF-C01 的負責任 AI 14% 加安全治理 14%。但把十五份官方 exam guide 逐份查過,沒有任何一張點名 EU AI Act、NIST AI RMF 或 ISO/IEC 42001;全系列唯一被官方點名的法規只有 CCAR-P 的 GDPR、HIPAA、FedRAMP。所以這篇的用法不是「背框架去考試」,而是用三份框架當骨架,把六張證照散落的治理條目歸位。三份框架的分工是:EU AI Act 是法律(2026-08-02 全面適用,高風險義務被 AI Omnibus 延到 2027-12-02)、NIST AI RMF 是自願框架(GOVERN/MAP/MEASURE/MANAGE 四個功能,且 1.0 正在改版)、ISO/IEC 42001 是可驗證的管理系統標準(條文付費,本文只用 ISO 官方公開頁能證實的部分)。
AIF-C01 考綱在 2026 年 4 月 30 日更新到 v1.1,新增七條目標——MCP、多 agent 模式、context engineering、token 計價、幻覺偵測全變成考點,in-scope 服務加入 Bedrock AgentCore、Kiro、Strands Agents,網路上的整理幾乎都是舊版。這篇依 v1.1 五章權重逐章拆解考點,整合 AWS 官方四步準備法、10+ 位考生的實戰心得與教材推薦。$100、90 分鐘、65 題、及格 700、效期 3 年,本系列唯一提供繁體中文。
AIP-C01 考的是把基礎模型整合成可上線的 AWS 應用:RAG、agent、安全治理、成本與評估。本文依官方五章考綱,整理前置能力自評、四步準備法、教材選擇與實作驗收,附十週安排、AI 輔考範本及應考提醒。先做診斷,再用同一個 RAG 加 agent 專案補齊弱項。
Claude 官方架構師認證(CCAR-F)的完整備考指南:五大領域權重 27/18/20/20/15、六大考試情境抽四個、常見反模式與實際演練建議。官方規格為 60 題 / 120 分鐘 / $125 / 效期 12 個月 / 及格 720,報考限 Claude Partner Network 成員,準時續期免費且非監考。
CCAR-P 是 Anthropic 四張裡最貴也最資深的一張($175、63 題、120 分鐘)。七個領域裡最重的是 Integration 19%,但真正讓它跟系列其他證照不同的是另外兩塊——Governance, Safety & Risk Management 14% 與 Stakeholder Communication & Lifecycle Management 14%,合計 28% 考的是法遵、風險、需求訪談與交付生命週期,不是寫程式。官方點名 GDPR、HIPAA、FedRAMP,並在 Intended Audience 明講「不適合入門開發者,也不適合只寫 prompt 而不負責系統設計的人」。
CCAO-F 是 Anthropic 四張裡最便宜的一張($99、60 題、120 分鐘),給的是「用 Claude 做事」而不是「寫程式串 Claude」的人。七個領域裡最重的是 Output Evaluation and Validation 21%——辨識幻覺、判斷何時需要人工複核、比較與改寫輸出;Governance, Risk, and Responsible Use 也有 15%。官方明講它不適合寫 API 或設計 agentic 系統的開發者。另有一條容易被忽略:這張不計入 Claude Partner Network 的 tier 資格,另外三張才算。
CCDV-F 是 Anthropic 四張認證裡對應工程師的那張。官方 blueprint 有八個領域,最重的 Applications and Integration 佔 33.1%——而它底下最大的兩塊是 Claude Application Design 8.6% 與 Software Engineering Foundations 7.4%,也就是說三分之一的考試在考 API 機制與普通軟體工程。反直覺的是 Claude Code 只佔 3.1%、Eval 只佔 2.6%,而同家族的 Architect 那張光 Claude Code 就佔 20%。官方規格:$125、53 題、120 分鐘、及格 720、效期 12 個月,報考限 Claude Partner Network 組織。
Google PMLE、AWS AIF-C01 與 AIP-C01、微軟 AI-103 與 AI-500、NVIDIA NCP-GENL 都考「怎麼讓 GenAI 應用又快又便宜又不掛」,但排起來是一道三階梯子:AIF-C01 問你知不知道成本隨 token 走,AIP-C01 與微軟兩張問你控不控得住,NCP-GENL 問你改不改得動模型與硬體。切入的高度差三層:NVIDIA 在 kernel 與量化層(Model Optimization 17% + GPU Acceleration 14% = 31%,全系列最重的單一成本延遲區塊),AWS 與微軟在應用層(快取三層、token 上限、chargeback),Google 在 MLOps 層(CPU/GPU/TPU 評估、資料平行 vs 模型平行、依吞吐量擴展服務後端)。交集是八根槓桿,但同一根在三個高度上是三種題目。本文刻意不帶任何價格與硬體規格數字——那是這個主題腐敗最快的部分。
Google Professional ML Engineer 的考綱在 2026 年被重寫,Vertex AI 全面改名為 Gemini Enterprise Agent Platform,舊教材的產品名對不上題目。這篇以官方 exam guide 的六章權重為骨架,逐章列出考什麼、配哪些官方材料、練什麼,並換算成一份看得懂依據的時程。官方規格:$200、兩小時、50–60 題單選加複選、效期兩年、建議 3 年以上業界經驗含 1 年以上 Google Cloud。
`batch_runner.py` 把數千條 prompt 平行跑成 ShareGPT 格式的 tool-calling trajectory,每條 prompt 可指定自己的容器映像,中斷後靠內容比對而非索引續跑。它內建兩道品質過濾:完全沒有 reasoning 的樣本丟掉、含幻覺工具名的條目在合併時剔除。這解釋了為什麼一家研究機構要做個人 agent——agent 本身就是資料產線。
一個 Gateway 行程接 30 幾個聊天平台,預設拒絕所有不在白名單也未配對的使用者。排程這邊做了兩道少見的防護:pre-dispatch 驗證讓設定壞掉的 job 連 LLM 都不呼叫就標成 blocked_config,而 model drift guard 會讓「沒釘模型」的 job 在全域模型被換掉時直接跳過執行——防的是你切到付費模型後,一個每小時跑的 job 幫你燒錢。
Hermes 的安裝方式分成三個支援層級:macOS(Apple Silicon)/Windows 10-11/Linux-WSL2/Docker 是 Tier 1,Termux 與 Nix 是 Tier 2,而 pip、brew、AUR 與 Intel Mac 明確不支援——用不支援的路裝,修 bug 的 PR 官方不收。升級端 `hermes update` 會先做快照、pull 後編譯九個關鍵檔案驗語法,失敗自動 `git reset --hard` 回滾。
Hermes Agent 是 Nous Research 的 MIT 授權 agent 框架,賣點是內建學習迴路(自動生技能、記憶提醒、FTS5 跨 session 檢索)。它提供 `hermes claw migrate` 從 OpenClaw 搬家,但 OpenClaw 並沒有被取代,兩邊仍各自在走。這篇是系列導讀,先講清楚它是什麼、跟誰不同、哪些情況不該選它。
Hermes 的記憶是硬上限的:MEMORY.md 2,200 字元、USER.md 1,375 字元,寫爆不會自動壓縮而是回錯誤讓 agent 自己騰位子。技能則由 curator 背景維護,預設 7 天跑一次、只在閒置 2 小時後啟動,30 天未用標 stale、90 天封存——但從不刪除。真正該打開的開關是 `memory.write_approval` 與 `skills.write_approval`,它們把背景自我改進的寫入變成待審。
`hermes claw migrate` 會把 OpenClaw 的 persona、記憶、四個來源的技能、模型與供應商設定、平台 token 與審批白名單搬進 Hermes——但金鑰永遠不會靜默搬過去,連 `--preset full` 都要另外加 `--migrate-secrets`。搬不動的東西(cron、plugin、hook、多 agent 清單、複雜頻道設定)不會消失,而是丟進 `~/.hermes/migration/openclaw/<timestamp>/archive/` 等你手動處理。從 Claude Code 或 Codex 過來則是另一個指令 `hermes import-agent`。
Hermes 支援 40 家以上供應商,其中「用消費者訂閱登入」的路徑最容易產生帳單意外:Anthropic OAuth 只吃 Claude Max 的加購額度、Claude Pro 根本不能用;auxiliary 任務預設 `provider: auto` 會走你的主模型,等於用貴模型做壓縮與視覺。fallback 鏈是每個 session 只觸發一次的一次性切換,不是持續重試。
Hermes 的審批預設是 smart 模式:低風險指令由 auxiliary 模型放行、真正危險的自動拒絕、不確定的才問人。`--yolo` 與 `approvals.mode: off` 都關不掉 hardline 封鎖清單(`rm -rf /`、fork bomb、`dd` 寫實體磁碟),而 `approvals.deny` 是它的使用者版:在 yolo 之前就攔下來。官方自己標明這整套的威脅模型是「誠實但犯錯的 agent」,不是對抗惡意行程。
Hermes 的指令可以跑在 local、ssh、docker、singularity、modal、daytona、vercel_sandbox 七種後端。關鍵取捨不是效能而是審批:local 與 ssh 會做危險指令檢查,其餘五種一律跳過,因為官方把容器/沙箱本身當成邊界。另外 Docker 預設是「一個長壽容器跨 session 共用」,不是每次對話一個乾淨環境。
Tool Gateway 把 Hermes 的網頁搜尋(Firecrawl)、圖像生成(FAL 九個模型)、TTS(OpenAI)與雲端瀏覽器(Browser Use)四類工具改走 Nous 的基礎設施,用一次 OAuth 取代四個帳號。它是 per-tool 開關而非全有全無,`use_gateway: true` 會蓋過你 `.env` 裡的直連金鑰——這是最容易搞混的優先序。
接上一堆 MCP server 之後,工具 schema 本身就會吃掉大半 context——官方舉的極端例子是 Cloudflare 單一 server 約 3,300 個工具、光名稱就 32K token。Hermes 的解法是 Tool Search:把 MCP 與非核心 plugin 工具換成三個橋接工具,schema 按需載入,核心工具永不延後。另外 plugin 預設全部停用,要在 `plugins.enabled` 逐一點名才會跑。
AB-100 是微軟 agent 線的架構師版,三塊權重 25-30 / 25-30 / 40-45,重心在部署與治理。它的 outline 幾乎全是 design、recommend、propose 這類動詞——考的是情境判斷而不是實作。三個要先知道的:官方考試頁的簡介段落是錯的(寫成資訊保護與 DLP 的樣板文,我逐字驗過),準備要以 study guide 為準;它有免費練習測驗,是微軟三張 agent 證照裡唯一有的;官方列了 15 張可用的 associate 證照但沒有一張是必要條件。官方規格:$165、僅英文、及格 700、效期一年。
AB-620 是微軟 agent 認證線裡的低程式碼那條——考的是 Copilot Studio 上的 agent flows、adaptive cards、computer use、MCP tools、A2A 與 Fabric data agent,不是寫 Python。三塊權重 30-35 / 40-45 / 20-25,最重的是整合與擴充。官方規格:$165、120 分鐘、及格 700、效期一年、13 種語言含繁體中文,是微軟三張 agent 證照裡唯一有在地化的。已經 GA,但練習測驗還沒開放。
AI-103 取代 2026 年 6 月 30 日退場的 AI-102,考綱完全重寫成 Microsoft Foundry 體系——prompt flow、Azure AI Studio、Azure OpenAI Service、Azure AI Agent Service 這些名詞在目標裡一個都沒有。五塊技能權重 25-30 / 30-35 / 10-15 / 10-15 / 10-15,生成式與 agent 佔最大宗。官方規格:$165、120 分鐘、及格 700、有繁體中文、含互動題型,而且效期只有一年——但續期是免費、開書、非監考的線上評量。
AI-500 是主流雲端業者裡少見的多 agent 系統專家級認證,四塊權重 15-20 / 30-35 / 20-25 / 20-25,官方點名 Agent Framework、LangGraph、Hugging Face Transformers、MCP server 架在 Azure Functions / Logic Apps / API Management、A2A、Key Vault、AI Red Teaming Agent。但它現在有三個限制要先知道:仍是 beta(成績要等重新計分)、必須先取得 AI-103 才能考、而且官方學習路徑尚未上線——考試頁列的四條路徑網址目前全部 404,講師課要等 2026/9/30。
微軟 AI-500、AB-620、AB-100、NVIDIA NCP-AAI、Claude CCAR-F 這五張證照都考多 agent 架構,交集是七件事:編排拓樸、A2A 與 MCP、每個 agent 的身分邊界、三層記憶、可觀測性與 agent replay、人在迴圈、四個介入點的 guardrail。但同一件事四家用四個名字,而且各自有無法互相轉移的獨有考點——微軟命名了四種 context window 失效模式、NVIDIA 有 7% 綁死自家 NeMo 與 NIM、Claude 考 stop_reason 這種 SDK 層細節。另外修一個常見誤解:Google PMLE 滿篇「Agent Platform」是 Vertex AI 改名,不是多 agent 考點。
純圖片理解已經打平:MMMU-Pro 上四家前沿模型全部過 80%,差距在 3 分內。真正分勝負的是影片、長文件 OCR、即時語音這幾條軸線,各有不同的領先者。但整理這些排名時最該學的一課,是兩份都算可信的來源對同一個 Video-MME 給出的榜首可以差超過 10 分,而且不是同一家。七月與八月又各換過一輪。
NCA-GENL 是職缺點名「NVIDIA Generative AI / LLM 相關認證」時最常指的那張。但官方 blueprint 的權重跟名字落差很大——Core Machine Learning and AI Knowledge 30%、Software Development 24%、Experimentation 22%、Data Analysis 14%、Trustworthy AI 10%,LLM 與 RAG 的內容散在條目層而不是自成一塊,spaCy、NumPy、Keras、cross validation 都在考。另一個要先知道的:NVIDIA 官方備考課程全部要付費($30 到 $500),是本系列唯一沒有免費官方學習路徑的廠商。官方規格:$125、1 小時、50–60 題、效期兩年、僅英文、pass/fail 不給分數。
NCA-GENM 與 NCA-GENL 同價同時長同級別,但重心完全不同:Experimentation 升到 25%(最重),Core ML 從 30% 降到 20%,並多出 Multimodal Data 15% 與 Performance Optimization 10% 兩塊。內容上考 U-Net、CLIP、擴散模型、多模態損失函數、attention map,以及 Riva/NeMo/Triton/ACE 這幾個 NVIDIA SDK。要注意成本結構:官方建議的五門課裡有兩門只有 $500 的講師版、沒有自學選項——純自學路線先天蓋不滿。官方規格:$125、1 小時、50–60 題、效期兩年、僅英文。
NCP-AAI 是 NVIDIA 的 agentic AI 專業級認證,$200、120 分鐘、60–70 題、效期兩年。但兩件事要先知道:一、官方頁面的 Register 按鈕旁標著「Coming soon」,現在還不能報名;二、官方網頁與官方 PDF study guide 的權重表互相矛盾——Deployment and Scaling 網頁寫 13%、PDF 寫 5%,Run/Monitor/Maintain 網頁寫 5%、PDF 寫 7%,而且兩版加總分別只有 98% 與 92%。兩份都是 nvidia.com。文章把它標成範圍與不確定性,不挑一個當事實。
NCP-GENL 是 NVIDIA 的 LLM 專業級認證,$200、120 分鐘、60–70 題。它跟其他 GenAI 證照最大的差別在重心:Model Optimization 17% 加 GPU Acceleration 14% 合計 31%,考的是量化、蒸餾、剪枝、分散式平行與 CUDA profiling,不是接 API。兩個要先知道的:官方頁面的 Register 標著 Coming soon,還不能報名;而且同一頁的權重表有兩格描述文字是壞的——Fine-Tuning 那格寫的是 OpenUSD 的資料交換,Model Optimization 那格寫的是部署內容,兩處我都逐字驗過,正確描述在官方 PDF 裡。
多數人以為 GenAI 證照的主軸是 prompt 寫作,但 CCAO-F 的 Prompting 只有 14%,輸出評估卻有 21%;CCDV-F 的 Prompt and Context Engineering 只有 11%。真正被考的是結構化輸出、防禦性 prompt、動態 context 注入、context 壓縮與快取、prompt 生命週期治理,以及「prompt 改了怎麼證明變好」——這六件事比較接近 context engineering 與軟體工程,而不是寫作技巧。另外沒有任何一張要你現場寫 prompt,全是選擇題,所以練「說得出為什麼」比練手感有用。最該記住的一條來自 CCAR-F:業務邏輯必須被保證時,「先改 prompt」通常是錯誤選項。
真正把 RAG 與檢索評估當考點的是四張:AWS AIF-C01(第 2、3 章合計 52%,RAG、向量儲存、FM 評估指標全在裡面)、AWS AIP-C01(第 1 章 31% 裡有 11 個技能點落在向量儲存與 RAG)、NVIDIA NCP-AAI(Knowledge Integration 10% + Evaluation and Tuning 13%)、微軟 AI-500(Develop 30–35% 裡的「多 agent RAG 架構」)。Google PMLE 只貢獻一條 LLM-as-a-judge,而 Claude CCDV-F——那張大家最容易假設它考 RAG 的開發者證照——八個領域裡一條檢索考點都沒有,Eval 只佔 2.6%。附 AIF 與 AIP 的同廠雙級別對照、四家名詞對照表、獨有考點清單與練習專案。
OpenClaw 386k star、Hermes Agent 232k,但 OpenRouter 上 Hermes 的日 token 量在 2026-05-10 就反超了(224B vs 186B)。這半年冒出來的九個自架 agent 不是九個競品,是對同一題的九種答案:agent 的執行邊界該畫在哪。CVE-2026-44112 打穿的是 OpenClaw 的沙箱本身,而 Meta 對齊主管那次刪信事故裡連攻擊者都沒有——安全指令是被 context 壓縮吃掉的。
Workers AI 目錄目前 84 個模型。通用對話選 glm-4.7-flash($0.06 / $0.40 per M、131K context),要 vision 選 gemma-4-26b-a4b-it($0.10 / $0.30、256K),極省成本選 granite-4.0-h-micro($0.017 / $0.112),embedding 選 qwen3-embedding-0.6b 或 bge-m3(同為 $0.012 per M)。這篇會定期跟著官方目錄更新。
微軟員工開源的 VS Code extension,讀本機 Claude Code / Codex / OpenCode 的 session log。真正的內容物是 45 條 Markdown 規則:prompt 短於 30 字元、收到 20 行 AI 程式碼後 15 秒內就送下一則、instructions 檔超過 4000 bytes——把「context engineering」翻成可以爭論的數字。
課程把指揮 agent 的工具列成四件:指示檔、hooks、commands、subagents。指示檔是唯一每次開機都全額進 context 的,所以它是 config 不是 memory;hooks 補上「規則會被忽略、hook 不會」那一塊;commands 是四件裡唯一由人主動觸發的。課程另給一張表,把軟體任務七步驟裡只剩一步半標成人的工作。
CS146S 第一週的講題是「用 200 行寫出 Claude Code」加上「解剖 production agent 的 system prompt」。agent loop 本身確實只有十幾行。課程投影片最後一頁列了四條 Claude 底下實際在做的事,其中一條是用 `<system-reminder>` 標籤在各處防止模型漂掉——這在官方文件裡找不到。
Factory 把「repo 夠不夠格讓 agent 動」拆成八根柱子、五個等級,並公開了實測分數:CockroachDB L4(74%)、FastAPI L3(53%)、Express L2(28%)。核心論點是 agent readiness ≈ codebase 裡確定性驗證迴圈的密度——linter、type checker、測試,這些對 agent 來說是獎勵訊號。
課程量到的 AI SAST 誤報率是 50–100%,而傳統 SAST 本來也有 50% 以上——真正的新問題是非決定性:同一個 prompt 跑兩次結果不同,你無法回答「掃完了沒有」。課程列的 agent 攻擊向量有五種,其中 intent breaking 攻擊的是 agent 的計畫本身。
Agent Skills 的規格小到一句話講得完:一個含 SKILL.md 的資料夾。真正的設計在三層 progressive disclosure——開機只載 name 與 description,命中才讀全文,需要才展開附檔。本站自己的 repo 有 35 個 skill、7,893 行 SKILL.md,開機成本仍然只有那 35 組 metadata。
Google 的 AutoCommenter 部署到數萬名工程師身上,論文寫出了整條調校過程:把 17 條「技術上正確但沒價值」的規則停掉,有用率從 54% 升到 66%,目標訂在 80% 才准進下一階段。最後的留言解決率約 40%。AI code review 的瓶頸從來不是抓不到,是抓太多。
個人怎麼接工具是偏好問題,組織怎麼接是治理問題——誰能碰什麼資料、金鑰放哪、成本算誰的。Anthropic 自己公布的十個團隊使用紀錄裡有個好指標:安全工程團隊佔了整個 monorepo 自訂 slash command 的 50%。採用不是均勻擴散的,它先在會自己造工具的團隊裡起飛。
背景 agent 把「你盯著它跑」換成「它自己跑完開 PR」。三家的做法收斂到同一組零件:隔離環境、外部觸發(issue、Slack、Linear)、產出是 PR。真正的新問題是你變成瓶頸——五個 agent 同時跑完,五份 diff 排隊等你讀,而它們互相不知道彼此存在。
Fall 2026 把整整一週的 prompting 壓成這週的一節,換上 RePPIT(Research、Propose、Plan、Implement、Test)與 MCP。RePPIT 的兩條硬規則最值得抄:propose 一定要兩個方案、寫 code 的那個 instance 不准 review 自己的 code。MCP 那邊 Anthropic 量到把工具改成程式碼呼叫可以把 150,000 tokens 壓到 2,000。
Stanford CS146S 的 Fall 2026 大綱把 prompting 從整整一週壓成一節,砍掉終端機與 UI 生成兩週,換上 Agent Skills、Agent-Ready Codebases、Background Agents、AI-Native Team。評分也動了:Final Project 從 80% 降到 50%,多出 30% 的 open source 貢獻。這個系列照十週逐篇讀。
最後一週的講題是「self-running, self-improving software systems」。前九週的零件其實都出現過:確定性驗證迴圈、可寫回的 skill、背景 agent、集中治理。課程投影片有個容易被忽略的比例——寫程式只佔工程時間的 30%,另外 70% 是把它跑在 production 上。
研究者一開始以為神經網路好騙是因為非線性,結果錯了——Goodfellow 2014 那篇論文主張主因是它們的線性本質,而高維度讓每個微小擾動複利累積。後半場講生成模型:GAN 的三個病,以及 diffusion 為什麼靠「加噪再學會去噪」繞開了其中兩個。
BCG 的實驗發現一條「鋸齒狀邊界」:邊界內 AI 大幅提升顧問表現,邊界外 AI 讓結果更差,而人們會在方向盤上睡著。這一講也給了一個很有立場的判斷——盡可能避開 fine-tuning,因為等你調完,下一代模型已經打敗你 fine-tune 過的版本了。
Andrew Ng 用 deep researcher 當例子示範 error analysis:列是 pipeline 的每個步驟,行是 10 到 100 個查詢,只看表現不好的那些,逐格標記哪裡壞掉。百分比不需要加起來等於 100%。他說這要花三四個小時,但省下的是幾週走錯方向的時間——而真的會去做的人的比例遠低於 100%。
圍棋不能用監督式學習的第三個理由最有意思:ground truth 本身就沒有良好定義——最強的人類不是每天下出最好的棋,而他最好的棋也不是最優解。這一講的最後 20 分鐘把 RLHF 完整放回 RL 的框架:agent 是被微調的模型、action 是下一個 token、一個 episode 是一次完整生成,而且獎勵極度稀疏。
Andrew Ng 用人臉辨識開門系統走完整個專案生命週期,而全講只有一個核心論點:速度。他給團隊的期限是兩天,理由是「花在準備資料的時間,應該和訓練一次模型的時間相稱」。最後收在一句話:我的工作是做出一個真的能用的東西,那和做出一個在測試集上能用的東西不一樣。
CS230 第二講用三個案例研究推導出 embedding:日夜分類教你怎麼用人當 proxy 決定解析度,喚醒詞偵測教你三小時生出上百萬筆訓練資料,人臉驗證教你設計出第一個 loss function。最後從監督式 triplet 走到自監督 pairs——那一步才是現代模型能吃下數十億張未標註影像的原因。
問模型「你心目中的鵝長什麼樣」,它畫出一大群鵝——因為標註資料把一群鵝標成 goose,它以為整群才是那個標籤。這一講給了七種打開 CNN 看內部的方法,然後誠實地說:這套方法到 transformer 上,最前沿的研究也只解釋得了兩層。
CS230 第一講是課程總覽,但 Andrew Ng 花最多時間講的是三件事:為什麼 scaling 有效、什麼時候 prompt 就不夠用了、以及他認為「不要學寫程式」是史上最糟的職涯建議之一。
用 4 份台大碩班掃描考古題實測 10 種開源 PDF 解析工具。VLM 類(Firecrawl、MinerU 3.4、Marker v2)在公式和程式碼上全面碾壓傳統 OCR,但安裝踩坑才是真正的門檻——MinerU 舊包名會進依賴地獄、Marker 首次模型下載要 10 分鐘、PaddleOCR 缺引擎。實務推薦兩階段策略:RapidOCR 粗篩 + MinerU/Firecrawl 精查。
2026-08-13 的發布新增 363,246 行,首次公開 For You 的排序權重:favorite 0.5、reply 5.0、report −234.0。但權重是常數,真正決定順序的 P(action) 來自一個 2560 維、8 層的 transformer。
Chroma 測了 18 個前沿模型,全部隨輸入變長而跳崖式退化。記憶失效多半是檢索失效偽裝的。而 KV cache 的真正成本是頻寬不是儲存——decoding 每產生一個 token 都要讀過整個 cache。
2025-11 三大實驗室聯手把先前提出的 12 種 prompt injection 防禦全部攻破。EchoLeak 的 payload 通過了微軟自己的專用分類器。所以目標不是擋住每次攻擊,是攻擊成功時活下來——而這只能在 harness 做。
workflow 與 agent 的分界是「步數由誰決定」——開發者在設計時決定是 workflow,模型在執行時決定是 agent。依這個定義,今天大多數上線的 LLM 系統其實是 workflow。附 agent / RAG / MCP 的可操作判準。
Salesforce 從兩萬個部署得到的數字:agent 有 90% 的工作發生在上線之後,跟傳統軟體剛好相反。Stripe 每週合併 1,300 個零人類手寫的 PR,靠的是環境而不是模型。附六家公司的橫向比對。
MCP 管 agent ↔ 工具,A2A 管 agent ↔ agent,Skills 管可重複使用的知識。判準是資料會不會變:呼叫之間會變就要 MCP,穩定到可以寫下來就用 skill 檔案——後者不需要一個會獨立失敗的 runtime。
Microsoft、OpenAI、Salesforce、Stripe 等七個獨立案例講出同一句話:可靠性來自模型周圍的工程。而「把確定性的部分還給程式碼」已經被四家公司各自做成產品——Agent Script、Procedures、runtime、blueprints。
Standard RAG 取錯 chunk 就答錯,而且沒有任何機制會發現。Agentic RAG 補上自我檢查,但代價是 evaluator paradox——自我修正能力的上限,就是那個做評估的 LLM 判斷相關性的能力。
2026 年工程師能報名的 AI 證照逐張列出:AWS 三張(AIP-C01 / MLA-C01 / AIF-C01)、Google PMLE、微軟 AI-103 與 AI-500、NVIDIA 目錄十二張、Databricks、Snowflake、Oracle Agentic AI、IBM watsonx、Salesforce Agentforce、GitHub GH-300、Anthropic Claude 四張、iPAS AI 應用規劃師初中級,另有 IAPP AIGP 與 ISACA AAISM / AAIA 這條治理稽核線,價格、效期、報考門檻全部對照官方頁面。兩個會影響荷包的重點:Google PMLE 的考試大綱已把 Vertex AI 全面改名為 Gemini Enterprise Agent Platform,2026 年年中以前的教材等同作廢;iPAS 中級證書效期是 5 年而非永久。
Firecrawl 開源的 Rust 轉檔函式庫,14 種辦公格式(含 .doc / .ppt / .xls 老格式)統一轉 GFM,中位耗時 4.7ms,同樣計時條件下比 Docling 快 109 倍。代價是完全不碰 OCR。
掃描件與複雜版面只能靠模型推斷結構。但 MinerU、Marker、Docling 的技術差距遠小於授權差距——MinerU 過 $20M 月營收要另談授權、Marker 的模型權重過門檻要付費、只有 Docling 是乾淨的 MIT。選型先看 LICENSE,再看 benchmark。
把文件餵給 LLM 之前,最常見的錯誤不是選錯工具,是選錯層。結構已經在檔案裡的用轉換層(毫秒級),有文字沒結構的用抽取層,連文字都要推斷的才用解析層——anydoc 的 4.7ms 到 Docling 的 513.6ms 差 109 倍,多數人卻直接跳最貴的那層。
數位原生 PDF 的文字是讀得到的,缺的只是結構。PyMuPDF、pdfplumber、pypdf、Tika 這一層用啟發式規則就能還原段落與表格,零 GPU、零推論成本。最大的選型陷阱不是準確度,是 PyMuPDF 的 AGPL-3.0 授權。
「數位員工」不是技術,是計價與課責單位。Anthropic Project Vend 讓 Claude 真的開了三家店,發現最有效的介入不是換更強的模型,而是強迫走流程——官方原話是「我們重新發現了 bureaucracy matters」。Gartner 估計數千家自稱 agentic 的廠商中只約 130 家是真的。
圖生影片(I2V)在 2026 年的骨幹清一色是 latent diffusion + DiT,畫質已經不是選型軸;真正的軸是原生音訊、能不能自架、每秒多少錢。三個容易踩的坑:Sora 的 app 已在 4/26 關閉、API 9/24 關;Wan 2.7 被大量文章稱為 Apache 2.0 開源但一手來源查無權重;Veo 3.1 官方價是 $0.40/s 而非二手網站流傳的 $0.75/s。
做 3D 模型在 2026 年有四條路:AI 生成(Meshy-6 / Tripo / Rodin Gen-2.5 / 混元 3D)、手機掃描、Text-to-CAD、手工建模。選錯的代價很具體——AI 生成的 mesh 改不動尺寸、Rodin 的 STL 常需修補、Meshy 免費版的資產是公開的。這篇按「模型最後要拿去幹嘛」給選型建議,並附各家官網當前價格。
從 MarkItDown (175k stars, MIT) 到 curl_cffi (6k stars),整理 34 個「爬資料餵 AI」的開源工具。沿五條軸線分類:整站爬取、AI 瀏覽器代理、文件轉檔、智慧擷取、反偵測基建。選型關鍵不是哪個最好,是場景匹配。
2026/7/23 Uncle Bob 那則 418 萬瀏覽的貼文不是宣言,是回覆——回一位 1983 年入行的工程師問「我心理上就是需要看懂程式碼,是不是太老派」。而且他沒有完全不讀:6/1 那則四階段 pipeline 的原文寫著 I spot check the code,門檻是 crap ≤ 6(業界慣例 30)、mutation 要 kill all survivors。附開源的 Acceptance-Pipeline-Specification 拆解與 Grady Booch 點名的三個指標盲區。
2026 年 3D 生成的核心範式是「video diffusion → feed-forward 3D 重建」,Lyra 2.0 是這條線的代表作。但 CVPR 2026 的三篇 Best Paper 暗示下一波轉向:SAM 3D 帶來 foundation model 級別的物件重建、D4RT 用統一 transformer 數秒重建動態 4D、O-Voxel 用結構化 latent 取代 Gaussian。3DGS 仍是主流但正在被表面原語挑戰,pixel-space diffusion 正在反攻 latent-space。
把 OpenAI、Anthropic、Google 三家官方課程平台,加上 Stanford CS146S/CS336、Elements of AI、Hugging Face、MIT 6.S191、李宏毅等資源實際逐頁抓過一遍,按「不懂 AI / vibe coding / 讓它能上 production / 底層 AI」四層重排。另收 2026 年仍在更新的自學倉庫與免裝環境的互動式平台,並用「最後更新日期」篩掉星數很高但停在 2024 的名教材。結論:課幾乎全部免費,稀缺的不是課,是選課的判斷力;而第四層不會解決第三層的問題。
HeyGen 開源的 HyperFrames 用 HTML data 屬性定義影片時間軸,headless Chrome 逐幀 seek 截圖再由 FFmpeg 編碼成 MP4。3 個月 33k stars,Apache 2.0,21 個 agent skills——AI agent 寫 HTML 就能產影片,不需要 React。
Loop Engineering 是設計「自動 prompt agent 的系統」而非手動 prompt 的工程實踐。Boris Cherny 跑數百個 agent、Addy Osmani 正式命名、Blake Crosley 指出驗證成本才是真正瓶頸——這篇整理一手來源、五大構建塊、適用邊界與批評觀點。
從 CLI 工具 kin3o 到 CVPR 2026 論文 OmniLottie,盤點把文字和圖片轉成 Lottie 動畫的開源路徑,附效能基準與選型建議。
MUSE-Autoskill(2026)提出五階段 skill 生命週期框架,自創 skill 在 SkillsBench 達 60.35%(+7.16%),成功生成 skill 的任務上更達 87.94%,超越人工撰寫上限。本文整合六篇 arXiv 論文,梳理 skill evolution 研究全景。
即使 temperature=0,LLM 輸出實測仍可能抖動 15%。要嚴謹比較 agent 調整前後,得靠凍結 golden set、每題跑 ≥3 次取平均、LLM-as-judge 盲評(pairwise 偏好翻轉率高達 35%)與配對統計檢定,而不是前後各問一遍看感覺。
業界已收斂到用 OpenTelemetry GenAI 語義約定把每個 LLM call / tool call 變成 span;偵測三大故障再分三條線:faithfulness + semantic entropy 抓幻覺、framework 層 symbolic guardrail 擋 tool misuse、max steps + action hash 去重防無限迴圈,最後全部掛上 Final / Trajectory / Single-step 三層評估。
資源受限下的 agent 決策是 bounded rationality 的復活:Rational Metareasoning 用 VOC 獎勵省 20–37% token、BATS 證明沒有 budget awareness 加預算也沒用、FrugalGPT cascade 最高省 98% 成本、Speculative Actions 降 20% 延遲。三約束最後收斂成一條 Pareto 曲線,主線是「從人手調旋鈕走向模型自己做資源理性決策」。
三個聽起來不同的 agent 安全問題——tool output 注入、信任邊界、惡意 agent——根是同一個:LLM 把指令與資料攤平成同一條 token 串流,架構上無法區分。理解這條主線,就能看懂從 EchoLeak(CVE-2025-32711,zero-click)到 Morris II AI 蠕蟲的所有攻擊,以及為什麼「把模型調乖」沒用、只有架構約束(六大設計模式、CaMeL)有用。
傳統 RAG 是固定管線「先查再答」;Agentic RAG 把檢索拆成三層決策:何時檢索(FLARE 用 token 機率、Adaptive-RAG 用複雜度分類器)、檢索什麼(HyDE / RAG-Fusion / 分解 / Step-back)、如何整合(RRF k=60 → cross-encoder rerank → 壓縮,Anthropic 實測失敗率 −67%)。關鍵反直覺:不必要的檢索會傷品質,「決定不查」是一級能力。
自動 prompt 優化(APO)從 APE/OPRO 演進到 GEPA:用語言反思取代稀疏 reward,少 4–35 倍 rollouts 贏過 GRPO 約 6pp。另一邊,tool description 是被忽略的 prompt——小改措辭能讓工具選用率變 10 倍,Anthropic 實測讓 Claude 自我改寫 tool description 勝過人類專家手寫。兩條線正在合流:eval-driven 的自動優化吃掉手工調 prompt。
自主研究 agent = 四個可控環節:規劃(拆子問題)、檢索迴圈(search→read→反思 gap→再 search)、證據仲裁(≥2 獨立來源、衝突分型處理)、可驗證輸出(句級引用 + 獨立查核 pass)。兩條路線:訓練派用 RL 端到端學會何時搜(Search-R1 +41%),編排派用 orchestrator-worker 分工(Anthropic 內部評測 +90.2%,代價 ~15× token)。
從觀察行為反推他者的信念/目標/意圖,學界叫 Machine Theory of Mind。三條血脈:符號 BDI、貝氏逆向規劃、深度學習 ToMnet。LLM 時代最大爭議是 ToMBench 上 GPT-4 仍落後人類 >10 分——高分到底是真推理還是統計捷徑。
每步 99% 準確率、跑 100 步,無錯完成率只剩 36%——錯誤複利是結構問題,不是 prompt 能調掉的。分散式系統的 supervisor tree、bulkhead、circuit breaker、saga、durable execution 幾乎可一對一搬進 agent 編排;但 LLM 多了一種傳統系統沒有的故障——不會 crash 的語意錯誤,得靠 Inspector agent(recover 96.4%)與冗餘投票(MAKER 百萬步零錯誤)補上。
Cosine similarity 和 relevance 在一整類情境系統性背離:否定詞(NevIR 上多數 IR 模型 ≤ 隨機)、精確識別碼、數值門檻、邏輯組合(SoTA 模型在 LIMIT 上 recall@100 < 20)——其中一部分是單向量範式的理論上限,換大模型無解。補救順序:hybrid BM25 → reranker(Anthropic 實測 −67%)→ 上游 metadata 路由 → 領域微調 / multi-vector。
工具一多,選擇準確率不是緩降是崩塌:4→51 個工具從 43% 掉到 2%、10→100+ 個從 78% 掉到 13.62%。根治解法是別一次塞全部——Anthropic Tool Search Tool 用 defer loading + 檢索砍 85% token,Opus 4.5 準確率 79.5%→88.1%。description 品質的效益是條件式的:簡單場景沒差,多工具串接場景 correctness 44%→50%。
繁中 RAG 檢索失敗是三層疊加:embedding 的粒度缺陷(BGE/GTE 從 0.1B 到 7B 都在「炸鸡」這種簡單 query 上排錯)、簡中/英文語料主導造成的在地詞彙偏移(保費、不保事項對齊不可靠)、MTEB 中文榜是簡體導致選型訊號失真。修復是架構性的:OpenCC 正規化 → hybrid + jieba 斷詞 → reranker → 最後才是在地微調——而且一切前提是先建繁中專屬 eval set。
arXiv 不做 peer review,約 2% 投稿被拒。判斷品質靠外部訊號:頂會收錄 > 機構 + 開源復現 > 引用品質。附 20 項實戰 checklist 和 2026 年工具箱(PWC 已關閉)。
把『使用者上傳檔案就自動切 chunk、embedding』設為預設行為,等於替 LLM 預先做了一個它本來可以自己做的決定。從 Self-RAG (2310.11511)、Adaptive-RAG (2403.14403) 到 AgenticOCR (2602.24134) 這條學術線索,正在把『要不要 retrieve、要不要 parse、怎麼切 chunk』三層決策權,從 ingestion pipeline 往後推到對話時的 agent。
LLM agent 的難點不是把 function calling、skill、code interpreter、文件工具各自做出來,而是把它們組成一個會選工具、會寫程式、會拆任務、會驗證結果、又不會被 prompt injection 打穿的系統。這篇把代表論文整理成六個工程決策:function calling 可靠度、tool/skill selection、code-as-action、多步 planning、skill 系統、安全與文件生成。
A2UI 是 Google 在 2025-12-15 開源的 agent 生成式 UI 協定:agent 只送宣告式 JSON 描述 UI 意圖,client 用自己的元件 catalog 白名單渲染成原生畫面,疊在 A2A 之上。發布時 format v0.8,3 個月後已迭代到 v0.9。
Browserbase 在 2026-05 推出的 browse.sh,是「瀏覽器技能目錄 + Browse CLI」兩件事。核心論點:瀏覽器 Agent 的瓶頸是健忘症不是推理,把學過的網站操作存成純文字 SKILL.md,Craigslist 任務官方自評從 ~$0.22 降到 ~$0.12。注意它跟 2018 年的 Browsh 文字瀏覽器毫無關係。
CodeGraph 用 tree-sitter 把 codebase 抽成本地 SQLite/FTS5 知識圖譜,讓 AI coding agent 查圖而不是掃檔。官方端到端 benchmark(7 repos、median of 4)平均省 35% 成本、70% tool calls;但前提是 agent 直接走圖——把探索 delegate 給只會讀檔的 subagent,CodeGraph 反而變成 overhead。
讀論文是兩個問題疊在一起:方法論(Keshav 三遍閱讀法,5-10 分/1 小時/4-5 小時)決定怎麼讀,工具(arXiv HTML、alphaXiv、NotebookLM、Connected Papers、Zotero)負責縮短每一遍的時間。AI 負責降低理解門檻,判斷對錯永遠留給人。
字節跳動開源(MIT)的 UI 自動化框架。UI 動作只靠截圖餵給視覺語言模型,不解析 DOM;一套 JS API 跨 Web / Android / iOS / 桌面。代價是每步較慢、token 較貴,而且高度綁在模型的 grounding 能力上。注意它已在 1.9.8 之後停掉 MCP,改走 Skills + CLI。
Claude 沒有 docx_tool / pdf_tool — 它只用 bash + file tools,加上 SKILL.md 指令、容器內預裝的 pdfplumber / python-pptx 等 library,三層拼出檔案讀寫能力。
Anthropic 2026-04-17 發 Claude Design,4-28 nexu-io/open-design 公開,同樣的 artifact-first loop、Apache-2.0、跑在你已經有的 16 個 coding-agent CLI 上。兩週從 0.1 到 0.7、40k+ stars。把 AI 設計工具從 vertical SaaS 攤平成 skill bundle 的範式轉移。
asgeirtj/system_prompts_leaks 蒐集 40 多個 AI 助理的 system prompt 原文,從 GPT-5.5、Claude Opus 4.7 到 Gemini 3.1 Pro 都有,40.3k stars、461 commits、MIT 授權。價值不在於拿到秘密,而在於把廠商的隱性政策變成可比對的工程素材——要學的是設計決定,不是文字本身。
Anthropic 2026-05-14 發的 35 頁創業手冊,把 Idea/MVP/Launch/Scale 四階段按 agentic AI 重排。最值得學的是『build 越容易、validation 越重要』與 CLAUDE.md 當作 MVP 第一個 artifact;最該打折扣的是 Launch 章節把合規 workstream 跑在 Cowork 上 — Anthropic 自家文件說 Cowork 不寫 audit log。
AI agent 可透過 Skills、MCP Connector、直接 API 三種方式操作影片生成工具,選對整合方式比選對工具更重要。
別再把所有 tool description 在 session 開頭一次塞進 context。讓 model 寫 code、runtime 執行,tool 定義只在 import 那行才進 context — Anthropic 的 GDrive→Salesforce 範例從 ~150K tokens 降到 2K,Cloudflare 的 2,500 endpoints schema 從 1.17M 降到 1K。
MIT 研究說 95% 企業 AI pilot 零回報。OpenAI 和 Anthropic 在同一週各自宣布百億美元規模的合資公司,把 Palantir 用了十幾年的 Forward Deployed Engineer 模式整套搬進企業 AI 落地戰場。
綜述 11 個公開的 LLM 寫作 pipeline,三條主流模式:多 agent(researcher → writer → critic)、Karpathy LLM-wiki(raw + wiki + LLM 寫不手寫)、品質防線(technical verifier + never fabricate + brief gate)。Princeton GEO 論文(KDD 2024)量化了 inline 引用 +28%、加數字 +33%、quote 原文 +41%、關鍵字塞詞 −9%。
OpenAI 在 2026 年 5 月公開 Codex 內部部署實踐:沙箱劃技術邊界、審批決定何時停下、Auto-review 用子代理代替人類審批、Managed configuration 由企業管理員強制下發。核心理念是:低風險動作零摩擦,高風險動作必經審查。
本地起一支 OpenAI 相容端點 localhost:20128,把 Claude Code / Cursor / Cline / Codex / Copilot 等 CLI 的請求,自動依 訂閱 → 便宜 → 免費 三層 fallback 路由到 40+ 家供應商。內建 RTK 壓縮 tool_result(省 20–40% input token)、Caveman mode 壓 output、OAuth 自動 refresh、多帳號輪詢,npm install -g 9router 兩條指令裝完。
三家原本走三條路:Anthropic 做擴充、OpenAI 蓋自己的瀏覽器、Google 直接焊進 Chrome。到 2026-08 已經變成兩條——OpenAI 的 Atlas 在 8/9 停止運作,能力收回 ChatGPT 桌面版與 Codex。剩下的分歧是「寄生在 Chrome 上」對「Chrome 本身就是」。
Stripe Minions 講『The walls matter more than the model』,但矽谷四家 case study 沒講具體要怎麼蓋這些 walls。這篇把 daodao auto-dev agent 實際落地的 15 個 walls 拆給你看:每個 wall 防什麼、檔案放哪、tradeoff 在哪。Tier 1 必上、Tier 2 強化、Tier 3 嚴肅治理。
PM 在 Notion 勾選一張任務卡 → 系統自己同步成 GitHub issue → 寫成 plan → 寫成 code → 開 PR 給人類 review。這篇講這套系統做什麼、不做什麼、為什麼現在可行,給沒在寫 code 的人看。
從零建一條 Notion 任務 → GitHub issue → spec PR → code PR 的 auto-dev agent。用 daodao 案例為範本,講清楚每一步要做什麼、要驗證什麼、踩到問題怎麼處理。Notion DB schema → bin/ scaffold → 兩條 Claude Code routine → cloud env vars → staging 測試。
Anthropic 開源了 12 個金融業 Agent + 11 個 MCP connector,最值得抄的不是 Agent 本身,而是『同一份 prompt 雙 runtime』和『純檔案擴充』的分層設計。
用 5 輪 consensus 寫 plan、再用 team mode 5 worker 並行做完 12 個 task;中間踩了不少坑,記下來給未來的自己跟同樣在嘗試的人看。
DeepSeek-OCR 的論文題目是 Contexts Optical Compression — OCR 只是手段,真正驗證的是『把文字渲染成圖片再餵給 VLM』能達到 10× 壓縮且 97% 精度。這對長上下文 LLM 與 RAG 的 token 成本是質變。
個人專案、玩具 demo、做 RAG 原型,不想第一步就掏卡。整理 2026/05 還在運作的 40+ 家 LLM inference 服務商,按免費資源「是持續補充還是一次性」分梯,標註綁卡需求、模型清單、付費起價,數字全部從官方 pricing 頁驗證。中國原廠含智谱 GLM(永久免費)、豆包(每日 200 萬 tokens)、Kimi、百煉、Ollama 本地跑法一併收錄。
Skill 是一個資料夾、一份 SKILL.md。三層 progressive disclosure 讓 Claude 在需要時才載入細節,避免每次對話重新解釋偏好。
Local Deep Research 是個本地優先、隱私導向的深度研究 Agent,用 LangChain + LangGraph 串起 20+ 搜尋引擎和 30+ 種研究策略,旗艦的 langgraph_agent_strategy 走 LLM 自主 tool-calling 路線,跟固定流程的 RAG graph 是兩種思路。
PageIndex 不切 chunk、不做 embedding、不存向量,靠 LLM 推理一份 LLM 自己寫的目錄樹,在 FinanceBench 上由開發方自評拿到 98.7%。它解的不是向量 RAG 的同一個問題——是『在一份結構清楚的厚文件裡找對的那一節』。
用 Claude Code、Cursor 等 AI agent 時,內建 WebFetch / WebSearch 常被 Cloudflare、地理限制或 rate limit 擋住。接一個 search MCP server 是最直接的解法,這篇比較 2026 年實際能用的選項。
Groq Console 是 Groq 自家 LPU 晶片的開發者入口,提供 OpenAI 相容 API、Playground、免費額度,主打把 Llama、Qwen、DeepSeek 等開源模型跑出市面上最快的 token/秒。
goose 是由 Linux Foundation 旗下 AAIF 維護的開源 AI Agent,支援 15+ LLM 供應商、70+ MCP 擴充,用 Rust 打造桌面 App + CLI + API,定位是不鎖廠商、可自架的 Claude Code 替代方案。
在 Cloudflare Workers AI 上跑繁中 LLM,Gemma 系列的指令跟隨比同級 Llama 穩定。gemma-3-12b-it 已於 2026-05-30 標為 deprecated,現在的對應選項是 gemma-4-26b-a4b-it:256K context、Vision、Function calling,$0.10 / $0.30 per M tokens。
Karpathy 在 2026 年提出 llm-wiki 模式,讓 LLM 主動維護 markdown wiki 而非每次從頭 RAG;目前已有 100+ 開源實作,從本機 CLI 到 serverless Telegram bot 各有差異。
OpenAI 2026/4/22 推出 Workspace Agents,以 Codex 為底、可長時間在雲端執行、能串 Slack/Salesforce/Google Drive,是 Custom GPT 的企業版後繼者。
用 Weaviate Query Agent + ColQwen 多向量模型,一個 prompt 在 36 小時內搭出生產等級的法律合約搜尋系統——這篇拆解它的架構邏輯、技術選擇,以及你真正需要注意的事。
Cloudflare 內部跑了 30 天 Multi-Agent Code Review,131K 次 Review、中位數 3 分鐘。這篇整理他們的架構,以及 Anthropic、GitHub、CodeRabbit、Greptile 等業界方案怎麼做同一件事。
OpenAI 詳解 Codex 的 agent loop 設計:prompt 如何建構、multi-turn 對話如何管理、prompt caching 如何避免成本爆炸,以及 context window 自動壓縮的實作。
OpenAI 把 Codex harness 包裝成 JSON-RPC over stdio 的 App Server,讓 VS Code、JetBrains、Web、桌面 App 都能共用同一套 agent loop,三個核心 primitive:Item、Turn、Thread。
OpenAI 內部團隊 5 個月、3 人、0 行手寫程式碼,用 Codex 交付了一個完整產品。這篇整理他們在 AGENTS.md 設計、repo-local 知識庫、架構強制執行、entropy 管理上的核心心得。
Agentic Engineering 不是讓 AI 寫更快的程式碼,而是讓軟體更快走完整個交付流程——透過多 agent 協作,壓縮跨團隊的協作摩擦。
Agent 的記憶不是一個插件,而是 harness 本身的一部分。選對記憶類型、估算資料量、再決定用什麼技術——最後,也要搞清楚你是否真的擁有那份記憶。
AI 模型審查自己的程式碼時會自我合理化,用三個不同 CLI 做獨立 review 可以有效捕捉盲點——這篇介紹背後的設計哲學與實際的工作流程模式。
Agentic AI 不只是 autocomplete,而是能自主執行多步驟任務的 AI 系統。這篇文章拆解 SDLC 的五大階段,說明每個階段能從哪裡切入、怎麼從 CLI 工具走到全流程自動化,以及目前最值得追蹤的外部資源。
Encyclopedia of Agentic Coding Patterns 收錄 190 個 pattern,幫你在 AI 代寫程式的時代做出正確的軟體決策——而這本書本身就是由 AI agent 自主撰寫和維護的。
GitHub Copilot Coding Agent 讓你把 Issue 指派給 Copilot,它在雲端沙箱裡自動開 branch、寫程式、跑 CI、開 PR。成功關鍵是設好 AGENTS.md,沒設定的話 agent 容易跑偏。適合定義清楚的中型任務,需 Pro+(每月 1,500 premium requests)或 Enterprise 方案。
一個六層確定性管線,從 URL 擷取到向量嵌入全自動處理,透過八維度評分系統在資料進 RAG 之前就篩掉垃圾。
Microsoft 開源的輕量工具,把 PDF、Office、圖片、音訊等格式統一轉成 Markdown,專門為 LLM pipeline 設計。
MCP 不會退場,但有效範圍比想像中窄。本機開發場景 CLI 和 raw API 幾乎都贏過 MCP;MCP 真正不可替代的,是「跨 agent 共享的本機工具層」這條窄縫。
不是每個人都該直接用 coding agent 改 code。AI Native 團隊要搞定 interface 規格、測試先行、monorepo、security guardrail、human-in-the-loop 與 token 預算管控,在 coding agent 上面再建一層 agent platform 並明確開發者角色轉型才是正途。
Autoreason 用競爭式多版本評估(A/B/AB + 盲測 Borda count)取代傳統的「批評→改寫」迴圈,解決 LLM 自我修正中的提示偏差、範疇蔓延和缺乏克制三大問題。
Vercel Labs 開源的 coding agent 參考實作。三層架構分離 web UI、agent workflow、sandbox VM,設計給想自建 Claude Code / Cursor Background Agent 的團隊當起手。
Claude Octopus 是一個 Claude Code plugin,能同時叫 Codex、Gemini、Copilot、Qwen、Ollama、Perplexity、OpenRouter 和 Claude 一起看同一份 code,用 75% 共識門檻找單模型的盲點。內建 32 個 persona、48 個 /octo:* slash commands、51 個 skill、以及 Dark Factory 全自動 spec-to-code 管線。
LLM Council 是 Andrej Karpathy 花一個週末做的本地 Web App,把一個問題同時丟給多個 LLM,再讓它們匿名互評,最後由 Chairman 模型綜合出一份答案。定位是讀書時比較模型用的小工具,99% vibe coded、不打算長期維護,但架構本身就是一份值得參考的 ensemble LLM 最小實作。
Claude Managed Agents 是 Anthropic 2026/04/08 推出的 beta 服務,提供 agent harness 加雲端容器沙箱,按 token 加 $0.08/session-hour 計費,適合長時間非同步任務,不想自己寫 agent loop 和跑沙箱的人值得看。
Agent Skills 是 Addy Osmani 開源的 19 個生產級工程技能,透過 /spec → /plan → /build → /test → /review → /ship 的指令驅動 AI 代理遵循資深工程師的開發紀律,而不是走捷徑。
Graphify 用 tree-sitter AST 提取程式碼結構,再用 LLM 語意分析文件與圖片,把整個專案壓縮成一張可查詢的知識圖譜。號稱每次查詢比讀原始檔案省 71.5 倍 token。
Claw Code 是用 Rust 從零重寫的 Claude Code CLI 替代品,48K 行程式碼、40 個工具、MIT 授權。最驚人的是整個專案在 5 天內由多個 AI Agent 協作完成,上線不到一週就突破 170K stars。
clawhip 是一個 Rust 寫的 daemon,專門把 AI coding agent 的事件(commit、PR、session 狀態)路由到 Discord / Slack,解決多 Agent 並行時「不知道誰在做什麼」的可觀測性問題。
notebooklm-py 透過逆向工程 Google 的 batchexecute RPC 協議,讓你用 Python / CLI / AI Agent 程式化操作 NotebookLM,包含音訊、影片、投影片、測驗等生成功能。
oh-my-claudecode(OMC)在 Claude Code 上加了 8 種協作模式、19 個專業 Agent、跨模型調度(Claude + Codex + Gemini),讓單人 CLI 工具變成多 Agent 開發平台。支援 Deep Interview 需求釐清、Smart Model Routing 省 30-50% token、rate limit 自動恢復。
oh-my-codex(OMX)不是取代 Codex CLI,而是在它上面加一層結構化工作流——從需求釐清、計畫產出到多 Agent 並行執行,用 4 個核心 Skill 把散亂的 prompt 對話變成可追蹤的開發流程。
oh-my-openagent(OmO)把 OpenCode 從單一 LLM 工具變成多模型 Agent 團隊——Opus 當主力、GPT-5.2 當架構師、Gemini 做前端、Sonnet 查文件,一個 ultrawork 關鍵字觸發全員並行。48K stars,UltraWorkers 生態系中最早建立多 Agent 編碼模式的專案。
香港大學 HKUDS 開源的 Agent Harness 框架,實作了工具呼叫、技能載入、記憶、權限、多代理協作等完整基礎設施,支援 Anthropic / OpenAI / GitHub Copilot 三種 API 格式。
GitHub 上已有 6,400+ 個 .claude/agents/*.md 檔案。我們拆解了 4 個代表性專案——ChemistryTimes(內容生產 pipeline)、claude-sub-agent(document-driven 開發流水線)、agentic(Temporal.io DAG 平行執行)、vs-copilot-multi-agent(Hook 強制記憶寫入)——加上 ruflo 的企業級 swarm 架構,歸納出 6 種設計模式和 5 個實戰趨勢。
矽谷一線公司各自獨立打造內部 AI coding agent,從 Slack 訊息到 merged PR 全程自動化。深入拆解 Stripe、Ramp、Coinbase、Spotify 四家的架構與 2026 年最新成長數字(Stripe 7,000+ PRs/週、Ramp 75% merged PRs),再擴展到 Google、Meta、Amazon、Uber、Shopify、PostHog 等十多家公司的做法與指標。
Andrej Karpathy 提出用 LLM 編譯個人知識 wiki 的框架——收集原始資料、LLM 編譯成 .md wiki、對 wiki 做 Q&A、輸出歸檔回 wiki。本文比較三種實踐路線:Karpathy 的知識庫模式、社群的經驗庫模式、以及 quidproquo 的部落格模式。
拆解 Claude Code 的 18+ 種快取機制後發現:provider-level prompt cache 你做不了,但 embedding cache、tool result cache、entity cache 你不但做得了,效果還更好。附完整的 AgentCache 介面設計與 per-tool TTL 策略。
Claude Code 的 45 個 tool 中,每個 prompt() 都會根據使用者類型、feature flags、系統能力動態調整。將這個模式套用到 ReAct Agent,根據 orchestrator 模型能力、locale、可用 tools 三個維度動態生成 tool description,小模型自動補 few-shot,大模型省 token。
Claude Code 從 $20/mo Pro 到 $200/mo Max 20x,額度以 5 小時滾動視窗計算並疊加週上限,Claude 網頁/桌面/終端共用同一個池子。額度用完可選擇改走 API 費率的 usage credits 繼續做事,而不是硬停。
Cursor CLI 把 IDE 的 Agent 帶進終端,支援 interactive TUI 與 headless、Plan/Ask/Agent 三種模式、Cloud Handoff、CI/CD 整合。計費改為兩個獨立額度池:Cursor 自家模型(Grok 4.6/4.5、Composer 2.5)與第三方模型(Pro 含 $20、Pro+ $70、Ultra $400)。
Google 這條線的付費路徑對照:個人免費層與 Google AI Pro / Ultra 的 Gemini CLI 存取已於 2026/6/18 終止,個人只剩 Antigravity CLI 或自備付費 API key;企業授權與 Google Cloud 不受影響。零成本起步的選項已經換人。
Kiro 分五層:Free 50 credits、Pro $20/1,000、Pro+ $40/2,000、Pro Max $100/5,000、Power $200/10,000,加購 credit 一律 $0.04。Auto 模式混合模型省成本(同一任務走 Sonnet 要 1.3 倍 credit),Spec-Driven 流程把 vibe coding 變成可追蹤的結構化開發。
Codex 綁定 ChatGPT 訂閱(Free / Go $8 / Plus $20 / Pro 5x $100 / Pro 20x $200),2026/4/2 起計費改為按 token 計 credit。模型主線是 GPT-5.6 Sol / Terra / Luna;GPT-5.4 與 5.4 mini 將於 2026/8/31 在 ChatGPT 登入模式下退場。
OpenCode 是免費開源的 TypeScript CLI agent(MIT,約 198K GitHub stars),支援 75+ 模型供應商含本地 Ollama,可用 Copilot/ChatGPT 帳號認證,session 中途切換模型不丟上下文。另有桌面版與官方 Zen gateway。
比較六大 Agent CLI 的訂閱方案(Claude Code、Cursor CLI、Codex、Kiro、Antigravity/Gemini CLI、OpenCode),並研究多模型路由模式——簡單任務給便宜模型、複雜任務給強模型。各家計費在 2026 上半年幾乎全部改過一輪,這一版是 8/18 重新查證的結果。
比較 NVIDIA DGX Spark、Apple Mac Studio M4 Ultra、ASUS Ascent GX10、MSI AI Edge 等個人 AI 工作站,幫你找到適合的本地推論硬體。
透過多模型路由,將 70% 的簡單任務導向便宜模型,只讓 10-15% 的複雜任務使用旗艦模型,實測節省 40-85% 推論成本。本文介紹五個主要開源工具的架構與實作。
Agent CLI 不是更聰明的補全工具,而是能讀懂 codebase、執行多步驟任務、操作真實環境的 AI 代理。Claude Code、Codex CLI、Gemini CLI、OpenCode、Aider、Pi、Kiro、Amp、Cursor CLI... 工具越來越多,但底層共享一套設計邏輯——理解這套邏輯,才能真正用好它們。
按 GitHub Stars 排序,盤點 2026 年 15 個主流 AI Agent 框架的定位、特色與適用場景。不是排名,是地圖。
用 Claude Code 當 orchestrator,串接 Playwright 截圖、catbox.moe 圖床、Meta Graph API 發布、Telegram 通知,一句話完成 IG 輪播圖文的生成與發布。
llama.cpp 是目前最廣泛使用的本地 LLM 推論引擎,用純 C/C++ 實作,支援 CPU、Metal、CUDA、Vulkan 等多後端,搭配 GGUF 量化格式讓消費級硬體能跑數十億參數的模型。
TurboQuant+ 是 Google Research ICLR 2026 論文的開源實作,用 PolarQuant + QJL 兩階段量化壓縮 KV cache 達 3.8-6.4x,讓消費級硬體跑更大模型和更長上下文。
2026 年行動端 LLM 主力是 Gemma 3n、Qwen 3.5 Small、Llama 3.2、Phi-4-mini、Ministral 3 和 SmolLM3。3B 以下量化模型在 8GB RAM 手機上能跑到 30–50 tokens/sec,但 RAM、散熱和 context window 仍是硬限制。
2026 Q1 開源模型全面爆發:LLM 方面 GLM-5、Kimi K2.5、Qwen3.5 追上閉源;Embedding 和 Reranker 由 Qwen3 和 BGE 主導;語音有 Voxtral TTS 和 Whisper V3;圖像有 FLUX.2;影片有 Wan 2.2 追平 Sora。這篇是完整導覽地圖。
2025–2026 年,網站不只要給人看,還要給 AI 看。從 llms.txt、Schema Markup、GEO 到 RAG ingestion pipeline,這篇整理了讓你的網站變成 AI 可用資料來源的完整技術地圖。
Harness 不只是呼叫 LLM 的 wrapper。Tool Registry 管理工具的動態載入與選擇、Guard System 建立四層防護網、Checkpoint-Resume 讓長時間任務可以中斷恢復。這三個模式是生產級 Agent 系統的關鍵基礎設施。
Skill 是你手動呼叫的 prompt 模板,Subagent 是 Claude 自動 routing 的獨立 agent。看起來很像,但觸發方式、工具隔離、context 管理完全不同。
當 AI agent 能在幾分鐘內把 intent 變成 PR,軟體工程的瓶頸就從「規劃該做什麼」翻轉成「評估做出來的東西對不對」。Ticketing 時代的產物(sprint、story point、backlog grooming)正在壓縮歸零,取而代之的核心實踐是 review。
同一個模型在不同的 harness 設計下會產生截然不同的結果。Anthropic 用雙 Agent 架構、跨 session 狀態檔、GAN 式 generator-evaluator 迴圈,讓 Claude 能自主完成數小時的軟體開發任務。
Google 整理了八種 multi-agent 設計模式:從最簡單的 Sequential Pipeline 到可組合的 Composite Pattern。不是越複雜越好——選對模式比堆 agent 重要。
AI 工程經歷三個階段:Prompt Engineering(寫好指令)→ Context Engineering(餵對資訊)→ Harness Engineering(設計整個工作環境)。每一次演化不是取代前者,而是在更高的抽象層級上操作。
Agent loop 是每個 session 序列化的執行。最值得學的是它處理並行的方式:每個被接受的回合會記下 activeWriterRunId 宣告,之後每次逐字稿寫入都要附上 expectedWriterRunId,在交易裡比對——被取代的回合因此無法提交過期資料。
OpenClaw 每次執行都自己組系統 prompt,沒有執行期的預設 prompt。組出來的內容被一條內部快取邊界切開——穩定的 workspace 前綴在上面、每輪會變的頻道脈絡在下面——好讓有前綴快取的後端能跨頻道重用同一段前綴。
SecretRef 讓憑證不必以明文躺在設定檔裡,模型呼叫鏈上看到的是 process-local 的哨兵值。但官方講得很白:這不是程序隔離——真正的值仍在同一個程序的記憶體裡,而且 agent 讀得到的任何明文檔案都繞過了這層保護。
Cron 已經改名為 Automations(openclaw cron 仍是別名),而自動化現在有六種機制。核心的取捨只有一條:Automations 給你精確時間與隔離執行,Heartbeat 給你完整的主 session 脈絡與大約每 30 分鐘一次的頻率。
Standing orders 給 agent 對某個「程式」的永久操作權限,寫在 AGENTS.md 裡、每個 session 自動注入。它定義的是「被授權做什麼」,時間點則交給 automations——兩者分工,而且 automation 的提示應該引用 standing order 而不是複製它。
企業頻道全部改成 plugin 了,包含以前內建的 Slack 與 Google Chat。Slack 現在有三種傳輸模式——Socket Mode、HTTP Request URLs、Relay——而官方明說它們在功能上已經對等,要按部署形狀選,不是按功能選。
三個頻道各有一個「不知道就會卡住」的點:WhatsApp 是 QR 登入沒辦法遠端做、Telegram 是 bot 預設開著 Privacy Mode 收不到群組訊息(改完還要把 bot 退出再加回去)、Discord 是 Message Content Intent 沒開就收不到伺服器訊息。
這批頻道裡最值得看的是 Reef——不同人的 OpenClaw agent 之間的端對端加密側頻道,訊息在你的機器上封裝、雙向都經過釘死模型的守衛審查,中繼站永遠讀不到內容。它是 bundled plugin,不用另外裝。
OpenClaw 支援 31 個聊天頻道,但只有 WebChat 在核心裡——連 Slack 和 WhatsApp 都是要裝的 plugin。而群組安全其實有兩個獨立的軸:allowlist 管的是誰能觸發 agent,不管模型會看到哪些引用與歷史,後者要另外設 contextVisibility。
OpenClaw 的設定驗證是嚴格的——多一個不認識的鍵、型別不對、值無效,Gateway 就拒絕啟動。它會保留最後已知良好的設定,但啟動與熱重載都不會自動還原,只有 doctor --fix 會。
Gateway 預設只綁 loopback,而綁到 loopback 以外一律要求認證——這是它自己會擋的,不是建議。容器裡的有效預設是 auto,但 Tailscale serve/funnel 啟用時會強制回 loopback。
雲端部署 OpenClaw 要決定的其實只有四件事:Gateway 綁哪裡、state 放哪裡、誰能連進來、壞了怎麼復原。平台選擇是最不重要的一項。
OpenClaw 有六種本機安裝方式,差別不在指令而在你要不要可重現性、隔離、與自我更新。真正會卡住的是套件管理器的 lifecycle script 政策:npm 12 與 pnpm 全域安裝都預設擋掉 OpenClaw 的 build script。
OpenClaw 的容錯是兩階段:先在同一供應商內輪替 auth profile,再換模型。但真正決定行為的是「這個模型是誰選的」——你手動用 /model 選的模型是嚴格的,失敗就報錯,不會偷偷用別的模型回答你。
OpenClaw 對模型的硬需求是 tool use 加夠大的 context——onboarding 自動推薦本地模型的門檻是支援 tool 且 context 至少 16K。但更容易搞混的是 provider、model、agent runtime 其實是三層,`openai/*` 不等於走 Codex。
官方 provider 目錄現在有 60 個條目。接本地模型最常見的失敗是把 Ollama 的 base URL 寫成 /v1——那會破壞 tool calling,模型會把 tool JSON 當純文字吐出來。
一個 agent 是完整的人格範圍——workspace、auth profile、模型登錄、session 儲存全部獨立。但隔離不是絕對的:次要 agent 的 OAuth 憑證過期時,OpenClaw 會回頭讀主 agent 的同名 profile,而 workspace 只是預設工作目錄,不是硬性沙箱。
遠端 node 執行最值得看的是核准的綁定方式:exec 在核准前先備好一份標準化的 systemRunPlan,核准之後 gateway 轉發的是那份存起來的計畫,不是任何之後被呼叫端改過的指令、cwd 或 session 欄位——而且執行前會重新驗證工作目錄。
OpenClaw 有 200+ 份文件,這篇幫你搞懂全貌、知道每塊在講什麼、依你的角色決定從哪讀起。
「OpenClaw 是 Pi 的 Gateway 殼」這個說法已經過期。官方文件現在寫的是:內建 runtime id 是 openclaw,而 pi 是會被正規化掉的 legacy 別名,「已經沒有外部 agent 框架套件」。留下的第三方 pi 相關依賴只剩一個終端機元件工具包。
Node 是必要的執行期,因為標準狀態儲存用 node:sqlite——Bun 只能拿來裝依賴。Windows 這邊變化最大:新增了原生的 Windows Hub companion app,不需要管理員權限,還能自己開一個 app 專屬的 WSL 發行版來裝 Gateway。
iOS 與 Android 的 app 是 node,不是 Gateway:它們不跑 Gateway 服務,Telegram 或 WhatsApp 的訊息也是落在 Gateway 上而不是手機上。Apple Watch 比較特別——因為 watchOS 擋掉一般 app 的低階網路,它改用簽章過的 HTTPS 輪詢。
官方對安裝 plugin 的定調是「把它當成執行程式碼」——ClawHub 與內建目錄是受信任來源,任意的 npm、git、本地路徑在非互動安裝時需要 --force。而驗證要用 inspect --runtime,因為不帶旗標的 inspect 只是冷的 manifest 檢查。
沙箱由三個獨立設定決定:mode(何時套用)、scope(開幾個容器)、backend(在哪執行)。最容易出事的是預期落差——`tools.exec.host` 現在預設是 auto,所以「沒設就等於在沙箱裡」已經不成立,安全稽核有一條專門抓這個。
預設下所有 DM 匯進同一條「主 session」,群組活動與背景工作都往那裡回報。記憶則完全是磁碟上的 Markdown——模型只記得被寫下來的東西,沒有隱藏狀態。但如果不只你一個人能私訊它,DM 隔離是必須主動打開的。
OpenClaw 的安全文件現在開宗明義寫著:這是個人助理的信任模型,一個 Gateway 對應一個受信任的操作者。它明確「不是」多個互相敵對的使用者共用一個 agent 時的安全邊界——而且有一份『依設計不算漏洞』的清單把這件事寫死。
OpenClaw 的瀏覽器是一個獨立的 agent 專用 profile,跟你的個人瀏覽器完全隔離。而 web_search 的回傳結構裡有一個 externalContent.untrusted 標記——搜尋結果在型別層就被標成不可信的外部內容。
exec 是一個會改變狀態的 shell 面:關掉 write、edit、apply_patch 這些檔案工具,完全不會讓它變成唯讀。而沙箱預設是關的,所以 host=auto 實際上會解析到 gateway——真的要沙箱就明確寫,它至少會 fail closed。
Skills 從六個來源載入、同名時高優先者勝,而 per-agent 的清單是取代不是合併。子 agent 預設拿不到 session 與訊息工具——它回傳純文字給父 agent,人看得到的回覆權留在父 agent 手上。
工具目錄大到塞不進 prompt 時,OpenClaw 有兩個答案:Code Mode 只讓模型看到 exec 與 wait,由它寫小程式去搜尋與呼叫隱藏的目錄;Tool Search 則保留結構化的搜尋/描述/呼叫控制。兩者都不繞過工具政策。
官方的分診流程是七行指令跑一遍、兩分鐘出診斷。而「assistant 感覺受限、工具不見了」這個最常見的症狀,多半是工具 profile——minimal 只允許 session_status,coding 才是新本地設定的預設。
Control UI 加了一條 session rail:它用 utility model 產生執行摘要,還附一個唯讀的伴讀 thread,讓你問「這個 session 現在怎樣」而不會進入或打斷主 agent 執行。它的內容不會進入 chat.history。
模型是 CPU,harness 是作業系統,agent 是應用程式。模型能力再強,沒有好的 harness 就只是 demo。Phil Schmid 認為 harness 是 2026 年 AI 工程最關鍵的基礎設施。
LangGraph 把 LLM 工作流程建模成有向圖,解決多輪迭代、條件分支、平行執行這些用線性 pipeline 做很痛的問題。
Langfuse 是目前最成熟的開源 LLM Observability 平台。這篇從 Tracing、Prompt 管理、評估、Dataset 四個核心功能切入,帶你搞清楚它在實際專案中怎麼用。
Context Engineering 是 2025 年取代 Prompt Engineering 的核心概念:重點不再是「怎麼問」,而是「給什麼資訊」。把對的資訊在對的時機送進 context window,比換更強的模型更有效。這篇整理了定義、四大策略、實作技巧和常見失敗模式。
每個 AI 工具都有自己的呼叫格式,整合成本高。MCP(Model Context Protocol)是 Anthropic 提出的開放標準,統一 AI Agent 與外部工具、資料源的通訊協定,讓工具可以跨 Agent 重用。
RAG 是唯讀的。Agent Memory 讓 AI 不只能讀,還能寫入和持久化資訊。三種記憶類型:Procedural(行為模式)、Episodic(時間事件)、Semantic(事實知識),構成完整的認知記憶系統。
AI Agent 不是一個技術,是一整個架構體系。本文是系統化導航:從 Agent 三支柱(Context/Cognition/Action)出發,穿過 AI 工程三階段演化(Prompt → Context → Harness),到八種 Multi-Agent 設計模式和生產級 Harness 基礎設施。每個主題都有對應專文深入。
AI Agent 不是黑盒子——它由三層構成:知道什麼(Context)、怎麼想(Cognition)、能做什麼(Action)。搞清楚這三層,才能理解 agent 為什麼有時聰明、有時失控,以及怎麼設計一個真正好用的 agent 系統。
單一 RAG Agent 處理所有查詢會遇到知識邊界和效能瓶頸。Multi-Agent RAG 把檢索任務分派給多個專業化 Agent,每個 Agent 有自己的知識庫和檢索策略,由中央 Orchestrator 協調合併結果。
傳統 RAG 把文件切成小 chunks 再檢索,但這造成資訊碎片化。LongRAG 利用 100K+ token 的長上下文模型,檢索更大的文件區段(整個章節甚至整份文件),減少碎片化同時保持檢索效率。
Speculative RAG 用小型專家模型從不同文件子集平行生成多個答案草稿,再由大型模型一次驗證選出最佳答案。論文在 PubHealth 上準確度提升 12.97 個百分點、延遲降低 50.83%——但這是最好的那一格,其他 benchmark 的幅度小很多。
Ollama 把 llama.cpp 包裝成 Docker 風格的 CLI + REST API,一行指令就能在本地跑 LLM。這篇從核心概念、安裝、API、硬體需求到 Modelfile 自訂,完整介紹這個工具適合什麼、不適合什麼。
RAG 已經從簡單的「搜尋+生成」演化成涵蓋十個世代的技術體系,2025 年後更進入 Agentic/Reasoning RAG 新階段。本文是系統化導航:從 Naive RAG 到 Multi-Agent/LongRAG 的十代演化、後十代 Agentic Era(Search-R1/RL 搜索、MCP 協議、GraphRAG 3.x、視覺直嵌)、檢索策略、Chunking、Embedding、Reranking、評估框架、可觀測性、成本優化。每個主題都有對應專文深入。
vLLM 用 PagedAttention 解決 KV cache 記憶體浪費問題,搭配 continuous batching 和 prefix caching,成為目前最主流的開源 LLM 推論引擎。
聊天機器人不只是接 API。對話狀態管理、記憶機制、Streaming、Guardrails、可觀測性、tech stack選型,每一層都影響使用者體驗。
好的 Prompt 不是一次寫出來的,而是迭代出來的。從最簡單的 prompt 開始,用真實 case 測試,分類錯誤類型,針對性修改。本文涵蓋 System Prompt 三段式結構、推理框架選擇、Few-shot 最佳化、Token 預算管理和六個常見錯誤。
複雜多跳問題,RAG 一次搜尋不夠。Agentic RAG 讓 LLM 評估結果是否充分,不夠就改寫查詢再搜一次,形成 ReAct 迴圈。
Embedding 模型的選擇直接影響 RAG 的搜尋品質。BGE-M3 的多語言訓練、1024 維向量、同系列 Reranker,是繁中 RAG 的實用選擇。
切太大找不準,切太小失去上下文,碰到表格更是全軍覆沒。Chunking 是 RAG 最被低估的環節,策略選錯,後面再多優化都是白費。
Bi-Encoder 太粗糙,Cross-Encoder 太慢,ColBERT 的 Late Interaction 在兩者之間找到平衡:token 級別的相互比較,但可以預先計算文件向量。
文件切塊後,每個 chunk 失去了它在原文件中的上下文。Contextual Retrieval 在索引時,用整份文件為每個 chunk 各自生成一段上下文再前綴進去,解決 chunk 孤島問題。
過濾條件太嚴格導致零結果?CRAG 自動放寬過濾條件重試,比讓 LLM 用通用知識瞎猜好多了。
向量搜尋的相似度分數不等於相關性,Cross-Encoder 用成對比較重新排序,把真正相關的文件推上來。
向量搜尋找相似,圖搜尋走關係。當問題需要跨多個實體的推理(岩場→路線→完攀者→難度分布),GraphRAG 比標準 RAG 更有優勢。
向量搜尋抓語義,BM25 抓關鍵字,兩者用 RRF 融合才能同時照顧模糊查詢和精確術語。
用 LLM 先生成一份「理想答案」,再把這份假設文件 embed 去搜尋,比直接搜尋查詢本身效果更好。
每次對話後,異步提取使用者可能的偏好和程度,下次查詢時自動個性化搜尋條件,不需要使用者手動設定。
只看相關性會讓結果都是同一條路線的不同描述,MMR 在相關性和多樣性之間取平衡,再疊加熱門度讓結果更實用。
RAG 不是固定的三步流程,而是一組可以動態啟用、跳過、重排的步驟。Pipeline as Code 讓系統在不重新部署的情況下調整行為。
複雜查詢只用一個向量搜尋容易漏掉相關文件,讓 LLM 改寫成 3-5 個子查詢並行搜尋,召回率顯著提升。
攀岩路線有大量圖片資訊(路線圖、岩壁照片),純文字 RAG 遺漏了這些。Multimodal RAG 讓圖片也能被搜尋和理解。
Naive RAG 夠用但有很多問題,Advanced RAG 針對性修補,Modular RAG 重新架構讓系統可組合、可配置。了解三個世代,才能理解現代 RAG 系統為什麼長這樣。
對複雜問題,先讓 LLM 規劃出需要哪些資訊、分幾步取得,再按計畫執行,比邊搜邊想更系統化。
不是所有問題都需要 RAG。用 LLM 先分類查詢類型,再決定執行路徑,節省成本又提升準確度。
「加了 Cross-Encoder 之後感覺好多了」不是科學的評估。A/B 測試讓你知道改動是否真的有效,效果多大,在哪類查詢上有效。
RAG 系統需要資料才能回答問題,但一開始就沒有資料。冷啟動策略決定了系統從空到可用的路徑。
RAG 系統的成本來自 LLM token、Embedding API、向量搜尋。每個環節都有可以壓成本的地方,但要確認優化沒有犧牲太多品質。
RAG 評估沒有指定工具的業界標準;先把 retrieval、generation、operation 分開量,再依技術棧選 Promptfoo、RAGAS、DeepEval 或 TruLens。
RAG 系統出問題,90% 的情況是這 10 種之一。先識別是哪種失敗模式,再找對應的解法,比盲目優化有效很多。
RAG 系統面對的攻擊不只是技術層面的,Prompt Injection 和 Jailbreak 是真實威脅。輸入輸出都需要獨立的防護層。
自己寫 trace 夠用,但開源工具讓你少做很多事。Langfuse、Phoenix、LangSmith 各有定位,選哪個取決於你對自架、開源、整合複雜度的取捨。
RAG 系統最難的不是建起來,是搞清楚為什麼這次回答不好。Pipeline Tracing 把每個步驟的決策和數據記下來,讓除錯有跡可循。
搜尋找到了正確的文件,但 LLM 的回答還是不好——很多時候問題在 Prompt 設計。System prompt 結構、context 排版、指令語言都會影響輸出品質。
LLM 生成需要 3-5 秒,等全部生成完再顯示體驗很差。SSE 讓 token 一邊生成一邊推送,首個字元出現時間從 5 秒縮到 1 秒以內。
只限制請求次數不夠,一個超長的查詢可能消耗掉十個普通查詢的 token。雙重配額(請求數 + token 數)才能真正控制成本。
RAG 和 Fine-tuning 解決的是不同問題。RAG 給模型新知識,Fine-tuning 改變模型的行為風格。大多數情況是兩者都用,而不是選一個。
BM25、向量搜尋、HyDE、Multi-Query 各出一份結果,怎麼合理地合成一份?RRF 用名次而不用分數,規避了跨系統分數無法比較的根本問題。
用另一個 LLM 評估回答的準確度和品質,分數太低就重新生成,並自動加上適當的免責聲明。
快取不只能比對完全一樣的查詢,語義相近的問題也能命中快取,省下整個 RAG pipeline 的執行。
BM25 只認識查詢裡出現的詞,SPLADE 能推斷相關詞彙並加入搜尋,在保持關鍵字搜尋精確性的同時獲得部分語義能力。
「我今年完攀幾條」這種問題,RAG 語義搜尋永遠不如直接查資料庫。讓 LLM 識別意圖、提取參數,執行預定義 SQL 模板。
向量資料庫的選型比 LLM 選型更受部署平台限制。先確認平台和規模需求,再看功能特性,不要只看 benchmark。