Skill Distillation
Автор рассказывает, как использует фронтирные модели, чтобы обучать небольшие локальные модели работать так, как работает он сам. Его персональный агент на базе Pi управляет почтой, пайплайном сделок, публикацией в блоге, календарём и исследованиями и устроен как небольшая операционная система из трёх слоёв: QMD (локальная база знаний из ~80 markdown-файлов воркфлоу), Skills (атомарные файлы SKILL.md, которые пишет и оценивает фронтирная модель) и Agent Loop (цикл Plan → Tool Call → Observe → Refine с 17 Rust-API и MCP-интеграциями). Ключевой приём — «дистилляция навыков»: фронтирная модель (Opus 4.7, GPT-5.1, Gemini 3 Pro) пишет и дорабатывает навыки, а меньшая локальная модель (Qwen 35B или Gemma 26B) их исполняет, получая процедурное знание через markdown. В отличие от классической дистилляции знаний, instruction tuning и RAG, этот подход извлекает не факты, а процедуры — модели не нужно уметь оценивать компанию, достаточно следовать шагам. Каждую ночь система анализирует исторические логи, решая, какие новые навыки сгенерировать, а сама библиотека навыков превращается в институциональное знание компании.
I’ve been using state-of-the-art models to teach small models running on my computer how I work.
Я использую передовые модели, чтобы научить небольшие модели, работающие на моём компьютере, тому, как работаю я.
My personal agent, based on Pi, runs my inbox, my deal pipeline, my blog publishing, my calendar, & my research. It looks less like a chatbot & more like a small operating system.
Мой персональный агент на базе Pi управляет моим почтовым ящиком, пайплайном сделок, публикацией в блоге, календарём и исследованиями. Он похож не столько на чат-бота, сколько на небольшую операционную систему.
The first layer is QMD, a local markdown knowledge base of about eighty workflow files in ~/memories. Before answering any procedural question, the agent searches QMD for the right playbook.
Первый слой — это QMD, локальная markdown-база знаний примерно из восьмидесяти файлов воркфлоу в ~/memories. Прежде чем ответить на любой процедурный вопрос, агент ищет в QMD нужный плейбук.
The second layer is Skills, atomic SKILL.md files that describe one job each. The skills are written by a frontier model. So are the evaluations that grade them. The same system writes, tests, and rewrites each skill until accuracy converges. It also checks recall against QMD, so the right keywords always surface the right skill.
Второй слой — это Skills, атомарные файлы SKILL.md, каждый из которых описывает одну задачу. Эти навыки пишет фронтирная модель. Как и оценки (evaluations), которые их аттестуют. Одна и та же система пишет, тестирует и переписывает каждый навык, пока точность не сойдётся. Она также проверяет recall по QMD, чтобы по нужным ключевым словам всегда всплывал нужный навык.
The third layer is the Agent Loop, a model running Plan → Tool Call → Observe → Refine, calling out to seventeen Rust APIs & a handful of MCP integrations.
Третий слой — это Agent Loop, модель, исполняющая цикл Plan → Tool Call → Observe → Refine, обращаясь к семнадцати Rust-API и нескольким MCP-интеграциям.
One of the techniques I’ve started to use is skill distillation. A frontier model, Opus 4.7, GPT-5.1, Gemini 3 Pro, authors & refines the skill files. A smaller model, Qwen 35B or Gemma 26B running locally, executes them. The teacher transfers procedural knowledge to the student through markdown. The skill is inspectable, versionable, & hot-swappable.
Один из приёмов, которые я начал применять, — это дистилляция навыков (skill distillation). Фронтирная модель — Opus 4.7, GPT-5.1, Gemini 3 Pro — пишет и дорабатывает файлы навыков. Меньшая модель — Qwen 35B или Gemma 26B, работающая локально, — их исполняет. Учитель передаёт ученику процедурное знание через markdown. Навык можно инспектировать, версионировать и заменять на лету.
This is fundamentally different from classical knowledge distillation, which compresses a big model’s soft probability outputs into a smaller model’s weights. It’s different from instruction tuning, which bakes behavior into weights through prompt-response pairs. It’s different from RAG, which retrieves facts.
Это принципиально отличается от классической дистилляции знаний, которая сжимает мягкие вероятностные выходы большой модели в веса меньшей модели. Это отличается от instruction tuning, который запекает поведение в веса через пары «промпт-ответ». Это отличается от RAG, который извлекает факты.
Skill distillation retrieves procedures. The smaller model doesn’t have to know how to evaluate a company. It just has to know how to follow the steps.
Дистилляция навыков извлекает процедуры. Меньшей модели не нужно знать, как оценивать компанию. Ей нужно лишь знать, как следовать шагам.
Every night a system runs through historical logs to understand what new skills should be generated, mirroring the loop that Pete Koomen described at Y Combinator earlier this week.
Каждую ночь система проходит по историческим логам, чтобы понять, какие новые навыки следует сгенерировать, повторяя тот самый цикл, который Pete Koomen описал в Y Combinator ранее на этой неделе.
The frontier model becomes a teacher. The library becomes the company’s institutional knowledge. The student becomes whichever model happens to be cheapest this quarter.
Фронтирная модель становится учителем. Библиотека становится институциональным знанием компании. А учеником становится та модель, которая в этом квартале окажется самой дешёвой.