TGViewer
Pavel Zloi Pavel Zloi @evilfreelancer · 4.5K subscribers
Post #1907 2.39K
Увидел в чате ссылку на статью Тернарная нейронка на C# на Хабре и залип. Там автор собрал BitNet-подобную модель на 49 тысяч параметров, обучил на процессоре, чекпоинт получился на 17 килобайт. Играшка, конечно, знатная, корпус там из 22 русских предложений. Но мысль зацепила.

А так как я последнее время активно пилю Coddy Agent размышляю в контексте сего агента, короче, он умеет настраивать сам себя. Конфиг он правит собственными тулами config_set, config_changes, config_commit, config_rollback, руками в текст лезть не нужно. Четыре глагола (set, add_list, del_list, delete), парсер, dry-run, стейджинг и откат на снапшот. Других агентов, которые так умеют, я пока не встречал. Подробнее тут.

И тут пришла идея. А если положить рядом с бинарником маленькую модель, которая умеет этими тулами пользоваться? Человек ставит Coddy на чистую машину, пишет "вот openai-совместимый сервер, вот ключ, вот две модели, вторую сделай основной", и всё заполняется само. Без облака и без интернета.

Сейчас там замкнутый круг. Чтобы подключить провайдера, нужен уже подключённый провайдер, а на свежей установке Coddy отвечает no model configured и на этом разговор заканчивается.

Натравил на тему сначала Fable, потом Astra, а отчётик собрал в формате репа.


Если по существу вопроса, то расклад следующий

Модель не сочиняет YAML, она выбирает действие, а применяет его Coddy сам.

Размер. Сто-двести миллионов параметров выглядят реалистично, в четырёх битах это 70-150 МБ весов. Но память процесса считается отдельно. В замерах Google для FunctionGemma файл занимает 288 МБ, а пиковый RSS 551 МБ, так что "маленькая модель" и "маленький расход памяти" это про разное.

Чистый Go без cgo оказался возможен. Есть goccy/go-llama, это llama.cpp, скомпилированный в wasm и переведённый в Go-исходники. Собрал статический бинарь под linux/amd64, вышло 23,7 МБ, движок стартует за 7 мс, GBNF-грамматики поддерживаются.


Чего пока не получается

С русским под миллиард параметров всё грустно. Qwen3-0.6B выбивается по размеру и скорости, из мелочи остаются ruGPT3-small на 125M и ruT5-small на 65M, обе старые и без инструктивного тюнинга. SmolLM2-135M современнее, но русского там почти нет.

Главный ограничитель, это prefill. Нагрузка тут обратная чатовой, тысяча токенов на вход и тридцать на выход. На моём i7-8750H выходит 6-8 секунд для 0.6B и полторы секунды для 135M, отсюда и весь разговор про размер.

Обучение оказалось дешевле, чем я думал. Пилот на 2-5 тысячах диалогов с LoRA влезает даже в процессор, часа три для 65M и часов шесть для 135M на том же старом ноуте. На видяшке будет сильно быстрее.


Что дальше

Соберу датасетик, может синта какая ещё будет, потом попробовать разные модельки потюнить, и заодно может и правда за тернаный трансформер взяться как в том посте.

Реп с заметками на тему:
https://github.com/coddy-project/coddy-tinyllm

PS. Обученной модели там пока нет, только исследование и разбор.
  • ❤ 18
  • 🔥 9
  • 🕊 3
More from @evilfreelancer
  1. Sep 20, 2026Post #1913
  2. Sep 18, 2026Чем дальше по пути развития кодовых агентов мы идем тем чаще замечаю, что с коллегами обме…
  3. Sep 17, 2026Меня тут ошарашили тем, что мой небольшой скил на базе учебника логики Челпанова для агент…
  4. Sep 17, 2026Представляю вашему вниманию Hub Defence! Игра в жанре Tower Defence о том, как Валера Кова…
  5. Sep 15, 2026Важное объявление! Сегодня 16.09.2026 c 00:00 до 04:00 MSK по всему neuraldeep.ru будут пр…
  6. Sep 13, 2026Прочёл сегодня на Хабре новость о том, что Байкал Электроникс запустили ИИ-ассистента на п…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →