The essential skill sets that will be needed in light of AI, in the not too distant future, will be critical and design thinking at a higher level of abstraction, as opposed to rote mastery of implementing details. As Dr. Li Jiang in the video, the human role will be “innovation from 0 to 1. That’s where AI cannot do a good job. We need to focus on that.”
Commonly one sees dystopian predictions that large language models such as ChatGPT will replace workers in creative and intellectual fields. One such area is in software development, as such models have been seen capable of writing valid program code in a variety of programming languages. Hence, it is thought that human programmers may lose work, and become essentially superfluous. However, at a more abstract level, programming is not about implementing algorithms in one or other programming language: it is about conceptualization and problem definition and solving. It is about design and imagination. And here comes in “prompt engineering.”
As a newly art and science (I think it is a mixture of the two) “prompt engineering” is the ability to convey to language models such as ChatGPT how it is to behave and respond to queries in a desired fashion. It is a new more abstract level of programming.
Consider that computer programming has evolved, over time, to ever higher levels of abstraction. Early computers were of necessity programmed using low level machine language — the literally binary instructions to operate the hardware. Programs essentially, after all, move bits from memory locations to registers, add some bits other bits to them, store the results at a different memory location, or compare the value in a register and jump to another location in memory to execute the next appropriate instruction. Then came assembler languages, basically more human readable mnemonics for those low level instructions. On top of that was built compiled languages such as FORTRAN or C. Then there came to be higher level programming and scripting languages, such as Python, and the various framework sand libraries further abstracting from the computer hardware. Each presenting a higher level of abstraction from the underlying functions of the processor hardware.
The next level is to instruct computers with natural language, as well perhaps using more abstract levels such as propositional logic or other formalisms. Instead of programming computers, in some sense we will *instruct* them to perform the tasks we ask of them. We will give them higher level conceptual schemas to solve various problems, presented to them in plain, natural language. Instead of being tools, in time they will become our assistants and collaborators. Not unlike in (less dystopian) science fiction scenarios, such as in Star Trek where crew members can prompt the ship computer with complex queries in natural language. Or as Dr. Chandra, in the sequel to the epic movie 2001: A space Odyssey, reprograms the spaceship’s intelligent computer HAL, at least as much in the role as an AI teacher and psychologist, as a computer programmer.
And this future is beginning. Already a few companies are beginning to seek to hire prompt engineers, such as this listing for the AI startup Anthropic:
“Anthropic’s AI technology is amongst the most capable and safe in the world. However, large language models are a new type of intelligence, and the art of instructing them in a way that delivers the best results is still in its infancy — it’s a hybrid between programming, instructing, and teaching. You will figure out the best methods of prompting our AI to accomplish a wide range of tasks, then document these methods to build up a library of tools and a set of tutorials that allows others to learn prompt engineering or simply find prompts that would be ideal for them.”
This will be a new way of programming, working at higher levels of abstraction, conceptualization, and design. If we can dream it, one day we will build it, more directly than we have been able to before, collaborating with artificial intelligences.