In the last tip, we finished looking at the Watson products (services) that you can tie into. Now it’s time to look at the APIs that IBM has for Watson and see how you can leverage them.
So far, we have seen the products that IBM Watson supports: Conversation, Discovery, Virtual Agents, and Watson Knowledge Studio. But you can do more than just use services with Watson. You can also do development, creating your own APIs based on models or frameworks that IBM supplies. That’s what we’ll look at now. As with the products, the things you develop take advantage of the DeepQA parallel architecture and Watson’s ability to handle natural language.
So how do you take advantage of those APIs?
Developing with Watson
Let’s return to the main Watson page. Scroll down a bit until you see the section about Watson APIs. This time, click on Browse Watson APIs and try for free on Bluemix, IBM’s PaaS. This will take you to the main page from which our API journey will begin, a black screen with white letters. This is a list, by category (Conversation, Discovery, Vision, Speech, Language, and Empathy) of the APIs that are available. And I make no promise that it will actually look like I am describing. Between the time that I first wrote this article and it came back to me from editing, IBM had once again changed the screens and I had to do a rewrite. So, if it doesn’t look exactly like this, be creative. Look around.
So How Does It Work?
As you might expect, developing on Watson happens where most of us will soon be living when our bodies are replaced by digital replicas—in the cloud. In Bluemix, to be specific. Of course, Bluemix is the IBM cloud platform that is based on the open technology CloudFirst Factory. It supports a number of languages, including Java, Node.js, Go (aka Golang), PHP, Ruby, Ruby Sinatra (which is much better than Ruby Bubble), Swift, Python, and Ruby on Rails.
The first thing you need is a Bluemix account. Getting one is fast and easy. Just to prove that, I created one for myself as part of this article. Click on the link that says Get Started Free in the upper right corner of the black page to start that process.
The first thing it says when you go to sign up on Bluemix is to enter an email address, but I think you can just use your IBM ID. It also asks for a phone number, and I can’t remember if the phone number is required. They will send you an email, and you will respond to it to verify your email address. You will then be directed to the login page, where you can set up your password. And then you’re in.
Now you will set up an organization name and also name your space. Then you click the button that says I’m Ready. The good news is that you are now all set to create an app.
What APIs Are Available
Over the next few tips, we will look at what each IBM API does and how you can incorporate it into your business-specific application.
Returning to the black screen, we see again the categories of APIs: Conversation, Discovery, Vision, Speech, Language, and Empathy.
Conversation covers both Conversation and the Virtual Agents.
Discovery includes the Discovery API plus Natural Language Understanding, Discovery News, and Knowledge Studio.
Vision consists of just Visual Recognition.
Speech, remarkably enough, is Speech to Text and Text to Speech.
Language encompasses Language Translator, Natural Language Classifier, Document Converter, and the ever-popular Retrieve and Rank.
Finally, Empathy (which I consider rather ironic considering how many times they have shifted the screens in this area after I have written something) is about Personality Insights and a Tone Analyzer. Hmm, wonder if it can pick up sarcasm?
What Info Is Available
The way that IBM has redone its web site is a real improvement. It’s much easier to find the information you’re looking for. For example, click on the Conversation API under Conversation.
It takes you directly to a screen that has all the information about that API.
I would like to say that each page for an API is the same, that is has the same organization, sub-links, and style, but that’s not the case, although a number of them do follow a constant format. Regardless, all of the information you would need—whether you are management looking to try to understand exactly what this does, or a developer looking for technical documentation—it should all be right there. Most have webinars and videos attached, and a couple have blogs. Whether this format is evolving or not, I’m not sure, but it is certainly information-laden.
You will definitely want to set aside a week or so to go through these documents before you give anyone an estimate on how long it will take to make any API operational. And don’t forget there’s a cost associated with using the APIs. You need to do a careful analysis to see what plan best suits your needs and what the cost of that will be. Pricing information, where it is available (for some of them, you have to work with IBM on it) is also shown on these pages.
So Why Do It?
Because it’s there!
Because these APIs allow a more customizable experience than the IBM products, and they allow you to embed them in either new or existing applications. And there may be a real payback for being able to do that for your business.