38 runnable notebooks for learning Hugging Face from Trainer to GRPO by removing the abstractions

I’ve been building a learning repository around a simple idea:

don’t just learn how to call Hugging Face APIs — progressively remove the abstractions until you understand what they are doing.

The repo now contains 38 runnable notebooks covering a path from the core Hugging Face stack into fine-tuning, PEFT, reasoning/RL, and end-to-end project work.

Some of the parts I think are most useful:

  • transformers, datasets, tokenizers, and Trainer
  • the same fine-tuning workflow written with both Trainer and a manual PyTorch loop
  • WordPiece implemented from scratch
  • Unigram implemented from scratch
  • FAISS semantic search
  • LoRA and supervised fine-tuning
  • GRPO implemented from first principles before moving to GRPOTrainer
  • trl, Unsloth, and vLLM experiments
  • Gradio + Hugging Face Hub workflows
  • a Romanian XQuAD project comparing monolingual and multilingual BERT, including a corrected article-level held-out evaluation

The progression is roughly:

high-level API → inspect the abstraction → rebuild the important parts → use the higher-level tooling again with a better mental model

Repository:

I’d especially appreciate feedback from people working with Hugging Face, LLM fine-tuning, tokenization, or RL.

I’m particularly interested in whether the GRPO-from-scratch and Romanian QA evaluation sections explain the underlying ideas clearly enough, and whether there are important gaps in the learning path that would be worth adding.

If the repository is useful to you, a GitHub star is appreciated too, but technical feedback is even more useful.

1 Like