Key differences:
nanoGPT: - Minimal reference implementation (~300 lines) - Educational code for understanding transformers - Requires manual setup and configuration - Great for learning the internals
create-llm: - Production-ready scaffolding tool (like create-next-app) - One command: npx create-llm → complete project ready - Multiple templates (nano/tiny/small/base) - Built-in validation (warns about overfitting, vocab mismatches) - Includes tokenizer training, evaluation, deployment tools - Auto-detects issues before you waste GPU time
Think of it as: nanoGPT is the reference, create-llm is the framework.
nanoGPT teaches you HOW it works. create-llm lets you BUILD with what you learned.
You can actually use nanoGPT's architecture in create-llm templates - they're complementary tools!
As a side note, without looking it up, on your device, what is the process for typing an emdash?
LLM's are just the next evolution that assist you with coding tasks... similar to w3schools => blogs => stackoverflow, and now => llm's.
There's absolutely nothing wrong with using them. The problem is people who use them without reviewing their outputs.
> problem is people who use without reviewing outputs
the problem here is there is no reason to beleive OP reviewed or even fully understands the code. There is plenty of evidence of OP lying.
All in all best case scenario is we have a codebase made by someone dishonest and incompetant, and at worst it is plausible there is an intentional effort to obfuscated the codebase in an effort to slip people malware.
the entire thing stinks, and cannot be trusted. It deserves (oweing the dishonesty) a rather strong negative response and nothing more.
Karpathy clearly said that it wasn't vibe coded. Apparently it was more time consuming to fix gpt bugs than to do it by himself.