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 PLUGINS #API #CHATGPT #MOBILE APPS #OPENAI #SECURITY #WEB DEVELOPMENT

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 PLUGINS #API #CHATGPT #MOBILE APPS #OPENAI #SECURITY #WEB DEVELOPMENT

Related Posts

OpenAI Keynote - According to GPT4 - OpenAI's new offerings are game-changers in the AI field, with personalized ChatGPT variants (GPTs), a developer-friendly Assistance API, GPT-4 Turbo with enhanced capabilities, and novel voice and vision modalities. These innovations, bolstered by a strategic partnership with Microsoft, pave the way towards sophisticated AI agents and a future brimming with untapped human potential.
AI Tools in Coding: Progress or Just Optimization of the Status Quo? - Pondered the future of coding with a colleague of mine recently, as one does. Couldn't help feeling a tad underwhelmed by the programming tools like GitHub's Copilot X and ChatGPT. Sure, these AI-powered coding buddies are smart, helpful and do save time, but they more or less tinker around the edges - optimize the existing processes but don't fundamentally alter them. Software development still remains a tedious enterprise - a loop of problem-definition, code-generation, code-validation, and feedback. Not so different from what it was 30 years ago really. We're surrounded by subpar software everywhere - the bugs, the slowness, the vulnerability. My, what a mess! We need a massive, transformative solution. Imagine an AI system that could take high-level concepts and materialize fully functional apps from them! We've seen glimpses of such capabilities in ChatGPT, generating apps from sketches, but that's just it - glimpses. Still a long way off. My hope for the future? An era where writing code is antiquated. We instruct AI to generate, tweak, even test code - on a constant iterative feedback loop. Maybe, what we know as 'code' could be on the cusp of extinction, replaced by something machines create and understand - and we don't. A brave new world, indeed!
Using ChatGPT for home automation - In another thrilling adventure with ChatGPT, I endeavored to integrate it with a Raspberry Pi, effectively turning it into my own personal light switch. My custom ChatGPT plugin, sporting just two endpoints, could revolutionize how we handle APIs, as it managed to control five different lights with simplicity and style. With a dash of YAML magic, ChatGPT managed to deduce the entire process, paving the way for future smart home projects. Big or small, the potential applications are endless and might even lead to computers communicating in human language!
It's Plausible, But Is It True? - Here's a wild ride with ChatGPT and other large language models! They're ace at cooking up plausible-sounding text, but they're not always the best when it comes to spitting out the truth - they've got a funky relationship with facts. One research paper showed they can come out with believable but totally fake answers to seemingly straightforward facts. But when I messed around with various models, there were a few discrepancies. Some got it right or plausibly wrong, but we humans are pretty gullible and tend to believe plausible-sounding info. So when it comes to using ChatGPT, make sure you fact-check, stay away from complex reasoning tasks, and don't try and solve maths problems - seriously, just stop. But it's a cracking tool for generating marketing copy, code (with a fact-check), finding bugs, and getting the creative juices flowing. Stay tuned though - tech's ever-evolving and these intelligent library computers aren't going away anytime soon!
I was wrong - we've not reached peak ChatGPT hype yet... - Strap yourselves in, folks, we're in for a wild ride! ChatGPT's new API has reignited my excitement for Large Language Models, just like the start of the dot com boom. With the pricing now 10 times cheaper, a flurry of creative and previously unthinkable use cases is within our grasp. Despite earlier doubts, I now believe we're scaling the peak of inflated expectations. Can't wait to see the innovative applications that will spring from this!

Related Videos

AI Powered Raspberry Pi Home Automation - Is this the future? - Witness the power of ChatGPT controlling home automation lights through a Raspberry Pi, making life easier with plugins. Delve into the fascinating world of large language models, redefining interactions with APIs.
Automating Blog Improvements with AI: Summaries, Tags, and Related Articles - Learn how to use ChatGPT to enhance your blog's homepage, create summaries and tags, find related articles, and generate post images with ease, leveraging AI to save valuable time and effort.
ChatGPT vs Stockfish: Can an AI Plugin Improve its Chess Game? - Watch as chat GPT takes on Stockfish, a world-class chess engine, in a thrilling match! See how GPT utilizes a chess plugin to improve its gameplay and compete against the best.
Hammer Time :) - Dive into the world of video transcripts and unveil their transformative power on content accessibility, SEO, and audience engagement
atomic14 Live Stream - Dive into the world of video transcripts and unveil their transformative power on content accessibility, SEO, and audience engagement
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