label-studio README

The project's README from github.com/HumanSignal/label-studio. As one markdown file: README.md.

GitHub label-studio:build GitHub release

Website • Docs • Join Slack Community

What is Label Studio?

Label Studio is an open source data labeling tool. It lets you label data types like audio, text, images, videos, and time series with a simple and straightforward UI and export to various model formats. It can be used to prepare raw data or improve existing training data to get more accurate ML models.

Gif of Label Studio annotating different types of data

Have a custom dataset? You can customize Label Studio to fit your needs. Read an introductory blog post to learn more.

Try out Label Studio

Install Label Studio locally or deploy it in a cloud instance. Or sign up for a free trial of our Starter Cloud edition! You can learn more about what each edition offers here.

Install locally with Docker

Official Label Studio docker image is here and it can be downloaded with docker pull. Run Label Studio in a Docker container and access it at 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

You can find all the generated assets, including SQLite3 database storage label_studio.sqlite3 and uploaded files, in the ./mydata directory.

Override default Docker install

You can override the default launch command by appending the new arguments:

docker run -it -p 8080:8080 -v $(pwd)/mydata:/label-studio/data heartexlabs/label-studio:latest label-studio --log-level DEBUG

Build a local image with Docker

If you want to build a local image, run:

docker build -t heartexlabs/label-studio:latest .

Run with Docker Compose

Docker Compose script provides production-ready stack consisting of the following components:

To start using the app from http://localhost run this command:

docker-compose up

Run with Docker Compose + MinIO

You can also run it with an additional MinIO server for local S3 storage. This is particularly useful when you want to test the behavior with S3 storage on your local system. To start Label Studio in this way, you need to run the following command:

# Add sudo on Linux if you are not a member of the docker group
docker compose -f docker-compose.yml -f docker-compose.minio.yml up -d

If you do not have a static IP address, you must create an entry in your hosts file so that both Label Studio and your browser can access the MinIO server. For more detailed instructions, please refer to our guide on storing data.

Install locally with pip

# Requires Python >=3.10
pip install label-studio

# Start the server at http://localhost:8080
label-studio

Install locally with poetry

### install poetry
pip install poetry

### set poetry environment
poetry new my-label-studio
cd my-label-studio
poetry add label-studio

### activate poetry environment
poetry shell

### Start the server at http://localhost:8080
label-studio

Install locally with Anaconda

conda create --name label-studio
conda activate label-studio
conda install psycopg2
pip install label-studio

Install for local development

You can run the latest Label Studio version locally without installing the package from pypi.

# Install all package dependencies
pip install poetry
poetry install
# Run database migrations
python label_studio/manage.py migrate
python label_studio/manage.py collectstatic
# Start the server in development mode at http://localhost:8080
python label_studio/manage.py runserver

Deploy in a cloud instance

You can deploy Label Studio with one click in Heroku, Microsoft Azure, or Google Cloud Platform:

Deploy

Apply frontend changes

For information about updating the frontend, see label-studio/web/README.md.

Install dependencies on Windows

To run Label Studio on Windows, download and install the following wheel packages from Gohlke builds to ensure you're using the correct version of Python:

# Upgrade pip 
pip install -U pip

# If you're running Win64 with Python 3.8, install the packages downloaded from Gohlke:
pip install lxml‑4.5.0‑cp38‑cp38‑win_amd64.whl

# Install label studio
pip install label-studio

Run test suite

To add the tests' dependencies to your local install:

poetry install --with test

Alternatively, it is possible to run the unit tests from a Docker container in which the test dependencies are installed:

make build-testing-image
make docker-testing-shell

In either case, to run the unit tests:

cd label_studio

# sqlite3
DJANGO_DB=sqlite DJANGO_SETTINGS_MODULE=core.settings.label_studio pytest -vv

# postgres (assumes default postgres user,db,pass. Will not work in Docker
# testing container without additional configuration)
DJANGO_DB=default DJANGO_SETTINGS_MODULE=core.settings.label_studio pytest -vv

What you get from Label Studio

https://github.com/user-attachments/assets/525ad5ff-6904-4398-b507-7e8954268d69

Included templates for labeling data in Label Studio

Label Studio includes a variety of templates to help you label your data, or you can create your own using specifically designed configuration language. The most common templates and use cases for labeling include the following cases:

Set up machine learning models with Label Studio

Connect your favorite machine learning model using the Label Studio Machine Learning SDK. Follow these steps:

  1. Start your own machine learning backend server. See more detailed instructions.
  2. Connect Label Studio to the server on the model page found in project settings.

This lets you:

Integrate Label Studio with your existing tools

You can use Label Studio as an independent part of your machine learning workflow or integrate the frontend or backend into your existing tools.

Ecosystem

Project Description
label-studio Server, distributed as a pip package
Frontend library The Label Studio frontend library. This uses React to build the UI and mobx-state-tree for state management.
Data Manager library A library for the Data Manager, our data exploration tool.
label-studio-converter Encode labels in the format of your favorite machine learning library
label-studio-transformers Transformers library connected and configured for use with Label Studio

Citation

Include a citation for Label Studio in the References section of your articles:

@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 and
    Mikhail Malyuk and
    Andrey Holmanyuk and
    Nikolai Liubimov},
  year={2020-2025},
}

License

This software is licensed under the Apache 2.0 LICENSE © Heartex. 2020-2025

label-studio (HumanSignal/label-studio)

Searching Database…

这是干什么的?Label Studio 是一个开源的数据标注工具:你可以在浏览器界面里给音频、文本、图片、视频和时间序列数据打标签,并把结果导出成机器学习训练能直接用的格式。
它是需要注册使用的在线服务,还是我自己部署运行的?它是一个自己部署的网页应用:你把它装在本地或服务器上,然后通过浏览器使用。HumanSignal 也提供在线托管的 Starter Cloud 版本,有免费试用。
最快的上手方法是什么?最快的方式是用 Docker:用 docker pull 拉取官方镜像,启动容器,然后在浏览器里打开 Label Studio。也可以直接用 pip、poetry 或 Anaconda 安装。
我需要先装好 Python 吗?用 Docker 的话只需要装 Docker 本身。走 pip、poetry 或 Anaconda 这几条路则需要 Python——而且在 Windows 上,还必须从 Gohlke builds 下载与你的 Python 版本匹配的 lxml wheel 来安装。
默认的单容器部署能直接用在生产环境吗?不能——它默认跑在 SQLite3 上,README 自己都说性能不够好。生产环境它推荐用 Docker Compose 那套方案:Label Studio 配上 Nginx 代理和 PostgreSQL。
大家是用它从头做训练数据集,还是用来修现有的数据集?两种都有:它就是为准备原始数据或改进现有训练数据而设计的,目的是让机器学习模型更准确,一个人标还是团队一起标都行。
我的标注员不懂技术,他们需要装什么?什么都不用装——它是网页应用。服务器跑起来之后,标注员注册登录就能用,每条标注都会关联到他们自己的账号。
我可以把它部署到云服务器上,而不是装在自己电脑上吗?可以——README 里写了一键部署到 Heroku、Microsoft Azure 和 Google Cloud Platform 的方法。
如果我自己部署,我的数据会离开我的机器吗?数据就留在你部署的地方:生成的文件、SQLite 数据库和上传的文件都存放在本地的 ./mydata 目录里。只有你主动配置,才会去连接 Amazon S3 或 Google Cloud Storage 导入数据。
我可以免费商用吗,还是说有付费版本?核心部分采用 Apache 2.0 许可证(版权归 Heartex),所以自己部署做商业用途没问题。HumanSignal 围绕这个开源核心销售付费的云版本。
它能标注哪些类型的数据?图片、音频、文本、HTML、视频和时间序列。Label Studio 内置了常见标注任务的模板,你还可以用它自己的配置语言设计自定义界面。
我的模型可以预先打标签来帮人工提速吗?可以——通过 Label Studio Machine Learning SDK 接入:启动你的 ML backend 服务器,然后在项目设置里关联上。这样就能把模型预测结果当作预标注,标注数据进来时还能在线重新训练,并且支持主动学习,自动把精力集中在最难的样本上。
它支持导入和导出哪些格式?导入:本地文件,或者来自 Amazon S3 和 Google Cloud Storage 的云存储,支持 JSON、CSV、TSV、RAR 和 ZIP 压缩包。导出:多种模型格式,label-studio-converter 这个包还能把标签编码成你的机器学习库需要的格式。
Size
2.8 GB
Stars
28.5K
Age
7y
Commits · 90 Days