Skip to main content


Welcome to this course on prompt engineering!

I like to think of prompt engineering (PE) as: How to talk to AI to get it to do what you want.

With many of the recent advances in artificial intelligence (AI), this has become a particularly important skill. This course focuses on applied PE techniques. Minimal knowledge of machine learning is expected. If you have no idea what any of this stuff means, read the Introduction in Basics.

The single most important part of this course is your feedback!​

If you have any questions, comments, or suggestions, please make an issue, email me at, or reach out over Discord/Twitter.

Even the smallest amount of feedback is very helpful!

Course philosophy​

Quick Iterations - Since new PE content is published almost daily, I will update this course frequently with short articles about new techniques. Let me know what you want to hear more about!

Part of this philosophy is error iteration. If you ever see something that you don't quite understand, even something small, that's on me. Please make an issue!

Focus on Practicality - I will focus on applied, practical techniques that you can use immediately for your applications.

Examples ASAP - I try to put examples in the articles as soon as possible, so you can get a feel for the techniques as soon as possible.

I'll philosophize more about this when I have time 😊

How to read​

It is not necessary to read all chapters in order. Read what interests you!

If you are a complete novice, read below then start with the Basics section. If not, starting with the Intermediate section may be more useful.

Articles are rated by difficulty, and are labeled with the following:

🟒 Very easy; no programming required

🟑 Easy; simple programming required, but no domain expertise

πŸ”΄ Medium; programming required, and some domain expertise to implement (e.g. computing log probs)

🟣 Hard; programming required, and robust domain expertise to implement (e.g. reinforcement learning approaches)

Note: even though for πŸ”΄πŸŸ£ problems domain expertise is helpful, usually you will still be able to understand the article.


Here is a quick summary of each chapter:

Basics: Intro to PE and simple PE techniques

Intermediate: Slightly more complicated PE techniques

Advanced Applications: Some very powerful, but more advanced applications of PE

Applied Prompting: Some complete walkthroughs of the PE process written by community members

Reliability: How to make LLMs more reliable

Images: PE for text to image models like DALLE and Stable Diffusion!

Prompt Injection: Hacking, but for PE

Prompting IDEs: Different PE tools

Prompt Tuning: Fine tune prompts with gradients