New Version of Clarifai API Actually Offers Developers Bespoke Machine Learning

If 2016 goes down as the year of something in the API economy, it might well be Machine Learning ( ML) and Artificial Intelligence ( AI). Although hardly a day goes by where I don't receive another ML or AI anouncement, a deeper dive often reveals some very liberal definitions of the sciences (some involve what sounds like real rocket science, others not really). Additionally, where there is (or could be) ML or AI involved, it's often buried deep in the cogs of the given solution in such a way that the machine learning and/or artificial intelligence themselves are very much out of the reach of users and developers. Instead, AI and ML are too often touted as characteristics that make the final solution better than others at what it does. But every now and then, an announcement comes along that gives the consuming developer direct and approachable access to ML/AI capabilities so that their own organizations, in bespoke fashion, can benefit more directly from the so-called rocket science.

The latest version of Clarifai's image recognition API could be one of those. ProgrammableWeb hasn't tested the API so it cannot vouch for how well it works. But the general idea is that Clarifai's API can be used to train the Clarifai cloud how and what to recognize in certain images in a way that's specific to an organization. For example, for one organization (perhaps one that is a used car brokerage), the image of a car might be recognized by Clarifai's image recognition technology as a car of a certain year, manufacturer, and model. But to another organization, that same image might be interpreted for specific information about specifics of the tires on the vehicle. Out of the box, Clarifai's image recognition technology might not do either very well. But, because the API can be leveraged to teach the engine how to recognize certain images based on what the organization sees in them, the machine can then learn for each organization how to respond the next time it sees those images and ones like them. Clarfai l refers to these machine-learned rules as "models" which in turn are essentially collections of what's known as "concepts."

According to Clarifai software engineer and developer evangelist Cassidy Williams, the new version 2 of the API breaks-contract with version 1 as the entire Endpoint has changed. Williams told ProgrammableWeb "we're completely re-vamping our API to V2, changing and adding not only new features and endpoints, but also the base URL version itself."  As for V2, the company claims there isn't a deprecation schedule at this point because there are some features (like search and custom training) that only work in V2, and some (like video tagging and multi-language tagging) that still only work in V1. For developers needing functionality from both V1 and V2, Clarifai suggests using one of the four official SDKs it currently offers for iOS, Android, Python, and JavaScript

Williams went on to explain some of V2's new endpoints as follows:

  • /predict - Similar to V1's /tag, this allows users to get the tags from a given image based on a model. Whereas the previous version of the Clarifai API only returned tags based on Clarifai's stock models (aka "public models"), the new version can return tags based on a customer's own machine-learned models.
  • /searches - Based on a customer's set of models, Clarifai's new search API allows you to send images to the service and have them indexed by concepts and their visual representations for later discovery and retrieval. Once images are indexed, searches across those images can be conducted by concept or by reverse image search (where, via concept-matching, an image is submitted in order to find other images like it you can search for images by concept).
  • /inputs and /models - Clarifai provides a few different models that see the world differently. "Food" for example, only sees things as they are related to food. "Weddings" only sees things relative to weddings, etc. Since a model contains a group of concepts, a model will only see the concepts it contains. While Clarifai's public models are already pretty powerful -- mixing and bundling from thousands of concepts in different ways -- this is the part of the API that gives the organization an opportunity to create its own models and train them with their own images and concepts. 

The business model is apparently changing with the new API as well. As with V1, a developer can issue up to 5,000 API calls per month for no charge. But, now that the API has provisions for custom modeling, Clarifai also allows developers to maintain up to 10 custom models at any given time. Additionally, instead of V1's tiered pricing based on usage brackets, after the first 5,000 free API calls, the charges for V2 are the same for everyone based on usage; $0.0020 per API call and $0.46 each per custom model (above and beyond the 10 free ones). 

Be sure to read the next Images article: Microsoft Adds Cognitive Services, Speech, and Image Search APIs to Bot Framework