Skip to content

Prompt Engineering

This chapter exists to turn scattered video conversations into a working discipline. After exploring it, you will be able to craft structured prompts and custom GPT-based workflows that reliably steer AI models toward a desired outcome — and you will understand why the practice is growing more important, not less, as models improve. The material synthesizes five conversations: Jared Zoneraich of PromptLayer, Michael Taylor of Rally, Notion AI research engineer Linus Lee, Grimoire creator Nick Dobos, and OpenAI's Logan Kilpatrick building a custom GPT live. [^01a0f15b-05e8-7884-88e4-0649ae182ec0@120] [^01a0f15a-e590-7f2d-8b7d-8afcf1ca33f3@1638] [^01a0f15b-3407-78e4-9a1c-de04fa55d0bf@157] [^01a0f15b-0f45-768a-aaa6-624609a19a42@391] [^01a0f15b-4205-7a1e-b378-e85487326746@2171] Prompting as a discipline, not a trick Several guests converge on the same reframing: prompt engineering is the discipline of injecting domain knowledge into an AI system. Zoneraich frames it as a triangle of primitives — the prompt, the eval, and the dataset — where you can automate one but must still build the other two. [^01a0f15b-05e8-7884-88e4-0649ae182ec0@120] Because problems decompose into irreducible parts, there's never going to be a one prompt that rules it all: competing solutions coexist the way many math tutors coexisted pre-AI. [^01a0f15b-05e8-7884-88e4-0649ae182ec0@197] Taylor offers the complementary argument: the “prompt engineering is dead” prediction mistook the shrinking gap between intent and output for the death of the skill. But objectives are large, high-dimensional, and differ per person — detailing your objective is prompting. [^01a0f15a-e590-7f2d-8b7d-8afcf1ca33f3@1638] Engineers undersold prompting because they came from well-specified worlds; much of the real world is unspecified — you don't know what a good article is until you see it — and language models are the first tools that can handle the inexplicit by pointing at examples. [^01a0f15a-e590-7f2d-8b7d-8afcf1ca33f3@1740] [^01a0f15a-e590-7f2d-8b7d-8afcf1ca33f3@1816] Zoneraich's Parent Lab story makes this tangible: a prompt engineer with 15 years of non-technical teaching experience edits prompts and tests them live on her phone. When a parent asks how to discipline a child and the AI refuses (”I'm a language model trained by OpenAI. I don't support any discipline.“), she fixes that case without breaking the feeding-advice cases. [^01a0f15b-05e8-7884-88e4-0649ae182ec0@760] [^01a0f15b-05e8-7884-88e4-0649ae182ec0@816] Lee adds a vocabulary split worth internalizing: prompt engineering (shipped product prompts, heavily evaluated, robust to diverse inputs) versus prompt programming / scripting (the loose, iterative style you use in ChatGPT). [^01a0f15b-4205-7a1e-b378-e85487326746@2171] Dobos pushes the abstraction framing further: prompts sit atop binary → assembly → C/C++ → high-level languages → scripts as a new natural-language layer of programming. [^01a0f15b-0f45-768a-aaa6-624609a19a42@391] Evals: the loop that makes prompting reliable A prompt without an evaluation is a guess. Three complementary eval strategies appear across the videos. Backtest before you build The lowest-effort starting point: run your new prompt against your last thousand or ten thousand responses and see how much changes — via cosine similarity or by eyeballing diffs. The most information-dense signal is that it changed everything, which is what you don't want. With ground truth, anchor on real metrics and AB tests. [^01a0f15b-05e8-7884-88e4-0649ae182ec0@1791] Eval without ground truth For tasks like email summarization, dissect your own intuitive judgment into explicit heuristics — kill the ”This summary is about…“ preamble, fix markdown indentation — or handwrite the output you wished you'd gotten and extract principles from it. [^01a0f15b-05e8-7884-88e4-0649ae182ec0@2063] Taylor's workflow automates that derivation: give the model a good and a bad version, ask what differs, turn each difference into an evaluation criterion. [^01a0f15a-e590-7f2d-8b7d-8afcf1ca33f3@1042] LLM-as-judge done right LLMs are often better at judging tasks than performing them, [^01a0f15a-e590-7f2d-8b7d-8afcf1ca33f3@890] but holistic scales fail — everything comes back a generous 4/5. The fix: reduce each criterion to binary 0/1 and aggregate roughly 20 judges, which is far more stable on re-runs. Then score the judges themselves against known-good examples, checking false positives and false negatives. [^01a0f15a-e590-7f2d-8b7d-8afcf1ca33f3@955] Kilpatrick and Shipper demonstrate the same loop for custom GPTs without formal tooling: build something very basic, play through it, take notes on what went wrong, then feed the notes plus the instructions back and let the model revise. [^01a0f15b-3407-78e4-9a1c-de04fa55d0bf@4807] Playtesting surfaced a real gap: the model was always positive, so they had to add randomness (a dice roll via the code interpreter) to create stakes. [^01a0f15b-3407-78e4-9a1c-de04fa55d0bf@5912] One caution from Zoneraich: thumbs-up feedback can mislead — ”do you want the therapist that just gives the responses people give thumbs up to?“ Data loops alone hit a local minimum; the differentiation is the domain expertise you bake in, including your own latency-vs-quality trade-off. [^01a0f15b-05e8-7884-88e4-0649ae182ec0@917] Structuring prompts and custom GPT workflows Route, don't pile Instead of stacking everything into one giant prompt, Zoneraich recommends a workflow — a DAG/graph — that routes each request to a small prompt that does one thing really well. Discrete prompts are easier to test, easier to collaborate on, and fail less; the trade-off is flexibility, since one big prompt answers anything but isn't always right. Routing also doubles as a jailbreak mitigation — a sales bot's refund prompt can't be talked into issuing a million dollars. [^01a0f15b-05e8-7884-88e4-0649ae182ec0@1632] The leaked ChatGPT and Claude system prompts show the opposite failure: prompt debt, edge-case patches accreting into long run-on prompts that Zoneraich reads as overfitting to no specific use case. [^01a0f15b-05e8-7884-88e4-0649ae182ec0@2552] Custom GPTs: what they add A custom GPT is still inherently ChatGPT — no new raw capability — but the value comes from curation: verified authoritative sources plus a persona. [^01a0f15b-3407-78e4-9a1c-de04fa55d0bf@1058] No code is required; companies like Zapier publish wiring guides. [^01a0f15b-3407-78e4-9a1c-de04fa55d0bf@157] Techniques from the Allocator build: the GPT Builder quietly performs instruction engineering, rewriting casual prompts into formal structured instructions behind the scenes; [^01a0f15b-3407-78e4-9a1c-de04fa55d0bf@2198] invoking expert roles (”we need your expert knowledge of how to build extremely fun and engaging scenario-based games“) empowers the model to take initiative; [^01a0f15b-3407-78e4-9a1c-de04fa55d0bf@2639] and pasting revised instructions back requires asking for them as Markdown in a code block, or the numbered structure is lost. [^01a0f15b-3407-78e4-9a1c-de04fa55d0bf@3884] Packaging as prompt design Dobos builds structure directly into the prompt surface: custom-instruction hotkeys (like the Z command that compresses and downloads code), pre-built project templates that solve the blank canvas problem, and suggested follow-ups that keep chats from drifting into circular answers. [^01a0f15b-0f45-768a-aaa6-624609a19a42@1491] [^01a0f15b-0f45-768a-aaa6-624609a19a42@891] His method for writing system prompts is empirical: write a vague draft, then ask questions and test repeatedly. [^01a0f15b-0f45-768a-aaa6-624609a19a42@2068] Everyday prompting habits that work Lee's conversational habits translate directly: - Zero-shot, then iterate. He almost never writes few-shot prompts when chatting — write zero-shot, then ask follow-ups if the output misses. [^01a0f15b-4205-7a1e-b378-e85487326746@2212] - Start broad with rich context. Describe the whole problem and your goals; the more context the model has, the better its suggestions. [^01a0f15b-4205-7a1e-b378-e85487326746@2650] - Sample the distribution. Run the same prompt several times and pick what appears across runs — overlap reveals the strongest answers. [^01a0f15b-4205-7a1e-b378-e85487326746@2714] - Do your own last-mile filtering, and rewrite freely — asking for a redo is iteration, not impoliteness. [^01a0f15b-4205-7a1e-b378-e85487326746@2855] - Watch for over-steering. Mention one specific thing and an RLHF-tuned model over-indexes on it everywhere; Lee is ”always a little bit afraid of any kind of instructions over steering the model.“ [^01a0f15b-4205-7a1e-b378-e85487326746@2985] For single-turn product prompts, the advanced toolkit applies: chain of density (redraft summaries denser without growing longer) [^01a0f15b-4205-7a1e-b378-e85487326746@4019] and putting words in the model's mouth via fake prior chat history in the playground. [^01a0f15b-4205-7a1e-b378-e85487326746@4362] Taylor's rule-book pattern closes the loop: extract the difference between a draft and an expert rewrite into explicit criteria, and the next draft leaps — a junior writer improved dramatically after one o1-Pro comparison cycle. A strong style guide is a prompt, and prompts for people and AI are converging. [^01a0f15a-e590-7f2d-8b7d-8afcf1ca33f3@1455] - Prompting is injecting domain knowledge: prompt, eval, and dataset are three primitives you can't fully remove, and no single prompt rules a domain. [^01a0f15b-05e8-7884-88e4-0649ae182ec0@120] - Eval first, prompt second: backtest on old data, mine your own heuristics when there's no ground truth, and build ~20 binary 0/1 judges rather than trusting star ratings. [^01a0f15a-e590-7f2d-8b7d-8afcf1ca33f3@955] - Structure wins at scale: route requests to small single-purpose prompts in a workflow; watch for prompt debt in ever-growing system prompts. [^01a0f15b-05e8-7884-88e4-0649ae182ec0@1632] - Custom GPTs are curation, not new capability: verified sources plus persona, built through a playtest-and-revise loop. [^01a0f15b-3407-78e4-9a1c-de04fa55d0bf@1058] [^01a0f15b-3407-78e4-9a1c-de04fa55d0bf@4807] - Everyday habits: zero-shot then iterate, sample multiple outputs, keep context rich, filter the last mile yourself, and guard against over-steering. [^01a0f15b-4205-7a1e-b378-e85487326746@2714] By exploring these practices — treating your objective as the prompt, closing the loop with evals, and packaging structure into routers and custom GPTs — you can steer AI models toward the outcomes you actually want, instead of accepting whatever the first output happens to be. </bodyMdx>

Ready

Loading…

9 min read