roboflow/roboflow-python
The official Roboflow Python package. Manage your datasets, models, and deployments. Roboflow has everything you need to build a computer vision application.
📦 roboflow‑python이란 무엇인가요?
Roboflow‑python은 컴퓨터 비전 모델을 구축, 학습 및 배포하는 플랫폼인 Roboflow의 공식 Python 클라이언트입니다. 이 라이브러리를 사용하면 자신의 코드에서 Roboflow 서비스와 통신하여 프로젝트 생성, 이미지 및 주석 업로드, 학습 작업 시작, 클라우드(또는 자체 호스팅 추론 서버)에 있는 모델에서 추론을 실행할 수 있습니다.
🔧 주요 기능 (README 설명 기준)
| 영역 | 패키지로 수행할 수 있는 작업 |
|---|---|
| 워크스페이스 및 프로젝트 관리 | 새 프로젝트 생성, 기존 프로젝트 목록 확인, 이미지 검색, 일반적인 형식(COCO, YOLO, VOC 등)으로 데이터셋 내보내기. |
| 데이터셋 처리 | 주석이 포함된 로컬 이미지 폴더 업로드, 주석 형식 선택, Roboflow를 통한 데이터 저장 및 버전 관리. |
| 모델 학습 | Roboflow 플랫폼에서 직접 비전 모델(객체 탐지, 분류, 세그멘테이션 등) 학습 트리거. |
| 모델 배포 및 추론 | 학습된 가중치를 Roboflow 버전에 배포한 후 model.predict(...)를 호출하여 호스팅 모델 또는 자체 호스팅 Roboflow‑Inference 서버에서 예측 결과 획득. |
| CLI | 라이브러리의 일부가 명령줄 도구로 노출되어 인증, 검색, 데이터셋 내보내기와 같은 빠른 작업 수행 가능. |
| 경량 설치 | roboflow-slim은 무거운 의존성(OpenCV, NumPy, Pillow)을 제거하여 임베디드 또는 CI 환경에 적합. |
🚀 일반적인 워크플로우 (퀵스타트 예제)
import roboflow
# 인증 – login() 또는 API 키 전달
rf = roboflow.Roboflow(api_key="YOUR_KEY")
workspace = rf.workspace()
# 새로운 객체 탐지 프로젝트 생성
project = workspace.create_project(
project_name="Flower detector",
project_type="object-detection",
project_license="MIT",
annotation="flowers",
)
# 준비된 데이터셋 폴더 업로드 (예: YOLOv8 형식)
workspace.upload_dataset(
dataset_path="./dataset/",
dataset_format="yolov8",
project_type="object-detection",
)
# 버전 선택, 사용자 지정 가중치 배포 및 추론 실행
version = project.version("1")
version.deploy(model_type="yolov10", model_path="/runs/detect/train/", filename="weights.pt")
model = version.models()[0]
pred = model.predict("https://example.com/image.jpg", hosted=True).json()
print(pred)
제공된 CLI 명령을 사용하여 터미널에서 동일한 단계를 수행할 수도 있습니다.
📦 설치 참고 사항
- 표준 설치 –
pip install roboflow(OpenCV, Pillow, NumPy와 같은 이미지 처리 라이브러리 포함). - 선택적 확장 기능 – 데스크톱 전용 기능을 위한
roboflow[desktop],pillow‑heif를 통한 HEIC/HEIF 디코딩을 추가하는roboflow[heic]. - 경량 버전 –
pip install roboflow-slim은 무거운 의존성을 제거하여 패키지 크기를 약 400MB에서 약 50MB로 줄여주며, 엣지 장치나 서버리스 함수에 유용합니다. - 소스에서 설치 – 저장소를 복제하고 가상 환경 내에서
pip install .을 실행합니다.
🌍 AI 생태계에서의 위치
Roboflow‑python은 그 자체로 학습 프레임워크(YOLO, Faster‑RCNN 등을 구현하는 것)가 아닙니다. 대신 Roboflow 플랫폼에서 데이터와 모델 라이프사이클을 조정하는 서비스 클라이언트입니다. 데이터셋, 실험 및 배포를 관리하는 다른 AI‑ops 도구와 함께 작동하며, 개발자가 저수준 인프라를 직접 다루지 않고도 컴퓨터 비전 파이프라인을 Python 애플리케이션에 쉽게 통합할 수 있도록 돕습니다.
🙋♀️ 권장 사용자
- 개발자: 비전 기능이 필요한 앱을 구축하고 학습/추론을 관리형 서비스로 오프로드하려는 경우.
- 데이터 과학자: 데이터셋 버전 관리, 증강 실행, 학습 작업 시작을 프로그래밍 방식으로 수행하려는 경우.
- 엣지/CI 엔지니어: 제한된 환경에서 플랫폼과 상호 작용하기 위해 경량 클라이언트(
roboflow-slim)가 필요한 경우.
📚 추가 읽기 자료
- 전체 API 참조: https://docs.roboflow.com/api-reference/introduction
- 패키지 개발자 문서: https://roboflow.github.io/roboflow-python/
- 커뮤니티 및 지원: YouTube 채널, Discord/포럼 링크, Roboflow 블로그(모두 README에 링크됨).
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트