AI & Machine Learning

I Spent 6 Months Using LLMs Without Understanding Them, Here's What Changed

A

Adil Sher

Author

Aug 20, 2026
4 min read
0 views
I Spent 6 Months Using LLMs Without Understanding Them, Here's What Changed

I remember the exact moment I felt like a fraud. I was in a code review, confidently explaining how I'd integrated GPT into our Django app using the OpenAI API, when a junior dev asked: "But how does it actually know what to do?" I stammered something about "neural networks" and "training data" and moved on. The truth? I had no idea. I could call APIs and parse responses, but I couldn't explain the fundamental architecture that made any of it work.

That gap between "I can use this tool" and "I understand how this tool works" has been bothering me for months. So I finally sat down to trace the entire lineage, from the ground up, and I realized I'd been thinking about LLMs all wrong.

Everything Starts With Pattern Recognition

Here's the mental model I was missing: a neural network is just a sophisticated pattern-matching machine. You feed it examples, thousands of them, and it learns to recognize relationships in that data. No explicit rules. No hardcoded logic. Just weights and biases getting adjusted until the network can predict something useful.

When I think of my own code, I debug by looking for patterns in logs. A neural network does something eerily similar, except it's learned those patterns automatically. The difference scales with architecture depth, and that's where deep learning enters the picture. More layers mean more opportunity to learn increasingly abstract patterns.

For language specifically, this is where things get interesting. Context is everything. The word "it" in a sentence could refer to three different nouns, and a shallow model would struggle. You need architecture designed specifically for understanding relationships between distant words.

The Transformer Changed Everything (And I Finally Get Why)

Before 2017, RNNs and LSTMs were the standard for language tasks. They processed sequences step-by-step, left to right. Conceptually simple, but practically limiting, you can't parallelize well if every token depends on processing the previous one first.

The Transformer paper introduced something different: attention. Instead of rigid sequential processing, a token could "look at" all other tokens in a sequence and decide which ones matter for its current context.

This is the piece that shifted my understanding. Attention isn't some bolt-on feature. It's the core mechanism. It's asking: "Which tokens are relevant right now?" and dynamically weighting them. That's simultaneously elegant and computationally powerful, it parallelizes beautifully, which is why GPUs can train these models efficiently.

Why Different Models Aren't Just "Different GPT Versions"

I'd lumped BERT, GPT, and T5 into a mental bucket labeled "Transformers," assuming they were just tweaks on the same thing. Wrong.

The original Transformer has two parts: an encoder (processes input) and a decoder (generates output). Researchers realized you don't always need both. BERT uses only the encoder, it's bidirectional, meant for understanding tasks. GPT uses only the decoder, it's unidirectional, designed for generation. T5 keeps both for sequence-to-sequence work.

Understanding this is crucial for production decisions. If I'm building something that needs to classify text or extract meaning, I want an encoder-only model. If I need to generate content, I need a decoder-only model. That's not just theoretical, it affects model size, latency, and what kind of fine-tuning actually makes sense.

My Take: This Changes How I Approach LLM Integration

Honestly, this mental model shift is making me reconsider some architectural decisions. We have RAG pipelines in production, and I'd been thinking about them as black boxes, feed in context, get out response. But now I understand that the LLM is only as good as the attention mechanism's ability to weigh that context appropriately.

That means the embedding quality, the chunk size, the retrieval strategy, these aren't separate concerns from the model itself. They directly impact what the model's attention mechanism can even see.

I'm also less afraid of exploring smaller, encoder-only models for classification tasks in our internal tools. I've been defaulting to massive APIs when a fine-tuned BERT variant might be faster, cheaper, and perfectly adequate.

What I'm Wondering Now

If attention is fundamentally about asking "which tokens matter," and if modern LLMs are just scaling up that mechanism, then what's the actual limit? Are we approaching it? And more practically for my work, how do I measure whether my application is actually using the model's capabilities effectively, or just getting lucky?

Source: This post was inspired by "From Neural Networks to LLMs: The Mental Model I Was Missing" by Dev.to. Read the original article

Share this article

Written by Adil Sher

Full stack developer building high-traffic platforms, AI services, and custom web applications. Explore my portfolio, learn about my background, or get in touch.

Related Articles

Stop Treating LLMs Like Magic: Here's What Actually Happens Inside
AI & Machine Learning Aug 18

Stop Treating LLMs Like Magic: Here's What Actually Happens Inside

I spent three hours debugging why Claude was giving inconsistent responses to structurally identical prompts last month. Same input, different outputs. My first instinct? Blame randomness. My second instinct? Blame the API. My actual problem? I had no mental model for what was ac...

We're Building on Quicksand: Why AI Watermarking Actually Matters to You
AI & Machine Learning Aug 17

We're Building on Quicksand: Why AI Watermarking Actually Matters to You

A few months back, I was integrating Claude's API into a client project, a content generation platform that helps teams draft marketing copy. Everything was working smoothly until my client asked a question that stuck with me: "How do we actually prove this content was AI-generate...