[ writing ]

Writing on AI, RAG and building with LLMs

Pieces written for Nanonets — linked out to the originals.

Best LLM APIs for Document Data Extraction

A hands-on comparison of OpenAI, Gemini, Claude and Nanonets for pulling structured data out of documents — invoices, medical records, multipage PDFs and handwriting included. Covers accuracy, pricing and which API fits which document type, based on real experiments rather than marketing claims.

Read on Nanonets ↗

What is Retrieval Augmented Generation (RAG)?

A plain-language walkthrough of how RAG lets language models pull in outside information before answering, instead of relying only on what they were trained on. A good starting point if you've heard the term and want the actual mechanics.

Read on Nanonets ↗

What are Large Language Models (LLMs)?

A grounded introduction to what LLMs actually are and how they generate language, without the hype. Useful if you're trying to figure out whether an LLM belongs in your product at all.

Read on Nanonets ↗

Building a Retrieval-Augmented Generation (RAG) App

A hands-on walkthrough of building a RAG pipeline for financial document analysis, covering both the indexing and querying stages. More implementation detail than the conceptual piece above.

Read on Nanonets ↗

RAG for Smarter AI Workflows

Where RAG fits inside a broader automated business workflow, rather than as a standalone question-answering feature.

Read on Nanonets ↗

Prompt Engineering: 8 Advanced Techniques for Better AI Results

Eight concrete techniques for getting more reliable output out of an LLM, from few-shot examples to structured prompting.

Read on Nanonets ↗

What Is LlamaIndex and How Does It Work?

An explainer on LlamaIndex and how it bridges your own data with an LLM through indexing and querying.

Read on Nanonets ↗