Communicating Effectively – Crafting Prompts
Far from lines of code and beyond the keywords of search engines, communication with generative AI occurs through a conversational agent, to which a clearly articulated request (i.e., a prompt) must be submitted. The prompt experience is designed to be simple and intuitive. Prompts are intended to establish a clear relationship between the user and the AI.
A computer engineer is no more capable than a novice of generating high-quality content if they cannot clearly convey their expectations to the AI. It is comparable to describing a scene to a visually impaired person: everything depends on how it is formulated. What is not explicitly stated is not considered, and common sense alone is insufficient to bridge the gap between expectations and available information.
The technique of prompting (i.e., prompt engineering) is therefore a skill like any other, involving a number of technical and/or creative considerations. Most importantly, it requires having a clear idea of what one wants to achieve. There are tools available to assist with prompt writing.
Just as it is not necessary to be a mechanic to drive a car, one can use a generative AI tool without mastering all of its technical underpinnings. Nevertheless, to be a professional driver, it is useful to know what is under the hood. The first part of this guide explains the structure of a query.
In the second part, we provide a series of steps and instructions to keep in mind, including specific acronyms as mnemonic aids, to help apply prompting techniques effectively.
This approach involves submitting a minimal query, evaluating it, and then refining it by adding examples, context, and parameters (see STEPS) until a satisfactory result is achieved. This method also allows a complex problem to be broken down into simpler layers, with each layer responsible for a specific part of the problem. Finally, the tool can be asked to aggregate the results obtained.
This approach requires formulating a query that is as complete as possible, rich in context, parameters, and examples, and then iterating through multiple versions of the results. Since the tool generates different outputs for each request, it is possible to take the best parts from each result and combine them to create something new.