공부하는삶

예전에 다른 회사 면접을 봤을 때, 면접 질문 중 하나가 'WanDB 사용 해 봤어요?' 라는 것이었다. 말만 들어봤지 딱히 사용은 안 해봐서... 프로젝트에 들어가면 반드시 WanDB로 학습하고 있는 것 모니터링을 해보자 결심을 하였다. WanDB는 모델을 학습하면서 데이터셋과 파라미터들을 관리하는 대표적인 MLOps 솔루션이다. 하나의 모델을 파인튜닝을 하다보면 어떤 모델이 최고인지 잊어버리기도 하고 결국 엑셀파일이나 로그파일을 뒤져가면서 정리할 때가 있는데 WanDB는 간단한 명령어를 통해서, 모델의 최적 파라미터들을 관리할 수 있다. WanDB를 로컬에서 사용할 것이라면, 간단하게 회원가입을 진행한 후 해당 터미널에서 아래와 같이 명령어를 입력하고 나서, 로그인후 보이는 API Key를 붙여놓으면..
- 이 포스트는 macOS(apple silicon)기준으로 작성을 하였다 kubectl 설치 쿠버네티스 커맨드 라인 도구인 kubectl을 사용하면 쿠버네티스 클러스터에 대해 명령을 실행할 수 있다. kubectl 을 사용하여 애플리케이션을 배포하고, 클러스터 리소스를 검사 및 관리하고, 로그를 볼 수 있다. kubectl 전체 명령어를 포함한 추가 정보는 kubectl 레퍼런스 문서에서 확인할 수 있다. 1. 최신 릴리스를 다운로드한다. ## 특정 버전을 설치할 경우 $(curl -L -s https://dl.k8s.io/release/stable.txt) 대신 다른 버전을 입력 ex. v1.22.4 curl -LO "https://dl.k8s.io/release/$(curl -L -s https:/..
1. Install CVAT 1. 구축 환경 OS : Ubuntu 도커 설치 필수 NVIDIA 드라이버 설치 되어 있어야 함 NVIDIA-Container-Toolkit 설치되어 있어야 함 2. 설치 방법 https://opencv.github.io/cvat/docs/administration/basics/installation/ 최신 버전으로 설치할 경우 도커를 올리고 접속하면, Cannot connect to the server 문제가 발생하므로, 가능하면 2.2.0 버전으로 설치할 것을 추천함 Cannot connect to the server Make sure the CVAT backend and all necessary services (Database, Redis and Open Policy ..
행동 영상을 탐지한 후에, BBOX에 한글을 출력하고자 했다. ChatGPT에게 물어봤더니, opencv-contrib-python을 설치한 후 freetype 으로 하면 된다고 아래와 같이 샘플 코드를 제시해주었다 import cv2 import numpy as np # 이미지를 불러오거나 생성합니다. image = np.zeros((500, 500, 3), dtype=np.uint8) # freetype 모듈을 불러옵니다. ft = cv2.freetype.createFreeType2() # 한글 폰트 파일의 경로를 지정합니다. font_path = 'NanumGothic.ttf' ft.loadFontData(fontFileName=font_path, id=0) # 이미지에 텍스트를 추가합니다. 위치,..
Use HTTPException FAstAPI 에서 오류는 HTTPException 클래스를 사용해 예외를 발생시켜 처리한다. HPPTException 클래스는 아래 세 개의 인수를 받는다 status_code : 예외 처리시 반환할 상태코드 detail : 클라이언트에게 전달한 메시지 headers : 헤더를 요구하거나 응답을 위한 선택적 인수 from fastapi import FastAPI, HTTPException app = FastAPI() items = {"foo": "The Foo Wrestlers"} @app.get("/items-header/{item_id}") async def read_item_header(item_id: str): if item_id not in items: rais..
라우트는 HTTP 요청 메서드의 요청을 수락하고 선택적으로 인수를 받을 수 있도록 정의되는데, 특정 라우트로 요청이 전달되면 애플리케이션은 route handler가 요청을 처리하기 전에 해당 라우트가 정의 되어 있는지 확인하다. 핸들러는 서버로 전송된 요청을 처리하는 함수다. 1. FastAPI() 클래스를 사용한 라우팅 처리 from fastapi import FastAPI app = FastAPI() @app.get("/") async def root(): return {"message": "Hello World"} 이렇게 FastAPI() 클래스를 라우팅 작업에 사용할 수는 있지만, 이 방식은 라우팅 중에 단일 경로만 고려하는 애플리케이션으로 일반적으로 사용된다. 고유한 함수를 처리하는 각각의 라..
Hanna 한나
'공부하는삶' 카테고리의 글 목록