Tutorial

Each of the examples below is a small independent code snippet within 10 lines that could work by copy and paste to a python source code file. By playing with them, you should be getting started with Clarifai API. For more information about the API, check the API Reference.

Create App

1# Note: CLARIFAI_PAT must be set as env variable.
2from clarifai.client.user import User
3client = User(user_id="user_id")
4
5# Get all apps
6apps = client.list_apps()
7
8# Create app and dataset
9app = client.create_app(app_id="demo_app", base_workflow="Universal")

Create Dataset

1# Note: CLARIFAI_PAT must be set as env variable.
2from clarifai.client.app import App
3
4# Get an app
5app = App(user_id="user_id", app_id="app_id")
6
7 # Create a dataset
8dataset = app.create_dataset(dataset_id="demo_dataset")

Upload Dataset

 1# Note: CLARIFAI_PAT must be set as env variable.
 2from clarifai.client.dataset import Dataset
 3
 4# Get a dataset
 5dataset = Dataset(user_id="user_id", app_id="app_id", dataset_id="dataset_id")
 6
 7# Upload dataset from loaders
 8dataset.upload_dataset(task='visual_segmentation', split="train", dataset_loader='coco_segmentation')
 9
10# Upload a dataset from local folder
11dataset.upload_from_folder(folder_path='folder_path', input_type='text', labels=True)
12
13# Upload a text dataset from csv file
14dataset.upload_from_csv(csv_path='csv_path', labels=True)

Upload Inputs

 1from clarifai.client.user import User
 2app = User(user_id="user_id").app(app_id="app_id")
 3input_obj = app.inputs()
 4
 5#input upload from url
 6input_obj.upload_from_url(input_id = 'demo', image_url='https://samples.clarifai.com/metro-north.jpg')
 7
 8#input upload from filename
 9input_obj.upload_from_file(input_id = 'demo', video_file='demo.mp4')
10
11# text upload
12input_obj.upload_text(input_id = 'demo', raw_text = 'This is a test')

List Apps

1# Note: CLARIFAI_PAT must be set as env variable.
2from clarifai.client.user import User
3client = User(user_id="user_id")
4
5# Get all apps
6apps = client.list_apps()

List Datasets

1# Note: CLARIFAI_PAT must be set as env variable.
2from clarifai.client.app import App
3
4# Get an app
5app = App(user_id="user_id", app_id="app_id")
6
7# Get all datasets
8datasets = app.list_datasets()

List Models

 1# Note: CLARIFAI_PAT must be set as env variable.
 2from clarifai.client.app import App
 3
 4# Get an app
 5app = App(user_id="user_id", app_id="app_id")
 6
 7# Get all models
 8models = app.list_models()
 9
10# List all models in community filtered by model_type, description
11all_llm_community_models = App().list_models(filter_by={"query": "LLM",
12                                                     "model_type_id": "text-to-text"}, only_in_app=False)

List Workflows

 1# Note: CLARIFAI_PAT must be set as env variable.
 2from clarifai.client.app import App
 3
 4# Get an app
 5app = App(user_id="user_id", app_id="app_id")
 6
 7# List all workflow in an app
 8workflows = app.list_workflows()
 9
10# List all workflow in community filtered by description
11all_face_community_workflows = App().list_workflows(filter_by={"query": "face"}, only_in_app=False) # Get all face related workflows

Delete App

1# Note: CLARIFAI_PAT must be set as env variable.
2from clarifai.client.user import User
3client = User(user_id="user_id")
4
5# Delete an app
6client.delete_app(app_id="app_id")