Benchmark Series — Week 1 Walk-Through

Six notebooks, one per developer experience dimension. Click any benchmark to expand the raw numbers and key finding.

Click any card to expand details.

Notebook #1
Cold Start — Import Time
How fast is the framework available after import? Measured on a cold Python process with no cached bytecode.
Winner: LangChain
0.16 s
LangChain
0.27 s
SynapseKit
1.40 s
LlamaIndex

LangChain wins via lazy loading — most imports are deferred until first use. SynapseKit is 0.11 s slower (eager imports). LlamaIndex is 8× slower than LangChain at cold start.

Notebook #2
Dependency Hell — Transitive Package Count
What does pip install <framework> drag in? Counted all transitive dependencies including indirect ones.
Winner: SynapseKit
2
SynapseKit
32
LangChain
60
LlamaIndex

SynapseKit: numpy + rank-bm25. LangChain: 32 packages. LlamaIndex: 60. In Docker or Lambda, the difference is minutes vs seconds on cold install.

Notebook #3
Hello RAG — Lines of Code
The same pipeline — load, chunk, embed, retrieve, generate — measured by lines of application code required.
Winner: SynapseKit
4
SynapseKit
9
LlamaIndex
13
LangChain

The gap is boilerplate — document wrapping, splitter config, vector store init — that higher-abstraction frameworks handle internally. 4 lines = 9 abstracted decisions.

Notebook #4
Memory Footprint — Idle RSS (MB)
RAM consumed at import, before any model or index is loaded. Measured via psutil.Process().memory_info().rss.
Winner: SynapseKit
38 MB
SynapseKit
72 MB
LangChain
98 MB
LlamaIndex

All three converge once an embedding model is loaded — the model dominates. But the floor matters in serverless deployments billed by memory allocation.

Notebook #5
Provider Switching — Lines Changed per Swap
How many files and lines change to swap from OpenAI to Groq, Anthropic, Mistral, and Ollama?
Winner: SynapseKit
1
SynapseKit
3
LangChain
3
LlamaIndex

SynapseKit: change provider="groq". LangChain/LlamaIndex: pip install a new package + add import + change constructor. 3 changes × 19 providers = significant ongoing friction.

Notebook #6
Error Messages — Clarity Score (0–5)
Five common mistakes triggered across all three frameworks. Scored on clarity, actionability, and early detection.
Winner: SynapseKit
3.47
SynapseKit
3.20
LangChain
2.73
LlamaIndex

SynapseKit's bad-provider error lists all 14 valid providers in the message. LlamaIndex's silent failure at init — no error until first query after full indexing — is the worst pattern of the week.

www.engineersofai.com · AI Letters #16