커스텀 모델 가중치 업로드
Roboflow는 사용자 맞춤형 학습 모델의 가중치를 Roboflow 프로젝트에 업로드하여 모델 배포에 사용할 수 있는 기능을 제공합니다.
사용자 정의 모델 훈련을 완료하면 모델 가중치를 Roboflow 프로젝트에 다시 업로드하여 다음의 이점을 활용하세요 Roboflow Inference.
모델 지원
참조를 지원되는 모델 표 훈련, 가중치 업로드 및 가중치 다운로드 호환성을 위해.
모델 가중치 업로드는 현재 다음에 대해 제공됩니다:
YOLOv5 (n, s, m, l, x) 객체 감지 및 인스턴스 분할
YOLOv7 인스턴스 분할 (yolov7-seg)
YOLOv8 (n, s, m, l, x) 객체 감지, 인스턴스 분할, 분류 및 키포인트 감지
YOLOv9 (n, s, m, l, x) 객체 감지
YOLOv10 (n, s, m, l, x) 객체 감지
YOLOv11 (n, s, m, l, x) 객체 감지, 인스턴스 분할
YOLOv12 (n, s, m, l, x) 객체 감지
YOLO-NAS (s, m, l) 객체 감지
RF-DETR (rfdetr-base, rfdetr-large) 객체 감지
Florence-2 (base, large) 멀티모달
PaliGemma (3b-pt-224, 3b-pt-448, 3b-pt-896) 멀티모달
PaliGemma 2 (3b-pt-224, 3b-pt-448, 3b-pt-896) 멀티모달
YOLOv8 모델은 다음으로 학습되어야 합니다
ultralytics==8.0.196YOLOv9 모델은 다음을 사용하여 학습 및 업로드되어야 합니다
ultralytics출처 https://github.com/WongKinYiu/yolov9YOLOv10 모델은 다음을 사용하여 학습 및 업로드되어야 합니다
ultralytics출처YOLOv11 모델은 다음으로 학습되어야 합니다
ultralytics<=8.3.40YOLOv12 모델은 다음을 사용하여 학습 및 업로드되어야 합니다
ultralytics출처 https://github.com/sunsmarterjie/yolov12
버전형 모델 vs 버전 없음 모델 업로드
Roboflow는 프로젝트에 모델을 배포하기 위한 두 가지 접근 방식을 제공하며, 각 접근 방식은 서로 다른 사용 사례와 조직적 요구를 충족합니다. 버전형 배포와 버전 없음 배포 중 선택은 데이터셋 버전과 함께 모델 진화를 추적할 필요가 있는지, 또는 워크스페이스 내 여러 프로젝트에서 모델을 공유하려는지에 따라 달라집니다.
버전 없음 배포
워크스페이스 수준에 연결됨
여러 프로젝트에 동시에 배포할 수 있음
동일한 워크스페이스 내 여러 프로젝트 간에 모델을 공유할 때 이상적임
버전형 배포
특정 프로젝트 버전에 연결됨
데이터셋 버전당 하나의 모델
데이터셋 버전과 함께 모델 진화를 추적하는 데 이상적임
Label Assist에서 모델을 사용할 때 이상적임
다른 모델을 훈련할 때 체크포인트로 모델을 사용할 때 이상적임
사용자 정의 가중치 업로드
시작하기 전에 다음이 있는지 확인하세요 roboflow>=1.1.53 버전 없음 배포를 사용하려면.
버전 없음 사용자 정의 가중치를 업로드하려면 다음을 사용하세요 workspace.deploy_model Python SDK의 메서드.
사용량
workspace.deploy_model(
model_type="yolov8", # 모델 유형
model_path="path/to/model", # 모델 디렉터리 경로
project_ids=["project1", "project2"], # 프로젝트 ID 목록
model_name="my-model", # 모델 이름(최소 1자 이상, 숫자 및 대시 허용)
filename="weights/best.pt" # 가중치 파일 경로(기본값)
)매개변수
model_type (str): 배포되는 모델의 유형 (예: "yolov8", "yolov11")
model_path (str): 모델 가중치가 포함된 디렉터리의 파일 경로
project_ids (list[str]): 모델을 배포할 프로젝트 ID 목록
model_name (str): 모델을 식별하는 이름 - (최소 1자 이상, 숫자 및 대시 허용)
filename (str, optional): 가중치 파일명(기본값: "weights/best.pt")
예시
from roboflow import Roboflow
rf = Roboflow(api_key="YOUR_API_KEY")
workspace = rf.workspace("YOUR_WORKSPACE")
workspace.deploy_model(
model_type="yolov8",
model_path="./runs/train/weights",
project_ids=["project-1", "project-2", "project-3"],
model_name="my-custom-model"
)시작하기 전에 다음이 있는지 확인하세요 roboflow>=1.0.1 다음을 사용하려면.deploy() 명령.
사용자 정의 가중치를 업로드하려면 다음을 사용하세요 version.deploy() Python SDK의 메서드.
사용량
version.deploy(
model_type="yolov8", # 모델 유형
model_path="path/to/model", # 모델 디렉터리 경로
filename="weights/best.pt" # 가중치 파일 경로(기본값)
)매개변수
model_type (str): 배포할 모델의 유형 (예: "yolov8", "yolov11")
model_path (str): 모델 가중치가 포함된 디렉터리의 파일 경로
filename (str, optional): 가중치 파일명(기본값: "weights/best.pt")
예시
from roboflow import Roboflow
rf = Roboflow(api_key="YOUR_API_KEY")
project = rf.workspace().project("PROJECT_ID")
#weights_filename을 지정할 수 있으며, 기본값은 "weights/best.pt"
version = project.version(VERSION_ID)
#예시1 - yolov8 모델의 디렉터리 경로가 "training1/model1.pt"인 경우
version.deploy("yolov8", "training1", "model1.pt")
#예시2 - yolov8 모델의 디렉터리 경로가 "training1/weights/best.pt"인 경우
version.deploy("yolov8", "training1")중요한 참고 사항
하나의 버전은 한 번에 하나의 훈련된 모델만 가질 수 있습니다
이미 모델이 있는 버전에 업로드를 시도하면 429 오류가 발생합니다
설치
Roboflow Python 패키지를 설치하려면 pip을 사용할 수 있습니다:
pip install roboflow
인증
어떤 CLI 명령을 사용하기 전에 Roboflow에 인증해야 합니다:
인증 명령을 실행하세요:
roboflow login터미널에 표시된 URL을 방문하세요: https://app.roboflow.com/auth-cli
웹사이트에서 인증 토큰을 가져오세요
터미널에 토큰을 붙여넣으세요
자격 증명은 자동으로 저장됩니다 ~/.config/roboflow/config.json
모델 가중치 업로드 중
Roboflow CLI는 학습된 모델 가중치를 Roboflow 프로젝트에 업로드하는 명령을 제공합니다. 이는 커스텀으로 학습한 모델을 Roboflow에 배포하려는 경우 유용합니다.
기본 사용법
roboflow upload_model -w <workspace> -p <project> -t <model_type> -m <model_path> [-v <version>] [-f <filename>] [-n <model_name>]매개변수
-w, --workspace: 워크스페이스 ID 또는 URL(선택 사항 - 지정하지 않으면 기본 워크스페이스 사용)-p, --project: 모델을 업로드할 프로젝트 ID(버전 없음 업로드의 경우 여러 프로젝트에 대해 여러 번 지정할 수 있음)-t, --model_type: 모델의 유형(예: yolov8, paligemma2)-m, --model_path: 학습된 모델 파일이 포함된 디렉터리 경로-v, --version_number: 모델을 업로드할 버전 번호(선택 사항)-f, --filename: 모델 파일명(기본값: "weights/best.pt")-n, --model_name: 모델 이름(버전 없음 모델 배포 시 필요)
예시
# 1. 특정 버전에 모델을 업로드하기:
roboflow upload_model -w my-workspace -p my-project -v 1 -t yolov8 -m ./weights
# 2. 여러 프로젝트에 버전 없음 모델 업로드하기:
roboflow upload_model -w my-workspace -p project1 -p project2 -t yolov11 -n my-model-v1 -m ./weights
# 3. 단일 프로젝트에 버전 없음 RF-DETR 중간 모델 업로드하기:
roboflow upload_model -w my-workspace -p my-project -t rfdetr-medium -n my-model-name -m ./ -f weights.pt다음 단계
Roboflow의 "Models" 탭에서 모델을 확인하세요
다음으로 모델을 로컬에서 실행하세요 Roboflow Inference Server.
Last updated
Was this helpful?