hung-yi-lee-skill: a distilled teaching persona with a knowledge graph behind it
蒸餾李宏毅老師的skill,結合Karpathy的LLM,Fable 5和GPT6 加持 以及 本人親自訪談
At a glance
- What is it?
- The repository packages Hung-yi Lee's lecture style as a skill file plus a 916-node concept graph extracted from course transcripts, then calibrates the persona against a real interview with Lee. It is a corpus-driven approach to style transfer, and its ceiling is set by how much of the teaching process never made it into the subtitles.
- Who is it for?
- Adopt it if you want a working example of corpus-grounded persona engineering, or if you need a navigable graph of machine learning concepts as they appear in Hung-yi Lee's lectures. Do not adopt it if you need a general-purpose tutor: the graph covers the course corpus, not the field, and the style layer is tuned to one speaker.
- Can I use it commercially?
- Not without permission. GitHub finds no licence file in the repository, and without a licence all rights are reserved by default: you may read the code but not reuse it. Check the README, or ask the authors, before using it.
- Is it still maintained?
- Yes. The repository last received commits 35 days ago.
- What is it written in?
- Mainly HTML, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 15, 2026, and from our analysis. They are not legal advice.
DEEP OPEN-SOURCE ANALYSIS
The gap between a lecture transcript and a lecture
A subtitle file records what was said. It does not record why the lecturer chose that order, which examples were tried and dropped, or what he deliberately left out. The repository states this problem directly: transcripts suffer from survivorship bias, because they only preserve what made it in front of the camera. That framing is the whole justification for the project. The target user is someone who wants an assistant that explains machine learning the way Hung-yi Lee explains it, and who is not satisfied with a persona prompt that says "answer in the style of". The README draws the distinction itself, calling a plain persona prompt cosplay. The claim is that a persona built on extracted structure, indexed transcripts, and a concept graph behaves differently from one built on adjectives.
Three passes: frequency mining, generated interview, first-person override
The build is described as three passes, each one patching the previous pass's limit. The first pass used a model the README calls Fable 5 (claude-fable-5) to run frequency mining over 27 transcripts. The output is countable: 比如說 appears 609 times, 假設 518, 而已 160, 就結束了 36. Whether or not you find those numbers interesting, they are checkable against the cached transcripts in raw/youtube/transcripts, which is more than most style guides offer. The second pass used the same model in a multi-agent workflow to generate an interview script, on the reasoning that transcripts cannot reveal negative space. That script lives at references/interview-protocol.md and includes quote-reaction questions, reverse-generation questions, and ten A/B comparison items grounded in the corpus. The third pass is the one that matters: the interview was actually conducted, and the answers sit in a First-Person Calibration block in SKILL.md with the highest authority. Where a transcript-derived guess conflicts with what Lee said, the interview wins. The README lists four such conflicts, including that he would not use the word 熱騰騰 and that he wants numbers rendered so the cost feels expensive and scarce, not merely concrete.
What the graph adds that a transcript search cannot
Alongside the style layer there is a knowledge graph: 916 nodes, 3,664 edges, 10 communities. The edges are labelled by origin, with 1,621 marked EXTRACTED and 2,043 marked INFERRED. That split is the most honest thing in the repository, because it tells you roughly 56 percent of the graph's relationships were not stated in the corpus but derived from it. The top-connected nodes are ML Fundamentals at 385 connections, 語言模型 at 251, and Transformer at 83. Communities range from ML Fundamentals with 396 nodes down to Model Editing with 33. The practical consequence is that graph queries are not semantic search. Asking for attention mechanism returns a neighbourhood of concepts with typed edges, and you can see which of those edges were inferred rather than extracted. For a reader trying to work out how a lecturer sequences ideas, that structure is the point. For a reader who wants a definition, it is overhead.
Getting it running: clone, install, point your assistant at SKILL.md
The installation instructions are three commands. git clone https://github.com/voidful/hung-yi-lee-skill.git, then cd hung-yi-lee-skill, then pip install -r requirements.txt. After that, you place the directory somewhere your AI coding assistant can read and let it load SKILL.md, which the README calls the skill entry point. The graph has its own CLI, invoked as python3 scripts/hungyi_kb.py graph query followed by a term, with attention mechanism and 語音模型 given as examples. The interactive visualisation is a static file at wiki/graph/graph.html, opened directly in a browser. The graph engine lives in scripts/hungyi_graph.py and the persisted graph in wiki/graph/graph.json. There is no server component described, no API key configuration mentioned in the material, and no environment variable list. If you need a hosted service, this is not one.
The persona is anchored to one speaker and one corpus
The limitation is structural rather than a bug. The style layer is calibrated to a single person's speech, down to particles like 喔, 嘛, 啊, 耶 and a five-step teaching skeleton (intuition, black box, open the box, pitfalls, short recap). Applied outside machine learning, that skeleton has nothing to attach to. Applied to a topic Lee has not covered, the graph returns nothing useful and the style layer has no grounded content to wrap, which is exactly the situation where a persona prompt degrades into confident-sounding filler. The README also flags that transcripts are still being expanded, so coverage is partial by the authors' own account. And the repository's licence is not stated in the material provided, which means redistribution or commercial use cannot be assessed from what is here. Treat that as a blocker to check, not a detail.
Retrieval-augmented documentation versus a distilled persona
The obvious alternative is a retrieval system over the same transcripts: embed the chunks, retrieve the top matches, and let a general model answer with citations. That approach is more faithful to the source and easier to extend, because adding a new lecture means re-indexing, not re-distilling. What it does not give you is a consistent voice or a fixed teaching order. Retrieval returns passages; it does not decide that an explanation should start with intuition and end with pitfalls. This repository makes the opposite trade: it compresses the corpus into a persona and a graph, which produces coherent output at the cost of fidelity to any single lecture. The README's own example answers show the pattern, each one closing with a transcript citation and a graph path such as self-attention to 語言模型 to Transformer to RoPE. If traceability per claim matters more to you than consistent delivery, retrieval is the better fit.
Maintenance surface and what actually needs updating
The maintenance burden has three parts and they age at different rates. Transcripts in raw/youtube/transcripts are append-only; adding lectures means re-running frequency mining and regenerating the interview protocol, since the negative-space argument depends on corpus coverage. The graph in wiki/graph/graph.json needs re-extraction whenever new material arrives, and the EXTRACTED versus INFERRED split means every rebuild shifts the ratio of asserted to derived edges. The persona in SKILL.md is the most stable layer, because the First-Person Calibration answers do not expire, but it is also the layer that cannot be extended without another interview. AGENTS.md is described as the wiki maintenance schema, so the intended update path is documented rather than implicit. There are no releases in the supplied material, so there is no version history to reason about.
Who this is for, and the first thing to check
This is worth reading if you are building a style-transfer or persona system and want a worked example of grounding it in a countable corpus and then correcting it against the source. The interview override rule is the transferable idea: derive a persona from data, then let the human it imitates outrank the derivation. It is also useful if you want a graph-shaped index of how one lecturer connects machine learning concepts. It is the wrong tool if you need an authoritative tutor on arbitrary topics, if you need per-claim retrieval rather than a consistent voice, or if you cannot resolve the licence. Start by opening SKILL.md and reading the First-Person Calibration block, because that is where the project's authority claim lives. Then run a graph query on a term you already understand and check how many of the returned edges are marked INFERRED. That number tells you how much of the structure is the lecturer's and how much is the pipeline's.
Editorial conclusion
Adopt it if you want a working example of corpus-grounded persona engineering, or if you need a navigable graph of machine learning concepts as they appear in Hung-yi Lee's lectures. Do not adopt it if you need a general-purpose tutor: the graph covers the course corpus, not the field, and the style layer is tuned to one speaker. Before wiring it into anything, read SKILL.md to see the First-Person Calibration block, run python3 scripts/hungyi_kb.py graph query with a term you know well to check whether the returned edges are extracted or inferred, and confirm the repository's licence, which the supplied material does not state.
Community notes