← AI Terminology

PyTorch

PyTorch is an open-source deep learning framework developed by Meta AI that provides a dynamic computation graph (define-by-run), NumPy-compatible tensor operations, automatic differentiation, and GPU acceleration — the dominant framework for AI research and increasingly for production deployment.

It is used to train the majority of published research models and most frontier LLMs.
Why It Matters in AI
PyTorch's dynamic computation graph was revolutionary: unlike TensorFlow 1.x's static graphs, PyTorch builds the graph at runtime, enabling standard Python control flow (if/else, loops) inside model code. This made debugging as easy as Python debugging. It became the standard framework for AI research (~75% of ML papers), and with TorchScript, ONNX export, and torch.compile, it now matches TensorFlow for production. Llama 3, Mistral, Stable Diffusion — all built in PyTorch.
Key Points
Aspect Description
Autograd loss.backward() — automatic differentiation through the dynamic computation graph
Ecosystem HuggingFace Transformers, Lightning, Detectron2, TorchAudio, TorchVision — all PyTorch-based
DataLoader torch.utils.data.DataLoader(dataset, batch_size=32, shuffle=True) — batched data pipeline
nn.Module Base class for all models; forward() method defines computation; parameters() returns weights
vs TensorFlow PyTorch dominant in research; TensorFlow/Keras holds ground in production/mobile via TFLite
torch.compile JIT compilation via Inductor backend — 2× speedup for training loops on CUDA
Simple Analogy
A scratchpad vs. a form: TensorFlow 1.x required filling in a pre-printed form (define the graph, then fill in values); PyTorch lets you write freehand on a scratchpad (dynamic graph). Researchers need the scratchpad — they're trying things out, erasing, rewriting. The scratchpad won.
Common Usage Examples
  • model = nn.Sequential(nn.Linear(784, 256), nn.ReLU(), nn.Linear(256, 10))
  • optimizer.zero_grad(); loss = criterion(model(x), y); loss.backward(); optimizer.step()
  • torch.save(model.state_dict(), "checkpoint.pt") — save model weights
  • model = AutoModelForCausalLM.from_pretrained("meta-llama/Meta-Llama-3-8B") — HuggingFace + PyTorch
  • torch.compile(model) — JIT-compile for 30–100% training speedup
Summary
In short: PyTorch is the dominant deep learning framework — its dynamic computation graph made model development as natural as Python programming, making it the standard for AI research and the foundation of virtually every modern open-source model.