当前位置: 首页 > news >正文

从 0 安装 Label Studio:搭建可后台运行的数据标注平台(systemd 实践

本文将介绍如何使用 pip 安装 Label Studio,并通过 systemd 实现开机自启与后台运行,适用搭建个人项目的数据标注平台。

 一、Label Studio 简介

Label Studio 是一个开源、跨模态的数据标注工具,支持文本、图像、音频、视频、HTML等多种类型,适用于机器学习训练数据的可视化标注与协作。

主要特性:

  • 文本分类、实体标注、目标检测、图像分割等支持

  • 可视化配置标注模板(XML)

  • 导入/导出支持 JSON、CSV、COCO 等格式

  • 支持多用户、预标注、数据库持久化等功能


二、安装环境说明

  • 系统:Ubuntu 22.04(其他 Linux 发行版也支持)

  • Python:建议 3.8+

  • 安装方式:pip + systemd 后台部署

  • 数据库:PostgreSQL


 三、安装步骤详解

安装 Python venv 虚拟环境
apt install python3.10-venv -ypython3 -m venv env
source env/bin/activate
 配置国内 pip 源(加速安装)
mkdir -p ~/.pip/
vim ~/.pip/pip.conf

内容如下(清华源为例):

[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple[install]
trusted-host = pypi.tuna.tsinghua.edu.cn
安装 Label Studio
python -m pip install label-studio --trusted-host pypi.tuna.tsinghua.edu.cn

四、配置 systemd 后台服务

新建服务配置文件:
vim /etc/systemd/system/label-studio.service

内容如下:

[Unit]
Description=Label Studio Service
After=network.target[Service]
Type=simple
User=root
WorkingDirectory=/root
ExecStart=/root/env/bin/label-studio start \--username labelstudio@weidian.com \--password admin123 \--host 0.0.0.0 \--port 8080 \--no-browser
Restart=always
RestartSec=10
Environment=PYTHONUNBUFFERED=1
Environment=DJANGO_DB=default
Environment=POSTGRE_NAME=labelstudio
Environment=POSTGRE_USER=labelstudio
Environment=POSTGRE_PASSWORD=labelstudio
Environment=POSTGRE_PORT=5434
Environment=POSTGRE_HOST=10.x.x.x[Install]
WantedBy=multi-user.target

五、启动并设置开机自启

# 注册服务
systemctl daemon-reexec
systemctl daemon-reload# 启动服务
systemctl restart label-studio# 设置为开机启动
systemctl enable label-studio# 查看日志
journalctl -u label-studio -f

 六、访问 Label Studio

浏览器访问:http://服务器IP:8080

登录账号:

  • 用户名:labelstudio@weidian.com

  • 密码:admin123

首次登录可创建项目、导入数据并开始标注。


七、常见问题排查

问题原因解决方法
服务无法访问端口未开放检查防火墙 / 云服务安全组
启动失败Python 路径错误检查 ExecStart 指向虚拟环境路径
PostgreSQL 连接失败参数或权限错误psql 手动连接测试
日志无输出忘记重载 systemd执行 daemon-reexecdaemon-reload

 原文参考 / 推荐资料

  • 官方文档:https://labelstud.io/guide/install#Install-using-pip

http://www.dtcms.com/a/286810.html

相关文章:

  • 微服务项目总结
  • 【c++】中也有floor函数吗?他与JavaScript中的floor有啥区别?
  • 【iOS】消息传递和消息转发
  • Ubuntu系统下快速体验iperf3工具(网络性能测试)
  • CAN通信静默模式的原理与应用
  • 【JAVA】JVM内存泄漏围剿终极指南:Arthas在线诊断 + MAT内存分析完整链路
  • 代码随想录算法训练营第二十四天
  • 中国工业RFID前三品牌
  • 片上网络(NoC)拓扑结构比较
  • LeetCode 88 - Merge Sorted Array 合并有序数组
  • 策略模式+工厂模式(案例实践易懂版)
  • 半小时部署本地deepseek【1】
  • HTTP/2:突破性能瓶颈的Web传输革命
  • 低代码可视化工作流的系统设计与实现路径研究
  • 开启modbus tcp模拟调试
  • C++并发编程-14. 利用栅栏实现同步
  • 嵌入式系统内核镜像相关(十六)
  • Vue中使用vue-3d-model实现加载3D模型预览展示
  • docker命令参数详解
  • 数字化转型:概念性名词浅谈(第三十二讲)
  • 基础密码协议
  • Python os 模块:系统操作的 “百宝箱”
  • Java编程规范(简约版)
  • MoE,混合专家
  • pycharm结构查看器
  • 世界有色金属杂志世界有色金属杂志社世界有色金属编辑部2025年第9期目录
  • WAF能够解决数据库被渗透的问题吗?
  • Redis-集群与分区
  • 5W8-3D牢游戏超级大集合[2012年6月] 地址 + 解压密码
  • 更适合后端宝宝的前端三件套之HTML