Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Fall 2025 Working Group on Becoming Full-Stack AI Researchers

Notifications You must be signed in to change notification settings

Sasha-Cui/full-stack-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

38 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Becoming Full-Stack AI Researchers

CURRENTLY UNDER CONSTRUCTION. THE CODE HAS NOT BEEN FULLY REVIEWED OR VERIFIED. PLEASE COME BACK A LITTLE LATER.

License Python 3.8+ PyTorch

๐ŸŽฏ Overview

Welcome to the Becoming Full-Stack AI Researchers working group at Yale University! This repository contains comprehensive tutorials, minimal working examples (MWEs), and educational materials covering the essential packages, frameworks, and tools for end-to-end AI development and research.

Goals

  • ๐Ÿš€ Equip researchers with skills to go beyond narrow, single-aspect AI work toward holistic, end-to-end AI project capability
  • ๐Ÿ“š Build reusable onboarding materials for Yale members interested in AI research
  • ๐Ÿค Create a community of Explorers and Builders in AI

Deliverables

  • GitHub Repository: Minimal working examples, demos, and slides
  • Tutorial Paper: Comprehensive co-authored guide for all modules
  • Presentations: In-depth framework introductions

๐Ÿ“‹ Table of Contents


๐ŸŽ“ Modules

Our curriculum is organized into six interconnected modules, each covering critical aspects of the AI research and engineering pipeline.

Module 1: LLM as Black Boxes 1 โ€“ Datasets, Models, and Benchmarking

Topics: HuggingFace, Quantization (BitsAndBytes), Datasets (Parquet, PyArrow), Benchmarking (lm-eval, inspect-ai)

๐Ÿ“ Materials:

  • MWEs/LLM_Evaluation_Alignment/ - Evaluation and alignment presentation

๐ŸŽฏ Learning Objectives:

  • Load and save sharded HuggingFace model checkpoints
  • Quantize models for efficient deployment
  • Store and load datasets in efficient formats
  • Benchmark model performance

Module 2: LLM as Black Boxes 2 โ€“ Inference, Evaluation, Deployment

Topics: OpenRouter, vLLM (PagedAttention), FastAPI, GEPA, Tools/MCP, TransformerLens

๐Ÿ“ Materials:

  • MWEs/Inference/ - Complete inference tutorial with API usage, tools, and GEPA
  • MWEs/vllm+deepspeed/ - vLLM tutorial with PagedAttention deep dive

๐ŸŽฏ Learning Objectives:

  • Use APIs for LLM inference (OpenRouter, OpenAI)
  • Understand model selection tradeoffs (cost, performance, latency)
  • Implement tool calling and MCP integration
  • Optimize prompts with GEPA
  • Deploy models with vLLM for efficient serving

๐Ÿ“„ Tutorial Paper: overleaf/sections/vllm.tex

Module 3: Post-Training LLMs 1 โ€“ Supervised Fine-Tuning (SFT)

Topics: LoRA/QLoRA with PEFT, PyTorch Lightning

๐Ÿ“ Materials:

  • MWEs/LoRA_tutorials/ - Comprehensive LoRA tutorial with single-cell biology demo
  • MWEs/pytorch/ - PyTorch fundamentals

๐ŸŽฏ Learning Objectives:

  • Understand parameter-efficient fine-tuning (PEFT)
  • Implement LoRA from scratch
  • Compare LoRA with full fine-tuning
  • Optimize rank selection and hyperparameters
  • Orchestrate training with PyTorch Lightning

๐Ÿ“„ Tutorial Paper: overleaf/sections/lora.tex, overleaf/sections/sft.tex

Module 4: Post-Training LLMs 2 โ€“ Reinforcement Learning (RL)

Topics: Docker/Apptainer, VERL, Ray, JAX, Weights & Biases

๐Ÿ“ Materials:

  • MWEs/verl/ - VERL tutorial for PPO training on GSM8K
  • MWEs/ray_train/ - Distributed training with Ray (data parallel, ZeRO, model parallel)
  • MWEs/vllm+deepspeed/ - DeepSpeed integration

๐ŸŽฏ Learning Objectives:

  • Container workflows (Docker, Apptainer)
  • Reinforcement learning with VERL (PPO)
  • Distributed training strategies (Ray, DeepSpeed ZeRO)
  • Experiment tracking (W&B)

๐Ÿ“„ Tutorial Paper: overleaf/sections/ray.tex, overleaf/sections/deepspeed.tex

Module 5: Agentic LLMs 1 โ€“ Software & Hardware Agents

Topics: LangChain, ReAct, MemGPT, OpenVLA

๐Ÿ“ Materials:

  • MWEs/agentic_rl_workshop.ipynb - Agentic RL workshop
  • MWEs/Robotics/ - Vision-Language-Action frameworks

๐ŸŽฏ Learning Objectives:

  • Build multi-step reasoning workflows
  • Implement agent frameworks
  • Vision-Language-Action models for robotics

Module 6: Agentic LLMs 2 โ€“ End-to-End Project

Topics: Complete pipeline from data โ†’ training โ†’ deployment

๐ŸŽฏ Learning Objectives:

  • Build complete AI pipelines
  • Scale and debug on HPC clusters
  • Deploy production systems

Foundational Topics

Topics: PyTorch, JAX, TensorFlow, Scaling Laws

๐Ÿ“ Materials:

  • MWEs/pytorch/ - Comprehensive PyTorch tutorial (autograd, custom ops, optimization)
  • MWEs/Scaling_Laws/ - Scaling laws analysis (Kaplan, Chinchilla)

๐Ÿ“„ Tutorial Paper: overleaf/sections/torch-jax-tf.tex


๐Ÿš€ Getting Started

Prerequisites

  • Python 3.8+ (3.10 recommended)
  • Fluency in Python (required)
  • Git and Conda (or virtualenv)
  • CUDA-capable GPU (optional but recommended for deep learning tasks)

Quick Start

# Clone the repository
git clone https://github.com/sashacui/full-stack-ai.git
cd full-stack-ai

# Choose a module to start with (e.g., PyTorch basics)
cd MWEs/pytorch

# Create environment and install dependencies
conda create -n pytorch-tutorial python=3.10
conda activate pytorch-tutorial
pip install torch numpy pandas jupyter

# Run the tutorial
jupyter notebook pytorch_tutorial.ipynb

Recommended Learning Path

For Beginners

  1. Start with: MWEs/pytorch/ - Learn PyTorch fundamentals
  2. Move to: MWEs/Inference/ - Understand LLM APIs and inference
  3. Then try: MWEs/LoRA_tutorials/ - Learn parameter-efficient fine-tuning

For Intermediate Users

  1. Start with: MWEs/vllm+deepspeed/ - Efficient serving
  2. Move to: MWEs/ray_train/ - Distributed training
  3. Then try: MWEs/verl/ - RL fine-tuning

For Advanced Users

  1. Explore all modules based on your research needs
  2. Experiment with combinations (e.g., LoRA + VERL + vLLM)
  3. Build end-to-end projects using multiple tools

๐Ÿ“‚ Repository Structure

full-stack-ai/
โ”œโ”€โ”€ MWEs/                           # Minimal Working Examples
โ”‚   โ”œโ”€โ”€ pytorch/                    # PyTorch fundamentals
โ”‚   โ”‚   โ”œโ”€โ”€ pytorch_tutorial.ipynb
โ”‚   โ”‚   โ””โ”€โ”€ README.md
โ”‚   โ”œโ”€โ”€ Inference/                  # LLM inference, tools, GEPA
โ”‚   โ”‚   โ”œโ”€โ”€ inference.ipynb
โ”‚   โ”‚   โ”œโ”€โ”€ tools.py
โ”‚   โ”‚   โ”œโ”€โ”€ GEPA_utils.py
โ”‚   โ”‚   โ””โ”€โ”€ README.md
โ”‚   โ”œโ”€โ”€ LoRA_tutorials/             # LoRA/PEFT tutorials
โ”‚   โ”‚   โ”œโ”€โ”€ lora_single_cell_demo_clean.ipynb
โ”‚   โ”‚   โ”œโ”€โ”€ pytorch_lightning_tutorial.ipynb
โ”‚   โ”‚   โ””โ”€โ”€ README.md
โ”‚   โ”œโ”€โ”€ vllm+deepspeed/             # vLLM and DeepSpeed
โ”‚   โ”‚   โ”œโ”€โ”€ vllm_sections_1_4.ipynb
โ”‚   โ”‚   โ”œโ”€โ”€ deepspeed_tutorial_sections_1_4.ipynb
โ”‚   โ”‚   โ””โ”€โ”€ README.md
โ”‚   โ”œโ”€โ”€ ray_train/                  # Ray distributed training
โ”‚   โ”‚   โ”œโ”€โ”€ train_cifar.py
โ”‚   โ”‚   โ”œโ”€โ”€ zero_deepspeed.py
โ”‚   โ”‚   โ”œโ”€โ”€ model_par.py
โ”‚   โ”‚   โ””โ”€โ”€ README.md
โ”‚   โ”œโ”€โ”€ verl/                       # VERL RL training
โ”‚   โ”‚   โ”œโ”€โ”€ evaluate_gsm8k.py
โ”‚   โ”‚   โ”œโ”€โ”€ compare_results.py
โ”‚   โ”‚   โ””โ”€โ”€ README.md
โ”‚   โ”œโ”€โ”€ LLM_Evaluation_Alignment/   # Evaluation & alignment
โ”‚   โ”‚   โ””โ”€โ”€ llm_evaluation_presentation.ipynb
โ”‚   โ”œโ”€โ”€ Scaling_Laws/               # Scaling laws analysis
โ”‚   โ”‚   โ””โ”€โ”€ scaling_laws.ipynb
โ”‚   โ”œโ”€โ”€ Robotics/                   # VLA frameworks
โ”‚   โ”‚   โ””โ”€โ”€ frameworks.ipynb
โ”‚   โ””โ”€โ”€ agentic_rl_workshop.ipynb   # Agentic systems
โ”‚
โ”œโ”€โ”€ overleaf/                       # Tutorial paper source
โ”‚   โ”œโ”€โ”€ tutorial.tex                # Main tutorial document
โ”‚   โ”œโ”€โ”€ syllabus.tex                # Course syllabus
โ”‚   โ””โ”€โ”€ sections/                   # Individual sections
โ”‚       โ”œโ”€โ”€ introduction.tex
โ”‚       โ”œโ”€โ”€ torch-jax-tf.tex
โ”‚       โ”œโ”€โ”€ ray.tex
โ”‚       โ”œโ”€โ”€ lora.tex
โ”‚       โ”œโ”€โ”€ vllm.tex
โ”‚       โ”œโ”€โ”€ deepspeed.tex
โ”‚       โ”œโ”€โ”€ sft.tex
โ”‚       โ””โ”€โ”€ conclusion.tex
โ”‚
โ”œโ”€โ”€ slides/                         # Presentation materials
โ”‚   โ”œโ”€โ”€ ray_train.pdf
โ”‚   โ””โ”€โ”€ verl_tutorial.pdf
โ”‚
โ”œโ”€โ”€ README.md                       # This file
โ””โ”€โ”€ CLEANUP_PLAN.md                 # Development roadmap

๐Ÿ’ป Installation

System Requirements

  • OS: Linux (Ubuntu 20.04+), macOS (11+), or Windows (WSL2)
  • RAM: 16GB+ (32GB recommended for large models)
  • GPU: NVIDIA GPU with 8GB+ VRAM (optional but recommended)
  • Storage: 50GB+ free space (for models and datasets)

Environment Setup

We recommend using Conda for environment management:

# Install Miniconda (if not already installed)
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh

# Create a base environment
conda create -n fullstack-ai python=3.10
conda activate fullstack-ai

# Install common dependencies
pip install torch torchvision torchaudio
pip install transformers accelerate datasets
pip install jupyter jupyterlab ipython
pip install numpy pandas matplotlib seaborn scikit-learn

Module-Specific Installation

Each MWE folder contains its own README.md with specific installation instructions. For example:

# For vLLM tutorial
cd MWEs/vllm+deepspeed
pip install vllm
jupyter notebook vllm_sections_1_4.ipynb

# For LoRA tutorial
cd MWEs/LoRA_tutorials
pip install scanpy leidenalg
jupyter notebook lora_single_cell_demo_clean.ipynb

# For VERL tutorial
cd MWEs/verl
# Follow containerized setup in README.md

๐ŸŽฎ Usage

Running Jupyter Notebooks

# Start Jupyter
jupyter notebook

# Or use JupyterLab
jupyter lab

# Access via browser at http://localhost:8888

Running Python Scripts

# Example: Ray training
cd MWEs/ray_train
python train_cifar.py

# Example: VERL evaluation
cd MWEs/verl
python evaluate_gsm8k.py --model_path <path> --data_path <path>

Using HPC Clusters

# Example SLURM job submission
cd MWEs/verl
sbatch ppo_gsm8k.sh

๐Ÿ“š Resources

Official Documentation

Course Website

Papers


๐Ÿ“– Tutorial Paper

The complete tutorial paper is being developed in the overleaf/ directory. Current sections include:

  • โœ… Introduction
  • โœ… PyTorch, JAX, and TensorFlow Fundamentals
  • โœ… Ray: Distributed Training
  • โœ… LoRA: Parameter-Efficient Fine-Tuning
  • ๐Ÿšง vLLM: Efficient Inference
  • ๐Ÿšง DeepSpeed: Memory-Efficient Training
  • ๐Ÿšง SFT: Supervised Fine-Tuning
  • ๐Ÿšง Evaluation and Benchmarking
  • ๐Ÿšง Agentic Systems
  • โœ… Conclusion

Legend: โœ… = Complete, ๐Ÿšง = In Progress

To compile the tutorial paper (requires LaTeX):

cd overleaf
pdflatex tutorial.tex
bibtex tutorial
pdflatex tutorial.tex
pdflatex tutorial.tex

๐Ÿ“„ Citation

If you use these materials in your research or teaching, please cite:

@misc{fullstackai2025,
  title        = {Becoming Full-Stack AI Researchers: A Comprehensive Tutorial},
  author       = {Cui, Sasha and Mader, Alexander and Typaldos, George and Bai, Donglu and Kazdan, Josh and Hu, Xinyang and Wei, Jeffrey and Feng, Austin and Lin, Oliver and Zhu, Chris and Vishnempet, Shivkumar and Sun, Xingzhi and Le, Quan and Luo, Ping and Lafferty, John and Sekhon, Jasjeet},
  year         = {2025},
  institution  = {Yale University},
  howpublished = {\url{https://github.com/sashacui/full-stack-ai}},
  note         = {Fall 2025 Working Group}
}

Acknowledgments

Institutions

  • Wu Tsai Institute at Yale University - GPU resources and classroom space
  • Yale Department of Statistics & Data Science
  • Yale Department of Physics
  • Yale Department of Philosophy
  • Misha High Performance Computing Cluster

Contributors (Fall 2025 Working Group)

Session leads (by date)

23 Sept

  • Inference & APIs, Tools, MCP, Prompt Engineering โ€” Alexander Mader
  • Distributed Training (Ray, PyTorch vs JAX vs TensorFlow) โ€” George Typaldos, Sasha Cui

7 Oct

  • SFT (PEFT, Lightning) โ€” Donglu Bai
  • Pretraining and Model Collapse โ€” Josh Kazdan

21 Oct

  • Serving (vLLM) & Distributed Training (DeepSpeed) โ€” Xinyang Hu
  • Scaling Laws โ€” Alexander Mader

4 Nov

  • Robotics (OpenVLA, RoboSuite, RoboVerse, LeRobot) โ€” Jeffrey Wei, Austin Feng, Oliver Lin
  • Model Evaluation, Benchmarking, RLHF, RLAIF (lm-eval) โ€” Chris Zhu

18 Nov

  • Agents (LangChain, ReAct workflows) โ€” Shivkumar Vishnempet, Xinyang Hu
  • Alignment and Interpretability โ€” Oliver Lin

2 Dec

  • RL (VERL, Q-function Monte Carlo), Containers (Docker, Apptainer) โ€” Xingzhi Sun, Quan Le, Donglu Bai
  • Jailbreaking โ€” Josh Kazdan

Advisors & Supporters

We thank Ping Luo, John Lafferty, Linjun Zhang, Anurag Kashyap, Theo Saarinen, and Yuxuan Zhu for helpful comments and suggestions.


๐Ÿ“ž Contact


About

Fall 2025 Working Group on Becoming Full-Stack AI Researchers

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 8