본문으로 건너뛰기

EVA Vision Release Notes

v1.3.1 (March 11, 2026)

  • 호환성: 이 버전은 EVA App v2.3.0 이상이 필요합니다.

성능 개선

  • 벤치마크 결과 기반 MODEL_RESOURCE_PROFILES 업데이트: 카메라 부하 테스트 결과를 반영하여 카메라-워커 매핑, 워커당 GPU 메모리, max_effective_cameras 제약 조건을 설정.
  • 동적 워커 스케일링 설정 업데이트: 운영 환경에서의 리소스 할당 정확도를 높이기 위해 스케일링 파라미터 조정.
  • MMGDino & LLMDet Vision Caching 적용: 중복 연산을 줄여 추론 처리량을 개선하기 위해 비전 캐싱 활성화.

버그 수정

  • get_gpu_info()에서 CUDA_VISIBLE_DEVICES 기준으로 GPU 필터링: 멀티 GPU 호스트에서 CUDA_VISIBLE_DEVICES 환경 변수를 반영하지 않아 GPU 수가 잘못 감지되던 문제 수정.

기타

  • number_of_netty_threads 및 worker_retry_timeout_sec 설정: 안정적인 워커 생명주기 관리를 위해 TorchServe 내부 스레딩 및 재시도 파라미터 설정.

v1.3.0 (February 12, 2026)

  • Compatibility: 이 버전은 EVA App v2.3.0 이상이 필요합니다.

Features

  • MM-Grounding-DINO (Swin-B) 모델 추가: 향상된 zero-shot 객체 감지 기능을 위해 Swin-B 백본을 사용하는 MM-Grounding DINO 모델을 도입했습니다.
  • 앱 카메라 관리 및 TorchServe 관리 래핑 API 구현: 카메라 연결 및 TorchServe 모델 라이프사이클을 관리하기 위한 새로운 API 인터페이스를 추가하여 비전 파이프라인 구성 요소에 대한 중앙 집중식 제어를 제공합니다.
  • 배치 카메라 API 추가: 여러 카메라 스트림에 대한 배치 처리 기능을 구현하여 동시 카메라 입력을 효율적으로 처리할 수 있습니다.
  • 모델 워커 관리 API 추가: 모델별 현재 워커 개수를 확인하는 GET models/workers/current 엔드포인트와 수동 워커 스케일링을 위한 PUT models/{model_name}/workers 엔드포인트를 구현하여 모델 서빙 리소스에 대한 세밀한 제어가 가능합니다.

Performance Improvements

  • LLMDet을 Swin-B 백본으로 업데이트: 감지 정확도 향상을 위해 LLMDet 모델을 이전 백본에서 Swin-B로 업그레이드했습니다.
  • LLMDet 텍스트 접두사 및 크롭 영역 수정: 텍스트 프롬프트 접두사 형식을 수정하고 적절한 감지 범위를 위해 크롭 영역 경계 문제(ymin: 1 → ymin: 0)를 해결했습니다.
  • RT-DETRv2 컴파일 최적화: 더 나은 추론 성능을 위해 디바이스 타입을 명시적으로 지정하고 RT-DETRv2 컴파일 모드를 reduce-overhead로 업데이트했습니다.
  • 모델 컴파일 안정성 향상: torch.compile 기능을 검증하기 위한 더미 forward pass를 추가했습니다. 컴파일이 실패하면 자동으로 원본 모델로 폴백하며, 안정성 향상을 위해 컴파일 모드를 기본값으로 설정했습니다.
  • 모델 워밍업 스크립트 구현: 초기 추론 지연 시간을 최적화하고 모델이 프로덕션 워크로드에 준비되도록 전용 워밍업 기능을 추가했습니다.
  • 교차 비율 임계값 조정: 더 정밀한 감지 중첩 필터링을 위해 교차 비율을 0.5에서 0.95로 증가시켰습니다.

Deployment

  • 환경 변수를 사용한 포트 설정 중앙화: 다양한 환경에서 향상된 배포 유연성과 설정 관리를 위해 환경 기반 포트 관리를 구현했습니다.
  • 리소스 관리 개선: 더 나은 시스템 안정성과 성능을 위해 리소스 할당 및 관리를 리팩토링했습니다.

v1.2.0 (December 24, 2025)

  • Compatibility: 이 버전은 EVA App v2.3.0 이상 버전이 필요합니다.

Features

  • RT-DETR V2 및 VitPose 모델 추가: 인간 전용 감지 시나리오를 위해 RT-DETR V2 객체 감지와 VitPose 포즈 추정 모델을 결합한 새로운 인간 감지 모델을 도입했습니다.
  • 신규 API 인터페이스 추가: EVA App v2.3.0과 호환되는 업데이트된 API 인터페이스를 구현하여 통합 기능을 강화했습니다.

Performance Improvements

  • RT-DETR V2 인퍼런스 성능 최적화: RT-DETR V2 모델에 BF16(bfloat16) 정밀도 및 torch.compile 최적화를 적용하여 인퍼런스 속도를 크게 향상시키고 메모리 사용량을 줄였습니다.

Deployment

  • Kubernetes 배포 지원 추가: Kubernetes 클러스터의 컨테이너화된 배포를 위한 Helm 차트 구성을 구현하여, 확장 가능하고 관리 용이한 운영 환경 배포가 가능해졌습니다.

v1.1.2 (November 14, 2025)

  • Compatibility: 이 버전은 EVA App v2.2.x 버전이 필요합니다.

Internal Improvements

  • 프록시 서버용 포그라운드/백그라운드 실행 모드 추가: 터미널 출력이 있는 포그라운드 모드 실행을 위한 --foreground (-f) 플래그를 도입했습니다. 운영 배포용 기본값은 nohup을 사용한 백그라운드 모드로 유지됩니다.
  • 세분화된 TorchServe 로그 보기 기능: 특정 TorchServe 구성 요소의 정밀한 디버깅 및 모니터링을 위해 개별 로그 파일(access, errors, metrics, model, warnings) 보기 명령을 구현했습니다.
  • 파일 메타데이터를 포함한 강화된 로그 뷰어: access, errors, model metrics 등 모든 TorchServe 로그에 대해 파일 크기, 로테이션 상태 및 구조화된 출력을 표시합니다.
  • log4j 설정을 위한 자동 절대 경로 해석 구현: 실행 컨텍스트나 작업 디렉토리에 관계없이 로그가 정상적으로 기록되도록 log4j2.xml의 상대 경로를 절대 경로로 동적 변환하는 함수를 추가했습니다.
  • 배포 스크립트 디버깅 기능 강화: 설정 파일 변경 사항, TorchServe 시작 명령, 시작 중 주기적 상태 확인, 시작 실패 시 에러 로그 자동 표시 등 종합적인 디버그 출력을 추가했습니다.
  • 운영 환경용 Docker 이미지 최적화: 포트 모니터링, 프로세스 관리 및 서비스 상태 확인에 필요한 필수 시스템 유틸리티(lsof, net-tools, procps)를 설치했습니다.
  • 자동 로테이션을 포함한 로그 보관 전략 구현: 로그 유형별로 차별화된 보관 정책(에러: 30일, 경고: 7일, 액세스/메트릭: 3일)을 구성하고 gzip 압축을 적용하여, 주요 데이터는 유지하면서 저장 공간 요구 사항을 90% 절감했습니다.
  • 지능형 메트릭 샘플링: 인퍼런스 지연 시간 및 성능 지표를 캡처하면서 트래픽이 많은 환경에서 로그 양을 약 80% 줄이기 위해 초당 6개의 샘플링을 구현했습니다.
  • 프록시 서버 로그 최적화: 높은 부하(초당 30회 이상의 요청) 상황에서 프록시 로그 양을 99% 줄이기 위해, 모든 ERROR/WARNING 로그는 보존하면서 INFO 레벨 로그에 1% 샘플링을 적용했습니다.
  • 서비스 포그라운드 실행을 위한 Dockerfile 업데이트: 적절한 Docker 로그 스트리밍을 지원하고 서비스 가용성을 유지하면서 컨테이너가 종료되는 것을 방지하기 위해 CMD를 --foreground 플래그 사용으로 수정했습니다.

Bug Fixes

  • CUDA 프로세서 초기화 수정: 프로세서가 CPU 대신 CUDA 장치에서 실행되도록 수정하여 CPU 사용량을 크게 줄이고 인퍼런스 성능을 개선했습니다.
  • 다중 경로 패턴에 대한 설정 파일 처리 수정: 다양한 환경에서 견고한 설정을 보장하기 위해 여러 log4j 경로 형식(file:///, file://, 상대 경로)을 처리하도록 sed 패턴을 업데이트했습니다.
  • 임시 설정 파일 정리 개선: 임시 설정 파일이 쌓이는 것을 방지하기 위해 clean 명령 및 에러 처리 경로에 .properties.tmp 파일의 명시적 삭제 로직을 추가했습니다.
  • log4j2.xml 설정 로드 문제 해결: 절대 경로를 포함한 vmargs=-Dlog4j.configurationFile을 사용하고 ${sys:log_location}을 직접적인 logs 경로 참조로 교체하여 경로 해석 문제를 해결했습니다.

v1.1.0 (October 16, 2025)

  • Compatibility: 이 버전은 EVA App v2.2.x 버전이 필요합니다.

Features

  • 객체 감지 기능 강화를 위한 신규 모델 추가: 오픈 보캐블러리(Open Vocabulary) 제로샷 객체 감지 성능 향상을 위해 OmDet-Turbo 및 LLMDet 모델을 통합했습니다.
  • 유연한 모델 엔드포인트 라우팅 추가: 다양한 모델의 예측 방식을 수용하기 위해 프록시 서버가 동적인 모델별 엔드포인트(기존 predictions/Owl-v2에서 predictions/\{model_name\}으로 변경)를 지원하도록 업데이트했습니다.
  • 종합 로그 관리 명령 도입: 서비스 모니터링 및 유지관리를 용이하게 하기 위해 새로운 logs, status, clean 명령을 추가했습니다.
  • logs: 줄 수 설정이 가능한 로그 보기 (예: ./run.sh logs proxy -n 100)
  • status: 실행 중인 서비스, 포트 상태 및 디스크 사용량 확인
  • clean: 오래된 로그 및 임시 파일 삭제 (예: ./run.sh clean --days 30)

Internal Improvements

  • 보관 정책을 포함한 자동 로그 로테이션 구현: 모든 TorchServe 로그에 대해 15일 보관, 일 단위 로테이션, 100MB 크기 제한 및 자동 .gz 압축을 적용한 Log4j2 기반 설정을 구성했습니다.
  • 서비스 정리 안정성 향상: 서비스를 중단하기 전 패턴 매칭 및 상태 확인을 통해 서비스 상태를 우아하게(gracefully) 처리하도록 stop_services() 함수를 개선했습니다.

v1.0.0 (Oct 1, 2025)

  • Compatibility: 이 버전은 EVA App v2.2.x 버전이 필요합니다.

Features

  • TorchServe 마이그레이션: 운영 수준의 모델 서빙과 안정성 및 확장성 향상을 위해 기존 ALO ML 프레임워크에서 TorchServe로 전환했습니다.
  • 실시간 HTTP 기반 인퍼런스: 더 빠르고 효율적인 처리를 위해 파일 기반 API 통신을 실시간 HTTP 기반 엔드포인트로 교체했습니다.
  • 통합 API 엔드포인트: TorchServe의 여러 포트(인퍼런스, 관리, 메트릭)를 일관된 경로의 단일 인터페이스로 통합하는 FastAPI 기반 프록시 서버를 도입했습니다.
  • 최적화된 OWLv2 모델 핸들러: 배치 인퍼런스 최적화를 위해 OWLv2 모델을 제로샷 감지와 이미지 가이드 감지 전용 핸들러로 분리했습니다.
  • 퓨샷(Few-shot) 학습 지원: 이미지 가이드 감지 핸들러를 통해 퓨샷 학습 기능을 추가했습니다.

Internal Improvements

  • 프로젝트 아키텍처 재구조화: 유지보수성 및 확장성 개선을 위해 TorchServe 핸들러와 프록시 서버 구성 요소를 명확히 분리하여 구조를 재편성했습니다.
  • 유틸리티 모듈 효율화: 코드베이스 정리 및 핸들러 간 재사용성 높이기 위해 유틸리티 모듈을 최적화했습니다.

v0.1.0 (Sep 30, 2025)

  • Compatibility Notice: 이 버전은 EVA App v1.1.0 ~ 2.1.2 버전이 필요합니다.

Features

  • 신규 감지 모델 추가: 오픈 보캐블러리 제로샷 객체 감지를 위해 LLMDet 및 OMDet-Turbo 모델을 통합했습니다.
  • 지원 모델 목록에서 YOLOE 모델 제거: 라이선스 문제로 인해 YOLOE 모델이 지원 대상에서 제외되었습니다.

Bug Fixes

  • Python 3.10 호환성 수정: 지원되는 Python 버전 전반에서 정상 작동하도록 Python 3.10과의 호환성 문제를 해결했습니다.
  • 바운딩 박스(Bbox) 처리 오류 수정: 퓨샷 학습 작업 중 여러 바운딩 박스를 처리할 때 발생하던 오류를 수정했습니다.