Since its launch last November, OpenAI's chatbot seems tu be on everyone's lips. Everything seems possible with ChatGPT, from algorithm creation to convincing resumes. What exactly is happening?
Truth is, the integration between artificial intelligence and everyday life has become normal for many years now, just think of driving voice assistants or Alexa. And yet, ChatGPT seems to go beyond proposing the writing of entire texts, product descriptions to the field of programming, but is it really so? Besides simplifying programming work, will language-based AI models even replace developers? We took a look at all the hype surrounding ChatGPT and answered these questions.
What is ChatGPT
ChatGPT (OpenAI's Generative Pre-trained Transformer) software has been presented at the end of November 2022 by OpenAI, a non-profit organisation whose sponsors include Elon Musk and Microsoft. Microsoft in particular, has been one of the first OpenAI investors, contributing with an injection of 1 billion dollars in 2019. Later on, the company is said to have injected another $2 billion or so. In the first half of January 2023, Microsoft announced that it would soon make ChatGPT available to customers of its cloud service. So what is ChatGPT?
ChatGPT is a language model based on the AI algorithm GPT-3.5 that is able to make linguistic predictions based on a huge amount of texts that the chatbot's artificial intelligence has been trained with until 2021
ChatGPT's interface resembles that of a search engine, but the peculiarity of the software lies in the fact that users can "converse" with the chatbot. Therefore, unlike search engines, the model provides not only an answer to a specific question, but provides "facts", "definitions" and serves as a writing assistant.
ChatGPT was in fact optimised specifically for dialogues and is a further development of GPT3, on which DALL-E was also trained. DALL-E is an artificial intelligence algorithm that turns text input into pixel output, i.e. converts literal descriptions into photorealistic images. The data from this predecessor flows into ChatGPT and gives the user the feeling of conducting a real dialogue. Probably this impression of being able to hold a conversation suggests human capabilities and contributes to the hype we are witnessing these days.
OpenAI has collected a huge amount of data, which has been used to train ChatGPT. However, this is a 'limited' training corpus because as we said it goes up to 2021.In this example, we asked ChatGPT about a recent event, the capture of Messina Denaro. Here is the answer we received:
Artificial language models and software programming
The utopian desire for programmes that write themselves is as old as computing itself. Today, AI can provide support in programming. Generally, when you are a developer, you don't have to solve a problem from scratch anymore and you almost always resort to building blocks. If you get stuck, you will probably look at Stackoverflow and search for appropriate code pieces and bug fixes. Wouldn't it be handy if an algorithm could do exactly that?
An artificial language model such as ChatGPT could be used in various areas of programming, e.g. in writing and optimising code for the most commonly used algorithms, in testing and debugging, as well as in detecting security problems or analysing and translating certain sections of code into another language.
Nevertheless, although it all sounds very impressive, these capabilities certainly cannot replace developers, because linguistic models such as ChatGPT are not able to computationally implement the detection of complex interrelationships. Linguistic AI does not know causality or the categories of space and time.
Even if the extent to which AI can generate creative text is controversial, humans are still important for their uniqueness and this naturally also applies to software programming. AI can indeed lighten the load of some work for developers, such as documentation or testing, but the overall vision and direction is always in the hands of a... human developer.
A fundamental problem with artificial language models such as ChatGPT is that they use static patterns of recognised words from the training data. This means that in their predictions, AIs of this type can generate correlations that may not even exist. Furthermore, the AI does not possess an understanding of the world, but merely produces its 'facts' in a credible text and it is then the user who has to verify this information. Finally, another major problem is the limitations of the corpus on which models such as ChatGPT are trained. ChatGPT knows nothing after 2021, but it is clear that it will learn a lot in the current beta phase. Nevertheless, if it is true that output quality increases but data quality decreases, we are still faced with the good old GIGO principle: garbage in, garbage out.
What can we expect in the future?
It remains unclear what impact language AI will have on the industry. However, it is already quite apparent that artificial intelligence will be able to support the work of developers by saving a lot of time and thus changing the workflow of development teams for the better. There are, nevertheless, still several primary legal issues to be resolved. For instance, what role does copyright or data protection play? It is also unclear in which direction the OpenAI business model will develop. Will the software remain free of charge with the next language version GPT4, which will be released in spring 2023 and will contain around 500 times more parameters?
So you can rest assured, because as things stand, solutions like ChatGPT will not leave you jobless as a developer. First of all, AI still makes too many mistakes. It should also be remembered that the core competence of a good developer is not limited to writing clean code. Software must be well structured, extensible, maintainable and scalable. It is necessary to be able to think outside the box and develop creative approaches to solving IT problems. And that is only part of the job. Then there is the whole part of communicating with the customer, discussing proposals, analysing customer needs and the feasibility of actual implementation. This is something that AI can at best support by analysing data faster or simulating models, for example. But the best software does not work without a human being to use it.
And if you are still not convinced, we asked the direct interested party... here is the answer :)
What do you think of ChatGPT? Have you tried using it to write code? Do you think it could be a valuable support in the future in the IT sector? Let us know by leaving a comment.