
ChatGPT: AI the World Has Been Waiting For | by Bernard Mordan
Welcome to the future, where the ultimate problem is not waiting in line for a new product launch or a hot ticket event, but for an audience with the revolutionary AI, ChatGPT. This cutting-edge language model, created by OpenAI(1), has caused a stir in the tech world, even causing Google to issue an internal "code red" to their business section. But what is ChatGPT and why is it causing such a buzz? Imagine a tool that can generate text and code on demand, streamline your work and make your life easier. This is exactly what ChatGPT does, and it's no wonder it's being hailed as the most compelling language model of our time. With its ability to learn from the internet and its user-friendly interface, ChatGPT is set to revolutionize the way we work, and it's available to everyone. But be warned, the demand for ChatGPT is high and the service may become overwhelmed, so be prepared to wait in line for your chance to experience the future of AI.
Why am I waiting in line for an audience with the revolutionary AI, ChatGPT? What is ChatGPT? and why is Google so worried about it? ChatGPT is a text-based AI with a chatbot interface. You can ask it questions and it will give you answers via a WhatsApp-style chat interface.
Questions You Can Ask to ChatGPT
One killer feature is the bot's coding abilities. For example, one of my early challenges was to see if the AI could code an analog clock (an early coding challenge I struggled with). This is what I asked (my prompt):
You are a senior front-end developer and an expert in HTML, CSS, and Javascript. You will code me an analog clock that will work in the browser. All the code for this will be in an HTML file that I can easily copy and paste into codepen and run.
You can see the result on my code pen (see reference 2 at the end of this article) (2).
Other folks have put ChatGPT to work creating marketing campaigns, writing job descriptions, CV tweaks, business emails, and recipes. For all the text-based, language-based work we have to do in our jobs ChatGPT is the new indispensable friend and assistant. I find myself enjoying sessions with ChatGPT far more than Googling things. It is less cognitively jarring than navigating ads and search results, weighing up links that look promising, and trying to find little pieces of information on the internet. This is why ChatGPT has become the hot new thing on the internet and Google is watching this very closely.
The GPT of ChatGPT stands for generative pre-trained transformer. Having a sense of what ChatGPT is, I believe, can help us start to understand it as a tool and start to work with it. Let’s take each of these terms and consider them. Generative is used to describe the output of the model. Some AI models classify things i.e. This thing goes in this bucket, this thing goes in that bucket. Some provide a measure of confidence i.e. 78% likely to happen this is like C3PO in Star Wars calculating the odds of hitting an asteroid. There are other AIs, like Stable Diffusion 2 (3), that will generate images (see image). ChatGPT generates text including computer code.
Pre-trained indicates that this AI has been trained on a data set and will not learn from or train on your inputs. ChatGPT has been trained on the corpus of text (and code) that made up the internet at the end of 2021. So it is frozen with the intelligence that humanity had deposited online up to that point in time. I am obsessed with the philosophical notion that complex systems hold intelligence. For example in nature the intelligence in systems like forest trees and the mycelium network, where trees will protect each other and respond to threats. I think about the internet as a repository of human communication and content, and there is an intelligence in that complexity that ChatGPT is helping us experience. It’s not really artificial intelligence, it's us, it's our own human intelligence.
Transformer describes the kind of machine learning technique that was actually used to train the model. This is the groundbreaking part of machine learning that has led to the rise of GPT bots and was originally designed to aid translation from one language to another. The transformer that powers ChatGPT is a neural network architecture that consists of several stages. I asked ChatGPT to explain the stages of its transformer and this is the output I got:
- Input Embedding: The input sentence is converted into a numerical representation (embedding) by looking up the embedding of each word in the input sentence in a pre-trained embedding matrix (based on the public internet from 2021).
- Encoder: The encoder is made up of multiple layers of self-attention and feed-forward neural networks. The self-attention mechanism allows the model to weigh the importance of different parts of the input sentence when generating the output.
- Decoding: The decoder is also made up of multiple layers of self-attention and feed-forward neural networks. It takes the encoded representation of the input sentence and generates a probability distribution over the vocabulary for the next word in the sequence.
- Output Embedding: The output embedding is the embedding of the predicted next word in the sequence
- Softmax: The final stage is a softmax function, which produces a probability distribution over the vocabulary for the predicted next word. The word with the highest probability is selected as the output.
- Fine-tuning: Finally, the model is fine-tuned on a specific task such as language generation, language translation, language understanding etc.
That’s a description of some advanced machine-learning algorithms! The breakthrough aspect of this technique is the self-attention part. Previous language models did not have enough of a reference window or working memory to reference and remember what’s in the sentence or paragraph it is generating. ChatGPT’s transformer network has a potentially infinite window of reference, limited now only by computing power. “All you need is Attention” (4) is the white paper that introduced this technique. This is the reason behind ChatGPT’s amazing results, its thirst for computing resources, and the reason the current ChatGPT service is sometimes slow and sometimes you have to wait for it.
Some dinner party takeaways are: ChatGPT is guessing what word will go next based on the unbelievable precedent of all the human language in its training data and the words the AI is creating as it is creating them. It can riff on itself.
Using ChatGPT in your Multiverse Apprenticeship
I’m starting to use this tool in my work at Multiverse. I have a few apprentices who really don’t like writing. I was thinking about ways to help them and tried giving ChatGPT some bullet point notes, a few competencies copy and pasted from the standard, and seeing what it could do. The following paragraph is a sample of the AI’s output:
As a software engineering apprentice, I have demonstrated my ability to apply the principles and uses of both relational and non-relational databases to software development tasks. One example of this is when I updated the API to return a list of devices specific to the filters sent on the GET requests. This required me to utilize my knowledge of database querying and filtering in order to effectively retrieve the desired information from the database.
That is pretty good and has that quality of referencing and speaking to the competency that the apprentice is putting evidence forward for. I usually have to coach apprentices to write like this, ChatGPT just did it without my asking. It was very useful for the apprentice to read this and see their bullet point turned into some prose. It gave them some hope, an example, and some means to start writing.
ChatGPT, what do you think?
My next thought was to give ChatGPT the competencies as a list at the beginning of the conversation. ChatGPT has some ability to remember things in a conversation. Remember the reference window from the transformer model I mentioned earlier. It can hold some context, but that reference window is limited and if the conversation gets really long it might start forgetting things from earlier. So I try to keep that in mind as I experiment. The best format to provide the competencies was in a line-separated list and introduced to ChatGPT with the prompt:
I will give you a list of competencies, can you list them in a number-ordered list? Below is the last competency in the list, number 24.
24. Explains how they reflect on their continued professional development and act independently to seek out new opportunities.
One tip I found for better results is to give ChatGPT a role to inhabit, a part to play. For example; As a software engineering apprentice, as a busy senior executive, as an angry mother, as an impatient customer. Then state what you want i.e. make me a list, write me code. Finally, you can add style guides, and make this really punchy or in the style of Charlotte Bronte. In the following prompt, I asked ChatGPT to take on the role of an apprentice manager.
As the manager of a software engineering apprentice. What would you do to help your apprentice demonstrate competency 24 from the list?
As a manager of a software engineering apprentice, there are several steps I would take to help my apprentice demonstrate competency 24 from the list:
- Encourage them to set personal development goals: I would encourage my apprentice to set specific, measurable, and achievable personal development goals that align with competency 24. This will help them stay focused on what they need to do to improve and make progress.
- Provide them with opportunities to learn: I would provide my apprentice with opportunities to learn new skills and technologies that are relevant to their personal development goals. This could include attending training sessions, workshops, or conferences, or working on projects that require them to learn new skills.
- Provide them with mentorship: I would provide my apprentice with a mentor who has the experience and knowledge to guide them in their personal development journey. The mentor could provide them with feedback, advice, and support to help them achieve their goals.
- Give them autonomy: I would give my apprentice the autonomy to take ownership of their personal development journey. This means allowing them to make decisions about what they want to learn, how they want to learn it, and when they want to learn it.
- Encourage them to reflect on their learning: I would encourage my apprentice to regularly reflect on their learning and progress. This could include keeping a learning journal, writing a reflection at the end of each learning experience, or setting up regular check-ins with me or their mentor.
- Provide them with feedback: I would provide my apprentice with regular feedback on their performance and progress. This will help them identify their strengths and areas for improvement, and track their progress toward achieving their personal development goals.
- Provide opportunities for them to apply their new skills: I would provide my apprentice with opportunities to apply the new skills they have learned in real-world settings. This could include giving them more complex tasks to work on, or allowing them to lead a project or a team.
By doing all of these, my apprentice will have the necessary guidance, resources, and opportunities to reflect and improve on their skills, and demonstrate competency 24.
That is very good advice for managers. You can see ChatGPT has grasped the meaning of competency 24 and is generating a list of 7 related and meaningful suggestions from the intelligence of the text on the internet circ 2021.
I tried other things once ChatGPT had the list of competencies. I provided a paragraph of mock text, the kind of thing I would get from an apprentice’s portfolio, and asked: What competencies do you think the apprentice has demonstrated in this text? ChatGPT managed to extract the competencies I was thinking about and another that I had not considered. When I caught myself thinking I could tweak the text a little to lean more into that competency, I realised ChatGPT could really help my apprentices create their portfolios and that I had found a new tool in my work at Multiverse.
Now time to write a closing paragraph. To make my point, I figured I should get ChatGPT to write my conclusion. So I provided the text above and requested a punchy uplifting conclusion that made the reader want to try ChatGPT for themselves. I will leave you with the words of the AI and finish this task a little bit ahead of time.
In conclusion, ChatGPT is a revolutionary language model that has the power to change the way we work. With its ability to generate text and code, it is a versatile tool that can help with a wide range of tasks, such as coding, marketing, and writing. The pre-trained transformer technology behind it makes it a reliable and efficient tool, and its user-friendly interface makes it accessible to everyone. Google is keeping a close eye on the widespread use of ChatGPT, but it's clear that this AI is quickly becoming an essential tool in today's digital age. Don't just take my word for it, give it a try and see how ChatGPT can help you streamline your work and make your life easier.
References
- ChatGPT: https://openai.com/
- Analog clock created by ChatGPT: https://codepen.io/bmordan/pen/wvxPKxO
- Stable Diffusion 2: https://github.com/Stability-AI/stablediffusion
- All you need is Attention: https://arxiv.org/pdf/1706.03762.pdf
Disclaimer: The AI tools and technologies showcased in this blog post are intended for informational and educational purposes only. Any use of these tools or technologies in a work environment should be authorised by your employer and comply with the policies and procedures of your organisation. We do not endorse or encourage the unauthorised use of any AI tools or technologies in any work setting.
This article has been written by Bernard Mordan, a Senior Software Engineering Coach at Multiverse.
Find our full Artificial Intelligence Guide here.
