Blog

close
Written by Mike Trivette
on March 07, 2023

I enthusiastically anticipated the new OpenAI technology, ChatGPT, a chat interface that works with an advanced series of Artificial Intelligence (AI) algorithms that was released to the public last December. The Cloud-based system combines AI and machine learning to provide a dialog between the user and answers they seek and it allows you to do a wide variety of things.

For example, when I first tried out ChatGPT, I asked it to tell me a story about a magical soda bottle that saved a bottling plant from a disaster. The story it created follows below:chatgpt1

While the AI-generated story won’t win any literary awards, it does prove that significant advances in artificial intelligence are happening rapidly. What I found most compelling about the system initially was how you can prompt it for nearly anything and receive results that are remarkably close to what you requested, with elaboration.

Use ChatGPT to Increase Productivity and Upskilling

How can this technology help your organization? You likely don’t need computer-generated stories, nor get much out of having a conversation with a computer. ChatGPT can increase productivity in coding and help accelerate upskilling efforts. Instead of having to slog through sections of undocumented code and come up with simple algorithms for accomplishing tasks, you can ask ChatGPT to help generate that code and documentation. Even if the developer that requests the code or explanation is not an expert in the language, the system can provide enough information to either get them started with baseline code or to take them down the right path for understanding what the code does.

Systems administrators can ask ChatGPT to provide them with the code to accomplish a task, such as installing software on an end-user workstation silently. Front-end developers can ask it to provide code to validate a web form. The list of helpful uses seems almost unlimited. What is important to understand is that by using ChatGPT as a guided shortcut for getting the basics started, you save time.

The ChatGPT AI can solve simple programming problems with mostly correct and working answers. As an example of a simple problem that can be correctly answered, I asked ChatGPT to provide JavaScript code that automatically generates a form based on JSON data. This is the result:

chatgpt2Note that the response provides comments and context for the lines of code that it generated. This is exceptionally useful for those who are learning what a bit of code does and for explaining why the system chose the code that it did. Taking the example a bit further, let’s say you have a piece of code and you aren’t sure how it works. I provided ChatGPT a bit of code from a NodeJS application without context or comments and allowed it to analyze and provide comments to the code. 

chatgpt3

While this seems miraculous, especially for those who aren’t familiar with programming languages, you also must understand that the AI is simply using some advanced algorithms to generate the code and the comments it provides. The system was trained using a machine learning methodology called Reinforcement Learning from Human Feedback (RLHF), over 45 terabytes of text data from sources including CommonCrawl, WebText2 and code in Python, HTML, JavaScript and CSS. To learn more about the RLHF, the book Reinforcement Learning by Phil Winder is an excellent starting point.

Use With Caution and Care

It is crucial to re-emphasize from the examples above, the ChatGPT AI can solve simple programming problems with mostly correct and working answers, not always, and the more complex the problem, the more incorrect answers appear. Open AI notes on their site that ChatGPT sometimes writes "plausible sounding but incorrect or nonsensical answers." This questionable problem-solving ability has become so notorious that it caused the question-and-answer site for programmers, Stack Overflow, to temporarily ban answers provided by ChatGPT. The site moderators found that "while the answers which ChatGPT produces have a high rate of being incorrect, they typically look like they might be good and the answers are very easy to produce." There’s no guarantee that the ChatGPT AI generated code will work for your given situation. You need to validate that the intention of your query was fully understood and that the code generated suits your purposes.

By validating the ChatGPT results, technology professionals gain a better understanding of the code required to accomplish the task. If the code doesn’t work as expected, they must use their problem-solving skills to determine why it isn’t working as expected. The important part is that ChatGPT accelerates the process. They are not starting at zero. The have a foundation for starting the task as the AI has pointed them in the right direction and they can learn about the code and the system by analyzing and fixing what was generated.

Conclusion

As with many things in technology, especially those on the bleeding edge, you must remember that at the end of the day ChatGPT is just a tool, and like any other tool in IT, you must use it wisely. This means you must review any code or documentation generated by the application to ensure that it applies to your environment correctly and to be careful not to provide it with sensitive or proprietary information. In the future, I see systems like ChatGPT becoming more and more useful in helping technology professionals to accelerate solutions and encourage environments of continuous learning.

Subscribe