As I mentioned in The Cloud Changes Everything, cloud computing changed how my technology company creates value for customers. I continue to write code, so I experienced the tectonic shifts cloud computing was making for WTE Solutions' great team of tech and marketing geeks directly. Imagine you went for a jog and ended up running faster than ever. Cloud computing was drip, drip, flood, tsunami.
Unless you spent your holidays under a rock, you know OpenAI's ChatGPT exploded, as Google's search term trend chart shows.
As Martin and I wrote in ChatGPT: How It Will Change Your Website OpenAI's chatbot is so good it feels like ways to use artificial intelligence in general, and ChatGPT in particular, are endless. Since it's clear the ai tsunami is here, writing an ai user guide seems like a good idea, so here's what I cover in AI Your Guide To What's Coming:
We assign humanity to almost any and everything. Alan Turing's Computing Machinery and Intelligence (1950) created a machine interrogation called the Turing Test, where humans attempt to learn if they are speaking to a machine. Turing's Bladerunner-like questioning creates a vital bridge to language and semantics but perpetuates the machine as a more brilliant, scary human ethos.
Stuart Russel and Peter Norvig's Artificial Intelligence: A Modern Approach (1995) creates system classifications based on thinking and acting.
Human approach
Ideal approach
I'm a tech geek who created a company of coders and marketing geeks, so we see ai as rational thinking and acting systems. I like IBM's definition because I'm betting my friend and WTE contributor Phil Buckley helped with it and also because IBM's ai explanation leaves the science fiction to Isaac Asimov and William Gibson.
At its simplest form, artificial intelligence is a field, which combines computer science and robust datasets, to enable problem-solving. It also encompasses sub-fields of machine learning and deep learning, which are frequently mentioned in conjunction with artificial intelligence. These disciplines are comprised of AI algorithms which seek to create expert systems which make predictions or classifications based on input data.
Here is how ChatGPT answered my, "What is ai," quesiton:
Artificial intelligence (AI) refers to the ability of a computer or machine to perform tasks that would normally require human intelligence, such as understanding language, recognizing images, making decisions, and solving problems. AI can be classified into two categories: narrow or general. Narrow AI is designed to perform a specific task, while general AI is designed to be capable of performing any intellectual task that a human can. There are many different approaches to creating AI, including machine learning, which involves training algorithms on vast amounts of data, and symbolic AI, which involves writing rules and procedures for the machine to follow. AI has the potential to revolutionize many fields and is already being used in a wide range of applications, including language translation, image recognition, and autonomous vehicles.
Since its easy to have a conversation Turing wouldn't realize is coming from a machine with OpenAI's chatbot I asked it to define GPT too.
GPT, or Generative Pre-training Transformer, is a language model developed by OpenAI. Language models are trained on a large text dataset and can generate coherent and plausible text by predicting the next word in a sequence based on the words that came before it. GPT and other language models like it have achieved impressive results in various tasks such as machine translation, language summarization, and text generation. GPT-3 (Generative Pre-training Transformer 3) is the latest version of the GPT model and is one of the largest and most powerful language models currently available, with billions of parameters. It can perform a wide range of language tasks without explicit task-specific training.
Language models predict words and word sequences using predictive analytics and probability. Before the third version of ChatGPT, OpenAI's chatbot was good but easily identifiable as a replicant. The world exploded with the November 30th release of ChatGPT-3 because Decker may still be able, after many questions, the latest third version of OpenAI's chatbot is a replicant. Still, it would take longer and be more challenging, and ChatGPT-4 is right around the corner.
We've shared hundreds of ChatGPT and AI 101 posts on our Sign-of-the-Times Flipboard, so I'll focus on two nascent but sure to be important new practical AI terms - AI-as-a-Service (AIaaS) and AI-as-a-Platform (AIaaP).
While you could I-frame ChatGPT into your website, we wouldn't recommend it. OpenAI's chatbot is so popular it is only available about 80% of the time, but your chatbot installation will be OK. Instead, we would craft an end-use solution for your website and apps to solve the uptime problem.
Kudos to OpenAi because, given the Google December search spike outlined in the chart above, the free and easy-to-use chatbot should be down more than its up, which has yet to be my experience. I crafted a New Year's ChatGPT app that friends and family used on my PC; my ChatGPT New Year's app is a party game with my friends and family.
We'll create ChatGPT end-use applications with the same approach we used to develop natural-sounding SMS apps with Twillio and the near-human voice we made with Amazon Polly used in our Mindpath Health app. We'll start by building a microservice layer. Here is how ChatGPT defines a microservice layer.
A microservice layer breaks large applications into a suite of small, modular services, each of which performs a specific function. Each microservice is self-contained, communicating with other microservices via well-defined interfaces. As a result, microservice architecture is flexible and scalable. Each microservice can be developed, deployed, and managed independently. It also makes updating and maintaining the application easier because changes to a single microservice are isolated from the rest of the system. However, building and maintaining a microservice architecture can be more complex because an in-depth understanding of how each service interacts is required.
We shared the Lego-like code we like to write, the "small modular services," on our Services page. In addition, we've used Google's AI tools to create multi-language installations so our apps can handle English, French, and Spanish without needing to recode.
We build on Microsoft .Net Core running on distributed frameworks such as Kubernetes, so the Lego-like distributed nature of how we create software makes enhancing functionality with AI, if not easy, at least well-mapped and fast. ChatGPT isn't our first AI rodeo. We started using OpenAI's tools more than two years ago. We've been deploying Azure Predictive Search in customer applications for more than four years.
Azure Predictive Search is a cloud-based service offered by Microsoft's Azure platform that enables developers to add predictive search capabilities to their applications. Predictive search uses machine learning algorithms to analyze user search history and predict what a user will search for next. As a result, predictive search helps improve the user search experience by providing more relevant and accurate search results and can also help reduce search time and improve efficiency. To use Azure Predictive Search, developers can integrate the service into their application using the Azure Search API. They can then configure the service to analyze data from various sources, such as databases or logs, to learn about user search patterns and generate predictions. The service also provides tools for tuning and customizing the search algorithms to meet the application's specific needs.
Azure Predictive Search is a cloud-based service offered by Microsoft's Azure platform that enables developers to add predictive search capabilities to their applications. Predictive search uses machine learning algorithms to analyze user search history and predict what a user will search for next. As a result, predictive search helps improve the user search experience by providing more relevant and accurate search results and can also help reduce search time and improve efficiency.
To use Azure Predictive Search, developers can integrate the service into their application using the Azure Search API. They can then configure the service to analyze data from various sources, such as databases or logs, to learn about user search patterns and generate predictions. The service also provides tools for tuning and customizing the search algorithms to meet the application's specific needs.
See why I wrote API The Future of Your Website's Future? APIs are how we connect those Lego blocks, those microservices that add incredible AI functionality. In the last few years, we've deployed Chat and SMS AI-powered chatbots that recognize user's intent, collect user data, and answer frequently and infrequently) asked questions.
Try our XYZ Chatbot.
Will AIaaS work? Let's use the software as a service model as a predictor and turn to our chatty OpenAI friend for clues.
Software as a Service (SaaS) is a software delivery model where software applications are hosted by third-party providers and made available to customers over the internet. Customers access the software through a web browser or a dedicated client and do not need to install or maintain all of an applicaiton's code on their devices. SaaS providers typically charge a subscription fee based on service levels or the number of users for access to the software. SaaS allows customers to use software without investing in the infrastructure and resources required to host and manage complex applications themselves. As a result, smaller SaaS investments benefit small businesses or organizations since they may not need more technical expertise or resources to maintain complex systems. SaaS providers can provide more frequent updates and new features because the provider is responsible for maintaining and improving the software.
Software as a Service (SaaS) is a software delivery model where software applications are hosted by third-party providers and made available to customers over the internet. Customers access the software through a web browser or a dedicated client and do not need to install or maintain all of an applicaiton's code on their devices. SaaS providers typically charge a subscription fee based on service levels or the number of users for access to the software.
SaaS allows customers to use software without investing in the infrastructure and resources required to host and manage complex applications themselves. As a result, smaller SaaS investments benefit small businesses or organizations since they may not need more technical expertise or resources to maintain complex systems. SaaS providers can provide more frequent updates and new features because the provider is responsible for maintaining and improving the software.
We're working on an Ask Eric AIaaS application to find the line between training AI on our website. We aim to train a chatbot on our (or your) website before the tricky part begins. The tricky part is understanding how to use a chatbot's ability to answer related questions with the same degree of accuracy, immediacy, and a natural sound, even when thousands of users are playing with your new AI-enabled chatbot.
We'd look to solve the "simultaneous user" problem by curating data sets and learning your content's 80/20 Rule. Almost everything online has a Pareto Principle where 20% of the causes create 80% of consequences or, put another way, 20% of answers will answer 80% of your website or app's questions. Finding your content's 80/20 Rule helps manage and reduce resource demands (computing power needed for thousands of simultaneous users) because we can build links to those answers instead of asking for computing power over and over to answer the same core questions.
Tuning Ask Eric will teach our developers and coders how to craft a dashboard so an e-commerce site such as SimplyGum.com could add an Ask Caron (their founder) feature, use the browser-based dashboard to find their 80/20 Rule, and tune their service level or other options all for a monthly subscription fee based on the choices they need and want.
Platform as a Service (PaaS) is a cloud computing model that delivers a platform and infrastructure for businesses to develop, run, and manage applications and services without the complexity of building and maintaining the underlying hardware and software. PaaS providers offer a range of tools and services, including development environments, middleware, and database management, that businesses use to build and deploy their applications. PaaS simplifies developing and deploying applications, allowing businesses to focus on building and maintaining their applications rather than managing the underlying infrastructure. PaaS develops and deploys web and mobile applications, building and running microservices and other cloud-based services. Some examples of PaaS providers include Amazon Web Services (AWS) Elastic Beanstalk, Google App Engine, and Microsoft Azure.
Platform as a Service (PaaS) is a cloud computing model that delivers a platform and infrastructure for businesses to develop, run, and manage applications and services without the complexity of building and maintaining the underlying hardware and software. PaaS providers offer a range of tools and services, including development environments, middleware, and database management, that businesses use to build and deploy their applications.
PaaS simplifies developing and deploying applications, allowing businesses to focus on building and maintaining their applications rather than managing the underlying infrastructure. PaaS develops and deploys web and mobile applications, building and running microservices and other cloud-based services. Some examples of PaaS providers include Amazon Web Services (AWS) Elastic Beanstalk, Google App Engine, and Microsoft Azure.
OpenAI provides a libary of pre-trained models and tools. Their models library is a great starting point, but using AI is like sending your kid to Elementry and Middle School. They learn basic knowledge high school and college tunes, deepends, and specializes. When I asked ChatGPT if OpenAI is a PaaS here is what she said.
OpenAI is not a Platform as a Service (PaaS) provider. Instead, OpenAI is a research organization focusing on developing and promoting artificial intelligence. OpenAI research includes machine learning, robotics, and economics. It has developed several widely used AI technologies and tools, such as GPT-3, DALL-E, and RoboSumo. OpenAI also collaborates with other organizations and researchers to advance the AI field and promote responsible development and use. While OpenAI does not offer PaaS services, it has developed and released several tools and technologies used by PaaS providers or businesses building applications on PaaS platforms.
Bit of a distinction without a clear difference, but we understand OpenAI focuses on research leaving the creation of end-use products, applications, and software to companies like mine. Once our kid (our AI application) graduates, we'll need to prepare the training data by presenting use cases and conversations to the model (to the kid). If you aren't JSON comfortable, knowing how to use the Command Line (CLI), or write code training data can be a difficult chore. Even If you are an experianced programmer, reading the OpenAI or Microsoft AI documentation can be intimadating.
The command line is a text-based user interface for interacting with a computer's operating system or an application. It is a way to issue commands by typing them into a terminal window, a program that allows you to enter commands and see the results. The command line is often used for advanced tasks and for automating processes. It can be more efficient and powerful than using a graphical user interface (GUI) for specific tasks. You can enter commands and parameters to perform various tasks in the command line, such as navigating the file system, running programs, modifying system settings, and more. Every operating system has unique command-line tools and utilities, and many third-party command-line tools are available. To use the command line, you need to understand the command syntax for the particular operating system or application.
The command line is a text-based user interface for interacting with a computer's operating system or an application. It is a way to issue commands by typing them into a terminal window, a program that allows you to enter commands and see the results. The command line is often used for advanced tasks and for automating processes. It can be more efficient and powerful than using a graphical user interface (GUI) for specific tasks.
You can enter commands and parameters to perform various tasks in the command line, such as navigating the file system, running programs, modifying system settings, and more. Every operating system has unique command-line tools and utilities, and many third-party command-line tools are available. To use the command line, you need to understand the command syntax for the particular operating system or application.
If you have worked with WTE Before, you know we have a great "Bag of Tricks." Tricks our programmers use to execute quicker, faster, and more efficiently. When we work with AI and machine learning tools like OpenAI's ChatGPT, we use our Prompt Toolkit...Ok, I lost you, but stay with me.
If you have Alexa, you've learned to turn on the kitchen lights by saying, "Alexa, Turn on the Kitchen Lights." Say "Kitchen Lights Alexa," and nothing happens. Alexa is "trained" to recognize the Alexa do something prompt, not the do something Alexa version. Welcome to "Prompt Management.
Prompt management refers to managing and organizing the prompts and input fields that a computer program or system presents to a user. Prompt command management can include: Prompt layout and design. Prompt order. Actions to be taken based on user input. In a graphical user interface (GUI), prompt management involves designing the layout and appearance of input fields, buttons, and other controls while specifying how the program should respond to user input. In a command-line interface (CLI), prompt management may involve designing the prompts and command syntax that the user sees and specifying how the program should parse and interpret the user's input.
Prompt management refers to managing and organizing the prompts and input fields that a computer program or system presents to a user. Prompt command management can include:
In a graphical user interface (GUI), prompt management involves designing the layout and appearance of input fields, buttons, and other controls while specifying how the program should respond to user input. In a command-line interface (CLI), prompt management may involve designing the prompts and command syntax that the user sees and specifying how the program should parse and interpret the user's input.
Effective, prompt management makes a program or system more user-friendly and efficient, so users guide through the input process without errors or confusion. We build Prompt tools. This access layer allows us to send the correct structured data to the ChatGPT or any AI engine.
An access layer is a layer in a computer network that connects devices on a local area network (LAN) to the internet. The access layer provides access to network resources such as file servers, web servers, and printers. The access layer is below the distribution layer and core layers in a three-tiered network architecture. The access layer includes switches and routers that connect LAN devices to the distribution layer and provide network access to the devices. The access layer is usually the first point of contact for devices on the LAN, and it is responsible for forwarding data packets to the appropriate destination on the network. The design of the access layer impacts the network's performance and security. Proper strategy and management of the access layer can ensure efficient and reliable network access for all devices on the LAN.
An access layer is a layer in a computer network that connects devices on a local area network (LAN) to the internet. The access layer provides access to network resources such as file servers, web servers, and printers.
The access layer is below the distribution layer and core layers in a three-tiered network architecture. The access layer includes switches and routers that connect LAN devices to the distribution layer and provide network access to the devices. The access layer is usually the first point of contact for devices on the LAN, and it is responsible for forwarding data packets to the appropriate destination on the network.
The design of the access layer impacts the network's performance and security. Proper strategy and management of the access layer can ensure efficient and reliable network access for all devices on the LAN.
Want to know when our first AIaaS application is ready for your inspection, ideas, comments, and use? Our newsletter gang will hear about Ask Eric first, so get on the list. NEWSLETTER SIGNUP BUTTON Want to discuss a custom variation of ASaaS? Call #### and ask for Eric.