Agent skill

pytorch-lightning

High-level training framework for PyTorch that abstracts boilerplate while maintaining flexibility. Includes the Trainer, LightningModule, and support for multi-GPU scaling and reproducibility. (lightning, pytorch-lightning, lightningmodule, trainer, callback, ddp, fast_dev_run, seed_everything)

Stars 0
Forks 0

Install this agent skill to your Project

npx add-skill https://github.com/cuba6112/skillfactory/tree/main/skills/pytorch-lightning

SKILL.md

Overview

PyTorch Lightning is a lightweight wrapper for PyTorch that decouples the research code from the engineering code. It automates 40+ engineering details like epoch loops, optimization, and hardware acceleration, while allowing researchers to retain full control over the model logic.

When to Use

Use Lightning when you want to scale models to multi-GPU or multi-node environments without changing training code, or when you want to eliminate boilerplate for logging, checkpointing, and reproducibility.

Decision Tree

  1. Are you testing code logic on a small subset?
    • YES: Use Trainer(fast_dev_run=True).
  2. Do you need to scale to multiple GPUs?
    • YES: Set accelerator='gpu' and devices=N in the Trainer.
  3. Do you have logic that is non-essential to the model (e.g., special logging)?
    • YES: Implement it as a Callback.

Workflows

  1. Transitioning from Raw PyTorch to Lightning

    1. Define a class inheriting from L.LightningModule.
    2. Move model architecture into __init__ and logic into training_step.
    3. Implement configure_optimizers to return the optimizer and optional scheduler.
    4. Instantiate an L.Trainer and pass the model and DataLoader to trainer.fit().
  2. Multi-GPU Training Scaling

    1. Initialize the Trainer with accelerator='gpu' and devices=N.
    2. Set strategy='ddp' or 'deepspeed_stage_2' for multi-node/large-scale runs.
    3. Optionally enable 16-bit precision using precision='16-mixed'.
    4. Run the script without code changes to standard logic.
  3. Ensuring Training Reproducibility

    1. Call seed_everything(seed, workers=True) at the start of the script.
    2. Initialize the Trainer with deterministic=True.
    3. Avoid data-dependent logic in transforms that isn't handled by the derived seeds.

Non-Obvious Insights

  • Overhead Analysis: The 'barebones' mode in the Trainer is specifically for overhead analysis and disables almost all logging and checkpointing for speed.
  • Callback State Management: Custom callbacks must implement a state_key property if multiple instances of the same callback type are used in a single Trainer.
  • Superior Debugging: The fast_dev_run flag is superior to limiting batches manually because it avoids all side effects like checkpointing or logging that might clutter the workspace during debugging.

Evidence

Scripts

  • scripts/pytorch-lightning_tool.py: Template for a LightningModule and Trainer setup.
  • scripts/pytorch-lightning_tool.js: Script to trigger Lightning training with CLI arguments.

Dependencies

  • lightning
  • torch

References

  • PyTorch Lightning Reference

Expand your agent's capabilities with these related and highly-rated skills.

cuba6112/skillfactory

prompt-engineering

Comprehensive prompt engineering techniques for Claude models. Use this skill when crafting, optimizing, or debugging prompts for Claude API, Claude Code, or any Claude-powered application. Covers system prompts, role prompting, multishot examples, chain of thought, XML structuring, long context handling, extended thinking, prompt chaining, Claude 4.x-specific best practices, and agentic orchestration including subagents, agent loops, skills, MCP integration, and multi-agent workflows.

0 0
Explore
cuba6112/skillfactory

adk-rag-agent

Build RAG (Retrieval-Augmented Generation) agents with Google ADK and Vertex AI RAG Engine. Use when implementing document Q&A, knowledge base search, or citation-backed responses. Covers VertexAiRagRetrieval tool, corpus setup, and citation formatting.

0 0
Explore
cuba6112/skillfactory

headless-cli-agents

Build agentic systems using Claude CLI in headless mode or the Claude Agent SDK. Use when building automation pipelines, CI/CD integrations, multi-agent orchestration, or programmatic Claude interactions. Covers CLI flags (-p, --output-format), session management (--resume, --continue), Python SDK (claude-agent-sdk), custom tools, and agent loop patterns.

0 0
Explore
cuba6112/skillfactory

notion-knowledge-capture

Capture conversations and decisions into structured Notion pages; use when turning chats/notes into wiki entries, how-tos, decisions, or FAQs with proper linking.

0 0
Explore
cuba6112/skillfactory

mcp-builder

Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).

0 0
Explore
cuba6112/skillfactory

gh-fix-ci

Inspect GitHub PR checks with gh, pull failing GitHub Actions logs, summarize failure context, then create a fix plan and implement after user approval. Use when a user asks to debug or fix failing PR CI/CD checks on GitHub Actions and wants a plan + code changes; for external checks (e.g., Buildkite), only report the details URL and mark them out of scope.

0 0
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results