Prompt engineering as introduction to AI

I had only read articles and listened to a few podcasts about AI, ChatGPT, and other machine-learning algorithms prior to this past month. I was able to get hands-on experience with ChatGPT 4 while participating in an AI hackathon for work.

Our hackathon idea focused on using ChatGPT to transform a multi-input form entry into a single text input. We would use ChatGPT to extract context and relationships from the text and automatically enter these fields and create relationships in the system for the user.

I was skeptical of ChatGPT’s ability to extract this information. I thought that it would be able to categorize the input, but I was unsure it could extract all the required metadata that was normally tediously entered by the user. I was blown away by what it was able to understand.

ChatGPT operates in a conversational manner. The application provides a prompt on how ChatGPT should respond when given an input. This includes a system message instructing ChatGPT on how it should operate. This is followed by pairs of example inputs and outputs where the input is supplied by the user and the output by the ChatGPT “assistant”. These examples are used to instruct ChatGPT what sort of output is expected for a given input.

Programming typically involves writing high-level code in a procedural way to get the computer to produce a desired result. There are very clear rules on what this code should look like and what it can do.

Prompt engineering is an open-ended narrative. Producing these prompts was a back-and-forth exercise in trying to use prose to instruct a computer how to operate. I had no experience in using ChatGPT so I began playing with different writing formats, styles, and commands to get the desired output. It just felt… fun.

With surprisingly little effort, ChatGPT was able to recognize dates and times, extract the names of people and businesses, infer relationships from the context of sentences, and connect a location to an explicit timezone. It was truly impressive. The majority of the development time spent on our project was on application code calling ChatGPT and taking actions based upon its results. It was impressive.

I left the hackathon with a concrete understanding of a use case that could directly benefit our users. I saw what other teams built for their projects and other ways it could be utilized in different contexts. I feel excited that it can be used to actually help people and confident in my ability to successfully leverage AI.

We plan to share our project results as a way to show what ChatGPT is capable of and hopefully spark some ideas for other potential uses in the organization. Maybe it will get picked up as a feature to be implemented soon!