The World's AI Computer Vision NLP Audio Recognition Automatic Labeling Community

The fastest way to transform your unstructured image, video, text and audio data into actionable insights.

1,000 free operations per month.
home-header

The easiest deep learning AI ecosystem for developers, data scientists and no-code operators

For Developers

Build intelligent apps fastrer with pre-built AI models and powerful machine learning AI. Create an account to access our API and get started today

Learn more

For Data Scientists

Use one data workspace with unlimited customization for data prep, insights discovery, visual exploration and modeling. ML Ops without Dev Ops.

Learn more

For Enterprises

Use AI to turn your big data into knowledge. Drive profitable growth. Increase productivity. Make AI a core competency within your organization.

Learn more

For Government

Build secure, trustworthy and explainable AI. Increase the value of your unstructured data gain the fastest time to knowledge.

Learn more

Seamlessly integrated AI platform that accelerates the entire AI lifecycle

 

The only AI platform that lets you label data programmatically, train models efficiently, improve performance iteratively and deploy applications rapidly.

44 B
Ops in Last 12 Months
3 B
Labels
100 K+
Users
Input

Put all your data in one place

Process any volume of unstructured image, video, text and audio data. Use AI to index your data as its added.

home-products-input
Scribe Label

Use AI to label data 100x faster

Use AI automation to auto-annotate your input data and scale your projects faster. Label, train and deploy your models in one integrated tool.

home-products-scribe-label
Enlight Train

Customize your AI models for any use case

Create and train your models using user-friendly tools that make it easy for your business to develop custom AI applications.

home-products-enlight-train
Armada Predict

Maching learning to predict what’s inside your unstructured data

Use AI to tell you what's in your unstructured data. Capture data about the physical world through images, video and text.

home-products-armada-predict
Mesh Workflows

Connect AI models of different kinds to perform complex operations

Create and train your models using user-friendly tools that make it easy for your business to develop custom AI applications.

home-products-mesh-workflows-1
Flare Edge

AI at the edge

Use AI automation to turn around insights from downstream sources faster and speed collection and processing of video footage by 100x.

home-products-flare-edge

The world’s best teams build with Clarifai

“Clarifai provides an end-to-end platform with the easiest to use UI and API in the market. They’ve accelerated our AI development at scale allowing 1,000's of workers to label data and train 100,000's of AI models with significantly less development effort, and expedited go-to-market.”

Sr. Director of Catalog OperationsE-commerce Unicorn

“We evaluated the trillion dollar companies and a few niche retail players for our customer facing visual search use case. Clarifai was much easier to use than the trillion dollar companies, and their AI significantly outperformed both the niche players and the big guys in accuracy while having inference speeds 7x faster. The performance and the flexibility of the Clarifai platform has our executives exploring numerous other use cases to be powered by the Clarifai platform.”

Director of Product ManagementFortune 500 Retailer

“A pioneer in deep learning-based computer vision, Clarifai can tackle near-real-time visual search, facial recognition use cases, and deployment in the most secure, air-gapped environments that nearly all other vendors can’t match."

forrester-analyst-logo

"Clarifai is a true leader in AI applications for DAM and serves our users by improving the searchability and discoverability of their content. Today, Widen users gain the ability to search by image, which is a game-changer during time-sensitive projects. By saving countless hours for users, this partnership with Clarifai improves the Widen experience and delivers true ROI for our customers."

Jamie LiechtyWiden
company-logo-widen

"My organization has worked with Clarifai for almost three years, close to a daily basis, and the engagements and collaboration are top notch. The Clarifai platform and capabilities can be adapted, trained, integrated and deployed to a variety of problem sets with stellar performance. We chose Clarifai over Microsoft, Google, AWS and IBM because of their production functionality and performance, product vision and their strong consulting partnership."

Head of CatalogFortune 500 Company

"The team was a pleasure to work with. We had a highly dynamic (some would say chaotic) deployment schedule, but the Clarifai team did their best to be malleable to our needs. They were professional, engaging and collaborative. Through constant interaction with us, they iterated on their solution and developed novel approaches to our problem."

Head of TechOpsGlobal 2000 Airline

AI solutions for all of your use cases

Start building high performance apps today

Get started with 1,000 free operations each month. Request a free API key and start building today.

response = stub.PostModelOutputs(
    service_pb2.PostModelOutputsRequest(
        model_id="{THE_MODEL_ID}",
        inputs=[
            resources_pb2.Input(
                data=resources_pb2.Data(
                    image=resources_pb2.Image(
                        url="https://samples.clarifai.com/metro-north.jpg"
                    )
                )
            )
        ]
    ),
    metadata=metadata
)
print("Predicted concepts:")
for concept in response.outputs[0].data.concepts:
    print(concept.name + " " + str(concept.value))
MultiOutputResponse response = stub.postModelOutputs(
PostModelOutputsRequest.newBuilder()
.setModelId("aaa03c23b3724a16a56b629203edc62c")
.addInputs(
Input.newBuilder().setData(
Data.newBuilder().setImage(
Image.newBuilder().setUrl("YOUR_IMAGE_URL")
)
)
)
.build()
);
const request = new service.PostModelOutputsRequest();
request.setModelId("aaa03c23b3724a16a56b629203edc62c");
request.addInputs(
    new resources.Input()
        .setData(
            new resources.Data()
                .setImage(
                    new resources.Image()
                        .setUrl("https://samples.clarifai.com/dog2.jpeg")
                )
        )
)
[$response, $status] = $client->PostModelOutputs(
new PostModelOutputsRequest([
'model_id' => 'aaa03c23b3724a16a56b629203edc62c',
'inputs' => [
new Input([
'data' => new Data([
'image' => new Image([
'url' => 'https://samples.clarifai.com/dog2.jpeg'
])
])
])
]
]),
$metadata
)->wait();
var GeneralModelId = "aaa03c23b3724a16a56b629203edc62c"
response, err := client.PostModelOutputs(
ctx,
&api.PostModelOutputsRequest{
ModelId: GeneralModelId,
Inputs: []*api.Input{
{
Data: &api.Data{
Image: &api.Image{
Url: "https://samples.clarifai.com/dog2.jpeg",
},
},
},
},
},
)
const GENERAL_MODEL_ID: &str = "aaa03c23b3724a16a56b629203edc62c";

let request = service::PostModelOutputsRequest {
model_id: GENERAL_MODEL_ID.to_string(),
inputs: RepeatedField::from(vec![resources::Input {
data: SingularPtrField::some(resources::Data {
image: SingularPtrField::some(resources::Image {
url: "https://samples.clarifai.com/dog2.jpeg".to_string(),
..Default::default()
}),
..Default::default()
}),
..Default::default()
}]),
..Default::default()
};
string GENERAL_MODEL_ID = "aaa03c23b3724a16a56b629203edc62c";

PostModelOutputsRequest request;
request.set_model_id(GENERAL_MODEL_ID);

Input* input = request.add_inputs();
Data* data = input->mutable_data();
Image* image = data->mutable_image();
image->set_url("https://samples.clarifai.com/dog2.jpeg");

MultiOutputResponse response;
grpc::Status status = stub->PostModelOutputs(context.get(), request, &response);

if (!status.ok()) {
cout << "Failure: " << status.error_code() << " " << status.error_message() << endl;
exit(1);
}

if (response.status().code() != status::StatusCode::SUCCESS) {
cout << "Error response: " << response.status().code() << " " << response.status().description() << " " << response.status().details() << endl;
exit(1);
}

Data response_data = response.outputs(0).data();
cout << "Predicted concepts:" << endl;
for (int i = 0; i < response_data.concepts_size(); i++) {
const Concept& c = response_data.concepts(i);
cout << "\t" << c.name() << ": " << c.value() << endl;
}
var response = client.PostModelOutputs(
new PostModelOutputsRequest()
{
ModelId = "aaa03c23b3724a16a56b629203edc62c",
Inputs =
{
new List<Input>()
{
new Input()
{
Data = new Data()
{
Image = new Image()
{
Url = "https://samples.clarifai.com/dog2.jpeg"
}
}
}
}
}
},
metadata
);
let response = try client.postModelOutputs(
Clarifai_Api_PostModelOutputsRequest.with {
$0.modelID = "aaa03c23b3724a16a56b629203edc62c";
$0.inputs = [
Clarifai_Api_Input.with {
$0.data = Clarifai_Api_Data.with {
$0.image = Clarifai_Api_Image.with {
$0.url = "https://samples.clarifai.com/dog2.jpeg"
}
}
}
]
}
).response.wait()