Repolode
duoan

duoan/TorchCode

Jupyter上で自動採点を受けながら、PyTorchの演算やアーキテクチャを一から実装して練習できる対話型プラットフォーム。

代替できる製品:LeetCode

スター
4,695
フォーク
420
未解決の Issue
16
最終コミット
3 か月前

これは何?

TorchCodeは、LeetCodeに似た形式でPyTorchを一から実装する練習ができる、41問のコーディング問題集です。各問題では、softmax、LayerNorm、multi-head attention、RoPE、LoRA、GPT-2ブロックなどの一般的な演算やモデル構成要素を、通常torch.nnに頼らず実装します。問題は、空のテンプレートと別個の解答例を含むJupyter notebookとして提供されます。

judgeモジュール(torch_judge)が、実装をテストケースに対して実行します。torch.allcloseで数値的な正しさを確認し、autogradを通じた勾配の伝播、shapeの整合性、エッジケースを検証して、テストごとに合否を報告します。notebookのセルからヒントや進捗ダッシュボードを利用でき、ツールバーのボタンでnotebookを空の状態にリセットできます。

このプラットフォームは、GPUやデータベースを必要とせず、CPU上で単一のDockerまたはPodmanコンテナとして動作します。Hugging Face SpacesやGoogle Colabからも利用でき、その場合はjudgeをPyPIからインストールできます。別のインターフェースとして、Next.jsとFastAPIによるWeb UIも用意されています。

主な機能

  • 01基礎、attentionのバリエーション、transformerブロック、学習、デコード、選好ベースの損失関数を扱う41問を収録。
  • 02自動judgeが出力の正しさ、勾配の伝播、shape、エッジケースを検証し、テストごとに合否を表示。
  • 03各問題でヒントと解答例を利用可能。
  • 04ツールバーからリセットするとnotebookが空のテンプレートに戻り、繰り返し練習できます。
  • 05CPU上の単一のDockerまたはPodmanコンテナで動作するほか、ローカル環境のセットアップなしでGoogle Colabでも利用できます。

ユースケース

  • PyTorchの演算をホワイトボードやコーディング課題で書くよう求められる、MLエンジニアの面接対策。
  • 高水準のヘルパーに頼らず実装することで、softmax、attention、正規化、LoRAの仕組みを学ぶ。
  • GPUのないノートPCで、PyTorchのテンソル演算とautogradを練習する。
  • Colabのリンクを使って、授業や勉強会でガイド付き演習を実施する。

クイックスタート

  1. 1

    ビルド済みの Docker イメージを取得して実行する

    docker run -p 8888:8888 -e PORT=8888 ghcr.io/duoan/torchcode:latest
  2. 2

    ブラウザーでアプリを開く

使う前に知っておきたいこと

  • Docker または Podman が必要です。もしくは make を使ってローカルでビルドできます。
  • Judge は Jupyter 上で動作し、汎用利用ではなく、主に PyTorch の練習向けに設計されています。
  • プロジェクトのメタデータにライセンスの記載がありません。

トピック

よくある質問

TorchCode とは?
Jupyter上で自動採点を受けながら、PyTorchの演算やアーキテクチャを一から実装して練習できる対話型プラットフォーム。 TorchCodeは、LeetCodeに似た形式でPyTorchを一から実装する練習ができる、41問のコーディング問題集です。各問題では、softmax、LayerNorm、multi-head attention、RoPE、LoRA、GPT-2ブロックなどの一般的な演算やモデル構成要素を、通常torch.nnに頼らず実装します。問題は、空のテンプレートと別個の解答例を含むJupyter notebookとして提供されます。
TorchCode は無料で使えますか?ライセンスは?
TorchCode にはライセンスが明記されていません。コードは公開されていますが、ライセンスがない場合は再利用の許諾がないため、利用前に作者に確認することをおすすめします。
TorchCode は今もメンテナンスされていますか?
半年以内に更新あり。TorchCode の最終コミットは 2026年7月31日 です。
TorchCode は何に使えますか?
PyTorchの演算をホワイトボードやコーディング課題で書くよう求められる、MLエンジニアの面接対策。 高水準のヘルパーに頼らず実装することで、softmax、attention、正規化、LoRAの仕組みを学ぶ。 GPUのないノートPCで、PyTorchのテンソル演算とautogradを練習する。 Colabのリンクを使って、授業や勉強会でガイド付き演習を実施する。
TorchCode のインストール方法は?
ビルド済みの Docker イメージを取得して実行する: docker run -p 8888:8888 -e PORT=8888 ghcr.io/duoan/torchcode:latest ブラウザーでアプリを開く
TorchCode はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/duoan/TorchCode

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト