Установка и запуск
Как запустить сайт курса и Python для домашних работ на Linux, macOS и Windows, где хранится прогресс и как его не потерять, с какой ступени понадобятся ваши видеокарты.
Сайт курса работает прямо на вашем компьютере: Node.js запускает его как маленький локальный сервер, а вы открываете
его в браузере по адресу localhost. Домашние работы — обычные программы на Python, которые проверяет автогрейдер.
Кроме аккаунта на GitHub (репозиторий курса приватный), никаких регистраций, своего сервера и платных сервисов не нужно.
| Инструмент | Зачем | Когда понадобится |
|---|---|---|
| Git | Скачать курс, получать обновления, сохранять свои решения и журнал | Сразу |
| Node.js 22.12+ | Запускать сайт курса | Сразу |
| Python 3.11+ | Домашние работы и код на PyTorch из уроков | В модуле 0.1 (урок 0.1.2). Первое ДЗ — после модуля 0.3. Можно поставить и сразу |
| Ваши видеокарты (4× RTX 4080) | Обучение и запуск моделей: блоки «🖥 На вашей машине» в уроках | Со ступени 4. Настройка — на странице «Ваша лаборатория (4×GPU)» |
Скачайте курс
Заголовок раздела «Скачайте курс»-
Откройте терминал.
Нажмите Ctrl+Alt+T или найдите «Терминал» в меню приложений.
Нажмите Cmd+Пробел, наберите «Терминал» (Terminal) и нажмите Enter.
Нажмите Win, наберите «PowerShell» и откройте Windows PowerShell или Терминал.
-
Установите Git и проверьте, что он работает.
Окно терминала sudo apt update && sudo apt install -y git # Ubuntu и Debiangit --versionОкно терминала xcode-select --install # инструменты разработчика Apple, в них есть gitgit --versionСкачайте установщик Git for Windows с git-scm.com или выполните:
Окно терминала winget install --id Git.Git -eЗакройте и снова откройте PowerShell, затем проверьте:
git --version.Ожидаемый вывод — строка вида
git version 2.…. -
Склонируйте репозиторий. Команда создаст папку
ChinaAIв текущей папке терминала:Окно терминала git clone https://github.com/samnolak/ChinaAI.gitcd ChinaAI
Запустите сайт
Заголовок раздела «Запустите сайт»-
Установите Node.js версии 22.12 или новее. Подойдёт текущая LTS-версия.
В стандартных репозиториях Ubuntu версия Node.js обычно старее нужной. Надёжнее поставить менеджер версий nvm по инструкции на github.com/nvm-sh/nvm, открыть новый терминал и выполнить:
Окно терминала nvm install --ltsnode -vСкачайте установщик LTS-версии с nodejs.org или, если у вас есть Homebrew:
Окно терминала brew install nodenode -vСкачайте установщик LTS-версии с nodejs.org или выполните:
Окно терминала winget install OpenJS.NodeJS.LTSЗакройте и снова откройте PowerShell, затем проверьте:
node -v.Ожидаемый вывод —
v22.12.0или число больше, напримерv24.…. -
Установите зависимости сайта. Из папки
ChinaAI:Окно терминала cd sitenpm installПервый раз это займёт несколько минут: npm скачает Astro, редактор кода, Pyodide и остальное в папку
site/node_modules. -
Запустите сайт:
Окно терминала npm run devСначала скрипт скопирует ядро Python для браузера в
site/public/pyodide, потом запустится сервер. В терминале появится адрес http://localhost:4321/. Откройте его в браузере и начните с раздела «Начало». -
Остановите сайт, когда закончите: Ctrl+C в терминале. В следующий раз хватит двух команд:
cd siteиnpm run dev. После обновления курса (git pull) сначала повторитеnpm install: вдруг поменялись зависимости.
Python для домашних работ
Заголовок раздела «Python для домашних работ»Все команды этого раздела выполняются из корня репозитория, папки ChinaAI (не из site).
-
Установите Python 3.11 или новее.
В Ubuntu 24.04 уже есть Python 3.12, нужно доставить модуль окружений:
Окно терминала sudo apt install -y python3 python3-venv python3-pippython3 --versionВ Ubuntu 22.04 системный Python — 3.10, этого мало. Поставьте отдельно 3.11 (
sudo apt install -y python3.11 python3.11-venv) и на следующем шаге создавайте окружение командойpython3.11 -m venv .venv.Скачайте установщик Python 3.12 с python.org или, если есть Homebrew:
Окно терминала brew install python@3.12python3.12 --versionВызывайте именно
python3.12: простоpython3на Mac может оказаться старым системным Python 3.9 от Apple.Скачайте установщик с python.org. В первом окне поставьте галочку «Add python.exe to PATH». Или выполните:
Окно терминала winget install Python.Python.3.12Закройте и снова откройте PowerShell, затем проверьте:
python --version. Если вместо версии открывается Microsoft Store, используйте лаунчерpy:py -3.12 --version.Ожидаемый вывод —
Python 3.11.…или новее. На Linux команда называетсяpython3, на macOS —python3.12, на Windows —python(илиpy -3.12). -
Создайте виртуальное окружение и активируйте его. Окружение — отдельная папка
.venvс библиотеками только для этого курса. Так курс не конфликтует с другими проектами на компьютере.Окно терминала python3 -m venv .venvsource .venv/bin/activateОкно терминала python3.12 -m venv .venvsource .venv/bin/activateОкно терминала python -m venv .venv # или: py -3.12 -m venv .venv.venv\Scripts\Activate.ps1Если PowerShell пишет, что выполнение сценариев отключено, один раз выполните
Set-ExecutionPolicy -Scope CurrentUser RemoteSignedи повторите активацию. В обычной командной строке (cmd) активация —.venv\Scripts\activate.bat.В начале строки терминала появится
(.venv). Внутри окружения команда везде называется простоpython. Активируйте окружение в каждом новом терминале, прежде чем запускать домашние работы. -
Установите библиотеки.
Окно терминала pip install torch --index-url https://download.pytorch.org/whl/cpu # PyTorch без CUDApip install -r homework/requirements.txtНа машине с видеокартами можно сразу поставить сборку с CUDA, чтобы не переустанавливать PyTorch к ступени 4: вместо первой строки выполните
pip install torch. Скачается несколько гигабайт, зато всё будет готово заранее.Окно терминала pip install -r homework/requirements.txt # на Mac PyTorch и так собран без CUDAОкно терминала pip install torch --index-url https://download.pytorch.org/whl/cpu # PyTorch без CUDApip install -r homework/requirements.txtЗачем PyTorch отдельной первой командой? Обычная сборка для Linux тянет библиотеки CUDA на несколько гигабайт, а тесты всех домашних работ выполняются на процессоре. Видеокарты включатся в работу на ступени 4, тогда сборку и заменим (см. ниже). В
requirements.txt— NumPy, pytest, PyYAML, Matplotlib, PyTorch, а для модуля 2.4 — pandas, scikit-learn и LightGBM. Установка займёт несколько минут. -
Проверьте автогрейдер:
Окно терминала python homework/check.py --listВы увидите список домашних работ и ваш статус по каждой:
Домашние работы ChinaAI:s0-hw01-python-warmup не сдано Разминка на Python — анализ русского и английского текста…Теперь запустите проверку первой домашней работы:
Окно терминала python homework/check.py s0-hw01-python-warmup━━━ s0-hw01-python-warmup: Разминка на Python — анализ русского и английского текста ━━━🥉 Simple: 0/4✗ test_simple_tokenize_basic→ NotImplementedError…🐉 Boss: 0/1✗ test_boss_performance→ NotImplementedErrorИтог: пока не зачтено. Начните с тестов Simple.Так и должно быть: заготовка в
homework/s0-hw01-python-warmup/code/ещё не решена. Вы решите её после модуля 0.3, и автогрейдер покажет уровень от 🥉 Simple до 🐉 Boss.
Структура репозитория
Заголовок раздела «Структура репозитория»ДиректорияChinaAI/
- README.md
Директорияsite/ сайт курса
Директорияsrc/
Директорияcontent/docs/ тексты уроков
- …
Директорияexercises/ задания для браузера: заготовка, эталон, тесты
- …
Директорияdata/ программа курса и глоссарий RU · EN
- …
Директорияcomponents/ квизы, задания, карточки, карта прогресса
- …
- package.json
Директорияhomework/ домашние работы
- check.py автогрейдер
- requirements.txt библиотеки для ступеней 0–5
- requirements-llm.txt библиотеки для ступеней 6–8
Директорияs0-hw01-python-warmup/
Директорияcode/ здесь пишете вы
- …
Директорияtests/ тесты уровней от Simple до Boss
- …
- task.yaml
- …
Директорияsolutions/ эталонные решения ДЗ — не подглядывать!
- …
Директорияdocs/ проектная документация и исследования
- …
Директорияjournal/ ваш журнал и экспорт прогресса
- README.md шаблоны записей
| Папка | Что там | Что вы с ней делаете |
|---|---|---|
site/ | Сайт курса: уроки, задания, компоненты | Запускаете npm run dev. Менять ничего не нужно |
homework/ | Домашние работы: условие в README.md, тесты, заготовки в code/ | Пишете решения в homework/<id>/code/ и проверяете check.py |
solutions/ | Эталоны домашних работ | Открываете только после своей попытки, когда засчитан хотя бы Simple |
docs/ | Видение, программа, архитектура, исследовательские отчёты | Читаете, если интересно, как устроен курс |
journal/ | Ваш журнал обучения | Ведёте записи, складываете экспорт прогресса, коммитите |
Прогресс: где хранится и как не потерять
Заголовок раздела «Прогресс: где хранится и как не потерять»У прогресса два места хранения:
- Сайт хранит в браузере отметки уроков, квизы, задания, карточки, тетрадь ошибок и календарь занятий.
- Автогрейдер записывает лучшие уровни по домашним работам в файл
homework/.results.json.
Чтобы сохранить прогресс сайта, раз в неделю делайте экспорт:
-
Откройте «Карта курса и прогресс» и нажмите «⬇ Экспорт прогресса (JSON)». Браузер скачает файл
chinaai-progress-ГГГГ-ММ-ДД.json. -
Переложите его в
journal/progress/в репозитории:Окно терминала mkdir -p journal/progressmv ~/Загрузки/chinaai-progress-*.json journal/progress/ # или ~/Downloads, смотря как называется папкаОкно терминала mkdir -p journal/progressmv ~/Downloads/chinaai-progress-*.json journal/progress/Окно терминала New-Item -ItemType Directory -Force journal\progressMove-Item $HOME\Downloads\chinaai-progress-*.json journal\progress\ -
Закоммитьте вместе с решениями и журналом:
Окно терминала git add journal homeworkgit commit -m "Прогресс: неделя 41"
На другом компьютере или в другом браузере откройте ту же страницу, нажмите «⬆ Импорт» и выберите последний файл
из journal/progress/.
Перед git pull (получить обновления курса) всегда коммитьте свои изменения. Тогда Git сам соединит ваши коммиты
с обновлениями. Если вы и автор курса изменили одни и те же строки, Git покажет конфликт и попросит выбрать нужный
вариант. С незакоммиченными изменениями git pull может просто отказаться обновляться.
Ваши видеокарты: с какой ступени
Заголовок раздела «Ваши видеокарты: с какой ступени»У вас машина с четырьмя RTX 4080 по 32 ГБ, и её хватает на весь курс без облаков. Но включится она не сразу:
ступени 0–3 идут на процессоре. Так и задумано: на маленьких примерах всё видно лучше, а тесты всех домашних работ
выполняются на CPU. Тяжёлое обучение со ступени 5 проверяется по сохранённым метрикам (metrics.json), а не повторным запуском.
| Ступени | Что делает процессор | Что дают ваши видеокарты |
|---|---|---|
| 0–3. Python, математика, ML, нейросети | Всё | Пока не нужны. Можно для интереса сравнить скорость одного и того же обучения на CPU и GPU |
| 4. Трансформер | Мини-GPT обучается за минуты | Первая настройка GPU. GPT на 10–50M параметров на одной карте |
| 5. Большие модели | Учебные версии MLA и MoE | Своя мини-LLM (MiniMind) за часы, DDP и FSDP на всех четырёх картах |
| 6. Пост-трейнинг | LoRA, DPO и GRPO на игрушечных моделях | LoRA и QLoRA для моделей 7–14B, GRPO для моделей 0.5–3B |
| 7–8. Инференс и приложения | Маленькие модели и работа через API | vLLM или SGLang на четырёх картах, свой локальный «ChatGPT» для RAG и агентов |
| 9. Мультимодальность и фронтир | Маленькие VAE, диффузия и flow matching на MNIST | Генерация изображений и видео, распознавание речи, интерпретируемость на открытых моделях |
| 10. Выпускной | Упрощённая версия | Полный цикл: от токенизатора и претрейна до сервера и агента |
| 11. Профессия | Почти всё: данные, код, расчёты, собеседования | Локальный ИИ-ревьюер и ИИ-интервьюер на vLLM, воспроизведение статьи (гроккинг) за минуты |
Когда настраивать. Драйвер, PyTorch с CUDA и проверку связи между картами сделайте перед ступенью 4: это один вечер по шагам на странице «Ваша лаборатория (4×GPU)». Там же — сколько памяти занимают модели разного размера и что реально запустить на каждой ступени.
Если медленно качаются пакеты Python или модели с Hugging Face, помогут зеркала: зеркало PyPI университета Цинхуа, hf-mirror.com и китайский хаб моделей ModelScope. Как их подключить — в блоке «Китайский угол» урока «Python, виртуальные окружения и Jupyter».
Видео и внешние ссылки
Заголовок раздела «Видео и внешние ссылки»Видео — полноценная часть курса. В первоисточниках уроков есть лекции Андрея Карпатого, ролики 3Blue1Brown и курсы Ли Хунъи на YouTube (некоторые из них — и на Bilibili), с пометкой, какой фрагмент смотреть. Смотрите их с открытым редактором: Карпатый пишет код прямо в кадре, и этот код стоит набирать вслед за ним. Что смотреть на каждой ступени и как встроить видео в неделю — на странице «Как учиться».
Внешние ссылки иногда умирают. Тогда ищите материал по названию или загляните в библиотеку источников.
Частые проблемы
Заголовок раздела «Частые проблемы»| Симптом | Что делать |
|---|---|
git clone спрашивает пароль и не принимает его | GitHub не принимает пароль аккаунта. Выполните gh auth login или используйте токен вместо пароля |
npm: command not found или node не найден | Node.js не установлен, или терминал открыт до установки. Закройте и откройте терминал |
npm install или npm run dev ругаются на версию Node.js | Проверьте node -v. Нужна версия 22.12 или новее |
| Сайт открылся, но прогресс пропал | Другой адрес, другой порт, другой браузер или приватное окно. Откройте прежний адрес или импортируйте JSON из journal/progress/ |
| Задание с NumPy бесконечно загружается | Нет интернета: NumPy грузится с CDN Pyodide. Задания на чистом Python работают и офлайн |
python: command not found на Linux или macOS | Используйте python3 (на Mac — python3.12) или активируйте .venv: внутри окружения есть python |
На Windows команда python открывает Microsoft Store | Это заглушка Windows. Используйте py -3.12 или отключите её: «Параметры → Приложения → Псевдонимы выполнения приложений» |
python3 --version показывает 3.9 или 3.10 | Это старый системный Python. Поставьте 3.11+ и создавайте окружение явно: python3.12 -m venv .venv (или python3.11) |
| PowerShell: «выполнение сценариев отключено» | Один раз выполните Set-ExecutionPolicy -Scope CurrentUser RemoteSigned |
No module named pytest, или check.py пишет «pytest не запустился» | Окружение не активировано или библиотеки не установлены. Активируйте .venv и повторите pip install -r homework/requirements.txt |
pip install качает гигабайты | Это PyTorch с CUDA. Для процессора ставьте его с --index-url https://download.pytorch.org/whl/cpu |
check.py пишет «ДЗ не найдено» | Запускайте из корня репозитория и проверьте id: python homework/check.py --list |