Официальная реализация FlashAttention — точного и экономного по памяти attention-ядра для обучения и инференса Transformer-моделей на GPU.
duoan/TorchCode
Интерактивная платформа для практики реализации операторов и архитектур PyTorch с нуля и автоматической проверкой в Jupyter.
Open source альтернатива:LeetCode
- Звёзды
- 4,695
- Форки
- 420
- Открытые issues
- 16
- Последний коммит
- 3 месяца назад
Что это?
TorchCode — это набор из 41 задачи для практики работы с PyTorch с нуля, по формату напоминающий LeetCode. В каждой задаче нужно реализовать распространённую операцию или компонент модели — например, softmax, LayerNorm, multi-head attention, RoPE, LoRA или блок GPT-2 — обычно без использования torch.nn. Задачи представлены в виде Jupyter-ноутбуков с пустым шаблоном и отдельным эталонным решением.
Модуль проверки (torch_judge) запускает вашу реализацию на тестовых примерах. Он проверяет численную корректность с помощью torch.allclose, прохождение градиентов через autograd, соответствие форм и обработку граничных случаев, а затем сообщает, пройден ли каждый тест. Подсказки и панель прогресса доступны из ячеек ноутбука, а кнопка на панели инструментов сбрасывает ноутбук до пустого шаблона.
Платформа работает на CPU в одном контейнере Docker или Podman; GPU и база данных не требуются. Её также можно открыть в Hugging Face Spaces или Google Colab, где модуль проверки устанавливается из PyPI. В качестве альтернативного интерфейса доступен отдельный веб-интерфейс на Next.js и FastAPI.
Ключевые возможности
- 0141 задача охватывает основы, варианты attention, блоки трансформеров, обучение, декодирование и функции потерь для обучения с предпочтениями.
- 02Автоматический модуль проверки оценивает корректность выходных данных, прохождение градиентов, формы тензоров и граничные случаи, показывая результат каждого теста.
- 03Для каждой задачи доступны подсказки и эталонные решения.
- 04Сброс кнопкой на панели инструментов возвращает ноутбук к пустому шаблону, чтобы можно было практиковаться снова.
- 05Работает на CPU в одном контейнере Docker или Podman, а также в Google Colab без локальной настройки.
Сценарии использования
- Подготовка к собеседованиям на должности ML-инженеров, где просят написать операции PyTorch на доске или во время практического задания.
- Изучение принципов работы softmax, attention, нормализации или LoRA через реализацию без высокоуровневых вспомогательных средств.
- Практика с тензорными операциями PyTorch и autograd на ноутбуке без GPU.
- Проведение занятий с упражнениями и пошаговыми инструкциями в классе или учебной группе через ссылки на Colab.
Быстрый старт
- 1
Загрузите и запустите предварительно собранный образ Docker
docker run -p 8888:8888 -e PORT=8888 ghcr.io/duoan/torchcode:latest - 2
Откройте приложение в браузере
Что важно знать
- Требуется Docker или Podman либо локальная сборка с помощью make.
- Judge работает в Jupyter и предназначен в первую очередь для практики с PyTorch, а не для общего использования.
- В метаданных проекта лицензия не указана.
Темы
Частые вопросы
- Что такое TorchCode?
- Интерактивная платформа для практики реализации операторов и архитектур PyTorch с нуля и автоматической проверкой в Jupyter. TorchCode — это набор из 41 задачи для практики работы с PyTorch с нуля, по формату напоминающий LeetCode. В каждой задаче нужно реализовать распространённую операцию или компонент модели — например, softmax, LayerNorm, multi-head attention, RoPE, LoRA или блок GPT-2 — обычно без использования torch.nn. Задачи представлены в виде Jupyter-ноутбуков с пустым шаблоном и отдельным эталонным решением.
- TorchCode можно использовать бесплатно? Какая у него лицензия?
- У TorchCode не указана лицензия. Код открыт, но без лицензии нет явного разрешения на его использование — уточните у автора, прежде чем на него полагаться.
- TorchCode всё ещё поддерживается?
- Обновлялся за последние 6 месяцев. Последний коммит в TorchCode — 31 июл. 2026 г..
- Для чего можно использовать TorchCode?
- Подготовка к собеседованиям на должности ML-инженеров, где просят написать операции PyTorch на доске или во время практического задания. Изучение принципов работы softmax, attention, нормализации или LoRA через реализацию без высокоуровневых вспомогательных средств. Практика с тензорными операциями PyTorch и autograd на ноутбуке без GPU. Проведение занятий с упражнениями и пошаговыми инструкциями в классе или учебной группе через ссылки на Colab.
- Как установить TorchCode?
- Загрузите и запустите предварительно собранный образ Docker: docker run -p 8888:8888 -e PORT=8888 ghcr.io/duoan/torchcode:latest Откройте приложение в браузере
- Где скачать TorchCode?
- Исходный код и инструкции по установке — на GitHub: https://github.com/duoan/TorchCode
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Учебный гид по LeetCode на китайском языке: подборка задач в рекомендуемом порядке, решения с иллюстрациями, видеоразборы и код на C++, Java, Python, Go и JavaScript.
Китайский перевод книги «Build a Large Language Model (From Scratch)» о принципах работы LLM и пошаговой реализации модели в стиле GPT.
Решения задач LeetCode на Go с сопутствующей электронной книгой Cookbook, охватывающие структуры данных и алгоритмы для подготовки к собеседованиям.
Учебный справочник группирует задачи LeetCode для собеседований по повторно применимым шаблонам решения и позволяет просматривать их и отслеживать прогресс в веб-приложении.
Подборка заметок и решений по DSA, спортивному программированию и основам CS в Jupyter Notebook для подготовки к собеседованиям в стиле FAANG.