# Cs336

> 基于Daedalus Protocol的高质量技术课程笔记生成方法论 Use when this capability is needed.

- Skill: `tomevault-io/cs336` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add tomevault-io/cs336`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tomevault-io/cs336/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: tomevault-io (https://skillmd.com/u/tomevault-io)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tomevault-io/cs336

---


# CS336课程笔记生成工作流 (Daedalus Protocol)

本技能文档沉淀了为Stanford CS336大语言模型课程生成高质量笔记的完整方法论。适用于任何技术课程的笔记整理工作。

---

## 一、核心理念

### 1.1 Daedalus Protocol 三大原则

| 原则 | 描述 | 实践要点 |
|------|------|----------|
| **零信息损失** | Main笔记必须覆盖原始材料的所有技术细节 | 不遗漏任何公式、代码、实验结论 |
| **T型知识结构** | 广度（Main）+ 深度（Elite Notes） | Main覆盖全貌，Elite深挖核心概念 |
| **Chief Content Officer** | 做策展人而非抄录员 | 重组、提炼、增强，不简单复制 |

### 1.2 产出物定义

```
LectureX/
├── LectureX-Main.md          # 主笔记（必须）
├── LectureX-[Topic1].md      # 精英补充笔记1（按需）
├── LectureX-[Topic2].md      # 精英补充笔记2（按需）
├── ...                       # 最多5个精英笔记
└── images/                   # 图片资源目录
    ├── image1.png
    └── image2.png
```

---

## 二、输入资源清单

### 2.1 必需资源

| 资源类型 | 路径模式 | 用途 |
|----------|----------|------|
| **中文转录** | `CS336_Lecture/TxtFile(CN)/CS336_X_标题.txt` | 主要内容来源 |
| **Python代码** | `spring2025-lectures/lecture_X.py` | 代码示例、结构参考 |

### 2.2 可选资源

| 资源类型 | 路径模式 | 用途 |
|----------|----------|------|
| **英文转录** | `CS336_Lecture/TxtFile(EN)/CS336_X_标题.txt` | 术语确认 |
| **PDF slides** | `CS336_Lecture/PPT/LectureX.pdf` | 图片提取 |
| **课程images** | `spring2025-lectures/images/*.png` | 预置图片 |

### 2.3 资源发现流程

```python
# 步骤1: 查找转录文件
find_by_name(Pattern="CS336_X_*", SearchDirectory="CS336_Lecture/TxtFile(CN)/")

# 步骤2: 查找对应Python代码
find_by_name(Pattern="lecture_X.py", SearchDirectory="spring2025-lectures/")

# 步骤3: 查找可用图片
list_dir(DirectoryPath="spring2025-lectures/images/")

# 步骤4: 读取转录获取完整内容
view_file(AbsolutePath="...转录文件路径...")

# 步骤5: 读取Python代码获取结构和示例
view_file_outline(AbsolutePath="...代码文件路径...")
```

---

## 三、Main笔记结构模板

### 3.1 标准结构

```markdown
# CS336 Lecture X: 中文标题 (English Title)

> **编辑蓝图 (Editorial Blueprint)**
> 
> **核心主题**: [一句话总结本讲核心]
> 
> **知识结构**: 
> - 第一部分：[子主题1]
> - 第二部分：[子主题2]
> - 第三部分：[子主题3]
> 
> **精英补充笔记**:
> - **[深入探讨: 概念1](./LectureX-Topic1.md)** - 简短描述
> - **[深入探讨: 概念2](./LectureX-Topic2.md)** - 简短描述

---

## 一、第一部分标题

### 1.1 小节标题

[正文内容，包含公式、代码、图片]

### 1.2 小节标题

[正文内容]

---

## 二、第二部分标题

[继续...]

---

## N、关键要点总结 (Key Takeaways)

### 要点类别1

| 项目 | 描述 |
|------|------|
| ... | ... |

### 要点类别2

[总结表格或列表]

---

## 参考资料

1. 论文引用1
2. 论文引用2
```

### 3.2 编辑蓝图的作用

编辑蓝图（Editorial Blueprint）是笔记的**元信息**，帮助读者：
1. 快速理解本讲的定位
2. 预览知识结构
3. 找到深入阅读的入口

**必须在Main笔记开头包含编辑蓝图！**

---

## 四、精英补充笔记选择标准

### 4.1 选择条件（满足任一即可）

1. **核心概念深度不足**: Main中只能点到为止，需要展开
2. **独立知识体系**: 可以单独成文，有完整的理论框架
3. **高频面试/应用点**: 读者可能需要深入掌握
4. **复杂数学推导**: 公式过多影响Main可读性
5. **历史/背景知识**: 有趣但不是主线的内容

### 4.2 典型精英笔记主题

| 课程主题 | 典型精英笔记 |
|----------|--------------|
| 数据过滤 | KenLM与N-gram模型、MinHash与LSH算法 |
| RLHF | InstructGPT流水线、DPO数学推导 |
| RL算法 | DeepSeek R1技术报告、GRPO数学细节 |
| 模型评估 | Chatbot Arena与ELO、Train-Test污染 |
| 训练数据 | Common Crawl详解、版权法Fair Use |

### 4.3 精英笔记结构模板

```markdown
# 深入探讨: [主题名称]

本文是Lecture X的精英补充笔记，深入讲解[主题]的[具体内容]。

---

## 一、背景/问题定义

[为什么需要这个知识点]

## 二、核心原理

[详细的理论讲解]

## 三、实现/应用

[代码示例或实践指南]

## 四、常见问题/陷阱

[注意事项]

---

## 参考资料

[学术引用]
```

---

## 五、图片资源管理

### 5.1 图片来源优先级

1. **课程代码目录**: `spring2025-lectures/images/` - 优先使用
2. **PDF slides提取**: 使用PyMuPDF提取
3. **在线搜索**: 使用`search_web`或`generate_image`

### 5.2 图片处理流程

```python
# 步骤1: 检查课程images目录是否有相关图片
list_dir(DirectoryPath="spring2025-lectures/images/")

# 步骤2: 复制需要的图片到笔记目录
run_command(CommandLine='Copy-Item "源路径/*.png" "NoteByHuman/LectureX/images/"')

# 步骤3: 在Markdown中引用
# ![图片描述](./images/image_name.png)
```

### 5.3 图片命名规范

| 类型 | 命名模式 | 示例 |
|------|----------|------|
| 架构图 | `主题-architecture.png` | `transformer-architecture.png` |
| 结果图 | `方法-results.png` | `dclm-results.png` |
| 流程图 | `流程-pipeline.png` | `rlhf-pipeline.png` |
| 对比图 | `对比项-comparison.png` | `ppo-dpo-comparison.png` |

---

## 六、代码集成规范

### 6.1 代码块类型

| 类型 | 用途 | 长度建议 |
|------|------|----------|
| **完整实现** | 核心算法的可运行代码 | 20-50行 |
| **伪代码** | 流程说明 | 10-20行 |
| **代码片段** | 关键步骤演示 | 5-15行 |
| **命令行** | 工具使用示例 | 1-5行 |

### 6.2 代码注释规范

```python
def example_function(param1: Type1, param2: Type2) -> ReturnType:
    """
    函数简短描述
    
    Args:
        param1: 参数1的含义
        param2: 参数2的含义
    
    Returns:
        返回值的含义
    """
    # 步骤1: [做什么]
    result1 = step1(param1)
    
    # 步骤2: [做什么]
    result2 = step2(result1, param2)
    
    return result2
```

### 6.3 从课程代码集成

1. **阅读代码结构**: 使用`view_file_outline`了解函数/类
2. **提取核心逻辑**: 简化为教学版本
3. **添加中文注释**: 解释每个关键步骤
4. **保持可运行**: 尽量保证代码可以独立运行

---

## 七、数学公式规范

### 7.1 LaTeX语法

| 用途 | 语法 | 示例 |
|------|------|------|
| 行内公式 | `$...$` | $P(x)$ |
| 独立公式 | `$$...$$` | $$\sum_{i=1}^n x_i$$ |
| 分数 | `\frac{a}{b}` | $\frac{a}{b}$ |
| 求和 | `\sum_{i=1}^{n}` | $\sum_{i=1}^{n}$ |
| 期望 | `\mathbb{E}[X]` | $\mathbb{E}[X]$ |
| 梯度 | `\nabla` | $\nabla$ |

### 7.2 公式编写原则

1. **重要公式独立成行**: 使用`$$...$$`
2. **添加文字解释**: 公式后解释每个符号
3. **逐步推导**: 复杂推导分多步展示
4. **对照代码**: 尽量提供对应的代码实现

---

## 八、质量检查清单

### 8.1 Main笔记检查

- [ ] 编辑蓝图完整（核心主题、知识结构、精英笔记链接）
- [ ] 所有章节有编号（一、二、三... + 1.1、1.2...）
- [ ] 关键公式有解释
- [ ] 代码块有语法高亮
- [ ] 图片正确显示
- [ ] 参考资料完整
- [ ] Key Takeaways总结

### 8.2 精英笔记检查

- [ ] 从Main正确链接
- [ ] 有独立的背景说明
- [ ] 深度超过Main
- [ ] 有参考资料

### 8.3 整体检查

- [ ] 文件命名符合规范
- [ ] 图片已复制到images目录
- [ ] Git提交信息清晰
- [ ] README已更新

---

## 九、Git工作流

### 9.1 目录创建

```powershell
# 创建Lecture目录和images子目录
mkdir NoteByHuman/LectureX, NoteByHuman/LectureX/images
```

### 9.2 提交规范

| 类型 | 提交信息模板 |
|------|--------------|
| 新增笔记 | `Add comprehensive Lecture X notes on [主题]` |
| 精英笔记 | `Add elite supplementary notes for Lecture X` |
| 图片 | `Add images for Lecture X notes` |
| 修复 | `Fix [具体问题] in Lecture X notes` |

### 9.3 批量提交

```powershell
# 添加特定Lecture的所有文件
git add NoteByHuman/LectureX

# 提交
git commit -m "Add comprehensive Lecture X notes on [主题] with elite notes"

# 推送
git push
```

---

## 十、常见问题处理

### 10.1 转录文件过长

**问题**: 转录超过800行，无法一次读取

**解决**: 
```python
# 分段读取
view_file(AbsolutePath="...", StartLine=1, EndLine=400)
view_file(AbsolutePath="...", StartLine=400, EndLine=800)
```

### 10.2 无对应Python代码

**问题**: 某些课程没有配套代码

**解决**: 
- 专注于转录内容
- 自行编写演示代码
- 从论文/开源项目获取示例

### 10.3 图片无法找到

**问题**: 需要的图片不在课程目录

**解决**: 
1. 尝试从PDF提取（需PyMuPDF）
2. 使用`generate_image`生成示意图
3. 使用`search_web`找到替代图片
4. 使用ASCII图或表格替代

### 10.4 内容过于密集

**问题**: 单讲内容太多，Main过长

**解决**: 
- 多创建精英笔记分流
- Main保持概览性质
- 深度内容移至Elite Notes

---

## 十一、效率提升技巧

### 11.1 并行处理

```python
# 同时创建多个文件
write_to_file(TargetFile="Lecture14-Main.md", ...)
write_to_file(TargetFile="Lecture14-KenLM.md", ...)
write_to_file(TargetFile="Lecture14-MinHash.md", ...)
```

### 11.2 模板复用

保存常用的Markdown结构作为模板，快速填充内容。

### 11.3 批量图片复制

```powershell
# 一次复制多个图片
Copy-Item "source\img1.png","source\img2.png","source\img3.png" -Destination "dest\"
```

---

## 十二、参考案例

### 12.1 优秀Main笔记示例

参考: `NoteByHuman/Lecture14/Lecture14-Main.md`
- 完整的编辑蓝图
- 清晰的章节结构
- 代码与理论结合
- 丰富的表格总结

### 12.2 优秀Elite笔记示例

参考: `NoteByHuman/Lecture15/Lecture15-DPO.md`
- 完整的数学推导
- 逐步证明过程
- 代码实现对照
- 变体对比分析

---

## 附录：快速启动命令

```powershell
# 1. 创建新Lecture目录
mkdir NoteByHuman/LectureX, NoteByHuman/LectureX/images

# 2. 复制相关图片
Copy-Item "spring2025-lectures\images\relevant*.png" "NoteByHuman\LectureX\images\"

# 3. 创建笔记后提交
git add NoteByHuman/LectureX
git commit -m "Add comprehensive Lecture X notes on [主题]"
git push
```

---

> **"路漫漫其修远兮，吾将上下而求索。"**
> 
> 愿这套方法论帮助你高效地将知识沉淀为永久资产。

---
> Source: [SingularGuyLeBorn/Awesome-CS336-NoteForEveryone](https://github.com/SingularGuyLeBorn/Awesome-CS336-NoteForEveryone) — distributed by [TomeVault](https://tomevault.io).
<!-- tomevault:4.0:skill_md:2026-06-24 -->

