GuppyLM: 9-миллионная языковая модель, созданная с нуля для образовательных целей

✍️ OpenClawRadar📅 Опубликовано: 16 апреля 2026 г.🔗 Source
GuppyLM: 9-миллионная языковая модель, созданная с нуля для образовательных целей
Ad

Что такое GuppyLM

GuppyLM — это крошечная языковая модель (примерно 9 миллионов параметров), которая притворяется рыбкой по имени Гуппи. Она создана с нуля, чтобы показать, как работают языковые модели, не требуя докторской степени или огромного кластера GPU. Проект включает генерацию данных, создание токенизатора, архитектуру модели, цикл обучения и вывод — всё примерно в 130 строках кода на PyTorch.

Детали архитектуры

  • Параметры: 8.7 млн
  • Слои: 6
  • Скрытая размерность: 384
  • Головы внимания: 6
  • FFN: 768 (ReLU)
  • Словарь: 4 096 (BPE)
  • Максимальная последовательность: 128 токенов
  • Нормализация: LayerNorm
  • Позиции: Обучаемые эмбеддинги
  • LM head: Веса связаны с эмбеддингами

Это стандартный трансформер без GQA, RoPE, SwiGLU или раннего выхода — максимально простой.

Обучение и данные

Модель обучается на 60 тысячах синтетических диалогов по 60 темам примерно за 5 минут на бесплатном GPU T4 в Colab. Датасет (arman-bd/guppylm-60k-generic на HuggingFace) содержит 57 тысяч обучающих и 3 тысячи тестовых примеров в формате: {"input": "...", "output": "...", "category": "..."}.

Темы включают: приветствия, чувства, температура, еда, свет, вода, аквариум, шум, ночь, одиночество, пузыри, стекло, отражение, дыхание, плавание, цвета, вкус, растения, фильтр, водоросли, улитки, страх, возбуждение, скука, любопытство, счастье, усталость, снаружи, кошки, дождь, времена года, музыка, посетители, дети, смысл жизни, время, память, сны, размер, будущее, прошлое, имя, погода, сон, друзья, шутки, страх, любовь, возраст, интеллект, здоровье, пение, телевизор и другие.

Ad

Личность и вывод

Гуппи говорит короткими предложениями в нижнем регистре о воде, температуре, свете, вибрациях и еде. Она не понимает человеческих абстракций вроде денег, телефонов или политики. Пример диалога:

Вы> привет, гуппи
Гуппи> привет. я только что нашёл хорошее место у камня. температура приятная.
Вы> ты голоден
Гуппи> да. всегда да. я поплыву наверх прямо сейчас. обещаю съесть всё.
Вы> в чём смысл жизни
Гуппи> еда. ответ всегда еда.

Быстрый старт

Поговорить с Гуппи (обучение не требуется): Загружает предобученную модель с HuggingFace. Просто запустите все ячейки в блокноте.

Обучить свою: Установите среду выполнения на GPU T4, запустите все ячейки — загрузит датасет, обучит токенизатор, обучит модель, протестирует её. Загрузите на HuggingFace или скачайте локально.

Локальный чат:

pip install torch tokenizers
python -m guppylm chat

Пример локального взаимодействия:

Вы> кот смотрит на тебя
Гуппи> я прячусь за растением, когда пушистый приходит.
Вы> на улице идёт дождь
Гуппи> я думаю, дождь — это лучшее, что есть снаружи.

Структура проекта

guppylm/
├── config.py          # Гиперпараметры (модель + обучение)
├── model.py           # Стандартный трансформер
├── dataset.py         # Загрузка данных + батчинг
├── train.py           # Цикл обучения (косинусный LR, AMP)
├── generate_data.py   # Генератор диалоговых данных (60 тем)
├── eval_cases.py      # Тестовые случаи
├── prepare_data.py    # Подготовка данных + обучение токенизатора
└── inference.py       # Интерфейс чата

Этот проект полезен разработчикам, которые хотят понять основы архитектуры трансформеров, не имея дела с моделями на миллиарды параметров. Полная реализация показывает каждый этап от сырого текста до обученных весов и сгенерированного вывода.

📖 Read the full source: HN LLM Tools

Ad

👀 Смотрите также

audio-analyzer-rs: Сервер MCP для анализа аудио с Claude
Инструменты

audio-analyzer-rs: Сервер MCP для анализа аудио с Claude

Разработчик создал audio-analyzer-rs — сервер MCP на Rust, который предоставляет Claude прямой доступ к анализу аудиофайлов, включая спектральный, гармонический, ритмический анализ, измерения громкости LUFS (стандарт EBU R128) и динамического диапазона. Инструмент эффективен по токенам: Claude начинает с низкого разрешения и при необходимости увеличивает детализацию небольших фрагментов.

OpenClawRadar
Сравнение 14 вариантов ИИ-агента Claw по 10 категориям
Инструменты

Сравнение 14 вариантов ИИ-агента Claw по 10 категориям

Подробное сравнение 14 популярных вариантов агентов Claw AI, включая OpenClaw, NanoClaw, NemoClaw, ZeroClaw, PicoClaw, Moltis, IronClaw и NullClaw, с оценкой по 53 подпараметрам, составными рейтингами и идеальными вариантами использования для каждого.

OpenClawRadar
Автоматический маршрутизатор против Sonnet: Экономия затрат против качества ответов
Инструменты

Автоматический маршрутизатор против Sonnet: Экономия затрат против качества ответов

Функция Auto Router от Open Router динамически выбирает языковые модели на основе сложности контекста, предлагая значительную экономию средств (0,8 цента против 0,00071 цента за запрос), но пользователи сообщают о снижении качества ответов по сравнению с Sonnet 4.6.

OpenClawRadar
Набор для управления контекстом Cowork решает проблему перегрузки файлами в Claude
Инструменты

Набор для управления контекстом Cowork решает проблему перегрузки файлами в Claude

Разработчик создал набор инструментов для управления контекстом в Cowork после того, как Claude AI начал читать все 462 файла в папке проекта, что вызывало проблемы с производительностью и противоречия. Решение включает глобальные инструкции, систему манифест-файлов и навык для Cowork, который помогает расставлять приоритеты для релевантных документов.

OpenClawRadar