Archive

1290 posts · Page 35 of 108. ← Blog

Pratik Dhanave · ·6 min read

The Fine-Tuning Spectrum

"Fine-tuning" is not one thing — it's a family of techniques that range from cheaply nudging a model's output format to expensively rebuilding its knowledge base. Confusing them leads to using a sledgehammer for a thumbtack. Knowing where your task sits on the spectrum tells you which technique, how much data, and how much compute you actually need.

'Fine-tuning' is not one thing — it's a family from cheaply nudging output format to expensively rebuilding a model's knowledge. Knowing where your task sits on the spectrum tells you which technique, how much data, and how much compute you actually need.

Pratik Dhanave · ·6 min read

Distance Metrics and the Curse of Dimensionality

"Nearest" is meaningless until you define "distance," and the metric you choose — cosine, dot product, or Euclidean — must match how your embedding model was trained or your search is quietly wrong. And in high dimensions, distance itself behaves so strangely that the naive intuitions you'd bring from 2D geometry actively mislead you.

'Nearest' is meaningless until you define 'distance,' and the metric you choose must match how your embedding model was trained or your search is quietly wrong — and in high dimensions, distance itself behaves so strangely that 2D intuitions mislead you.

Pratik Dhanave · ·6 min read

The Constraints of the Edge

A phone is not a small server — it's a fundamentally different environment with four hard limits a data center never imposes: a tight memory budget, modest and heterogeneous compute, a battery that your model drains, and a thermal ceiling that throttles you when you push it. Every on-device AI decision is a negotiation with these four.

A phone is not a small server — it's a different environment with four hard limits a data center never imposes: a tight memory budget, modest heterogeneous compute, a battery your model drains, and a thermal ceiling that throttles you.

Pratik Dhanave · ·6 min read

The KV Cache

The KV cache is the optimization that makes LLM generation fast enough to be practical — and the memory hog that makes it expensive. Almost every hard problem in LLM serving, from how many users you can batch to why long contexts cost so much, traces back to this one data structure.

The KV cache is the optimization that makes LLM generation fast enough to be practical — and the memory hog that makes it expensive. Almost every hard problem in serving traces back to this one data structure.

Pratik Dhanave · ·6 min read

B-Trees vs LSM-Trees

Almost every database on earth stores its data in one of two structures: a B-tree that updates in place, or an LSM-tree that only ever appends. This one choice ripples through everything — read speed, write speed, space usage, and latency predictability — so knowing which your database uses tells you more about its behavior than almost anything else.

Almost every database stores data in one of two structures: a B-tree that updates in place, or an LSM-tree that only appends. This one choice ripples through read speed, write speed, space, and latency predictability.

Pratik Dhanave · ·5 min read

Consistency Models

A consistency model is a contract between a distributed system and its users about what a read is allowed to return. It sounds abstract until you realize that every replication bug, every "why did my write disappear?" incident, and every heated architecture debate is really an argument about which model you're entitled to.

A consistency model is a contract about what a read is allowed to return. Every replication bug and 'why did my write disappear?' incident is really an argument about which model you're entitled to.

Pratik Dhanave · ·4 min read

Documents and Nodes

Everything LlamaIndex retrieves is a Node, and the quality of your Nodes — how you load your data and how you chunk it — sets the ceiling on everything downstream, no matter how good your model or retriever is.

Everything LlamaIndex retrieves is a Node, and the quality of your Nodes — how you load your data and how you chunk it — sets the ceiling on everything downstream, no matter how good your model or retriever is.

Pratik Dhanave · ·5 min read

Agents: Role, Goal, and Backstory

A CrewAI agent is defined less by code than by three sentences — its role, goal, and backstory — and getting those right is the highest-leverage thing you do, because they are the prompt that shapes everything the agent does.

A CrewAI agent is defined less by code than by three sentences — its role, goal, and backstory — and getting those right is the highest-leverage thing you do, because they are the prompt that shapes everything the agent does.

Pratik Dhanave · ·5 min read

How to Make AI Architecture Decisions

Most AI architecture debates are settled by hype, familiarity, or whoever spoke last — this series settles them by requirements and trade-offs, starting with the meta-framework that every specific decision reduces to.

Most AI architecture debates are settled by hype or familiarity; this series settles them by requirements and trade-offs, starting with the meta-framework every specific decision reduces to.

Pratik Dhanave · ·6 min read

The Log: Kafka's Core Abstraction

Almost everything Kafka does follows from one deceptively simple idea — an append-only, ordered, durable log — and once that clicks, topics, partitions, and offsets stop being jargon and become obvious.

Almost everything Kafka does follows from one deceptively simple idea — an append-only, ordered, durable log — and once that clicks, topics, partitions, and offsets stop being jargon and become obvious.

Pratik Dhanave · ·5 min read

Automated Design of Agentic Systems

The most striking frontier result is a meta-agent that writes agents — defining them as code, testing them, archiving the good ones, and inventing architectures that outperform the best humans hand-built.

The most striking frontier result is a meta-agent that writes agents — defining them as code, testing them, archiving the good ones, and inventing architectures that outperform the best humans hand-built.

Pratik Dhanave · ·5 min read

Modules: Strategies for Calling a Model

If a signature says what a step does, a module says how to get the model to do it — and because modules are parameterized, swapping one for another changes the reasoning strategy without touching your intent.

If a signature says what a step does, a module says how to get the model to do it — Predict, ChainOfThought, ReAct — and because modules are parameterized, swapping one changes the strategy without touching your intent.