-
Label Studio 사용하기 (1) - Label Studio의 기본 개념과, 실행하는 다양한 방법인공지능, 머신러닝 2022. 11. 8. 10:18반응형
기본 컨셉
- Label Studio는 하나의 웹 서비스의 개념으로 보는 것이 낫다.
- 이 웹 서비스를 우리의 로컬 환경에서 실행시키는 것이다. 원격 스토리지에 연결되는 것이 아니다.
- 이 웹 서비스에는 nginx, uwsgi, db가 존재한다.
- 웹 서비스에 접속해서 회원가입하고 로그인하는 것, 작업하는 것 모두 자신의 로컬 환경에 데이터가 쌓이는 것이다.
- db는 기본설정으로, mydata라는 폴더가 생성되고 그 안에 자리잡게 된다. 만약 실수로 mydata를 삭제하면 그동안의 데이터들이 다 삭제되는 것이다.
Docker Compose로 사용하기
https://github.com/heartexlabs/label-studio#run-with-docker-compose
- 위 Repository 중에서 docker-compose.yml만을 사용한다.
- 2022/11/08일 기준으로 docker-compose.yml의 수정이 일부 필요하다.
nginx > ports에 다음을 추가하자.
- "80:80"
즉, 아래 그림과 같이 만들면 된다. - sudo docker compose up으로 실행한다. (-d 옵션을 줄 수도 있다. 개인적으로는 tmux에 하나의 세션을 올려두는 것을 추천한다.)
공식 문서에서는 docker-compose up으로 한다. 하지만 우리는 docker-compose가 구버전인 것을 알고 있다. docker compose로 실행하자.
의문점: deploy폴더를 volumn으로 사용한다. 그리고 label-studio폴더 안의 deploy안에는 다양한 파일들이 있다. 하지만 그것 없이도 잘 동작한다. 이 폴더는 어떤 역할을 하고, 언제 왜 필요한 것인가?
docker run으로 사용하기.
docker run -it -p 8080:8080 -v $(pwd)/mydata:/label-studio/data heartexlabs/label-studio:latest
volumn되는 host의 mydata폴더 위치($(pwd)/mydata)를 주의하자. 원하면 변경하자. mydata를 지우는 순간, 그때까지 했던 모든 작업들이 자유를 찾아 떠나간다.
이렇게 실행하면 sqlite가 db로 설정된다.
pip 로 설치해서 사용하기.
# Requires Python >=3.7 <=3.9 pip install label-studio # Start the server at http://localhost:8080 label-studio
label-studio 명령으로 실행시, db와 여러 파일들의 위치가 출력된다.
mydata폴더는 지우면 안된다.
이 폴더 안에 DB 내용이 들어간다. 잘못해서 지우면 작업한 내용이 다 날아간다.
데이터 추가 및 라벨링 인터페이스 설정
너무 직관적이어서 금방 할 것이다. 라벨링 인터페이스 설정 같은 경우, 각 major task 별로 템플릿이 존재한다. 이를 참고하면 금방할 수 있다.
--------
한가지 느끼는건데,, 정말 label-studio는 documentation이 불친절하다.
레퍼런스가 많지도 않고, 오류나는 것들도 투성이이며(react modal 오류 등), 주의점도 알려주지 않는다.
추후에 label-studio 사용법 등에 관련하여 추가 포스팅할 예정이다.
반응형'인공지능, 머신러닝' 카테고리의 다른 글
인공지능은 과연 인간을 행복하게 하는가? (0) 2020.09.17 트롤리 딜레마에 대한 간단한 생각 (0) 2020.09.17 공부중 혼란.. TF-IDF 와 Word Embeding(단어 임베딩)의 관계 (1) 2020.02.02 딥러닝 공부 - 신경망 첫걸음 정리_6_실습_신경망 코드 작성 (1) 2020.01.30 딥러닝 공부 - 신경망 첫걸음 정리_5_실습_Numpy, Matplotlib, Class (0) 2020.01.30