The recent explosion of ChatGPT® in the consumer artificial intelligence (AI) space has vastly changed the way we work, and Generative AI tools have greatly advanced how we locate the information we seek. These powerful tools have moved us beyond the scope of simple or even complex internet search engines such as Google® and have automated how we find data – IF we know how to ask the right questions. As with human conversations, what you say and how you say it matters with AI interactions.

Types of AI

Across all forms of media communication, the term "AI" is being used in a generic, almost simplistic fashion; however, one size does not fit all. Thus, it is important to recognize that there are varying degrees and types of AI: 

  1. Artificial Narrow Intelligence (ANI)
    ANI is adept at performing very specific tasks. Think of the chess bots or the Go bot, which performed so well against the World Champion Go player that they decided to retire, or Siri® and Alexa® being able to respond to simple queries and tasks.
  2. Artificial General Intelligence (AGI)
    This type of AI is a generalized representation of human cognition that can learn and solve a wide array of problems, without human intervention or assistance. It is also often referred to strong or deep AI. ChatGPT is a research project with the goal of achieving this form of AI.
  3. Artificial Super Intelligence (ASI)
    To be considered in this class of AI, ASI would need the technology and ability to surpass human intelligence levels in every way. In addition, it would need to have the capacity to experience and express emotions and maintain relationships.

AI Terminology

A good place to start when attempting to gain a better understanding of AI is becoming familiar with common terminology:  

  • Bing Chat
    Built by Microsoft® as part of their suite of tools, it is designed to bring an AI co-pilot to every aspect of your workflow by having an ANI assistant for each of their products. This chat co-pilot was built by combining GPT 3.5 and Bing Search® to bring together the strength of Large Language Models (LLMs) and the current information on the internet.
  • ChatGPT
    This is a generative form of ANI that can produce text and solve problems, based on how previous problems of the same nature have been resolved. It is created by OpenAI®, an American AI research and deployment company and team, working toward General AI and focusing on alignment for ChatGPT. It is pre-trained – meaning, it was educated prior to its release. It uses an attention transformer and an LLM that utilizes a neural network.
  • Large Language Model (LLM) 
    LLMs take large amounts of training data and respond to prompts based on pre-trained data. Its goal is to make an approximation of its world based on the data given, without fully understanding it.
  • Neural Networks
    This is a method utilized by AI models to process data similar to the human brain, by connecting pieces of information through different weights. Our understanding of artificial neural networks is similar to our limited understanding of the neural networks in the human brain: both are a bit of a "black box."

Search Evolution

Crafting very specific inputs that elicit accurate and relevant information is a vital technique in "prompting" AI language models to generate optimal results.

To help illustrate this concept, let's trace its evolution from basic Googling to the more sophisticated approach of Advanced Googling, and finally culminating in the powerful methodology of Prompt Engineering.

 

Search Evolution Flow

Googling

When initially faced with an issue, whether as a developer, tester, or end user, the instinctive first step is to turn to a search engine like Google. This typically yields a multitude of search results, often necessitating the arduous task of sifting through numerous pages to find the most appropriate solution.

Advanced Googling

The next level of proficiency entails a strategic refinement of the search query. Rather than broadly describing the error, the focus shifts to searching on more detailed information, such as extracting the precise error message from the program's stack trace. This message is then entered in the search engine. While the results may still span multiple pages, the increased specificity of the query allows for a more efficient examination of the initial entries, leading to a quicker path for finding the most desired solution.

Prompt Engineering

Simply put, Prompt Engineering is the act of creating effective queries (aka, prompts) to guide an AI language model toward generating the desired responses. This approach transcends both Googling and Advanced Googling by harnessing the knowledge accumulated from the vast repository of Google Search® results. By engaging a sophisticated language model trained on this extensive dataset, users can now hold conversations with the AI, extracting information without the need for extensive manual searches. This means that the same error message a developer on another team used to reach their solution can now be employed as a prompt, further streamlining the process.

Generative AI Tips

At its core, Generative AI is just a computer program that is exceptionally fast at doing exactly what you asked it to do, even if the ask is not exactly what you intended. Below are some tips and tricks for effective communications with Generative AI systems that will help guide you toward obtaining desired responses with minimal effort.

Be Specific

It is important to remember that AI systems base their answers on the entirety of internet data storehouses, which contain an incredible amount of information. The trick is to speak the appropriate "language." Imagine conversing with someone who speaks French exclusively and the frustration and confusion that would ensue if you carried on your portion of the conversation in English. 

We often adjust our speech patterns to match our audience. For example: you likely speak to your spouse, children, friends, neighbors, boss, and teammates using different phrases and context, even when conveying the same message. It is the same with AI. Take into consideration the type of AI and modify the question(s) and conversation accordingly.

Give Context

For these models to give a targeted answer, not just some random denizen on the internet, you need to give as many details as possible and provide specifics about how it should phrase the answer. For instance, we have jargon that means one thing in our work and something entirely different in the world (i.e., Python, Rust, Cucumber, Java, Unicorn). To those in the tech sphere, Python is not a snake.  

Another thing to consider regarding context is that is not best practice to paste an entire code base into the AI chat. This is too much context and, at least for many of the free models, also too much information for them to hold onto and handle for free. It is best to find a middle ground in these instances, using a more specific, tailored tool like a coding assistant.

Be Iterative

The most effective delivery teams employ Agile® methodologies and break projects into phases, building on small milestones to achieve optimal results. The same principles should be applied during AI interactions, by iteratively building layers of context. Gradually refining prompts "as you go" provides the system the information needed to respond with the best and most relevant results.

AI Does Not Understand You

Contrary to popular belief, AI is not all-knowing, and Generative AI models have zero understanding of the world. With Narrow AI we are essentially talking to a highly intelligent 5-year-old that can assimilate information based on previous experience. It can only predict the most likely response using stored information and the series of prompts used in the query.  

Own the Output

It is not possible for AI models to know if the information provided was accurate. It is vital to fact-check responses and debug the AI-provided code. Remember that these systems are trained by and pulling information from the entirety of internet data, including the: "Hey, this didn't work." examples on Stack Overflow®.

What's Next?

In many ways, AI is like any other tool at our disposal. It can help simplify the work we do and how we do it, but it is up to us to tell it what to do and to be specific with our requests. The information contained in this article is only just the beginning. It serves as the launchpad for more in-depth articles that will take a deeper dive into AI specifics and best practices. In future articles, we will explore how we can leverage different AI tools to work more effectively to better serve our customers, and the guardrails being put in place for us to do so.