In 1952 Grace Murray Hopper wrote the first widely recognized program that could take human readable words and turn them into a computers machine code, which she coined a “compiler”. This one invention led to an explosion in the workforce employed to program computers, over time greatly reducing the cost to innovate. Recently a similar milestone has been reached.
I’ve been following OpenAI, the organization behind ChatGPT, for some years. Recently I tried out their latest tool and the experience has been transformative!
First up, since Youneeq has dived deep into word vectors I asked, and received back, the following:
Aside from responding to my Canadian spelling of “modelling” with American English, it had no problem providing an accurate and detailed description.
Next up, I looked at how it might deal with a fuzzier, complex, problem. I instructed it to:
Leveraging TensorFlow and Keras, it was able to return a solution that satisfied the problem as well as do what its predecessor couldn’t, provide feedback on what was asked.
While it can provide detailed instructions like its sibling model, InstructGPT, as OpenAI puts it ChatGPT can also “answer followup questions, admit its mistakes, challenge incorrect premises, and reject inappropriate requests”. This focus on veracity separates ChatGPT from most Conversational AI, making it more akin to a finely honed tool than a chatbot built to pass a Turing Test (seem human). A scary reality for the tech giants that rely on overly procedural interviews and workplace metrics to screen individuals on the same topics, but an exciting opportunity for companies like Youneeq that live and die by how well they can accept and leverage innovative new approaches.
Focusing on the use case of a software development tool, one of many applications for ChatGPT, there are some obvious benefits. One of the great challenges in turning a business problem into solution software is reaching a point where you have a solid foundation. Often the first step is a non-functional/throw-away prototype to drive discussion (and which stakeholders are often too resistant to toss out). ChatGPT is not designed to write a commercial MVP (Minimum Viable Product), but it can help with building the boilerplate for a clean foundation for ones next software project. Having well-written working software from which to build in less time than a proverbial cardboard cut-out of the solution benefits everyone.
To Sum it Up
What I liked
Great at writing a paragraph of competent business or technical English. You supply the idea, and it saves you some time typing and proofing.
A huge time saver for programmers. Being trained on historical code it cannot meaningfully innovate, but it can write some solid generic code snippets.
Trained on a vast portion of the internet’s data, it can write instructions for just about anything, and even accept and provide feedback to further refine the response (via RLHF – Reinforcement Learning with Human Feedback).
GDPR and similar data retention policies supported.
Areas of Consideration
At the time of writing, it’s based off the GPT-3.5 language training model, which means it can only respond with information from 2021 or earlier.
As a human-like chatbot I found it lacking. For me personally I found it more like an interactive instructional tool, but which also seems like a more practical application.
In terms of language synthesis, a bias towards American English, which somewhat confines its applicability.
Conversations are not private. As part of training, compliancy, and safety conversations may be viewed by appropriate OpenAI staff.
In Conclusion
One of my favourite tropes from TV that I like to use as an example of what to look for in programming tools is the Holodecks within Star Trek. Anyone can program a lifelike interactive simulation within them by describing what they want. However, to truly provide a realistic simulation, engineers still would be shown typing instructions into consoles; thereby, making their little contributions even more powerful since the mundane has been handled extremely well. ChatGPT moves us further in this direction, empowering us to do a great deal of amazing things faster and better than before. Rather than replacing the need for talented technical individuals it magnifies the value employers and customers experience from innovative and knowledgeable contributors.