Kili Python SDK 使用教程
2025-04-17 10:39:38作者:沈韬淼Beryl
1. 项目介绍
Kili Python SDK 是 Kili 平台的 Python 客户端。Kili 平台致力于通过高质量训练数据创建,推动机器学习的数据中心方法。它提供了协作数据标注工具和 API,使得可靠数据集构建与模型训练之间的迭代快速进行。Kili Python SDK 允许用户查询和操作 Kili 平台中的主要实体,如项目、资产、标签、API 密钥等。
2. 项目快速启动
在开始之前,确保你的环境中安装了 Python(版本至少为 3.8)。
安装 Kili Python SDK
通过 pip 命令安装 Kili Python SDK:
pip install kili
配置 API 密钥
首先,你需要在 Kili 平台上创建一个 API 密钥,并将其配置到你的环境中:
export KILI_API_KEY='你的 KILI_API_KEY'
初始化 Kili 客户端
在你的 Python 脚本中,初始化 Kili 客户端:
from kili.client import Kili
kili = Kili(api_key='你的 KILI_API_KEY')
或者,你可以在创建 Kili 实例时直接传递 API 密钥:
kili = Kili()
3. 应用案例和最佳实践
以下是使用 Kili Python SDK 的一些常见应用案例。
创建标注项目
创建一个标注项目,首先需要定义项目的 JSON 接口:
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"]
导入数据以进行标注
接下来,将数据导入项目中以便标注:
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["externalId"] for a in assets]
content_array = [a["content"] for a in assets]
kili.append_many_to_dataset(
project_id=project_id,
content_array=content_array,
external_id_array=external_id_array,
)
导出标注结果
标注完成后,可以导出标注结果:
kili.export_labels("your_project_id", "export.zip", "yolo_v4")
4. 典型生态项目
在 Kili Python SDK 的生态中,你可以找到各种项目和工具,例如用于图像标注、文本标注、视频分类等的项目。这些项目通常遵循上述的最佳实践,并且可以与 Kili 平台无缝集成,以提供更加丰富和灵活的数据标注解决方案。通过参考这些项目,你可以快速搭建自己的数据标注流水线,从而加速机器学习模型的开发和训练过程。
登录后查看全文
热门项目推荐
GLM-5智谱 AI 正式发布 GLM-5,旨在应对复杂系统工程和长时域智能体任务。Jinja00
GLM-5-w4a8GLM-5-w4a8基于混合专家架构,专为复杂系统工程与长周期智能体任务设计。支持单/多节点部署,适配Atlas 800T A3,采用w4a8量化技术,结合vLLM推理优化,高效平衡性能与精度,助力智能应用开发Jinja00- QQwen3.5-397B-A17BQwen3.5 实现了重大飞跃,整合了多模态学习、架构效率、强化学习规模以及全球可访问性等方面的突破性进展,旨在为开发者和企业赋予前所未有的能力与效率。Jinja00
three-cesium-examplesthree.js cesium.js 原生案例JavaScript00
weapp-tailwindcssweapp-tailwindcss - bring tailwindcss to weapp ! 把 tailwindcss 原子化思想带入小程序开发吧 !TypeScript00
CherryUSBCherryUSB 是一个小而美的、可移植性高的、用于嵌入式系统(带 USB IP)的高性能 USB 主从协议栈C00
项目优选
收起
deepin linux kernel
C
27
11
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
580
3.94 K
Ascend Extension for PyTorch
Python
408
489
React Native鸿蒙化仓库
JavaScript
315
367
暂无简介
Dart
821
201
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
904
718
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
360
226
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
1.41 K
795
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
69
21
昇腾LLM分布式训练框架
Python
125
149