⚡From Zero to App in 5 minutes. Use Clarifai App Templates
Try nowAI PLATFORM
Data Preparation
Model Building
Join our community of Clarifai users. Explore and share models, workflows and more.
The easiest deep learning AI ecosystem for developers, data scientists, and no-code operators
Train high-quality custom machine learning models with minimal effort and machine learning expertise — build and train your own models in minutes.
Fastest End-to-End
The world’s fastest path to actionable insights and value from your unstructured image, video, text, and audio data.
Learn moreDeploy Everywhere
Powerful APIs and clients for every programming language; deployable anywhere you operate from any public cloud, private cloud, bare metal, air-gapped, and edge deployments.
Learn moreReady-to-Use, Pre-Trained AI Models
Pre-trained models to address the most important use cases across industries. They're available out-of-the-box and need no specialized knowledge in data science.
Learn moreLow Code / No Code Solutions
Use powerful tools and an easy-to-use UI to quickly build AI apps with no development skills. Improve project turnaround time to solve business problems quickly.
Learn moreSpend less time on low level details and more time on using ML to improve business outcomes
Use Clarifai's AutoML tools to take care of sourcing and preparing data, engineering features, training and tuning models, deploying models, and ongoing model monitoring and updating.
Use machine learning to prepare datasets to train models
With Clarifai Scribe Label, you can use AI to automate the process of labeling data for multiple labeling tasks. Data augmentation algorithms are incorporated into how data is ingested. With Clarifai's Mesh Workflows, automatically sort, filter, and annotate data. And with Clarifai Spacetime Search, use AI-powered search with built-in class, concept, and visual similarity search capabilities. With Scribe LabelForce easily scale your data labeling with Clarifai's fully managed data labeling services for creating high-quality training datasets.
Comprehensive tool to transform unstructured data into features to improve model accuracy
Use data preparation workflows to automatically annotate inputs based on automatic accuracy criteria, reducing the time it takes to annotate new data. Combine pre-trained and custom-trained embedding, clustering, and concept models to index inputs for search to manage unstructured data at scale. With Clarifai Armada automate the detection and classification of features. With Scribe Label, ML-powered data labeling tool, use pre-trained, custom-trained, or 3rd party models to auto annotate data for scale.
Automate custom model building for unstructured datasets
With Clarifai Enlight customize modular model architectures to accelerate continuous model improvements. Automate data analysis and recommend or select the potential algorithms to optimize model performance. Use model training templates to automatically optimize hyperparameters. Easily evaluate model performance to facilitate model interpretability. Use quick training and transfer learning to train models by using the understanding of other pre-trained model embeddings.
Automatically evaluate models for model prediction performance
Clarifai Enlight's robust set of tools can easily evaluate model performance to facilitate model interoperability. Customize modular model architectures to accelerate continuous model improvements. With Enlight Versioning leverage model, workflow, and dataset versioning capabilities to provide automatic snapshots every time models are trained. With Enlight Evaluations easily identify high-performing and low-performing concepts. Use Clarifai AI Lake, a repository of AI resources within one ecosystem, to easily share AI Apps across organizations.
Powerful tools to identify bias
Use Clarifai's pre-trained models to identify bias and unbalanced samples due to oversampling, the inclusion of data that is prohibited due to regulatory constraints, and other sources in model output. Clarifai's Demographic models and workflows automatically identify age, gender, and multi-cultural appearance to help you discover class imbalances.
Gauge model performance at varying levels of granularity
Clarifai Enlight Model Training Services allow you to request an evaluation by specifying a dataset with trusted annotations to compare model predictions against. View evaluation results within in-browser dashboards. Easily identify potential problem areas that to improve subsequent retraining efforts.
Understand model characteristics before deployment to debug predictions
Clarifai Enlight Evaluation Services makes it easy to train various task-specific model-types each with a set of preset training templates. Use inline tooltips and default values for customizable training parameters to configure model training for optimal performance.
Start building high-performance models today
Get started with 1,000 free operations each month. Request a free API key and start building today.
- Python
- cURL
- Java
- Node.js
- PHP
- Go
- Rust
- C++
- c#
- Swift
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))
curl -X POST
-H 'Authorization: Key YOUR_API_KEY'
-H "Content-Type: application/json"
-d '
{
"inputs": [
{
"data": {
"image": {
"url": "https://samples.clarifai.com/metro-north.jpg"
}
}
}
]
}'
https://api.clarifai.com/v2/models/e0be3b9d6a454f0493ac3a30784001ff/outputs
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()
Contact us to get started.
Talk to an AI expert to find the right solution for your use case.
If you are a customer and need support, we'll be happy to help. Contact support
Not you? Click here to reset
© 2023 Clarifai, Inc. Terms of Service Content TakedownPrivacy Policy
Platform
Solutions
Community
COMPANY
© 2023 Clarifai, Inc. Terms of Service Content TakedownPrivacy Policy