is the science of offering LLMs with the right context to maximise efficiency. If you work with LLMs, you sometimes create a system immediate, asking the LLM to carry out a sure process. Nevertheless, when working with LLMs from a programmer’s perspective, there are extra components to think about. You must decide what different knowledge you’ll be able to feed your LLM to enhance its means to carry out the duty you requested it to do.
On this article, I’ll focus on the science of context engineering and how one can apply context engineering methods to enhance your LLM’s efficiency.

You can even learn my articles on Reliability for LLM Functions and Doc QA utilizing Multimodal LLMs
Desk of Contents
Definition
Earlier than I begin, it’s essential to outline the time period context engineering. Context engineering is actually the science of deciding what to feed into your LLM. This could, for instance, be:
- The system immediate, which tells the LLM learn how to act
- Doc knowledge fetch utilizing RAG vector search
- Few-shot examples
- Instruments
The closest earlier description of this has been the time period immediate engineering. Nevertheless, immediate engineering is a much less descriptive time period, contemplating it implies solely altering the system immediate you’re feeding to the LLM. To get most efficiency out of your LLM, it’s a must to think about all of the context you’re feeding into it, not solely the system immediate.
Motivation
My preliminary motivation for this text got here from studying this Tweet by Andrej Karpathy.
I actually agreed with the purpose Andrej made on this tweet. Immediate engineering is certainly an essential science when working with LLMs. Nevertheless, immediate engineering doesn’t cowl the whole lot we enter into LLMs. Along with the system immediate you write, you even have to think about components corresponding to:
- Which knowledge must you insert into your immediate
- How do you fetch that knowledge
- The way to solely present related info to the LLM
- And so on.
I’ll focus on all of those factors all through this text.
API vs Console utilization
One essential distinction to make clear is whether or not you’re utilizing the LLMs from an API (calling it with code), or by way of the console (for instance, by way of the ChatGPT web site or software). Context engineering is certainly essential when working with LLMs via the console; nonetheless, my focus on this article might be on API utilization. The rationale for that is that when utilizing an API, you have got extra choices for dynamically altering the context you’re feeding the LLM. For instance, you are able to do RAG, the place you first carry out a vector search, and solely feed the LLM a very powerful bits of knowledge, fairly than all the database.
These dynamic modifications will not be out there in the identical approach when interacting with LLMs via the console; thus, I’ll deal with utilizing LLMs via an API.
Context engineering methods
Zero-shot prompting
Zero-shot prompting is the baseline for context engineering. Doing a process zero-shot means the LLM is performing a process it hasn’t seen earlier than. You might be basically solely offering a process description as context for the LLM. For instance, offering an LLM with an extended textual content and asking it to categorise the textual content into class A or B, in response to some definition of the courses. The context (immediate) you’re feeding the LLM might look one thing like this:
You might be an professional textual content classifier, and tasked with classifying texts into
class A or class B.
- Class A: The textual content comprises a optimistic sentiment
- Class B: The subsequent comprises a unfavourable sentiment
Classify the textual content: {textual content}
Relying on the duty, this might work very nicely. LLMs are generalists and are in a position to carry out simplest text-based duties. Classifying a textual content into certainly one of two courses will normally be a easy process, and zero-shot prompting will thus normally work fairly nicely.
Few-shot prompting
This infographic highlights learn how to carry out few-shot prompting:

The follow-up from zero-shot prompting is few-shot prompting. With few-shot prompting, you present the LLM with a immediate much like the one above, however you additionally present it with examples of the duty it’s going to carry out. This added context will assist the LLM enhance at performing the duty. Following up on the immediate above, a few-shot immediate might appear to be:
You might be an professional textual content classifier, and tasked with classifying texts into
class A or class B.
- Class A: The textual content comprises a optimistic sentiment
- Class B: The subsequent comprises a unfavourable sentiment
{textual content 1} -> Class A
{textual content 2} -> class B
Classify the textual content: {textual content}
You may see I’ve supplied the mannequin some examples wrapped in
Few-shot prompting works nicely since you are offering the mannequin with examples of the duty you’re asking it to carry out. This normally will increase efficiency.
You may think about this works nicely on people as nicely. Should you ask a human a process they’ve by no means executed earlier than, simply by describing the duty, they may carry out decently (in fact, relying on the problem of the duty). Nevertheless, when you additionally present the human with examples, their efficiency will normally improve.
General, I discover it helpful to consider LLM prompts as if I’m asking a human to carry out a process. Think about as a substitute of prompting an LLM, you merely present the textual content to a human, and also you ask your self the query:
Given this immediate, and no different context, will the human have the ability to carry out the duty?
If the reply is not any, you must work on clarifying and bettering your immediate.
I additionally wish to point out dynamic few-shot prompting, contemplating it’s a way I’ve had a number of success with. Historically, with few-shot prompting, you have got a set record of examples you feed into each immediate. Nevertheless, you’ll be able to usually obtain greater efficiency utilizing dynamic few-shot prompting.
Dynamic few-shot prompting means deciding on the few-shot examples dynamically when creating the immediate for a process. For instance, in case you are requested to categorise a textual content into courses A and B, and you have already got a listing of 200 texts and their corresponding labels. You may then carry out a similarity search between the brand new textual content you’re classifying and the instance texts you have already got. Persevering with, you’ll be able to measure the vector similarity between the texts and solely select essentially the most comparable texts (out of the 200 texts) to feed into your immediate as context. This manner, you’re offering the mannequin with extra related examples of learn how to carry out the duty.
RAG
Retrieval augmented technology is a widely known method for growing the data of LLMs. Assume you have already got a database consisting of hundreds of paperwork. You now obtain a query from a consumer, and should reply it, given the data inside your database.
Sadly, you’ll be able to’t feed all the database into the LLM. Although we’ve got LLMs corresponding to Llama 4 Scout with a 10-million context size window, databases are normally a lot bigger. You subsequently have to search out essentially the most related info within the database to feed into your LLM. RAG does this equally to dynamic few-shot prompting:
- Carry out a vector search
- Discover essentially the most comparable paperwork to the consumer query (most comparable paperwork are assumed to be most related)
- Ask the LLM to reply the query, given essentially the most comparable paperwork
By performing RAG, you’re doing context engineering by solely offering the LLM with essentially the most related knowledge for performing its process. To enhance the efficiency of the LLM, you’ll be able to work on the context engineering by bettering your RAG search. This could, for instance, be executed by bettering the search to search out solely essentially the most related paperwork.
You may learn extra about RAG in my article about growing a RAG system to your private knowledge:
Instruments (MCP)
You can even present the LLM with instruments to name, which is a crucial a part of context engineering, particularly now that we see the rise of AI brokers. Device calling immediately is commonly executed utilizing Mannequin Context Protocol (MCP), an idea began by Anthropic.
AI brokers are LLMs able to calling instruments and thus performing actions. An instance of this could possibly be a climate agent. Should you ask an LLM with out entry to instruments in regards to the climate in New York, it won’t be able to supply an correct response. The rationale for that is naturally that details about the climate must be fetched in actual time. To do that, you’ll be able to, for instance, give the LLM a instrument corresponding to:
@instrument
def get_weather(metropolis):
# code to retrieve the present climate for a metropolis
return climate
Should you give the LLM entry to this instrument and ask it in regards to the climate, it could possibly then seek for the climate for a metropolis and offer you an correct response.
Offering instruments for LLMs is extremely essential, because it considerably enhances the talents of the LLM. Different examples of instruments are:
- Search the web
- A calculator
- Search by way of Twitter API
Matters to think about
On this part, I make a number of notes on what you must think about when creating the context to feed into your LLM
Utilization of context size
The context size of an LLM is a crucial consideration. As of July 2025, you’ll be able to feed most frontier mannequin LLMs with over 100,000 enter tokens. This offers you with a number of choices for learn how to make the most of this context. You must think about the tradeoff between:
- Together with a number of info in a immediate, thus risking a few of the info getting misplaced within the context
- Lacking some essential info within the immediate, thus risking the LLM not having the required context to carry out a selected process
Normally, the one approach to determine the steadiness, is to check your LLMs efficiency. For instance with a classificaition process, you’ll be able to examine the accuracy, given totally different prompts.
If I uncover the context to be too lengthy for the LLM to work successfully, I typically break up a process into a number of prompts. For instance, having one immediate summarize a textual content, and a second immediate classifying the textual content abstract. This will help the LLM make the most of its context successfully and thus improve efficiency.
Moreover, offering an excessive amount of context to the mannequin can have a big draw back, as I describe within the subsequent part:
Context rot
Final week, I learn an attention-grabbing article about context rot. The article was about the truth that growing the context size lowers LLM efficiency, although the duty problem doesn’t improve. This means that:
Offering an LLM irrelevant info, will lower its means to carry out duties succesfully, even when process problem doesn’t improve
The purpose right here is actually that you must solely present related info to your LLM. Offering different info decreases LLM efficiency (i.e., efficiency will not be impartial to enter size)
Conclusion
On this article, I’ve mentioned the subject of context engineering, which is the method of offering an LLM with the correct context to carry out its process successfully. There are a number of methods you’ll be able to make the most of to refill the context, corresponding to few-shot prompting, RAG, and instruments. These are all highly effective methods you should utilize to considerably enhance an LLM’s means to carry out a process successfully. Moreover, you even have to think about the truth that offering an LLM with an excessive amount of context additionally has downsides. Rising the variety of enter tokens reduces efficiency, as you would examine within the article about context rot.
👉 Comply with me on socials:
🧑💻 Get in contact
🔗 LinkedIn
🐦 X / Twitter
✍️ Medium
🧵 Threads