【翻译】Label Studio——开源标注工具README.md
什么是 Label Studio?
Label Studio 是一款开源的数据标注工具。它允许您通过简单直观的用户界面(UI)标注音频、文本、图像、视频和时间序列等多种数据类型,并将标注结果导出为各种模型格式。它既可用于准备原始数据,也可用于改进现有的训练数据,从而获得更精确的机器学习(ML)模型。
试试看 Label Studio
您将从 Label Studio 获得什么
Label Studio 中包含的数据标注模板
使用 Label Studio 设置机器学习模型
将 Label Studio 与您现有的工具集成
Label Studio 标注不同类型数据的 Gif 动图
拥有自定义数据集? 您可以定制 Label Studio 以满足您的需求。阅读这篇介绍性博客文章以了解更多信息。
试试看 Label Studio
在本地安装 Label Studio 或将其部署在云实例中。或者注册免费试用我们的 Starter Cloud 版本!您可以在此处详细了解各版本的功能。
- 使用 Docker 在本地安装
- 使用 Docker Compose 运行 (Label Studio + Nginx + PostgreSQL)
- 使用 pip 在本地安装
- 使用 poetry 在本地安装
- 使用 Anaconda 在本地安装
- 为本地开发安装
- 在云实例中部署
使用 Docker 在本地安装
官方的 Label Studio docker 镜像在此处,可通过 docker pull
下载。在 Docker 容器中运行 Label Studio 并通过 http://localhost:8080 访问。
docker pull heartexlabs/label-studio:latest
docker run -it -p 8080:8080 -v $(pwd)/mydata:/label-studio/data heartexlabs/label-studio:latest
所有生成的资源,包括 SQLite3 数据库存储 label_studio.sqlite3
和上传的文件,都将位于 ./mydata
目录中。
覆盖默认的 Docker 安装
您可以通过附加新的参数来覆盖默认的启动命令:
docker run -it -p 8080:8080 -v $(pwd)/mydata:/label-studio/data heartexlabs/label-studio:latest label-studio --log-level DEBUG
使用 Docker 构建本地镜像
如果您想构建本地镜像,请运行:
docker build -t heartexlabs/label-studio:latest .
使用 Docker Compose 运行
Docker Compose 脚本提供了一个生产就绪的堆栈,包含以下组件:
- Label Studio
- Nginx - 代理 Web 服务器,用于加载各种静态数据,包括上传的音频、图像等。
- PostgreSQL - 生产就绪的数据库,替代性能较低的 SQLite3。
要从 http://localhost 开始使用该应用程序,请运行此命令:
docker-compose up
使用 Docker Compose + MinIO 运行
您还可以使用额外的 MinIO 服务器运行它,用于本地 S3 存储。当您想在本地系统上测试 S3 存储的行为时,这特别有用。要以这种方式启动 Label Studio,您需要运行以下命令:
# 在 Linux 上,如果您不是 docker 组的成员,请添加 sudo
docker compose -f docker-compose.yml -f docker-compose.minio.yml up -d
如果您没有静态 IP 地址,则必须在您的 hosts 文件中创建一个条目,以便 Label Studio 和您的浏览器都能访问 MinIO 服务器。更详细的说明,请参阅我们关于存储数据的指南。
使用 pip 在本地安装
# 需要 Python >=3.8
pip install label-studio# 在 http://localhost:8080 启动服务器
label-studio
使用 poetry 在本地安装
### 安装 poetry
pip install poetry### 设置 poetry 环境
poetry new my-label-studio
cd my-label-studio
poetry add label-studio### 激活 poetry 环境
poetry shell### 在 http://localhost:8080 启动服务器
label-studio
使用 Anaconda 在本地安装
conda create --name label-studio
conda activate label-studio
conda install psycopg2
pip install label-studio
为本地开发安装
您可以在本地运行最新的 Label Studio 版本,而无需从 pypi 安装软件包。
# 安装所有软件包依赖项
pip install poetry
poetry install
# 运行数据库迁移
python label_studio/manage.py migrate
python label_studio/manage.py collectstatic
# 在开发模式下于 http://localhost:8080 启动服务器
python label_studio/manage.py runserver
在云实例中部署
您可以一键在 Heroku、Microsoft Azure 或 Google Cloud Platform 中部署 Label Studio:
[部署]
应用前端更改
有关更新前端的信息,请参阅 label-studio/web/README.md
。
在 Windows 上安装依赖项
要在 Windows 上运行 Label Studio,请从 Gohlke builds 下载并安装以下 wheel 包,以确保您使用的是正确版本的 Python:
- lxml
# 升级 pip
pip install -U pip# 如果您使用的是 Win64 和 Python 3.8,安装从 Gohlke 下载的包:
pip install lxml‑4.5.0‑cp38‑cp38‑win_amd64.whl# 安装 label studio
pip install label-studio
运行测试套件
要将测试依赖项添加到本地安装中:
poetry install --with test
或者,也可以从安装了测试依赖项的 Docker 容器中运行单元测试:
make build-testing-image
make docker-testing-shell
无论哪种情况,运行单元测试:
cd label_studio# sqlite3
DJANGO_DB=sqlite DJANGO_SETTINGS_MODULE=core.settings.label_studio pytest -vv# postgres (假设使用默认的 postgres 用户、数据库、密码。如果没有额外配置,在 Docker 测试容器中将无法工作)
DJANGO_DB=default DJANGO_SETTINGS_MODULE=core.settings.label_studio pytest -vv
您将从 Label Studio 获得什么
[ls-overview.mp4]
- 多用户标注注册和登录,您创建的注释将与您的帐户关联。
- 多个项目,可在一个实例中处理您所有的数据集。
- 简化的设计帮助您专注于任务本身,而非如何使用软件。
- 可配置的标签格式让您可以自定义可视化界面以满足特定的标注需求。
- 支持多种数据类型,包括图像、音频、文本、HTML、时间序列和视频。
- 从文件或从 Amazon AWS S3、Google Cloud Storage 等云存储导入,或从 JSON、CSV、TSV、RAR 和 ZIP 存档导入。
- 与机器学习模型集成,以便您可以可视化和比较来自不同模型的预测,并执行预标注。
- 嵌入您的数据流水线:REST API 使其易于成为您流水线的一部分。
Label Studio 中包含的数据标注模板
Label Studio 包含各种模板来帮助您标注数据,或者您也可以使用专门设计的配置语言创建自己的模板。最常见的标注模板和用例包括:
[此处保留原始占位符或图片位置]
使用 Label Studio 设置机器学习模型
使用 Label Studio 机器学习 SDK 连接您最喜爱的机器学习模型。请按照以下步骤操作:
- 启动您自己的机器学习后端服务器。请参阅更详细的说明。
- 在项目设置中的模型页面将 Label Studio 连接到该服务器。
这使您可以:
- 使用模型预测对数据进行预标注。
- 在新注释被创建的同时进行在线学习并重新训练模型。
- 通过仅标注数据中最复杂的样本进行主动学习。
将 Label Studio 与您现有的工具集成
您可以将 Label Studio 用作机器学习工作流程中的一个独立部分,也可以将其前端或后端集成到您现有的工具中。
生态系统
项目 | 描述 |
---|---|
label-studio | 服务器,作为 pip 包分发 |
前端库 (Frontend library) | Label Studio 前端库。使用 React 构建 UI,使用 mobx-state-tree 进行状态管理。 |
数据管理器库 (Data Manager library) | 用于数据管理器(我们的数据探索工具)的库。 |
label-studio-converter | 以您喜爱的机器学习库的格式编码标签 |
label-studio-transformers | 为与 Label Studio 一起使用而连接和配置的 Transformers 库 |
引用
在您文章的参考文献部分包含对 Label Studio 的引用:
@misc{Label Studio,title={{Label Studio}: Data labeling software},url={https://github.com/HumanSignal/label-studio},note={Open source software available from https://github.com/HumanSignal/label-studio},author={Maxim Tkachenko andMikhail Malyuk andAndrey Holmanyuk andNikolai Liubimov},year={2020-2025},
}
许可证
本软件根据 Apache 2.0 许可证授权 © Heartex. 2020-2025