Технологии
«Модели, которых не было»: агент ML Intern в HuggingChat собрал шесть небольших моделей за пару дней
Hugging Face показала, как один разработчик с помощью агента ML Intern в HuggingChat за считаные дни собрал шесть моделей — от Citrus Doctor на Qwen3.5-2B до 4-шагового дистиллята Agate, — потратив на вычисления около 103 долларов.

Что произошло
Hugging Face опубликовала в своём блоге рассказ разработчика Ювраджа Шармы о том, как он с помощью агента ML Intern в HuggingChat собрал шесть моделей.
Всё началось с желания получить компактную версию prompt rewriter, которая входит в Qwen-Image 2.1: официальный вариант — это модель на 9B, ей требуется около 20 ГБ памяти, и она «думает» тысячи токенов, прежде чем написать первый абзац.
Готовых сжатых копий на Hub не оказалось, поэтому он просто описал агенту ML Intern желаемое — и на следующий день получил версию на 0.8B, которая работает на CPU.
По словам автора, эта версия возвращает корректный результат в 99.7% случаев и использует примерно четверть токенов учителя, а все вычисления проекта, включая разметку 8 797 примеров моделью на 9B, обошлись в USD 16.
Как он ставит задачи агенту
Каждый проект начинался сообщением в HuggingChat с включённым режимом ML-intern и заканчивался публичной моделью на Hub с оценкой в карточке модели.
ML-intern сам планирует работу, запрашивает бюджет до любых трат, прогоняет небольшой тест перед основной задачей, а затем обучает, оценивает и публикует модель на железе Hugging Face.
Первый промпт занимал около 450 слов, а к шестому проекту вырос почти до 2 000: в нём автор перечисляет датасет, базовую модель и скрипт обучения, а уже проверенные факты выносит в отдельный раздел с заголовком «Verified facts, do not re-derive».
Две строки автор называет критичными: запрос базовой оценки до обучения (zero-shot, чтобы видеть прирост) и «smoke test» с проверкой — например, 50 шагов обучения и подтверждение, что сохранённые веса действительно изменились.
В конце промпта задаётся потолок расходов, например «Cap total spend at USD 12 and ask me before exceeding it»: агент стартует с нулевым бюджетом и не выполняет платные задачи без разрешения.
Все семь промптов выложены на GitHub в репозитории yvrjsharma/ml-intern-prompts.
Citrus Doctor: агроном для цитрусовых
Первую модель автор посвятил диагностике болезней цитрусовых: обычная vision-модель опишет пожелтевший лист, но не отличит поражение клещом от дефицита магния и не предложит лечение.
Датасет citrus-disease-vlm-instruct собрали из трёх источников организации Project-AgML на Hub — 3 017 размеченных изображений по 21 классу вредителей, болезней, дефицита питания и подходов к лечению.
ML-intern дообучил Qwen3.5-2B. На 335 тестовых фотографиях базовая модель называла верную проблему в 14.9% случаев, а дообученная после двух эпох на одной A10G — в 52.8%; вычисления обошлись примерно в USD 1.90.
Свой персонаж и новые трюки
Второй проект — LoRA, рисующая персонажа Huggy в стиле фирменных материалов Hugging Face, на базе FLUX.2 klein base 4B и 84 подписанных рисунках из датасета Chunte/huggy_for_training.
Агент сохранял чекпойнт каждые 100 шагов и рисовал один и тот же набор промптов, что упрощало выбор: шаг 200 был первым, где Huggy получился «в образе», а начиная с шага 500 стиль начал «протекать» в посторонние промпты. Итоговая LoRA работает и на дистиллированной klein-модели при 4 шагах.
Отдельная задача — camera-angle LoRA для Qwen-Image 2.1, позволяющая показать объект под углом 45 градусов. Агент отрендерил 1 030 бытовых предметов из Google Scanned Objects по 24 ракурса — 24 722 прозрачных изображения на CPU за несколько центов; обучение заняло 2 000 шагов за ~90 минут на одной A100 (~USD 3.75), а весь проект — около половины дня и USD 16 с учётом 48 запусков.
Doodle-in LoRA тоже для Qwen-Image 2.1: датасета не существовало, поэтому его пришлось строить с нуля — брать фото из Open Images, удалять объект моделью inpainting LaMa и рисовать на его месте magenta-каракулю, оставив исходный снимок целью. На 2 000 шагов хватило 1 часа 38 минут на A100 (~USD 4), а на 48 тестовых парах выбрали шаг 500. В паре с Viggle turbo LoRA при 6 шагах 67.5% объектов появились там, где были нарисованы, при 4.7 секунды на правку, а классы, не участвовавшие в обучении, сработали почти так же (65.0% против 64.2%). Проект стоил около USD 24.
Модели «под устройство»
Pocket Rewriter — та самая компактная замена встроенного prompt rewriter. Чтобы обучить учеников, сгенерировали 8 797 коротких запросов к изображениям, после чего модель-учитель на 9B переписала их на одной A100 за 2 часа 37 минут (~USD 6.50); после фильтрации по качеству для обучения отобрали 1 840 примеров.
Учеников на 0.8B и 2B обучали 12 и 18 минут на A10G (USD 0.75 за обоих), а версия на 0.8B поставляется как GGUF-файл на 812 МБ для запуска на CPU; весь проект занял около 11 часов и 24 запуска, то есть около USD 16.
Второй пример — Agate-Preview-002-4step. Текстово-графической модели Logolabs' Agate Preview 002 на 260M параметров нужно 50 шагов с guidance — это 100 проходов сети на изображение, — и её дистиллировали до 4 проходов. В первом прогоне закэшировали 155 000 изображений в латенты, «запекли» guidance и ступенчато сократили число шагов с 16 до 8 и до 4 на A100; четырёхшаговый ученик обошёл учителя при тех же 4 шагах по GenEval и FID, после чего модель экспортировали в ONNX для браузера.
Второй прогон добавил 24 000 пар изображений, сгенерированных учителем при 16 шагах, и дообучение ученика примерно за час: GenEval вырос с 0.509 до 0.536 против 0.563 у учителя при 50 шагах, причём за четверть вычислений. Оба прогона обошлись примерно в USD 37.
Сколько это стоит
Итоговая таблица автора: Citrus Doctor — Qwen3.5-2B, USD 1.90; Huggy LoRA — FLUX.2 klein base 4B, USD 7.60; Pocket rewriter (0.8B и 2B) — Qwen3.5-0.8B и 2B, USD 16.05; Viewpoint Orbit LoRA — Qwen-Image 2.1, USD 16; Doodle-in LoRA — Qwen-Image 2.1, USD 24.30; Agate 4-step (два прогона) — Agate Preview 002, USD 37. Всего — около USD 103.
Это суммы за GPU- и CPU-джобы, как их отчитала платформа по каждой сессии, а не оценка «сверху».
Попробовать ML-intern можно в HuggingChat: нужно включить режим ML-intern и вставить промпт; примеры промптов автор выложил для свободного копирования.