{
  "checked": "2026-10-03",
  "note": "每条链接都用 tools/learn/check_links.py 走代理实际打开过；标题、作者、年份以页面上的内容为准（B 站取发布日期，arXiv 取首次提交日期）。英文模式用 *_en 字段（title_en、why_en、author_en，以及 name_en、levels_en、platforms_en）；标了 enOnly 的条目只在英文模式出现——它们是中文模式里已有中文版的同一内容的英文原版，或者替换中文讲解的英文资料。",
  "topics": [
    { "id": "start", "name": "起步", "name_en": "Getting started", "hue": 168 },
    { "id": "infer", "name": "推理", "name_en": "Inference", "hue": 186 },
    { "id": "train", "name": "训练", "name_en": "Training", "hue": 34 },
    { "id": "mm", "name": "多模态", "name_en": "Multimodal", "hue": 262 },
    { "id": "agent", "name": "智能体", "name_en": "Agents", "hue": 216 },
    { "id": "world", "name": "世界模型", "name_en": "World models", "hue": 140 },
    { "id": "interp", "name": "可解释性", "name_en": "Interpretability", "hue": 340 }
  ],
  "types": [
    { "id": "intro", "name": "入门讲解", "name_en": "Explainer" },
    { "id": "paper", "name": "原始论文", "name_en": "Paper" },
    { "id": "code", "name": "动手代码", "name_en": "Code" },
    { "id": "viz", "name": "交互可视化", "name_en": "Interactive" }
  ],
  "levels": ["", "入门", "进阶", "深入"],
  "levels_en": ["", "Beginner", "Intermediate", "Advanced"],
  "platforms_en": {"B 站": "Bilibili", "课程主页": "Course page", "在线教材": "Online textbook", "GitHub": "GitHub", "文档": "Docs", "YouTube": "YouTube", "博客": "Blog", "arXiv": "arXiv", "在线工具": "Online tool", "交互文章": "Interactive article", "研究长文": "Research article", "论文 PDF": "Paper (PDF)"},
  "items": [
    { "id": "s-3b1b-llm", "topic": "start", "type": "intro", "level": 1, "lang": "zh", "platform": "B 站",
      "title": "【官方双语】大语言模型的简要解释", "author": "3Blue1Brown", "year": 2025,
      "url": "https://www.bilibili.com/video/BV1xmA2eMEFF",
      "why": "几分钟讲清大模型在做什么：一遍遍预测下一个词，再从海量文本里学会这件事。第一次接触就从这里开始。",
      "title_en": "Large Language Models explained briefly (official bilingual upload)",
      "why_en": "A few minutes on what an LLM actually does: predict the next word, over and over, and learn to do that from a mountain of text. Bilibili re-upload with Chinese subtitles." },
    { "id": "s-hylee-2024", "topic": "start", "type": "intro", "level": 1, "lang": "zh", "platform": "课程主页",
      "title": "Introduction to Generative AI 2024 Spring（生成式 AI 導論 2024）", "author": "李宏毅（台大）", "year": 2024,
      "url": "https://speech.ee.ntu.edu.tw/~hylee/genai/2024-spring.php",
      "why": "台大公开课，视频、投影片、作业都在这一页；从“生成式 AI 是什么”讲到训练三阶段和可解释性，全程中文。",
      "title_en": "Introduction to Generative AI 2024 Spring", "author_en": "Hung-yi Lee (NTU)",
      "why_en": "Hung-yi Lee's public course at National Taiwan University — videos, slides and assignments on one page, from \"what is generative AI\" to the three training stages and interpretability. Taught in Mandarin." },
    { "id": "s-d2l", "topic": "start", "type": "intro", "level": 2, "lang": "zh", "platform": "在线教材",
      "title": "《动手学深度学习》", "author": "阿斯顿·张、李沐 等",
      "url": "https://zh.d2l.ai/",
      "why": "中文深度学习的标准教材：每一节都是公式、图和能直接运行的代码，从 softmax 一路讲到注意力和 Transformer。",
      "title_en": "Dive into Deep Learning (Chinese edition)", "author_en": "Aston Zhang, Mu Li et al.",
      "why_en": "The Chinese edition of the standard open textbook: every section is equations, figures and runnable code, from softmax all the way to attention and Transformers." },
    { "id": "s-mu-read", "topic": "start", "type": "intro", "level": 1, "lang": "zh", "platform": "B 站",
      "title": "如何读论文【论文精读·1】", "author": "跟李沐学AI", "year": 2021,
      "url": "https://www.bilibili.com/video/BV1H44y1t75x",
      "why": "一篇论文分三遍读：先看标题、摘要和结论，再看图表，最后精读。准备读原始论文之前先看这一集。",
      "title_en": "How to read a paper [Paper Reading · 1]", "author_en": "Mu Li",
      "why_en": "Read a paper in three passes: title, abstract and conclusions first, then the figures, then the details. Mu Li's first episode, in Mandarin." },
    { "id": "s-zero-to-hero", "topic": "start", "type": "intro", "level": 2, "lang": "en", "platform": "课程主页",
      "title": "Neural Networks: Zero To Hero", "author": "Andrej Karpathy",
      "url": "https://karpathy.ai/zero-to-hero.html",
      "why": "从手写自动求导一路写到 GPT 的系列视频，每一集都是边讲边敲代码，跟着做完就能自己写出一个小语言模型。",
      "title_en": "Neural Networks: Zero To Hero",
      "why_en": "A video series that goes from a hand-written autograd engine all the way to GPT, coding live in every episode. Follow along and you end up writing a small language model yourself." },
    { "id": "s-happy-llm", "topic": "start", "type": "code", "level": 2, "lang": "zh", "platform": "GitHub",
      "title": "happy-llm：从零开始构建大模型", "author": "Datawhale",
      "url": "https://github.com/datawhalechina/happy-llm",
      "why": "中文开源教程：从 NLP 基础、Transformer 结构写到预训练和微调，每章配完整代码，适合系统地补一遍。",
      "title_en": "happy-llm: building a large language model from scratch",
      "why_en": "An open Chinese tutorial from NLP basics and the Transformer to pretraining and fine-tuning, with complete code for every chapter." },
    { "id": "s-hf-course", "topic": "start", "type": "intro", "level": 1, "lang": "zh", "platform": "文档",
      "title": "LLM Course（中文）· 第 1 章 本章简介", "author": "Hugging Face",
      "url": "https://huggingface.co/learn/llm-course/zh-CN/chapter1/1",
      "why": "Hugging Face 官方课程的中文版：Transformer 能做什么、transformers 库怎么用，读到哪一节就能在 Colab 里跑到哪一节。",
      "title_en": "LLM Course (Chinese) · Chapter 1 Introduction",
      "why_en": "The Chinese translation of Hugging Face's official course: what Transformers can do and how to use the transformers library, runnable in Colab section by section." },

    { "id": "i-3b1b-gpt", "topic": "infer", "type": "intro", "level": 1, "lang": "zh", "platform": "B 站",
      "title": "【官方双语】GPT是什么？直观解释Transformer | 深度学习第5章", "author": "3Blue1Brown", "year": 2024,
      "url": "https://www.bilibili.com/video/BV13z421U7cs",
      "why": "词嵌入、预测下一个词、softmax 和温度都用动画讲清楚，正好对应推理页的 D2 结构。",
      "title_en": "What is GPT? A visual intro to Transformers | Deep Learning Chapter 5 (official bilingual upload)",
      "why_en": "Word embeddings, next-word prediction, softmax and temperature, all animated — a close match for the inference page's D2 Structure. Bilibili re-upload with Chinese subtitles." },
    { "id": "i-3b1b-attn", "topic": "infer", "type": "intro", "level": 2, "lang": "zh", "platform": "B 站",
      "title": "【官方双语】直观解释注意力机制，Transformer的核心 | 【深度学习第6章】", "author": "3Blue1Brown", "year": 2024,
      "url": "https://www.bilibili.com/video/BV1TZ421j7Ke",
      "why": "Q、K、V 各自是什么、打分怎么变成权重、为什么要多个头：看完再去推理页 D5 拆注意力会顺很多。",
      "title_en": "Attention, the heart of the Transformer, visually explained | Deep Learning Chapter 6 (official bilingual upload)",
      "why_en": "What Q, K and V each are, how scores become weights, and why there are many heads. Bilibili re-upload with Chinese subtitles." },
    { "id": "i-hylee-tf", "topic": "infer", "type": "intro", "level": 1, "lang": "zh", "platform": "YouTube",
      "title": "【生成式AI導論 2024】第10講：今日的語言模型是如何做文字接龍的 — 淺談Transformer (已經熟悉 Transformer 的同學可略過本講)", "author": "李宏毅", "year": 2024,
      "url": "https://www.youtube.com/watch?v=uhNsUCb2fJI",
      "why": "用“文字接龙”把语言模型从输入到输出讲一遍：分词、嵌入、注意力、前馈、输出概率，一堂课串起来。",
      "title_en": "[Intro to Generative AI 2024] Lecture 10: How today's language models play the next-word game — a brief look at the Transformer", "author_en": "Hung-yi Lee",
      "why_en": "One lecture that walks a language model from input to output as a word-chain game: tokenization, embeddings, attention, feed-forward, output probabilities. In Mandarin." },
    { "id": "i-mu-tf", "topic": "infer", "type": "intro", "level": 2, "lang": "zh", "platform": "B 站",
      "title": "Transformer论文逐段精读【论文精读】", "author": "跟李沐学AI", "year": 2021,
      "url": "https://www.bilibili.com/video/BV1pu411o7BE",
      "why": "李沐带着把《Attention Is All You Need》一段一段读完，连公式里为什么要除以 √d 都讲到。",
      "title_en": "The Transformer paper, read paragraph by paragraph [Paper Reading]", "author_en": "Mu Li",
      "why_en": "Mu Li reads \"Attention Is All You Need\" one paragraph at a time, down to why the scores are divided by √d. In Mandarin." },
    { "id": "i-illustrated", "topic": "infer", "type": "intro", "level": 1, "lang": "en", "platform": "博客",
      "title": "The Illustrated Transformer", "author": "Jay Alammar", "year": 2018,
      "url": "https://jalammar.github.io/illustrated-transformer/",
      "why": "流传最广的 Transformer 图解，一步一张图，把向量怎么在编码器和解码器里流动画得清清楚楚。",
      "title_en": "The Illustrated Transformer",
      "why_en": "The most widely shared Transformer explainer: one picture per step, showing exactly how vectors flow through the encoder and decoder." },
    { "id": "i-aiayn", "topic": "infer", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "Attention Is All You Need", "author": "Vaswani 等", "year": 2017,
      "url": "https://arxiv.org/abs/1706.03762",
      "why": "Transformer 的原始论文。今天的大模型几乎都是它的“只保留解码器”版本，再加上 RoPE、RMSNorm、SwiGLU 这些改进。",
      "title_en": "Attention Is All You Need", "author_en": "Vaswani et al.",
      "why_en": "The original Transformer paper. Nearly every LLM today is its decoder-only half, plus refinements like RoPE, RMSNorm and SwiGLU." },
    { "id": "i-build-gpt", "topic": "infer", "type": "intro", "level": 2, "lang": "en", "platform": "YouTube",
      "title": "Let's build GPT: from scratch, in code, spelled out.", "author": "Andrej Karpathy", "year": 2023,
      "url": "https://www.youtube.com/watch?v=kCc8FmEb1nY",
      "why": "两个小时从空文件写出一个能写“莎士比亚”的 GPT：注意力、多头、残差、层归一化一个个加上去，每一步都能跑。",
      "title_en": "Let's build GPT: from scratch, in code, spelled out.",
      "why_en": "Two hours from an empty file to a GPT that writes \"Shakespeare\": attention, multiple heads, residuals and layer norm added one at a time, and every step runs." },
    { "id": "i-tokenizer", "topic": "infer", "type": "intro", "level": 2, "lang": "en", "platform": "YouTube",
      "title": "Let's build the GPT Tokenizer", "author": "Andrej Karpathy", "year": 2024,
      "url": "https://www.youtube.com/watch?v=zduSFxRajkE",
      "why": "从零实现字节级 BPE 分词器，顺带解释大模型很多怪毛病（不会数字母、算术出错）其实出在分词上。",
      "title_en": "Let's build the GPT Tokenizer",
      "why_en": "Builds a byte-level BPE tokenizer from scratch, and shows that many LLM quirks (miscounting letters, botched arithmetic) really come from tokenization." },
    { "id": "i-tiktokenizer", "topic": "infer", "type": "viz", "level": 1, "lang": "en", "platform": "在线工具",
      "title": "Tiktokenizer", "author": "dqbd",
      "url": "https://tiktokenizer.vercel.app/",
      "why": "输入任意一段文字，立刻看到它被切成哪些词元、各自的编号；可以切换不同模型的分词器对比。",
      "title_en": "Tiktokenizer",
      "why_en": "Type any text and instantly see the tokens it is cut into and their IDs; switch between different models' tokenizers to compare." },
    { "id": "i-explainer", "topic": "infer", "type": "viz", "level": 1, "lang": "en", "platform": "在线工具",
      "title": "Transformer Explainer", "author": "Aeree Cho 等（Polo Club）", "year": 2024,
      "url": "https://poloclub.github.io/transformer-explainer/",
      "why": "在浏览器里实跑 GPT-2：输入一句话，展开每一层看注意力和概率，拖动温度滑块看下一个词的分布怎么变。",
      "title_en": "Transformer Explainer", "author_en": "Aeree Cho et al. (Polo Club)",
      "why_en": "Runs GPT-2 live in your browser: type a sentence, open up each layer to see attention and probabilities, and drag the temperature slider to watch the next-word distribution change." },
    { "id": "i-llm-viz", "topic": "infer", "type": "viz", "level": 2, "lang": "en", "platform": "在线工具",
      "title": "LLM Visualization", "author": "Brendan Bycroft",
      "url": "https://bbycroft.net/llm",
      "why": "3D 走一遍一个小 GPT 的全部计算，每一次矩阵乘法都画成方块阵列。和本站推理页是同一种思路，可以对照着看。",
      "title_en": "LLM Visualization",
      "why_en": "A 3D walk through every computation in a small GPT, with each matrix multiplication drawn as a grid of blocks. Same idea as this site's inference page — worth viewing side by side." },
    { "id": "i-nucleus", "topic": "infer", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "The Curious Case of Neural Text Degeneration", "author": "Holtzman 等", "year": 2019,
      "url": "https://arxiv.org/abs/1904.09751",
      "why": "top-p（核采样）的出处：解释了为什么贪心解码会车轱辘话来回说，以及只在“概率核心”里抽签为什么更自然。",
      "title_en": "The Curious Case of Neural Text Degeneration", "author_en": "Holtzman et al.",
      "why_en": "Where top-p (nucleus) sampling comes from: why greedy decoding goes round in circles, and why drawing only from the \"nucleus\" of the distribution reads more naturally." },
    { "id": "i-roformer", "topic": "infer", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "RoFormer: Enhanced Transformer with Rotary Position Embedding", "author": "苏剑林 等", "year": 2021,
      "url": "https://arxiv.org/abs/2104.09864",
      "why": "旋转位置编码 RoPE 的原始论文。Qwen3 每一层的 Q、K 都要按位置转一个角度，用的就是它。",
      "title_en": "RoFormer: Enhanced Transformer with Rotary Position Embedding", "author_en": "Jianlin Su et al.",
      "why_en": "The original RoPE paper. In every Qwen3 layer, Q and K are rotated by an angle that depends on position — this is the method." },
    { "id": "i-qwen3", "topic": "infer", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "Qwen3 Technical Report", "author": "Qwen 团队", "year": 2025,
      "url": "https://arxiv.org/abs/2505.09388",
      "why": "本站推理页用的就是这一系列：GQA、q/k 归一化、思考与非思考模式的切换、训练数据和流程都在这份报告里。",
      "title_en": "Qwen3 Technical Report", "author_en": "Qwen Team",
      "why_en": "The family this site's inference page uses: GQA, q/k normalization, switching between thinking and non-thinking modes, plus the training data and recipe." },
    { "id": "i-bf16", "topic": "infer", "type": "intro", "level": 2, "lang": "en", "platform": "博客",
      "title": "BFloat16: The secret to high performance on Cloud TPUs", "author": "Google Cloud", "year": 2019,
      "url": "https://cloud.google.com/blog/products/ai-machine-learning/bfloat16-the-secret-to-high-performance-on-cloud-tpus",
      "why": "讲清 bf16 为什么是“8 位指数 + 7 位尾数”：保住 fp32 的数值范围、牺牲一点精度。推理页 D7 比特就是这种格式。",
      "title_en": "BFloat16: The secret to high performance on Cloud TPUs",
      "why_en": "Why bf16 is \"8 exponent bits + 7 mantissa bits\": it keeps fp32's range and gives up some precision. The inference page's D7 Bits uses exactly this format." },

    { "id": "t-3b1b-gd", "topic": "train", "type": "intro", "level": 1, "lang": "zh", "platform": "B 站",
      "title": "【官方双语】深度学习之梯度下降法 Part 2 ver 0.9 beta", "author": "3Blue1Brown", "year": 2017,
      "url": "https://www.bilibili.com/video/BV1Ux411j7ri",
      "why": "损失函数是一片地形，训练就是一步步往低处走。看完再看训练页的损失曲线和损失地形会很直观。",
      "title_en": "Gradient descent, how neural networks learn | Part 2 (official bilingual upload)",
      "why_en": "The loss is a landscape and training walks downhill one step at a time. Makes the training page's loss curve and loss landscape intuitive. Bilibili re-upload with Chinese subtitles." },
    { "id": "t-3b1b-bp", "topic": "train", "type": "intro", "level": 1, "lang": "zh", "platform": "B 站",
      "title": "【官方双语】深度学习之反向传播算法 上/下 Part 3 ver 0.9 beta", "author": "3Blue1Brown", "year": 2017,
      "url": "https://www.bilibili.com/video/BV16x411V7Qg",
      "why": "梯度是怎么从输出一层层往回传的。训练页“反向”那一步画的就是每一层收到的梯度大小。",
      "title_en": "Backpropagation, parts 1 & 2 | Part 3 (official bilingual upload)",
      "why_en": "How gradients travel back from the output, layer by layer. The training page's backward step draws the gradient each layer receives. Bilibili re-upload with Chinese subtitles." },
    { "id": "t-hylee-pre", "topic": "train", "type": "intro", "level": 1, "lang": "zh", "platform": "YouTube",
      "title": "【生成式AI導論 2024】第6講：大型語言模型修練史 — 第一階段: 自我學習，累積實力 (熟悉機器學習的同學從 15:00 開始看起即可)", "author": "李宏毅", "year": 2024,
      "url": "https://www.youtube.com/watch?v=cCpErV7To2o",
      "why": "训练的第一阶段：在网上海量文字里自学“文字接龙”，攒下语言能力和知识。训练页的唐诗小模型走的就是这一步。",
      "title_en": "[Intro to Generative AI 2024] Lecture 6: How LLMs are trained — Stage 1: self-study (if you know machine learning, start at 15:00)", "author_en": "Hung-yi Lee",
      "why_en": "Stage one of training: teaching itself the word-chain game on a huge amount of web text, building up language skills and knowledge. The training page's poetry model does exactly this step. In Mandarin." },
    { "id": "t-hylee-sft", "topic": "train", "type": "intro", "level": 1, "lang": "zh", "platform": "YouTube",
      "title": "【生成式AI導論 2024】第7講：大型語言模型修練史 — 第二階段: 名師指點，發揮潛力 (兼談對 ChatGPT 做逆向工程與 LLaMA 時代的開始)", "author": "李宏毅", "year": 2024,
      "url": "https://www.youtube.com/watch?v=Q9cNkUPXUB8",
      "why": "监督微调（SFT）：用少量高质量的问答教会模型“按对话格式回答”。对应训练页 Qwen3 的三步 SFT。",
      "title_en": "[Intro to Generative AI 2024] Lecture 7: How LLMs are trained — Stage 2: guidance from a master (plus reverse-engineering ChatGPT and the start of the LLaMA era)", "author_en": "Hung-yi Lee",
      "why_en": "Supervised fine-tuning: a small set of high-quality Q&A pairs teaches the model to answer in chat format. Matches the training page's three Qwen3 SFT steps. In Mandarin." },
    { "id": "t-mu-instruct", "topic": "train", "type": "intro", "level": 2, "lang": "zh", "platform": "B 站",
      "title": "InstructGPT 论文精读【论文精读·48】", "author": "跟李沐学AI", "year": 2022,
      "url": "https://www.bilibili.com/video/BV1hd4y187CR",
      "why": "ChatGPT 背后的三步：SFT、训练奖励模型、强化学习（RLHF），李沐逐段讲清每一步的数据和目标。",
      "title_en": "The InstructGPT paper, read closely [Paper Reading · 48]", "author_en": "Mu Li",
      "why_en": "The three steps behind ChatGPT — SFT, a reward model, reinforcement learning (RLHF) — with the data and objective of each explained section by section. In Mandarin." },
    { "id": "t-d2l-adam", "topic": "train", "type": "intro", "level": 2, "lang": "zh", "platform": "在线教材",
      "title": "11.10. Adam算法", "author": "《动手学深度学习》",
      "url": "https://zh.d2l.ai/chapter_optimization/adam.html",
      "why": "一阶矩、二阶矩、偏差校正逐项推一遍，附从零实现。训练页 D4 那个权重的 AdamW 算式就是这几行。",
      "title_en": "11.10. Adam (Dive into Deep Learning, Chinese edition)", "author_en": "Dive into Deep Learning",
      "why_en": "First moment, second moment and bias correction derived term by term, with an implementation from scratch. The AdamW formula for one weight on the training page's D4 is these few lines." },
    { "id": "t-hf-rlhf", "topic": "train", "type": "intro", "level": 2, "lang": "en", "platform": "博客",
      "title": "Illustrating Reinforcement Learning from Human Feedback (RLHF)", "author": "Nathan Lambert 等（Hugging Face）", "year": 2022,
      "url": "https://huggingface.co/blog/rlhf",
      "why": "用三张图讲清 RLHF：预训练模型、奖励模型、用 PPO 微调，以及为什么要加 KL 惩罚别让模型跑太远。",
      "title_en": "Illustrating Reinforcement Learning from Human Feedback (RLHF)", "author_en": "Nathan Lambert et al. (Hugging Face)",
      "why_en": "RLHF in three diagrams: the pretrained model, the reward model, fine-tuning with PPO — and why a KL penalty keeps the model from drifting too far." },
    { "id": "t-instructgpt", "topic": "train", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "Training language models to follow instructions with human feedback", "author": "Ouyang 等", "year": 2022,
      "url": "https://arxiv.org/abs/2203.02155",
      "why": "InstructGPT 原始论文：13 亿参数的对齐模型，人类评估比 1750 亿参数的 GPT-3 更受欢迎。",
      "title_en": "Training language models to follow instructions with human feedback", "author_en": "Ouyang et al.",
      "why_en": "The original InstructGPT paper: human raters preferred a 1.3B-parameter aligned model over the 175B GPT-3." },
    { "id": "t-dpo", "topic": "train", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "Direct Preference Optimization: Your Language Model is Secretly a Reward Model", "author": "Rafailov 等", "year": 2023,
      "url": "https://arxiv.org/abs/2305.18290",
      "why": "DPO：不训练奖励模型、不跑强化学习，直接用“好 / 差”成对的回答调模型。训练页的 DPO 一例就是代这篇的公式算的。",
      "title_en": "Direct Preference Optimization: Your Language Model is Secretly a Reward Model", "author_en": "Rafailov et al.",
      "why_en": "DPO: no reward model, no reinforcement learning — tune the model directly on pairs of good and bad answers. The DPO example on the training page is computed with this paper's formula." },
    { "id": "t-adamw", "topic": "train", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "Decoupled Weight Decay Regularization", "author": "Loshchilov、Hutter", "year": 2017,
      "url": "https://arxiv.org/abs/1711.05101",
      "why": "AdamW 的出处：把权重衰减从梯度里拆出来单独做。今天训练大模型的默认优化器。",
      "title_en": "Decoupled Weight Decay Regularization", "author_en": "Loshchilov & Hutter",
      "why_en": "Where AdamW comes from: weight decay pulled out of the gradient and applied separately. Today's default optimizer for training large models." },
    { "id": "t-nanogpt", "topic": "train", "type": "code", "level": 2, "lang": "en", "platform": "GitHub",
      "title": "nanoGPT", "author": "Andrej Karpathy",
      "url": "https://github.com/karpathy/nanoGPT",
      "why": "约 300 行的模型 + 300 行的训练循环，能复现 GPT-2，也能在笔记本 CPU 上几分钟训一个莎士比亚小模型（见本页「动手试试」）。",
      "title_en": "nanoGPT",
      "why_en": "About 300 lines of model plus 300 lines of training loop. It can reproduce GPT-2, or train a small Shakespeare model on a laptop CPU in minutes (see Hands-on on this page)." },
    { "id": "t-minimind", "topic": "train", "type": "code", "level": 2, "lang": "zh", "platform": "GitHub",
      "title": "minimind", "author": "jingyaogong",
      "url": "https://github.com/jingyaogong/minimind",
      "why": "中文社区的从零训练项目：一个几千万参数的小模型，预训练、SFT、DPO 全流程代码都在，单卡几小时就能跑完。",
      "title_en": "minimind",
      "why_en": "A from-scratch training project from the Chinese community: a model of a few tens of millions of parameters with full pretraining, SFT and DPO code, trainable on one GPU in a few hours. README in Chinese." },
    { "id": "t-trl", "topic": "train", "type": "code", "level": 3, "lang": "en", "platform": "GitHub",
      "title": "TRL", "author": "Hugging Face",
      "url": "https://github.com/huggingface/trl",
      "why": "SFT、DPO、GRPO 等后训练方法的现成实现，几十行就能在自己的数据上微调一个开源模型。",
      "title_en": "TRL",
      "why_en": "Ready-made implementations of SFT, DPO, GRPO and other post-training methods; a few dozen lines fine-tune an open model on your own data." },

    { "id": "m-mu-vit", "topic": "mm", "type": "intro", "level": 2, "lang": "zh", "platform": "B 站",
      "title": "ViT论文逐段精读【论文精读】", "author": "跟李沐学AI", "year": 2021,
      "url": "https://www.bilibili.com/video/BV15P4y137jb",
      "why": "“一张图值 16×16 个词”：把图片切块当词元喂给 Transformer，为什么这么朴素的做法在数据够多时就能赢。",
      "title_en": "The ViT paper, read paragraph by paragraph [Paper Reading]", "author_en": "Mu Li",
      "why_en": "\"An image is worth 16×16 words\": cut the image into patches, feed them to a Transformer as tokens, and see why such a plain idea wins once there is enough data. In Mandarin." },
    { "id": "m-mu-clip", "topic": "mm", "type": "intro", "level": 2, "lang": "zh", "platform": "B 站",
      "title": "CLIP 论文逐段精读【论文精读】", "author": "跟李沐学AI", "year": 2022,
      "url": "https://www.bilibili.com/video/BV1SL4y1s7LQ",
      "why": "用海量图文对做对比学习，让图片和描述它的文字落进同一个向量空间：后来几乎所有图文模型的起点。",
      "title_en": "The CLIP paper, read paragraph by paragraph [Paper Reading]", "author_en": "Mu Li",
      "why_en": "Contrastive learning on a huge set of image–text pairs puts pictures and the words describing them into one vector space — the starting point of almost every later vision-language model. In Mandarin." },
    { "id": "m-hf-vlms", "topic": "mm", "type": "intro", "level": 1, "lang": "en", "platform": "博客",
      "title": "Vision Language Models Explained", "author": "Merve、Edward Beeching（Hugging Face）", "year": 2024,
      "url": "https://huggingface.co/blog/vlms",
      "why": "视觉语言模型是怎么拼起来的：图像编码器 + 投影层 + 语言模型，附开源模型对比和上手代码。",
      "title_en": "Vision Language Models Explained", "author_en": "Merve & Edward Beeching (Hugging Face)",
      "why_en": "How a vision-language model is put together — image encoder + projection + language model — with a comparison of open models and starter code." },
    { "id": "m-vit", "topic": "mm", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale", "author": "Dosovitskiy 等", "year": 2020,
      "url": "https://arxiv.org/abs/2010.11929",
      "why": "ViT 原始论文。多模态页“切成 16×16 图块、ViT 24 层”那一段，源头就在这里。",
      "title_en": "An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale", "author_en": "Dosovitskiy et al.",
      "why_en": "The original ViT paper. The multimodal page's \"cut into 16×16 patches, 24 ViT layers\" starts here." },
    { "id": "m-clip", "topic": "mm", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "Learning Transferable Visual Models From Natural Language Supervision", "author": "Radford 等", "year": 2021,
      "url": "https://arxiv.org/abs/2103.00020",
      "why": "CLIP 原始论文：4 亿对网上的图文，不用人工标注类别，就能零样本做图像分类。",
      "title_en": "Learning Transferable Visual Models From Natural Language Supervision", "author_en": "Radford et al.",
      "why_en": "The original CLIP paper: 400 million image–text pairs from the web, no hand-labelled classes, and zero-shot image classification." },
    { "id": "m-llava", "topic": "mm", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "Visual Instruction Tuning", "author": "Haotian Liu 等", "year": 2023,
      "url": "https://arxiv.org/abs/2304.08485",
      "why": "LLaVA：视觉编码器接一个投影层再接语言模型，用图文指令数据微调。“看图聊天”模型的经典配方。",
      "title_en": "Visual Instruction Tuning", "author_en": "Haotian Liu et al.",
      "why_en": "LLaVA: a vision encoder, a projection layer and a language model, fine-tuned on visual instruction data. The classic recipe for \"chat about an image\" models." },
    { "id": "m-qwen2vl", "topic": "mm", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "Qwen2-VL: Enhancing Vision-Language Model's Perception of the World at Any Resolution", "author": "Qwen 团队", "year": 2024,
      "url": "https://arxiv.org/abs/2409.12191",
      "why": "提出 M-RoPE 和任意分辨率输入：图片不再缩成固定大小，每个视觉词元带着 (时间, 高, 宽) 三维位置。",
      "title_en": "Qwen2-VL: Enhancing Vision-Language Model's Perception of the World at Any Resolution", "author_en": "Qwen Team",
      "why_en": "Introduces M-RoPE and any-resolution input: images are no longer squashed to a fixed size, and every visual token carries a 3D (time, height, width) position." },
    { "id": "m-qwen3vl", "topic": "mm", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "Qwen3-VL Technical Report", "author": "Qwen 团队", "year": 2025,
      "url": "https://arxiv.org/abs/2511.21631",
      "why": "本站多模态页用的 Qwen3-VL 系列的技术报告：DeepStack 多层视觉特征注入、交错式 M-RoPE 等改进都在这里。",
      "title_en": "Qwen3-VL Technical Report", "author_en": "Qwen Team",
      "why_en": "The technical report for the Qwen3-VL family used on this site's multimodal page: DeepStack multi-level visual features, interleaved M-RoPE and more." },
    { "id": "m-clip-code", "topic": "mm", "type": "code", "level": 2, "lang": "en", "platform": "GitHub",
      "title": "CLIP", "author": "OpenAI",
      "url": "https://github.com/openai/CLIP",
      "why": "官方代码和权重，README 里十几行就能让模型判断一张图更像“狗”还是“猫”，亲手试一次零样本分类。",
      "title_en": "CLIP",
      "why_en": "Official code and weights. A dozen lines from the README let the model decide whether a picture looks more like \"dog\" or \"cat\" — try zero-shot classification yourself." },
    { "id": "m-cnn-explainer", "topic": "mm", "type": "viz", "level": 1, "lang": "en", "platform": "在线工具",
      "title": "CNN Explainer", "author": "Polo Club",
      "url": "https://poloclub.github.io/cnn-explainer/",
      "why": "可交互地看卷积核在图片上滑动、相乘、相加。ViT 的“图块嵌入”本质上就是一次步长等于核大小的卷积。",
      "title_en": "CNN Explainer",
      "why_en": "Watch convolution kernels slide across an image, multiply and add, interactively. ViT's patch embedding is really one convolution whose stride equals its kernel size." },

    { "id": "a-hylee-agent", "topic": "agent", "type": "intro", "level": 1, "lang": "zh", "platform": "YouTube",
      "title": "【生成式AI時代下的機器學習(2025)】第二講：一堂課搞懂 AI Agent 的原理 (AI如何透過經驗調整行為、使用工具和做計劃)", "author": "李宏毅", "year": 2025,
      "url": "https://www.youtube.com/watch?v=M2Yg1kwPpts",
      "why": "AI Agent 的三个关键能力：从经验里调整行为、使用工具、做计划。和智能体页的“模型 + 工具 + 循环”一一对应。",
      "title_en": "[Machine Learning in the Age of Generative AI (2025)] Lecture 2: AI agents in one lecture (how AI adjusts its behaviour from experience, uses tools and makes plans)", "author_en": "Hung-yi Lee",
      "why_en": "Three key abilities of an AI agent: learning from experience, using tools, and planning — matching the agent page's \"model + tools + loop\" one to one. In Mandarin." },
    { "id": "a-hylee-context", "topic": "agent", "type": "intro", "level": 2, "lang": "zh", "platform": "YouTube",
      "title": "【生成式人工智慧與機器學習導論2025】第 2 講：上下文工程 (Context Engineering) — AI Agent 背後的關鍵技術", "author": "李宏毅", "year": 2025,
      "url": "https://www.youtube.com/watch?v=lVdajtNpaGI",
      "why": "智能体的每一圈都要决定往上下文里塞什么、丢什么。看完再去智能体页 D3，就知道那条越来越长的阶梯意味着什么。",
      "title_en": "[Intro to Generative AI and Machine Learning 2025] Lecture 2: Context engineering — the key technique behind AI agents", "author_en": "Hung-yi Lee",
      "why_en": "On every turn an agent must decide what to put into its context and what to drop. Watch this and the agent page's ever-growing D3 context makes sense. In Mandarin." },
    { "id": "a-hello-agents", "topic": "agent", "type": "code", "level": 1, "lang": "zh", "platform": "GitHub",
      "title": "hello-agents：《从零开始构建智能体》", "author": "Datawhale",
      "url": "https://github.com/datawhalechina/hello-agents",
      "why": "中文的智能体原理与实践教程，从最简单的循环和工具调用写起，再到多智能体和常见框架。",
      "title_en": "hello-agents: building agents from scratch",
      "why_en": "A Chinese tutorial on agent theory and practice, starting from the simplest loop and tool call and moving on to multi-agent systems and common frameworks." },
    { "id": "a-hf-agents", "topic": "agent", "type": "intro", "level": 1, "lang": "zh", "platform": "文档",
      "title": "欢迎加入 🤗 AI Agents 课程", "author": "Hugging Face",
      "url": "https://huggingface.co/learn/agents-course/zh-CN/unit0/introduction",
      "why": "Hugging Face 的免费智能体课程（中文版）：思考 → 行动 → 观察的循环、工具、几个主流框架，配练习。",
      "title_en": "Welcome to the 🤗 AI Agents Course (Chinese edition)",
      "why_en": "The Chinese edition of Hugging Face's free agents course: the think → act → observe loop, tools, several popular frameworks, with exercises." },
    { "id": "a-qwen-agent", "topic": "agent", "type": "code", "level": 2, "lang": "zh", "platform": "GitHub",
      "title": "Qwen-Agent（中文说明）", "author": "Qwen 团队",
      "url": "https://github.com/QwenLM/Qwen-Agent/blob/main/README_CN.md",
      "why": "Qwen 官方的智能体框架：函数调用、MCP、代码解释器都有能直接运行的例子，看看工程上的智能体循环长什么样。",
      "title_en": "Qwen-Agent (Chinese README)", "author_en": "Qwen Team",
      "why_en": "Qwen's official agent framework, with runnable examples of function calling, MCP and a code interpreter — see what an engineered agent loop looks like." },
    { "id": "a-weng-agent", "topic": "agent", "type": "intro", "level": 2, "lang": "en", "platform": "博客",
      "title": "LLM Powered Autonomous Agents", "author": "Lilian Weng", "year": 2023,
      "url": "https://lilianweng.github.io/posts/2023-06-23-agent/",
      "why": "把智能体拆成规划、记忆、工具使用三块逐一综述，引用的论文本身就是一份很好的阅读清单。",
      "title_en": "LLM Powered Autonomous Agents",
      "why_en": "Breaks an agent into planning, memory and tool use and surveys each in turn; the papers it cites make a fine reading list on their own." },
    { "id": "a-effective", "topic": "agent", "type": "intro", "level": 2, "lang": "en", "platform": "博客",
      "title": "Building Effective AI Agents", "author": "Anthropic", "year": 2024,
      "url": "https://www.anthropic.com/engineering/building-effective-agents",
      "why": "从工程角度区分“工作流”和“智能体”，总结几种常用模式，强调先用最简单的方案。",
      "title_en": "Building Effective AI Agents",
      "why_en": "An engineering view that separates \"workflows\" from \"agents\", sums up a few common patterns, and argues for starting with the simplest thing that works." },
    { "id": "a-react", "topic": "agent", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "ReAct: Synergizing Reasoning and Acting in Language Models", "author": "Shunyu Yao 等", "year": 2022,
      "url": "https://arxiv.org/abs/2210.03629",
      "why": "让模型交替“想一步、做一步”，用行动的结果修正推理。今天几乎所有智能体循环的原型。",
      "title_en": "ReAct: Synergizing Reasoning and Acting in Language Models", "author_en": "Shunyu Yao et al.",
      "why_en": "Have the model alternate between thinking a step and taking a step, using what the action returns to correct its reasoning. The prototype of nearly every agent loop today." },
    { "id": "a-toolformer", "topic": "agent", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "Toolformer: Language Models Can Teach Themselves to Use Tools", "author": "Schick 等", "year": 2023,
      "url": "https://arxiv.org/abs/2302.04761",
      "why": "模型自己学会在什么地方插入 API 调用（计算器、搜索、翻译），工具调用作为一种训练目标的早期代表作。",
      "title_en": "Toolformer: Language Models Can Teach Themselves to Use Tools", "author_en": "Schick et al.",
      "why_en": "The model learns by itself where to insert API calls (calculator, search, translation) — an early landmark for tool use as a training objective." },
    { "id": "a-swe-agent", "topic": "agent", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "SWE-agent: Agent-Computer Interfaces Enable Automated Software Engineering", "author": "John Yang 等", "year": 2024,
      "url": "https://arxiv.org/abs/2405.15793",
      "why": "编程智能体的经典研究：给模型设计好用的“看文件、改文件、跑测试”命令，比模型本身更影响成败。",
      "title_en": "SWE-agent: Agent-Computer Interfaces Enable Automated Software Engineering", "author_en": "John Yang et al.",
      "why_en": "A classic study of coding agents: well-designed commands for viewing files, editing them and running tests matter more to success than the model itself." },
    { "id": "a-mini-swe", "topic": "agent", "type": "code", "level": 2, "lang": "en", "platform": "GitHub",
      "title": "mini-swe-agent", "author": "SWE-agent",
      "url": "https://github.com/SWE-agent/mini-swe-agent",
      "why": "约 100 行的编程智能体，只用 bash 一个工具也能修 GitHub 上的真实问题。读完就明白智能体循环有多简单。",
      "title_en": "mini-swe-agent",
      "why_en": "A coding agent of about 100 lines that fixes real GitHub issues with nothing but bash. Read it and you'll see how simple an agent loop is." },

    { "id": "w-worldmodels", "topic": "world", "type": "viz", "level": 1, "lang": "en", "platform": "交互文章",
      "title": "World Models", "author": "David Ha、Jürgen Schmidhuber", "year": 2018,
      "url": "https://worldmodels.github.io/",
      "why": "VAE 看、RNN 记、控制器做决定；智能体在自己“梦”出来的赛车场和游戏里练习。网页里能直接玩模型生成的梦境。",
      "title_en": "World Models", "author_en": "David Ha & Jürgen Schmidhuber",
      "why_en": "A VAE to see, an RNN to remember, a controller to decide; the agent practises in a racetrack and game it \"dreams\" up. You can play inside the model's dreams right on the page." },
    { "id": "w-otoro", "topic": "world", "type": "code", "level": 2, "lang": "en", "platform": "博客",
      "title": "World Models Experiments", "author": "David Ha", "year": 2018,
      "url": "https://blog.otoro.net/2018/06/09/world-models-experiments/",
      "why": "作者亲自写的复现指南：怎么采数据、训 VAE 和 RNN、在梦里训练控制器，附开源代码，想自己动手就看这篇。",
      "title_en": "World Models Experiments",
      "why_en": "The author's own reproduction guide: collecting data, training the VAE and RNN, training the controller in the dream, with open-source code. Start here to try it yourself." },
    { "id": "w-hylee-ae", "topic": "world", "type": "intro", "level": 1, "lang": "zh", "platform": "YouTube",
      "title": "【機器學習2021】自編碼器 (Auto-encoder) (上) – 基本概念", "author": "李宏毅", "year": 2021,
      "url": "https://www.youtube.com/watch?v=3oHlf8-J3Nc",
      "why": "编码器把输入压成一个小向量、解码器再还原回来。世界模型里那个“看”的 VAE 就是从这里出发的。",
      "title_en": "[Machine Learning 2021] Autoencoders (part 1) – the basic idea", "author_en": "Hung-yi Lee",
      "why_en": "An encoder squeezes the input into a small vector and a decoder restores it. The VAE that \"sees\" in a world model starts from here. In Mandarin." },
    { "id": "w-weng-vae", "topic": "world", "type": "intro", "level": 2, "lang": "en", "platform": "博客",
      "title": "From Autoencoder to Beta-VAE", "author": "Lilian Weng", "year": 2018,
      "url": "https://lilianweng.github.io/posts/2018-08-12-vae/",
      "why": "从自编码器讲到 VAE、β-VAE：重参数化技巧、KL 项为什么让潜空间变得连续、可以随机采样。",
      "title_en": "From Autoencoder to Beta-VAE",
      "why_en": "From autoencoders to VAEs and β-VAEs: the reparameterization trick, and why the KL term makes the latent space continuous enough to sample from." },
    { "id": "w-vae", "topic": "world", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "Auto-Encoding Variational Bayes", "author": "Kingma、Welling", "year": 2013,
      "url": "https://arxiv.org/abs/1312.6114",
      "why": "VAE 的原始论文：用重参数化让带随机采样的模型也能反向传播。",
      "title_en": "Auto-Encoding Variational Bayes", "author_en": "Kingma & Welling",
      "why_en": "The original VAE paper: the reparameterization trick lets a model with random sampling inside still be trained by backpropagation." },
    { "id": "w-dreamerv3", "topic": "world", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "Mastering Diverse Domains through World Models", "author": "Hafner 等", "year": 2023,
      "url": "https://arxiv.org/abs/2301.04104",
      "why": "DreamerV3：同一套超参数在 150 多个任务上靠“在想象中练习”学会控制，还第一次从零在《我的世界》里挖到钻石。",
      "title_en": "Mastering Diverse Domains through World Models", "author_en": "Hafner et al.",
      "why_en": "DreamerV3: one set of hyperparameters learns control on more than 150 tasks by practising in imagination, and was the first to collect diamonds in Minecraft from scratch." },
    { "id": "w-genie", "topic": "world", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "Genie: Generative Interactive Environments", "author": "Jake Bruce 等", "year": 2024,
      "url": "https://arxiv.org/abs/2402.15391",
      "why": "只看没有动作标注的游戏视频，就学出一个能按键交互的世界模型：动作本身也是模型自己发现的潜变量。",
      "title_en": "Genie: Generative Interactive Environments", "author_en": "Jake Bruce et al.",
      "why_en": "Learns a playable world model from game videos with no action labels at all — even the actions are latent variables the model discovers itself." },
    { "id": "w-genie3", "topic": "world", "type": "intro", "level": 1, "lang": "en", "platform": "博客",
      "title": "Genie 3: A new frontier for world models", "author": "Google DeepMind", "year": 2025,
      "url": "https://deepmind.google/blog/genie-3-a-new-frontier-for-world-models/",
      "why": "用文字描述生成一个能实时走动的 3D 世界。看看“视频世界模型”这条路现在走到了哪里。",
      "title_en": "Genie 3: A new frontier for world models",
      "why_en": "Generates a 3D world you can walk around in real time from a text description. A look at how far video world models have come." },
    { "id": "w-diamond", "topic": "world", "type": "code", "level": 2, "lang": "en", "platform": "GitHub",
      "title": "DIAMOND", "author": "Eloi Alonso 等",
      "url": "https://github.com/eloialonso/diamond",
      "why": "用扩散模型当 Atari 游戏的世界模型，仓库提供了预训练模型，下载后可以在自己电脑上“玩”模型做的梦。",
      "title_en": "DIAMOND", "author_en": "Eloi Alonso et al.",
      "why_en": "A diffusion model as a world model for Atari games. The repo ships pretrained models, so you can download one and \"play\" the model's dream on your own computer." },
    { "id": "w-space-time", "topic": "world", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "Language Models Represent Space and Time", "author": "Wes Gurnee、Max Tegmark", "year": 2023,
      "url": "https://arxiv.org/abs/2310.02207",
      "why": "用线性探针从 Llama-2 的隐状态里读出地名的经纬度和事件的年份。世界模型页的城市探针复现的就是它。",
      "title_en": "Language Models Represent Space and Time", "author_en": "Wes Gurnee & Max Tegmark",
      "why_en": "Linear probes read places' latitude and longitude, and events' years, out of Llama-2's hidden states. The world-model page's city probe reproduces this paper." },
    { "id": "w-space-time-code", "topic": "world", "type": "code", "level": 3, "lang": "en", "platform": "GitHub",
      "title": "world-models", "author": "Wes Gurnee",
      "url": "https://github.com/wesg52/world-models",
      "why": "上面那篇论文的代码和数据：提取激活、训练探针、画世界地图，想换个模型复现可以从这里改。",
      "title_en": "world-models",
      "why_en": "Code and data for the paper above: extract activations, train probes, draw the world map. Start here to reproduce it on another model." },
    { "id": "w-hylee-sora", "topic": "world", "type": "intro", "level": 1, "lang": "zh", "platform": "YouTube",
      "title": "【生成式AI導論 2024】第17講：有關影像的生成式AI (上) — AI 如何產生圖片和影片 (Sora 背後可能用的原理)", "author": "李宏毅", "year": 2024,
      "url": "https://www.youtube.com/watch?v=5H2bVEmYDNg",
      "why": "AI 怎样生成图片和影片，以及 Sora 背后可能用到的原理。想了解“视频世界模型”这条路，可以从这里起步。",
      "title_en": "[Intro to Generative AI 2024] Lecture 17: Generative AI for images (part 1) — how AI makes pictures and videos (the ideas likely behind Sora)", "author_en": "Hung-yi Lee",
      "why_en": "How AI generates images and videos, and the principles Sora probably relies on. A starting point for the \"video world model\" line of work. In Mandarin." },

    { "id": "p-hylee-2024", "topic": "interp", "type": "intro", "level": 1, "lang": "zh", "platform": "YouTube",
      "title": "【生成式AI導論 2024】第11講：大型語言模型在「想」什麼呢？ — 淺談大型語言模型的可解釋性", "author": "李宏毅", "year": 2024,
      "url": "https://www.youtube.com/watch?v=rZzfqkfZhY8",
      "why": "大模型可解释性的入门：有哪些办法从模型内部和外部去理解它为什么这样回答，各自又有什么局限。",
      "title_en": "[Intro to Generative AI 2024] Lecture 11: What are LLMs \"thinking\"? — a brief look at LLM interpretability", "author_en": "Hung-yi Lee",
      "why_en": "An introduction to interpretability: the ways to understand, from inside and outside the model, why it answers as it does, and the limits of each. In Mandarin." },
    { "id": "p-hylee-2025", "topic": "interp", "type": "intro", "level": 2, "lang": "zh", "platform": "YouTube",
      "title": "【生成式AI時代下的機器學習(2025)】第三講：AI 的腦科學 — 語言模型內部運作機制剖析 (解析單一神經元到整群神經元的運作機制、如何讓語言模型說出自己的內心世界)", "author": "李宏毅", "year": 2025,
      "url": "https://www.youtube.com/watch?v=Xnil63UDW2o",
      "why": "从单个神经元、一层、一群神经元讲到逻辑透镜，中文里讲模型内部机制最系统的一堂课。",
      "title_en": "[Machine Learning in the Age of Generative AI (2025)] Lecture 3: Brain science for AI — how language models work inside (from single neurons to whole populations, and getting a model to describe its inner world)", "author_en": "Hung-yi Lee",
      "why_en": "From a single neuron, to a layer, to groups of neurons, up to the logit lens — the most systematic lecture on model internals in Mandarin." },
    { "id": "p-3b1b-facts", "topic": "interp", "type": "intro", "level": 2, "lang": "zh", "platform": "B 站",
      "title": "【官方双语】直观解释大语言模型如何储存事实 | 【深度学习第7章】", "author": "3Blue1Brown", "year": 2024,
      "url": "https://www.bilibili.com/video/BV1aTxMehEjK",
      "why": "前馈网络（MLP）里可能怎样存下“乔丹打篮球”这样的事实，以及高维空间里的“叠加”。",
      "title_en": "How might LLMs store facts | Deep Learning Chapter 7 (official bilingual upload)",
      "why_en": "How the feed-forward network (MLP) might store a fact like \"Michael Jordan plays basketball\", and superposition in high-dimensional space. Bilibili re-upload with Chinese subtitles." },
    { "id": "p-logit-lens", "topic": "interp", "type": "intro", "level": 2, "lang": "en", "platform": "博客",
      "title": "interpreting GPT: the logit lens", "author": "nostalgebraist", "year": 2020,
      "url": "https://www.lesswrong.com/posts/AcKRB8wDpdaN6v6ru/interpreting-gpt-the-logit-lens",
      "why": "逻辑透镜的出处：把每一层的中间结果直接接到输出头上，看答案是在第几层“长”出来的。推理页 D3 层塔就是这么做的。",
      "title_en": "interpreting GPT: the logit lens",
      "why_en": "Where the logit lens comes from: wire each layer's intermediate result straight to the output head and watch which layer the answer \"grows\" in. The inference page's D3 Layer tower does exactly this." },
    { "id": "p-framework", "topic": "interp", "type": "paper", "level": 3, "lang": "en", "platform": "研究长文",
      "title": "A Mathematical Framework for Transformer Circuits", "author": "Elhage 等（Anthropic）", "year": 2021,
      "url": "https://transformer-circuits.pub/2021/framework/index.html",
      "why": "把 Transformer 看成往残差流里读写的部件，从只有注意力的小模型里找出“归纳头”这样的电路。机制可解释性的奠基文章。",
      "title_en": "A Mathematical Framework for Transformer Circuits", "author_en": "Elhage et al. (Anthropic)",
      "why_en": "Treats the Transformer as parts that read from and write to the residual stream, and finds circuits like \"induction heads\" in attention-only toy models. A founding text of mechanistic interpretability." },
    { "id": "p-monosemanticity", "topic": "interp", "type": "paper", "level": 3, "lang": "en", "platform": "研究长文",
      "title": "Scaling Monosemanticity: Extracting Interpretable Features from Claude 3 Sonnet", "author": "Templeton 等（Anthropic）", "year": 2024,
      "url": "https://transformer-circuits.pub/2024/scaling-monosemanticity/index.html",
      "why": "用稀疏自编码器从大模型里拆出几百万个“特征”，比如只在提到金门大桥时亮起的那一个。",
      "title_en": "Scaling Monosemanticity: Extracting Interpretable Features from Claude 3 Sonnet", "author_en": "Templeton et al. (Anthropic)",
      "why_en": "Sparse autoencoders pull millions of \"features\" out of a large model — like the one that lights up only when the Golden Gate Bridge comes up." },
    { "id": "p-tracing", "topic": "interp", "type": "intro", "level": 1, "lang": "en", "platform": "博客",
      "title": "Tracing the thoughts of a large language model", "author": "Anthropic", "year": 2025,
      "url": "https://www.anthropic.com/research/tracing-thoughts-language-model",
      "why": "用“电路追踪”看模型写押韵诗时是否提前想好韵脚、做两步推理时中间想了什么，图很多，适合入门。",
      "title_en": "Tracing the thoughts of a large language model",
      "why_en": "Circuit tracing shows whether a model plans its rhyme before writing a rhyming line, and what it thinks in the middle of two-step reasoning. Lots of diagrams; a good entry point." },
    { "id": "p-othello", "topic": "interp", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "Emergent World Representations: Exploring a Sequence Model Trained on a Synthetic Task", "author": "Kenneth Li 等", "year": 2022,
      "url": "https://arxiv.org/abs/2210.13382",
      "why": "Othello-GPT：只看黑白棋的落子序列训练出来的 GPT，内部竟然能用探针读出整个棋盘。",
      "title_en": "Emergent World Representations: Exploring a Sequence Model Trained on a Synthetic Task", "author_en": "Kenneth Li et al.",
      "why_en": "Othello-GPT: a GPT trained only on sequences of Othello moves turns out to hold the whole board inside, readable with probes." },
    { "id": "p-othello-linear", "topic": "interp", "type": "intro", "level": 3, "lang": "en", "platform": "博客",
      "title": "Actually, Othello-GPT Has A Linear Emergent World Representation", "author": "Neel Nanda", "year": 2023,
      "url": "https://www.neelnanda.io/mechanistic-interpretability/othello",
      "why": "换个角度（“我的棋 / 对手的棋”而不是“黑 / 白”），线性探针就能读出棋盘，还能改写它来改变模型的下法。",
      "title_en": "Actually, Othello-GPT Has A Linear Emergent World Representation",
      "why_en": "Change the framing (\"mine / theirs\" instead of \"black / white\") and a linear probe reads the board — and editing it changes how the model plays." },
    { "id": "p-probes", "topic": "interp", "type": "paper", "level": 3, "lang": "en", "platform": "arXiv",
      "title": "Understanding intermediate layers using linear classifier probes", "author": "Alain、Bengio", "year": 2016,
      "url": "https://arxiv.org/abs/1610.01644",
      "why": "线性探针的经典出处：冻结网络，只在某一层上训练一个线性分类器，看这一层里“能线性读出”多少信息。",
      "title_en": "Understanding intermediate layers using linear classifier probes", "author_en": "Alain & Bengio",
      "why_en": "The classic source of linear probes: freeze the network, train only a linear classifier on one layer, and see how much information that layer holds in linearly readable form." },
    { "id": "p-transformerlens", "topic": "interp", "type": "code", "level": 3, "lang": "en", "platform": "GitHub",
      "title": "TransformerLens", "author": "TransformerLensOrg",
      "url": "https://github.com/TransformerLensOrg/TransformerLens",
      "why": "机制可解释性最常用的库：一行代码缓存所有中间激活，方便做逻辑透镜、激活修补、找电路。",
      "title_en": "TransformerLens",
      "why_en": "The go-to library for mechanistic interpretability: cache every intermediate activation in one line, which makes the logit lens, activation patching and circuit hunting easy." },
    { "id": "p-neuronpedia", "topic": "interp", "type": "viz", "level": 2, "lang": "en", "platform": "在线工具",
      "title": "Neuronpedia", "author": "Neuronpedia",
      "url": "https://www.neuronpedia.org/",
      "why": "开源模型的“特征图鉴”：在线浏览稀疏自编码器找到的特征、它们在哪些文字上亮起，还能画归因图。",
      "title_en": "Neuronpedia",
      "why_en": "A \"field guide\" to features in open models: browse what sparse autoencoders found and the text each one lights up on, and draw attribution graphs online." },
    { "id": "s-3b1b-llm-en", "topic": "start", "type": "intro", "level": 1, "lang": "en", "enOnly": true, "platform": "YouTube",
      "title": "Large Language Models explained briefly", "author": "3Blue1Brown", "year": 2024,
      "url": "https://www.youtube.com/watch?v=LPZh9BOjkQs",
      "why": "3Blue1Brown 的英文原版：几分钟讲清大模型在做什么。",
      "title_en": "Large Language Models explained briefly",
      "why_en": "A few minutes on what an LLM actually does: predict the next word, over and over, and learn to do that from a mountain of text. If all of this is new, start here." },
    { "id": "s-karpathy-intro", "topic": "start", "type": "intro", "level": 1, "lang": "en", "enOnly": true, "platform": "YouTube",
      "title": "[1hr Talk] Intro to Large Language Models", "author": "Andrej Karpathy", "year": 2023,
      "url": "https://www.youtube.com/watch?v=zjkBMFhNj_g",
      "why": "一小时的大众讲座：大模型就是两个文件（权重 + 代码），预训练和微调怎样把它变成助手。",
      "title_en": "[1hr Talk] Intro to Large Language Models",
      "why_en": "A one-hour talk for a general audience: an LLM is just two files (weights + code), and pretraining then fine-tuning turns it into an assistant. Covers where the field is heading, too." },
    { "id": "s-hf-course-en", "topic": "start", "type": "intro", "level": 1, "lang": "en", "enOnly": true, "platform": "文档",
      "title": "LLM Course · Chapter 1 Introduction", "author": "Hugging Face",
      "url": "https://huggingface.co/learn/llm-course/chapter1/1",
      "why": "Hugging Face 官方课程的英文原版。",
      "title_en": "LLM Course · Chapter 1 Introduction",
      "why_en": "Hugging Face's official course: what Transformers can do and how to use the transformers library. Every section runs in Colab as you read." },
    { "id": "s-d2l-en", "topic": "start", "type": "intro", "level": 2, "lang": "en", "enOnly": true, "platform": "在线教材",
      "title": "Dive into Deep Learning", "author": "Aston Zhang, Zack C. Lipton, Mu Li, Alex J. Smola",
      "url": "https://d2l.ai/",
      "why": "《动手学深度学习》的英文原版。",
      "title_en": "Dive into Deep Learning",
      "why_en": "The standard open textbook: every section is equations, figures and runnable code, from softmax all the way to attention and Transformers." },
    { "id": "s-keshav", "topic": "start", "type": "intro", "level": 1, "lang": "en", "enOnly": true, "platform": "论文 PDF",
      "title": "How to Read a Paper", "author": "S. Keshav", "year": 2007,
      "url": "http://ccr.sigcomm.org/online/files/p83-keshavA.pdf",
      "why": "两页纸讲清“三遍读论文”的方法。",
      "title_en": "How to Read a Paper",
      "why_en": "Two pages on the three-pass method: title, abstract and conclusions first, then the figures, then a careful read. Read it before your first original paper." },
    { "id": "s-llms-scratch", "topic": "start", "type": "code", "level": 2, "lang": "en", "enOnly": true, "platform": "GitHub",
      "title": "LLMs-from-scratch", "author": "Sebastian Raschka",
      "url": "https://github.com/rasbt/LLMs-from-scratch",
      "why": "《Build a Large Language Model (From Scratch)》的官方代码：从分词、注意力写到预训练和微调。",
      "title_en": "LLMs-from-scratch",
      "why_en": "The official code for the book Build a Large Language Model (From Scratch): tokenizer, attention, a GPT model, then pretraining and fine-tuning, one chapter at a time." },
    { "id": "i-3b1b-gpt-en", "topic": "infer", "type": "intro", "level": 1, "lang": "en", "enOnly": true, "platform": "YouTube",
      "title": "Transformers, the tech behind LLMs | Deep Learning Chapter 5", "author": "3Blue1Brown", "year": 2024,
      "url": "https://www.youtube.com/watch?v=wjZofJX0v4M",
      "why": "3Blue1Brown 深度学习第 5 章的英文原版。",
      "title_en": "Transformers, the tech behind LLMs | Deep Learning Chapter 5",
      "why_en": "Word embeddings, next-word prediction, softmax and temperature, all animated — a close match for the inference page's D2 Structure." },
    { "id": "i-3b1b-attn-en", "topic": "infer", "type": "intro", "level": 2, "lang": "en", "enOnly": true, "platform": "YouTube",
      "title": "Attention in transformers, step-by-step | Deep Learning Chapter 6", "author": "3Blue1Brown", "year": 2024,
      "url": "https://www.youtube.com/watch?v=eMlx5fFNoYc",
      "why": "3Blue1Brown 深度学习第 6 章的英文原版。",
      "title_en": "Attention in transformers, step-by-step | Deep Learning Chapter 6",
      "why_en": "What Q, K and V each are, how scores become weights, and why there are many heads. Taking attention apart on the inference page's D5 is much easier after this." },
    { "id": "i-annotated", "topic": "infer", "type": "code", "level": 3, "lang": "en", "enOnly": true, "platform": "博客",
      "title": "The Annotated Transformer", "author": "Sasha Rush（原版）；Austin Huang 等（v2022）",
      "url": "https://nlp.seas.harvard.edu/annotated-transformer/",
      "why": "把《Attention Is All You Need》改写成逐行的 PyTorch 实现，论文的每一段旁边就是对应的代码。",
      "title_en": "The Annotated Transformer", "author_en": "Sasha Rush (original); Austin Huang et al. (v2022)",
      "why_en": "\"Attention Is All You Need\" retold as a line-by-line PyTorch implementation: each passage of the paper sits next to the code that does it." },
    { "id": "t-3b1b-gd-en", "topic": "train", "type": "intro", "level": 1, "lang": "en", "enOnly": true, "platform": "YouTube",
      "title": "Gradient descent, how neural networks learn | Deep Learning Chapter 2", "author": "3Blue1Brown", "year": 2017,
      "url": "https://www.youtube.com/watch?v=IHZwWFHWa-w",
      "why": "3Blue1Brown 深度学习第 2 章的英文原版。",
      "title_en": "Gradient descent, how neural networks learn | Deep Learning Chapter 2",
      "why_en": "The loss is a landscape and training walks downhill one step at a time. Makes the training page's loss curve and loss landscape intuitive." },
    { "id": "t-3b1b-bp-en", "topic": "train", "type": "intro", "level": 1, "lang": "en", "enOnly": true, "platform": "YouTube",
      "title": "Backpropagation, intuitively | Deep Learning Chapter 3", "author": "3Blue1Brown", "year": 2017,
      "url": "https://www.youtube.com/watch?v=Ilg3gGewQ5U",
      "why": "3Blue1Brown 深度学习第 3 章的英文原版。",
      "title_en": "Backpropagation, intuitively | Deep Learning Chapter 3",
      "why_en": "How gradients travel back from the output, layer by layer. The training page's backward step draws the gradient each layer receives." },
    { "id": "t-d2l-adam-en", "topic": "train", "type": "intro", "level": 2, "lang": "en", "enOnly": true, "platform": "在线教材",
      "title": "12.10. Adam", "author": "Dive into Deep Learning",
      "url": "https://d2l.ai/chapter_optimization/adam.html",
      "why": "《动手学深度学习》英文版的 Adam 一节。",
      "title_en": "12.10. Adam",
      "why_en": "First moment, second moment and bias correction derived term by term, with an implementation from scratch. The AdamW formula for one weight on the training page's D4 is these few lines." },
    { "id": "a-hf-agents-en", "topic": "agent", "type": "intro", "level": 1, "lang": "en", "enOnly": true, "platform": "文档",
      "title": "Welcome to the 🤗 AI Agents Course", "author": "Hugging Face",
      "url": "https://huggingface.co/learn/agents-course/unit0/introduction",
      "why": "Hugging Face 免费智能体课程的英文原版。",
      "title_en": "Welcome to the 🤗 AI Agents Course",
      "why_en": "Hugging Face's free agents course: the think → act → observe loop, tools, several popular frameworks, with exercises." },
    { "id": "a-qwen-agent-en", "topic": "agent", "type": "code", "level": 2, "lang": "en", "enOnly": true, "platform": "GitHub",
      "title": "Qwen-Agent", "author": "Qwen 团队",
      "url": "https://github.com/QwenLM/Qwen-Agent",
      "why": "Qwen-Agent 的英文说明。",
      "title_en": "Qwen-Agent", "author_en": "Qwen Team",
      "why_en": "Qwen's official agent framework, with runnable examples of function calling, MCP and a code interpreter — see what an engineered agent loop looks like." },
    { "id": "a-ctx-eng", "topic": "agent", "type": "intro", "level": 2, "lang": "en", "enOnly": true, "platform": "博客",
      "title": "Effective context engineering for AI agents", "author": "Anthropic", "year": 2025,
      "url": "https://www.anthropic.com/engineering/effective-context-engineering-for-ai-agents",
      "why": "智能体每一圈都要决定上下文里放什么：压缩、结构化笔记、子智能体等实用做法。",
      "title_en": "Effective context engineering for AI agents",
      "why_en": "On every turn an agent has to decide what goes into its context. Practical techniques — compaction, structured note-taking, sub-agents — that keep a long-running agent on track." },
    { "id": "p-3b1b-facts-en", "topic": "interp", "type": "intro", "level": 2, "lang": "en", "enOnly": true, "platform": "YouTube",
      "title": "How might LLMs store facts | Deep Learning Chapter 7", "author": "3Blue1Brown", "year": 2024,
      "url": "https://www.youtube.com/watch?v=9-Jl0dxWQs8",
      "why": "3Blue1Brown 深度学习第 7 章的英文原版。",
      "title_en": "How might LLMs store facts | Deep Learning Chapter 7",
      "why_en": "How the feed-forward network (MLP) might store a fact like \"Michael Jordan plays basketball\", and superposition in high-dimensional space." }
  ]
}
