Label Studio是Heartex公司开发的一款在线数据标注工具,分为社区版(开源)和企业版(云服务,收费),企业版提供了增强的安全性(单点登录、角色基于访问控制、SOC2)、团队管理、分析和报告,以及正常运行时间和支持服务水平协议。即便是免费的开源版本,也足以支持广泛的标注类型,包括图像分类、目标检测、语义分割等。也支持多种数据类型,如文本、图像、音频和视频等。它还支持集成机器学习模型,可以满足各种复杂的数据标注需求。
安装Label Studio
Label Studio的安装方法有多种,主流的有pip、conda安装,也支持docker安装,这些安装方法,网上可以搜索到很多,这里不做介绍了。作为开发人员,更习惯于通过源码安装,本文就介绍如何从github上clone源码安装。
下载源码
- git clone https://github.com/HumanSignal/label-studio.git
由于label-studio的git仓库文件巨多,容易下载失败,建议用以下命令下载 - git clone https://github.com/HumanSignal/label-studio.git --depth 1
安装poetry
Poetry 是一个 Python 打包和依赖管理工具,旨在简化 Python 包的创建、发布和依赖管理。与传统的 setuptools、pip 和 requirements.txt 的组合相比,Poetry 提供了一个统一和简化的工具和工作流程。
cd label-studio
pip install poetry
安装后,执行以下命令
- poetry config list
cache-dir = "/Users/oheroj/Library/Caches/pypoetry"
experimental.system-git-client = false
installer.max-workers = null
installer.modern-installation = true
installer.no-binary = null
installer.parallel = true
keyring.enabled = true
solver.lazy-wheel = true
virtualenvs.create = true
virtualenvs.in-project = null
virtualenvs.options.always-copy = false
virtualenvs.options.no-pip = false
virtualenvs.options.no-setuptools = false
virtualenvs.options.system-site-packages = false
virtualenvs.path = "{cache-dir}/virtualenvs" # /Users/laijihua/Library/Caches/pypoetry/virtualenvs
virtualenvs.prefer-active-python = false
virtualenvs.prompt = "{project_name}-py{python_version}"
warnings.export = true
其中virtualenvs.create = true
若改为 false,则可以停止 poetry 在检查不到虚拟环境是自动创建的行为模式,但是建议不要改动。
而virtualenvs.in-project = false
就是我们要修改的目标,使用指令:
poetry config virtualenvs.in-project true
虚拟环境将创建在项目根目录下,而不是在缓存目录下。
安装依赖
执行以下指令,安装依赖:
poetry install
如果出现以下错误
- Installing label-studio-sdk (1.0.4 https://github.com/HumanSignal/label-studio-sdk/archive/0b7ece0554de291d05d446ea5240e56724e384e8.zip): Failed
SSLCertVerificationError
[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1129)
则执行以下指令
poetry add label-studio-sdk@latest
依赖包安装完成后,执行以下命令:
poetry run python label_studio/manage.py migrate
poetry run python label_studio/manage.py collectstatic
启动服务
poetry run python label_studio/manage.py runserver