프로젝트 목표: 오디오 및 비디오 파일(32MB 미만)을 입력 받아 음원 분리 후 결과 파일의 경로를 반환하는 API 개발 및 클라우드(GCP)에 배포
기간: 2022년 6월 ~ 2022년 7월
지연 시간이 가장 짧도록 단일 리전 (서울) 설정
외부에서 오디오 파일을 다운로드 가능해야 하므로 세분화된 엑세스 제어 설정
컬렉션은 미리 명시적으로 만들 필요 없음, 문서에 데이터를 추가할 때 암시적으로 생성됨
키 파일을 key.json으로 변경하는 이유는 Dockerfile 중 환경변수를 다음와 같이 작성했기 때문 (GOOGLE_APPLICATION_CREDENTIALS=key.json)
Separate API를 먼저 띄우는 이유는 Main API가 Separate API의 주소를 환경변수로 받아야하기 때문
Separate API에서 발생하는 호출은 Main API 밖에 없으므로 인그레스는 내부 트래픽만 허용
- 컨테이너 설정: 포트=7000, 명령어 및 인수=uvicorn main:app --host 0.0.0.0 --port 7000, CPU=4, 메모리=8GiB (로컬 기준 test_3m35s_1080p.mp4로 테스트 시 8GiB를 넘지 않았음), 요청 시간 제한=15분, 컨테이너 당 최대 요청 수=1(음원 분리 작업을 여러 개 동시에 처리하기에 리소스가 부족함)
- 변수 및 보안 비밀 설정: BUCKET_NAME, COLLECTION_NAME 설정
- 연결 설정: VPC 커넥터 설정
- 컨테이너 설정: 포트=8000, 명령어 및 인수=uvicorn main:app --host 0.0.0.0 --port 8000, CPU=2, 메모리=4GiB, 요청 시간 제한=5분, 컨테이너 당 최대 요청 수=40
- 변수 및 보안 비밀 설정: SEP_API_URL, BUCKET_NAME, COLLECTION_NAME 설정
- 연결 설정: VPC 커넥터 설정
'프로젝트' 카테고리의 다른 글
배우 및 행동 기반 클립 추출 서비스 (0) | 2023.03.10 |
---|---|
서지간 유사도 측정 API 배포 (0) | 2023.02.22 |
상품 카테고리 분류 서비스 개발 (0) | 2022.05.20 |