Kili Python SDK
SDK Reference: https://python-sdk-docs.kili-technology.com/
Kili Documentation: https://docs.kili-technology.com/docs
App: https://cloud.kili-technology.com/label/
Website: https://kili-technology.com/
What is Kili?
Kili is a platform that empowers a data-centric approach to Machine Learning through quality training data creation. It provides collaborative data annotation tools and APIs that enable quick iterations between reliable dataset building and model training. More info here.
Annotation tools examples
| Named Entities Extraction and Relation | PDF classification and bounding-box | Object detection (bounding-box) |
|---|---|---|
and many more.
What is Kili Python SDK?
Kili Python SDK is the Python client for the Kili platform. It allows to query and manipulate the main entities available in Kili, like projects, assets, labels, api keys...
It comes with several tutorials that demonstrate how to use it in the most frequent use cases.
Requirements
- Python >= 3.10
- Create and copy a Kili API key
- Add the
KILI_API_KEYvariable in your bash environment (or in the settings of your favorite IDE) by pasting the API key value you copied above:
export KILI_API_KEY='<your api key value here>'
Installation
Install the Kili client with pip:
pip install kili
If you want to contribute, here are the installation steps.
Usage
Instantiate the Kili client:
from kili.client import Kili
kili = Kili()
# You can now use the Kili client!
Note that you can also pass the API key as an argument of the Kili initialization:
kili = Kili(api_key='<your api key value here>')
For more details, read the SDK reference or the Kili documentation.
Tutorials
Check out our tutorials! They will guide you through the main features of the Kili client.
You can find several other recipes in this folder.
Examples
Here is a sample of the operations you can do with the Kili client:
Creating an annotation project
json_interface = {
"jobs": {
"CLASSIFICATION_JOB": {
"mlTask": "CLASSIFICATION",
"content": {
"categories": {
"RED": {"name": "Red"},
"BLACK": {"name": "Black"},
"WHITE": {"name": "White"},
"GREY": {"name": "Grey"}},
"input": "radio"
},
"instruction": "Color"
}
}
}
project_id = kili.create_project(
title="Color classification",
description="Project ",
input_type="IMAGE",
json_interface=json_interface
)["id"]
Importing data to annotate
assets = [
{
"externalId": "example 1",
"content": "https://images.caradisiac.com/logos/3/8/6/7/253867/S0-tesla-enregistre-d-importantes-pertes-au-premier-trimestre-175948.jpg",
},
{
"externalId": "example 2",
"content": "https://img.sportauto.fr/news/2018/11/28/1533574/1920%7C1280%7Cc096243e5460db3e5e70c773.jpg",
},
{
"externalId": "example 3",
"content": "./recipes/img/man_on_a_bike.jpeg",
},
]
external_id_array = [a.get("externalId") for a in assets]
content_array = [a.get("content") for a in assets]
kili.append_many_to_dataset(
project_id=project_id,
content_array=content_array,
external_id_array=external_id_array,
)
See the detailed example in this tutorial.
Importing predictions
prediction_examples = [
{
"external_id": "example 1",
"json_response": {
"CLASSIFICATION_JOB": {
"categories": [{"name": "GREY", "confidence": 46}]
}
},
},
{
"external_id": "example 2",
"json_response": {
"CLASSIFICATION_JOB": {
"categories": [{"name": "WHITE", "confidence": 89}]
}
},
}
]
kili.create_predictions(
project_id=project_id,
external_id_array=[p["external_id"] for p in prediction_examples],
json_response_array=[p["json_response"] for p in prediction_examples],
model_name="My SOTA model"
)
See detailed examples in this recipe.
Exporting labels
kili.export_labels("your_project_id", "export.zip", "yolo_v4")
See a detailed example in this tutorial.
Release files for kili 26.1.13
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| kili-26.1.13.tar.gz | 289.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| kili-26.1.13-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 689.3 kB
Release files / kili-26.1.13.tar.gz
| Download URL | kili-26.1.13.tar.gz |
|---|---|
| Size | 289.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2d5f66cb06dcabf7cf90a8e9b6b866dd9177103450dcc7f6189b1803d1631c2e
|
|
BLAKE2b-256 checksum How to use checksums |
5164dda31cc9fc05a20831a9c95b8749649f9f5788f250c1ff117257ec22571d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.
Transparency logRelease files / kili-26.1.13-py3-none-any.whl
| Download URL | kili-26.1.13-py3-none-any.whl |
|---|---|
| Size | 400.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
36808c5740f92ef2af26eb9c8c36596fb2bc5eedbe7123ec7e44006b6230d53b
|
|
BLAKE2b-256 checksum How to use checksums |
95df1f05268a64157de95d4757efa57168cbfa90dab517f5746dc5b97673190c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.
Transparency log