karpathy-understanding-first について
karpathy-understanding-firstは、AIを使って作業する人が、判断や成果への理解を保つためのスキルです。理解度の監査、能力の境界の評価、学習と検証の手順を提供します。
主な機能
- 01AIを使った作業後の理解度監査
- 02理解度別の判断の分類
- 03タスクごとのAIの信頼性評価
- 04衰えつつあるスキルの記録
- 05不明な出力の概念を解説
活用シーン
- 01AI作業中に行われた判断の振り返り
- 02AI出力を頼りにする前の確認
- 03未理解のコードや文章の学習
- 04AIの常用がスキルに与える影響の評価
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ learnprompt/ andrej-karpathy-skills --skill karpathy-understanding-firstインストール後、Claude Code で/karpathy-understanding-firstを入力して読み込まれたか確認します。
詳細
スキル 8:理解 > アウトソーシング
出典:https://x.com/karpathy/status/2049907410303865030 「思考を外部に委託することはできますが、理解を外部に委託することはできません。」— 46k 件のいいね 関連項目:ギザギザの能力モデリング(Sequoia での対話)
核となる原則
アウトソーシングは問題ありません。能力の衰えは問題です。
AI を使って作業速度を 10 倍にしましょう。しかし、何かを理解することを飛ばすたびに、自分の未来から借りていることになります。理解は積み重なります。エージェントの出力を盲目的にリリースしても、積み重なることはありません。
Karpathy の「ギザギザの能力」という洞察:LLM は、ある事柄(検証可能で、データが豊富な領域)には驚くほど優れていますが、別の事柄(分布外の状況や新しい組み合わせ)では気づかれないまま間違えます。どちらがどちらなのか、頭の中に地図を持っておく必要があります。
理解度の監査
エージェントの支援を受けた作業セッションの後は、毎回これを実行します。
I just had an AI help me [DESCRIBE WHAT WAS BUILT/WRITTEN/DECIDED].
Help me audit my own understanding:
1. List the 5 key decisions that were made (technical choices, assumptions, trade-offs)
2. For each decision: would I be able to explain WHY this choice was made to a colleague?
Mark each: UNDERSTOOD / SHALLOW / BLACK BOX
3. For the BLACK BOX items: give me a 3-sentence explanation I can verify
4. What would I need to read/learn to make the SHALLOW items UNDERSTOOD?
Be honest. If I'm shipping something I don't understand, I need to know.
ギザギザの能力マップ
LLM の能力は一様ではありません。このメンタルモデルを使いましょう。
信頼性:高(軌道に乗っている)
定義が明確で、検証可能で、データが豊富な領域です。
- 広く使われている言語のコード(Python、JS、SQL)
- テキストの要約や書き換え
- 構造化データの抽出
- よく知られたアルゴリズム
- 一般的なパターン(REST API、SQL クエリ、正規表現)
信頼性:中(慎重に使い、検証する)
- あまり使われていない言語(Rust、Haskell、Elixir)
- 複数のシステムの連携
- 学習データのカットオフ以降にリリースされた、特定のバージョンや API に関わるもの
- 複数ステップの推論チェーン
- 単純な算術を超える数学
信頼性:低(必ず独立して検証する)
- 最先端の研究(論文を幻覚する可能性があります)
- テクノロジーの新しい組み合わせ
- 簡単に検証できない専門分野の知識
- 法務・医療・金融に関する具体的な情報
- 間違えた場合のコストが高いもの
能力チェック用プロンプト
重要な事柄について AI の出力を信頼する前に、次のプロンプトを使います。
I need to evaluate how reliable your output is for this specific task:
Task type: [DESCRIBE WHAT YOU ASKED THE AI]
Output: [PASTE THE OUTPUT]
Help me assess:
1. How common is this exact pattern in training data? (ubiquitous / common / rare / novel)
2. What's the easiest way to verify this without running it?
3. What's the most likely error — hallucinated API? Wrong logic? Outdated syntax?
4. What search query would I use to double-check the key claim?
5. Should I trust this output? (YES/VERIFY_FIRST/DEFINITELY_CHECK)
能力衰退防止プロトコル
Karpathy は、どのスキルが衰えているか(AI に引き継がれているか)、どのスキルが伸びているかを追跡しています。毎月チェックしましょう。
Run a skills audit for [MONTH/YEAR]:
Things I've been having AI do for me recently:
[LIST 5-10 TASKS]
For each:
1. Is my ability to do this WITHOUT AI declining? (YES / NO / UNSURE)
2. Is that OK? (Critical skill I must maintain / Commodity I'm fine outsourcing)
3. Action: KEEP_DELEGATING / PRACTICE_MANUALLY / LEARN_DEEPLY
Final question: What's one thing I should deliberately do WITHOUT AI this month to stay sharp?
検証チェックリスト
エージェントが作成した出力をリリースする前に、次の項目を確認します。
Understanding verification:
- [ ] I can explain what this does in plain English without looking at it
- [ ] I've traced through the logic manually for at least one example
- [ ] I know what the failure mode looks like
- [ ] I've run it / tested it myself (not just read the output)
- [ ] If it's wrong, I'll know how to debug it
- [ ] I'm not shipping something I'd be embarrassed to explain in a code review
If any box is unchecked: understand it before shipping.
学びを引き出すプロンプト
AI が書いた内容を理解できないときは、そのままリリースするのではなく、そこから学びましょう。
You wrote this code/text and I don't fully understand it:
[PASTE OUTPUT]
Teach me:
1. The underlying concept (assume I know [MY_LEVEL] — beginner/intermediate/expert)
2. Walk through the logic step by step
3. What would happen if I changed [SPECIFIC PART]?
4. Point me to the canonical resource where I can learn this properly
5. Give me a simpler version that demonstrates the core idea in isolation
I'm going to use this as a learning moment, not just copy-paste.
ワークフロー
ワークフロー:偏見にとらわれない意思決定(ステップ 2)+ ワークフロー:月次チェックアップ(ステップ 2)
| 位置 | 上流 | 下流 |
|---|---|---|
| Cステップ2 | karpathy-llm-simulator(議論の後) | karpathy-system-prompt-learning(ルールを定着させる) |
| Dステップ2 | karpathy-meta-reflection(監査の後) | karpathy-practice-environments(練習環境を作る) |
偏見にとらわれない意思決定の流れ:llm-simulator → understanding-first → system-prompt-learning 月次チェックアップの流れ:meta-reflection → understanding-first → practice-environments → education-first
プロンプトの契約
After completing this task, append an Understanding Report: 1) Key assumptions made (list each), 2) What was verified (with evidence), 3) What remains inferred/unverified (with suggested verification method), 4) Capability boundary notes (where LLM might be off-distribution for this task), 5) Items I must personally inspect or understand before relying on this output.
検証チェックリスト
- 重要な前提が明示されている(出力の中に隠されていない)
- 検証済みの項目に証拠がある(テストの合格/ドキュメントの引用/データの比較)
- 未検証の項目に、明確な検証方法の提案がある
- LLM の能力の境界が示されている(不得意な可能性のある部分)
- 「自分で必ず確認する」リストが、ファイル/行/設定まで具体的に示されている
- 人間が中核となるロジックを理解したことを確認している(ただ目を通しただけではない)