webMethods.io ChatGPT API Connector Available Now!

webMethods.io ChatGPT API Connector Abailable Now!

07

I’m very pleased to welcome ChatGPT into the world of webMethods.io Integration and no-code development with our brand new ChatGPT API Connector released today, which makes use of the OpenAI API. Technically our ChatGPT API Connector is using the GPT-3/Codex/Content Filter API of OpenAI.

Hopefully, by now everybody is familiar with ChatGPT, but if not, you can try it here: https://chat.openai.com/ before you try to build integrations using the connector.

The OpenAI connector has great coverage of the APIs available, with “completions” being the one most people are probably familiar with, allowing you to get GPT-3 model to generate text content based on your input, much like you see in the ChatGPT interface, along with Codex (code generator) and Content Filter APIs

Here’s a simple, but powerful example, before I tell you how to do it yourself!

We want to send automated emails from an NPS survey, but want these to sound human :slight_smile:
This example uses a webhook, which is called after completion of an NPS survey.
The name, email and score are passed into the webhook, and we simply ask the GPT-3 model to
create me a thank you email for scoring NPS of <score>

GPT-3 does its thing, introducing an element of randomness, and creates a response which feels very personal!

So how can you do this?

You’ll need an account over at OpenAI.

Head on over and Login to OpenAI here Overview - OpenAI API

One you login, you’ll need to upgrade your account - the free-trial whilst you can create an API key doesn’t have any credit with which you can call the API.
This will ask you to provide a credit card, but right now you get $18 of free credit to use within the first 3 months so you can test this out and see if it adds value to you and your organization.

Once you’ve upgraded the account, you can create an API key from the account menu:

Then all you need to do is add the ChatGPT connector to a workflow and configure the action.
Provide you API key, and then configure the input, e.g. in the example above it looks like this:

If you want to understand more of the inputs the documentation is here:
Text completion - OpenAI API

I found the ‘playground’ very useful:
Playground - OpenAI API

If you look at the properties on the right, they give you great descriptions about each, e.g.
image

Armed with this knowledge, you can quickly create your own workflow examples using ChatGPT!

My reponse from the engine for my NPS email was:

Dear Dave,

Thank you for taking the time to provide your feedback and scoring a 10 on our Net Promoter Score (NPS). We are so pleased to hear that you are happy with our services and that you would recommend us to others.

Your feedback is invaluable to us, and we will use it to continue to improve our services and make sure that we are providing the best possible experience for all of our customers.

Once again, thank you for your feedback and for your continued support.

Sincerely,
Software AG

This example uses the GPT-3 Model APIs (and the davinci-003 engine).
Once the Full ChatGPT APIs are available, we’ll add them immediately to the connector!

Hope you have fun and find some great use-cases with the ChatGPT connector!

If you haven’t used, but would love to try webMethods.io Integration - please sign up for a Free Forever tenant here
[Sign up - Software AG Cloud] and please do share any use-cases you build around the ChatGPT API connector.

14 Likes

This is so super cool! Software AG at the forefront of current AI development. It is late over here. I can’t wait to check it out tomorrow. :slight_smile:

2 Likes

@Dave_Pemberton
You said:

ChatGPT does its thing, introducing an element of randomness,

In your example, will each email sent to a customer get new data via ChatAI webhook call? I’d be careful with exposing customers directly to black-box AI responses. Especially once the model updates, and ChatGPT takes “NPS” to mean something else on this ‘NPS acronyms’ list

I’d be a lot more comfortable if there was a right-brain AI checking the left-brain AI’s work (or vice-versa). Somewhat like this question I just asked ChatGPT.

Is this an appropriate way to thank someone for giving my company an Net Promoter Score of 9?

“We wanted to take a moment to express our sincerest gratitude for taking the time to provide us with your valuable feedback. We are thrilled to hear that you had a positive experience with us and that you scored us a 9 on the Net Promoter Score (NPS) survey.”

Yes, it is appropriate to thank someone for giving your company a Net Promoter Score of 9 in this way. This type of message acknowledges the customer’s feedback, shows appreciation for the positive experience they had, and highlights the specific NPS score they gave. This message also gives an indication that the company values the customer feedback and is committed to using it to improve the service.

Then the problem becomes of checking the outcome of the second question. Is the answer “Yes” or “No”? A cheap way would be to search for the string “Yes,” in the start of the second answer. A more correct method would use text sentiment analysis or a Yes/No classifier

A way to pre-generate or prompts left-brain/right-brain adversarial constructs in programming could be useful.

1 Like

Many thanks Dave.

Just for technical and political correctness, it is an connector for OPENAI API, not (yet) for ChatGPT, but this API will be public soon also.
For updates you can register here: OpenAI API

The knowledge base behind the earlier models compared to ChatGPT is severely smaller, so answers are much weaker.
Alternatively you can run your own local copy of the same. You get them here: Models - Hugging Face
How to install and use the same, the free ChatGPT is able to explain you. :smiley:
I have done it, and it is easy even on an normal PC as “server”.

3 Likes

@Sonam_Chauhan
We don’t use this approach btw - was just an easy example to demonstrate something that people would understand :slight_smile:

I don’t disagree with your response at all either, but one day, these AIs will become as dependable (and probably more reliable) than humans in terms of the understanding and quality of response and that day is fast approaching on us.

Forsaking all the ethical discussions around AI, at some point we will to learn to trust in them, but maybe, just maybe, Hollywood has left doubts in many of this generation’s brains, with stories of rogue AIs taking over :robot:.

2001: A Space Odyssey, Alien, Tron, Terminator, “I, Robot”, The Matrix (still one of my favourite movies!), and even WALL-E come to mind without even trying hard to think of others movies with AI’s who go rogue!

I’ve seen the way people trust voice assistants already, rightly or wrongly, they have become part of the family for many, so this day will come, it’s a matter of when, not if

Just to worry more about Hollywood and future predictions, the UK’s ministry of defence deployed communication satellites… and in their infinite wisdom, decided to name them… Skynet
Why would you do that? :smiley:

Lets just hope Hollywood aren’t right!

3 Likes

I don’t disagree with your response at all either, but one day, these AIs will become as dependable (and probably more reliable) than humans in terms of the understanding and quality of response and that day is fast approaching on us.

Thanks. I disagree though – I think we’re fairly well protected by typical human imperfections. :smiley:

This paper, although above my head, seems to make one important point: that the ‘order’ of a system (in our case, the ‘smartness’ of an AI algorithm) cannot increase faster than the order being added to the system (intelligence coded into the algorithm by programmers).

“A second look at the second law”
Granville Sewell

https://www.math.utep.edu/faculty/sewell/AML_3497.pdf

I take this to mean an AI can never be smarter than the humans who program it.

So, no Singularity with the AI programming itself! But lots of manual programming, and error checking.

I agree: Skynet sounds like a terrible name for a military network. To be fair, it looks like the name predates the movies from the Terminator franchise.

1 Like

That’s great, Dave!
Currently what you get here https://chat.openai.com/ is awesome and fun, but have few drawbacks - needs the input there, might be overloaded, etc.
Looks like with the connector you can really automate anything and then make these automations super personalized.
In your example that would be if the AI looks at the user’s inputs and then asks for additional information i.e. “I see you don’t like this feature, how can we improve it?” That will take interaction to a next level, without having to create annoying if statements

1 Like

Exactly Toni :slight_smile:
Typically on an NPS survey, users get the chance to feedback free-text comments.

The ChatGPT AI can sentiment analyze these to determine whether the comment are good, bad, frustrated, etc, and you could even pose a question to the AI taking the sentiment and/or comments and see what it comes back with.

I tried it a few times doing different things today. I asked it to give me a feedback, and apologize if there’s a low score. It started apologizing always :smiley: . I then asked it to apologize if the score was less than 9, so then if literally always said, I apologize if your score is less than 9, even though it knew what the score was!

Now maybe, when they move the newer ChatGPT model the APIs, you’ll get some better results, but you do still need to exercise caution. If you’ve been reading the news, ChatGPT passed an MBA examination ( ChatGPT took an MBA exam. Here’s how it did | ZDNET). Scored a B to B-, but if you read the article, whilst it did pretty well, to quote the article, it…

“made major mistakes in some fairly simple situations.”

Which comes right back to @Sonam_Chauhan’s points.

Regardless, this has ignited the AI arms race, and things will only get more impressive in the near future!.

My expert system I wrote in Prolog at university all those years back looks positively dated now :space_invader:

3 Likes

So, I want to share another example I’ve tried :sunglasses:

In this example, lets assume somebody is organizing an event, and they want to create and send invites to people. This could be done through salesforce, marketo, or many other places. Here I just built a relatively simple HTML page that simulates a system, but you could assume that this could be done inline in an application of your own, or an application you use.

It first requests me for a contact:

Pressing the button invokes a REST API, that runs an integration, that simply goes to Marketo in this example, and finds the relevant lead, and returns the data back as JSON, which is then presented back to the user in the HTML page.

The user now has the opportunity to create/modify an invite prompt. Once they do this, they can then press the “Get/Refine Suggestion” and this will create an invite email body, calling a REST API, which invokes a simple integration that uses the ChatGP API connector, and then returns this response back to the HTML page.

From my “prompt”

create me an email from [person] to invite Dave Pemberton from the company named Software AG (United Kingdom) / Software AG (UK) Ltd. to an amazing ChatGPT event in [location] on [date] regarding how webMethods.io Integration can make use of this new and awesome AI

It comes back with:

Subject: Invitation to ChatGPT Event - WebMethods.io Integration

Dear Dave Pemberton,

We are delighted to invite you to an amazing ChatGPT event in [location] on [date] to discuss how webMethods.io Integration can make use of this new and awesome AI technology.

Software AG (UK) Ltd. is at the forefront of AI integration and we believe that this event will be a great opportunity to explore the possibilities of this technology. We will be discussing the latest trends and best practices in AI integration and how webMethods.io can be used to maximize the potential of this technology.

We look forward to your participation and we hope that you can join us for this exciting event.

Sincerely,
[person] technology

If you’d don’t like the invite, you can tweak it yourself, or refine the invite prompt, and try again, and then once you’re happy, you can press the Send Email button and the invite goes out.

The integrations here are EXTREMELY simple, but the end result is quite powerful :slight_smile:

  1. Call to marketo to get the contact (exposed as a REST API)
  2. Call to ChatGPT API to get the completion (exposed as a REST API)
  3. Call to send the email (exposed as a REST API)

Lastly a single HTML page (works as a single page app) which calls those REST APIs via XMLHttpRequest.
My example was just a plain HTML, using bootstrap5 styling, with inline JavaScript to make it work quickly!

Again, I urge caution - the prompt text is important - and the need to refine and make a human edit is real. It took a couple of attempts to get the right sort of output - the model makes assumptions and can often get your intention wrong. Which is why here, I brought the person in to give them the power, but make their job easier.

:robot:

3 Likes

This is amazing. Well done Dave. Love that you have the loop in there, so you can refine your email with the help of ChatGPT or just edit it to tweak it to your liking!