Article Image
Article Image
View All Posts
read
Want to keep up to date with the latest posts and videos? Subscribe to the newsletter
HELP SUPPORT MY WORK: If you're feeling flush then please stop by Patreon Or you can make a one off donation via ko-fi
#AI #CHATGPT #DEVELOPMENT #OPENAI #PLUGINS

I’ve been through a couple of booms in my career, the most notable would have to be the dot-com boom. This was a paradigm shift in how things worked and what businesses did. We went from a world where the internet was interesting to people in academia to a world where everyone had to have a web presence.

Web developers appeared in the world and have gradually specialized and split into subgroups, frontend, backend, devops, site reliability engineers, etc… (the list of job titles is endless)

Everything settled down for a while, and then the app store revolution appeared. Now it wasn’t enough just to have a website - you had to have a mobile app as well!

A new type of developer appeared - mobile app developers, with sub species of iOS and Android specialists.

We’re now faced with a third boom. OpenAI released ChatGPT and suddenly AI went mainstream. ChatGPT gained 1 million users in just 5 days and is probably approaching 200 million users now.

There are no official numbers on how many users are actually paying for ChatGPT+ but surveys have suggested that up to 10% of users would be willing to pay for it. If we look at revenue announcements from OpenAI, we can see that they predict ChatGPT will generate \$200 million in revenue by the end of 2023. Given the monthly cost of \$20 for a ChatGPT+ subscription, we can work out that there are probably around 800,000 paying subscribers.

ChatGPT 1million Users

OpenAI dropped another bombshell in March and announced ChatGPT plugins.

We’ll soon be faced with another question to add to the “Do I need a website? - Yes”, “Do I need an App? - Maybe”.

We’ll now have to ask: “Do I need a ChatGPT plugin?”

At the same time, you’ll probably be asking yourself: “For goodness sake, we’ve already got a frontend web team, a backend web team, an iOS team, and an Android team… Now we’re going to have to hire a plugin team! When does it end?”

Well, it may not be as bad as it first appears.

Exactly What Are ChatGPT Plugins?

One of the big limitations with ChatGPT is that its knowledge cuts off after September 2021. The other limitation is that it can’t interact with anything outside of its chat. ChatGPT plugins enable it to access and provide up-to-date information, perform computations and execute actions on third-party services, and interact with a wide range of external applications. This enhances the AI’s ability to provide current, relevant, and actionable responses to user queries.

Creating a ChatGPT plugin might sound complex, but the reality is quite the opposite. Unlike the complexities of website and app development, building a plugin for ChatGPT doesn’t require a team of highly trained specialists. If your team of developers knows how to make an API, they already have what they need to create a plugin.

One of the biggest barriers to entry at present is simply the fact that developers need to join a waitlist for access and access is being rolled out extremely slowly.

How Do Plugins Work

The magic of plugins lies in their seamless integration with ChatGPT. The language model does the heavy lifting, interpreting user requests and mapping them onto your plugin API.

As part of your plugin, you provide some simple text describing what your plugin is and how to use it. You also provide an OpenAPI document (these used to be called Swagger files) - your development team will be very familiar with these as they will often be using them when they integrate APIs from third parties.

This is all ChatGPT needs to build calls to your API. The fact it can do this is both overwhelming and underwhelming at the same time. Overwhelming in that it can take extremely vague requests from the user (e.g. “I’m going to bed”) and translate them into concrete API calls (e.g. get the list of lights, select the appropriate light for the bedroom, switch it on). It’s underwhelming because everyone has seen how good ChatGPT is at generating and understanding code. It’s actually quite a fun exercise to get ChatGPT to generate all the required code for a plugin - there are even plugins now that will generate new plugins!

To Create or Not to Create a Plugin

While a plugin’s utility is undeniable, the challenge lies in defining a unique, valuable purpose for it. The real problem is not, “How do we build a plugin?” but, “What purpose will our plugin serve and who will use it?”

Plugin Security

How do we keep our plugin secure. Here are some easy recommendations:

  • Build an API specifically for your plugin - don’t just point ChatGPT at your API and let it run wild!
  • Lock the IP address range that can use the plugin to ChatGPT’s address range.
  • Alternatively, implement service authentication so you know it’s ChatGPT talking to you.
  • Add rate limiting and other anti-abuse safeguards to your API. ChatGPT will send you a conversation id along with an ephemeral user identifier in its requests so you can easily block and control access.

If you want to provide data that is specific to users on your system, then you can support OAuth login.

If you do have users logging in and performing actions on their data, then the usual security guidelines apply. The API should only be able to do things that the logged-in user is authorized to do.

There are a lot more complex questions that need to be thought about - what’s happening with your data - it’s being fed back into ChatGPT - which means it will be sent to servers that you have no control over. There are implications here around data security, GDPR, etc… it’s potentially a minefield.

Managing Plugin Behavior

One of the challenges developers will face is making ChatGPT behave in the way they want it to. If you’ve used ChatGPT, then I’m sure you will have experienced it not quite doing what you wanted it to, or interpreting your wishes in a different way from what you intended.

Guiding ChatGPT on how to use your plugin is more of an art than a science - you’ll have heard the term “prompt engineering” - sounds complicated, but it’s really just a case of experimenting to find the right way of expressing things to get the model to do what you want.

The “description for the model” in the plugin’s manifest file along with documentation in the OpenAPI specification file provide the main guidance. Treat ChatGPT like a person trying to manually operate your API. Your plugin should be coded defensively and provide good error messages when things go wrong.

For example, if you have parameters that can only take a limited set of values (e.g. country codes), then make sure these are validated - if ChatGPT sends an incorrect value, then it’s very helpful to send back an error with a list of valid values. ChatGPT will do its usual “I apologize….” and then try again with hopefully a correct value.

Another very useful thing to know is that in the responses to ChatGPT you can include an extra field EXTRA_INFORMATION_TO_ASSISTANT this can be used to help guide ChatGPT on what to do with the response and how to proceed.

For displaying data, Markdown is your friend. You can send back Markdown to show images, tables, and formatted text. It’s often helpful to include a hint in the EXTRA_INFORMATION_TO_ASSISTANT telling ChatGPT to use the markdown and show it to the user.

What you should be doing now

There’s no denying the potential of plugins in shaping the future of AI. Whether you’re a large company or an independent developer, it’s worth investing some time to experiment with plugin development to see what’s possible.

If you’re responsible for IT or directing development, then make sure you have someone tasked with keeping on top of what’s happening. At some point, you’re going to be asked about plugins and it’s always good to be prepared!

It’s clear that plugins offer a valuable opportunity to extend the capabilities of AI in a practical, user-friendly way. The question is, will you be ready when the time comes?

You can see an interesting plugin in action here that shows how good ChatGPT is at interpreting vague instructions:

You can find lots of other demos on the web showcasing the built in plugins and third party plugins. It’s going to be a wild ride.

ChatGPT Plugins

#AI #CHATGPT #DEVELOPMENT #OPENAI #PLUGINS

Related Posts

ChatGPT Plugins - First Impressions and Stats - Uncover insights on a Chess plugin's performance on the ChatGPT plugin store, including daily games, user preferences, and AWS costs, while considering challenges like discoverability and store improvements.
Using ChatGPT As a Co-Founder - Unveil the power of ChatGPT as it assists in building a startup from concept to execution, defining product features, implementing on AWS and GCP, crafting a pitch, and more!
Why does ChatGPT make mistakes - a layman's explanation - Uncover the reasons behind ChatGPT's struggles with factual information, the unique challenges of Large Language Models, and the exciting potential of upcoming models in transforming the industry.
It's Plausible, But Is It True? - Explore ChatGPT's performance in generating plausible text versus truthful text, the importance of verifying AI-generated information, and the ideal applications for ChatGPT in daily tasks.
Using ChatGPT for home automation - Leverage the power of ChatGPT and Raspberry Pi to create seamless home automation solutions using API controls, and see how the AI generates code to control lighting in various daily scenarios.

Related Videos

ChatGPT - Thanks for the memories - Uncover the potential of ChatGPT enhanced by plugins, as we create memory and play unique games like Hangman. Experience the game-changing AI in action through ChatGPT's-memory-driven API!
Surprisingly Interesting - The Blog Gets a Facelift Courtesy of ChatGPT - Discover the power of ChatGPT as a blog-enhancement tool; automate the creation of summaries, tags, related articles, and post images using AI technologies, saving time while making your blog more visually appealing and functional.
ChatGPT Chess Plugin - Witness a captivating chess showdown between chat GPT with its chess plugin and the renowned chess engine, Stockfish. Explore how GPT fares using a plugin to enhance its understanding of the strategic game.
ChatGPT - is it telling you the truth? - Uncover the inner workings of ChatGPT and the GPT-3 model, their potential for multiple use cases, dealing with imperfect information, as well as the exciting innovations in prompt engineering and forthcoming advancements in large language models.
ChatGPT for Home Automation - Experience ChatGPT dynamically controlling home automation lights via a Raspberry Pi, simplifying tasks through plugins and broadening the potential of large language models in interacting with APIs.
HELP SUPPORT MY WORK: If you're feeling flush then please stop by Patreon Or you can make a one off donation via ko-fi
Want to keep up to date with the latest posts and videos? Subscribe to the newsletter
Blog Logo

Chris Greening


Published

> Image

atomic14

A collection of slightly mad projects, instructive/educational videos, and generally interesting stuff. Building projects around the Arduino and ESP32 platforms - we'll be exploring AI, Computer Vision, Audio, 3D Printing - it may get a bit eclectic...

View All Posts