of automating a major variety of duties. Because the launch of ChatGPT in 2022, we have now seen increasingly AI merchandise available on the market using LLMs. Nonetheless, there are nonetheless a variety of enhancements that ought to be made in the best way we make the most of LLMs. Bettering your immediate with an LLM immediate improver and using cached tokens are, for instance, two easy strategies you may make the most of to vastly enhance the efficiency of your LLM software.
On this article, I’ll focus on a number of particular strategies you may apply to the best way you create and construction your prompts, which can scale back latency and value, and likewise improve the standard of your responses. The objective is to current you with these particular strategies, so you may instantly implement them into your personal LLM software.

Why it is best to optimize your immediate
In a variety of instances, you may need a immediate that works with a given LLM and yields ample outcomes. Nonetheless, in a variety of instances, you haven’t spent a lot time optimizing the immediate, which leaves a variety of potential on the desk.
I argue that utilizing the precise strategies I’ll current on this article, you may simply each enhance the standard of your responses and scale back prices with out a lot effort. Simply because a immediate and LLM work doesn’t imply it’s performing optimally, and in a variety of instances, you may see nice enhancements with little or no effort.
Particular strategies to optimize
On this part, I’ll cowl the precise strategies you may make the most of to optimize your prompts.
All the time maintain static content material early
The primary approach I’ll cowl is to all the time maintain static content material early in your immediate. With static content material, I consult with content material that is still the identical once you make a number of API calls.
The rationale it is best to maintain the static content material early is that every one the massive LLM suppliers, akin to Anthropic, Google, and OpenAI, make the most of cached tokens. Cached tokens are tokens which have already been processed in a earlier API request, and that may be processed cheaply and rapidly. It varies from supplier to supplier, however cached enter tokens are often priced round 10% of regular enter tokens.
Cached tokens are tokens which have already been processed in a earlier API request, and that may be processed cheaper and quicker than regular tokens
Meaning, should you ship in the identical immediate two instances in a row, the enter tokens of the second immediate will solely price 1/tenth the enter tokens of the primary immediate. This works as a result of the LLM suppliers cache the processing of those enter tokens, which makes processing your new request cheaper and quicker.
In apply, caching enter tokens is finished by retaining variables on the finish of the immediate.
For instance, if in case you have a protracted system immediate with a query that varies from request to request, it is best to do one thing like this:
immediate = f"""
{lengthy static system immediate}
{person immediate}
"""For instance:
immediate = f"""
You're a doc professional ...
It's best to all the time reply on this format ...
If a person asks about ... it is best to reply ...
{person query}
"""Right here we have now the static content material of the immediate first, earlier than we put the variable contents (the person query) final.
In some situations, you need to feed in doc contents. When you’re processing a variety of totally different paperwork, it is best to maintain the doc content material on the finish of the immediate:
# if processing totally different paperwork
immediate = f"""
{static system immediate}
{variable immediate instruction 1}
{doc content material}
{variable immediate instruction 2}
{person query}
"""Nonetheless, suppose you’re processing the identical paperwork a number of instances. In that case, you may make certain the tokens of the doc are additionally cached by guaranteeing no variables are put into the immediate beforehand:
# if processing the identical paperwork a number of instances
immediate = f"""
{static system immediate}
{doc content material} # maintain this earlier than any variable directions
{variable immediate instruction 1}
{variable immediate instruction 2}
{person query}
"""Observe that cached tokens are often solely activated if the primary 1024 tokens are the identical in two requests. For instance, in case your static system immediate within the above instance is shorter than 1024 tokens, you’ll not make the most of any cached tokens.
# do NOT do that
immediate = f"""
{variable content material} < --- this removes all utilization of cached tokens
{static system immediate}
{doc content material}
{variable immediate instruction 1}
{variable immediate instruction 2}
{person query}
"""Your prompts ought to all the time be constructed up with probably the most static contents first (the content material various the least from request to request), the probably the most dynamic content material (the content material various probably the most from request to request)
- When you’ve got a protracted system and person immediate with none variables, it is best to maintain that first, and add the variables on the finish of the immediate
- In case you are fetching textual content from paperwork, for instance, and processing the identical doc twice, it is best to
May very well be doc contents, or if in case you have a protracted immediate -> make use of caching
Query on the finish
One other approach it is best to make the most of to enhance LLM efficiency is to all the time put the person query on the finish of your immediate. Ideally, you set up it so you’ve got your system immediate containing all the final directions, and the person immediate merely consists of solely the person query, akin to beneath:
system_prompt = ""
user_prompt = f"{user_question}" In Anthropic’s immediate engineering docs, the state that features the person immediate on the finish can enhance efficiency by as much as 30%, particularly if you’re utilizing lengthy contexts. Together with the query ultimately makes it clearer to the mannequin which activity it’s attempting to attain, and can, in lots of instances, result in higher outcomes.
Utilizing a immediate optimizer
A variety of instances, when people write prompts, they change into messy, inconsistent, embody redundant content material, and lack construction. Thus, it is best to all the time feed your immediate by way of a immediate optimizer.
The best immediate optimizer you need to use is to immediate an LLM to enhance this immediate {immediate}, and it’ll give you a extra structured immediate, with much less redundant content material, and so forth.
A fair higher strategy, nonetheless, is to make use of a particular immediate optimizer, akin to one you’ll find in OpenAI’s or Anthropic’s consoles. These optimizers are LLMs particularly prompted and created to optimize your prompts, and can often yield higher outcomes. Moreover, it is best to make sure that to incorporate:
- Particulars concerning the activity you’re attempting to attain
- Examples of duties the immediate succeeded at, and the enter and output
- Instance of duties the immediate failed at, with the enter and output
Offering this extra data will often yield manner higher outcomes, and also you’ll find yourself with a a lot better immediate. In lots of instances, you’ll solely spend round 10-Quarter-hour and find yourself with a far more performant immediate. This makes utilizing a immediate optimizer one of many lowest effort approaches to enhancing LLM efficiency.
Benchmark LLMs
The LLM you employ can even considerably impression the efficiency of your LLM software. Totally different LLMs are good at totally different duties, so you have to check out the totally different LLMs in your particular software space. I like to recommend at the least establishing entry to the largest LLM suppliers like Google Gemini, OpenAI, and Anthropic. Setting this up is sort of easy, and switching your LLM supplier takes a matter of minutes if you have already got credentials arrange. Moreover, you may take into account testing open-source LLMs as nicely, although they often require extra effort.
You now must arrange a particular benchmark for the duty you’re attempting to attain, and see which LLM works finest. Moreover, it is best to frequently test mannequin efficiency, because the massive LLM suppliers often improve their fashions, with out essentially popping out with a brand new model. It’s best to, in fact, even be able to check out any new fashions popping out from the big LLM suppliers.
Conclusion
On this article, I’ve lined 4 totally different strategies you may make the most of to enhance the efficiency of your LLM software. I mentioned using cached tokens, having the query on the finish of the immediate, utilizing immediate optimizers, and creating particular LLM benchmarks. These are all comparatively easy to arrange and do, and might result in a major efficiency improve. I imagine many related and easy strategies exist, and it is best to all the time attempt to be looking out for them. These matters are often described in several weblog posts, the place Anthropic is without doubt one of the blogs that has helped me enhance LLM efficiency probably the most.
👉 Discover me on socials:
📩 Subscribe to my e-newsletter
🧑💻 Get in contact
✍️ Medium
You may also learn a few of my different articles:
 
			 
		     
                                
















