Создайте свой собственный ChatGPT за пару часов

Андрей Карпати представил проект по созданию LLM-обучения и логического вывода с нуля — nanochat

Создайте свой собственный ChatGPT за пару часов

По сути, вы можете понять все этапы обучения LLM, следуя этому руководству.

Для обучения разговорной модели с пользовательским интерфейсом потребуется всего 100 долларов вычислительной мощности и всего 8000 строк кода.

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

Запустив один скрипт на 8 узлах H100 в облаке, примерно за 4 часа/~$100 вы можете получить модель, которая сможет вести беседы, писать стихи и рассказы, а также отвечать на простые вопросы;

12 часов, чтобы превзойти GPT‑2 по метрике CORE; ~$1000 / ~41,6 часа для дальнейшего совершенствования, чтобы иметь возможность решать базовые математические задачи/программирование и вопросы с несколькими вариантами ответов.

Конкретный план обучения включает в себя:

🔴Токенизатор: новая реализация обучающего токенизатора на Rust.

🔴Предварительная подготовка: использование корпуса FineWeb для оценки CORE и нескольких индикаторов.

🔴Среднесрочное обучение: диалоги пользователя с помощником через SmolTalk, вопросы с несколькими вариантами ответов и данные об использовании инструментов.

🔴SFT: Оценка охватывает общие знания и знание мира (ARC‑E/C, MMLU), математику (GSM8K) и кодирование (HumanEval).

🔴Обучение с подкреплением: вы можете использовать GRPO для обучения с подкреплением на GSM8K.

🔴Механизм вывода: поддерживает кэширование KV, предварительное заполнение/декодирование, вызов инструментов (интерпретатор Python в облегченной «песочнице»), взаимодействие с CLI и WebUI в стиле ChatGPT.

🔴Автоматически формировать отчетные карточки: автоматически формировать единый отчет Markdown, обобщающий и «игровой» характер показателей.

Начать дискуссию