본문으로 건너뛰기

실시간 스트리밍 렌더링 최적화 - Canvas, Web Worker, OffscreenCanvas 기반 EVA 아키텍처 개선기

· 약 6분
junhyung yoo
junhyung yoo
Product Developer

안녕하세요. EVA 팀에서 프론트엔드 개발을 담당하고 있는 유준형입니다.

EVA 서비스의 핵심 기능 중 하나는 수십 대의 카메라 영상을 실시간으로 확인하는 실시간 스트리밍입니다. 단순히 영상을 짧게 확인하는 수준을 넘어, 현장을 장시간 관제해야 하는 사용자가 늘어남에 따라 예상치 못한 성능 병목 현상이 발생하기 시작했습니다.

"화면을 오래 켜두면 브라우저가 점점 느려지다가 결국 탭이 죽어버려요."

이 문제를 해결하기 위해 저희 팀이 진행했던 Canvas, Web Worker, 그리고 OffscreenCanvas를 이용한 렌더링 구조 개선 여정을 공유하고자 합니다.


1. 배경: 왜 오래 켜둘수록 문제가 생겼을까?

초기 EVA의 스트리밍 방식은 가장 보편적인 <img> 태그와 Blob(Object URL)의 조합이었습니다.

기존 방식 (Blob 기반 렌더링)

  1. 서버로부터 MJPEG 스트림 데이터를 Blob 형태로 수신합니다.
  2. URL.createObjectURL(blob)으로 임시 URL을 생성합니다.
  3. <img> 태그의 src에 할당하여 브라우저가 이미지를 그리게 합니다.

구현은 매우 간단했지만, '장시간 관제'라는 특수한 환경에서 두 가지 치명적인 문제가 드러났습니다.

  • 메모리 오버헤드: 매 프레임(초당 30회 내외)마다 고유한 URL 문자열이 생성됩니다. revokeObjectURL을 호출하더라도 브라우저 내부의 이미지 캐시와 가비지 컬렉터(GC)의 지연으로 인해 메모리 점유율이 우상향하며 결국 Out of Memory(OOM) 오류를 유발했습니다.
  • 메인 스레드 블로킹: 이미지의 디코딩 과정이 메인 스레드(UI 스레드)에서 발생합니다. 고해상도 영상을 처리할 때 이벤트 루프가 지연되면서 클릭이나 스크롤 같은 UI 반응이 느려지는 Jank 현상이 발생했습니다.

2. 네트워크 탭 분석: MJPEG의 정체

성능 개선을 위해 가장 먼저 분석한 것은 네트워크 레이어였습니다. MJPEG 스트리밍은 일반적인 HTTP 요청과 다릅니다.

multipart/x-mixed-replace

MJPEG은 Content-Type: multipart/x-mixed-replace; boundary=... 헤더를 사용합니다. 이는 단일 HTTP 연결을 통해 서버가 끊임없이 이미지 프레임을 밀어주는 방식입니다.

  • 네트워크 탭의 특징: 요청이 완료되지 않고 계속 'Pending' 상태로 유지됩니다. 브라우저는 연결을 끊지 않고 계속해서 들어오는 바이너리 데이터를 받아들입니다.
  • 바이너리 데이터 구조: 각 프레임은 특정 boundary 문자열로 구분된 JPEG 바이너리 데이터(0xFF 0xD8 ... 0xFF 0xD9)입니다.

기존 방식은 이 거대한 바이너리 덩어리를 통째로 Blob으로 만들어 메인 스레드에서 파싱했기 때문에, 데이터가 쌓일수록 브라우저의 부담은 기하급수적으로 늘어날 수밖에 없는 구조였습니다.


3. 1차 개선: Canvas와 createImageBitmap

저희는 먼저 브라우저의 가비지 컬렉터에 의존하던 메모리 관리 방식을 명시적 관리 방식으로 전환하기 위해 Canvas API를 도입했습니다.

비동기 비트맵 렌더링

createImageBitmap API는 이미지를 화면에 그리기 전에 백그라운드에서 비동기적으로 디코딩할 수 있게 해줍니다.

// @src/entities/devices/components/stream/MJPEGStream.tsx
// 캔버스에 비트맵을 그린 직후 즉시 메모리 해제
const bitmap = await createImageBitmap(blob);
ctx.drawImage(bitmap, 0, 0);
bitmap.close(); // 명시적으로 메모리 반환

이 방식의 핵심은 bitmap.close()입니다. 개발자가 직접 사용이 끝난 비트맵 리소스를 파괴함으로써 메모리 점유율을 일정하게 유지할 수 있게 되었습니다. 또한 <img> 태그의 src 변경 시 발생하는 리플로우(Reflow) 를 제거하고 GPU 가속을 활용하는 캔버스 드로잉으로 전환하며 렌더링 효율을 높였습니다.


4. 2차 개선: Web Worker를 통한 연산 분리

렌더링은 가벼워졌지만, 스트림 데이터를 수신하고 바이너리에서 JPEG 프레임을 찾아내는(Boundary Parsing) 작업은 여전히 메인 스레드의 몫이었습니다. 초당 수백만 바이트의 데이터를 실시간으로 문자열 검색하는 것은 CPU에 큰 부담을 줍니다.

이를 해결하기 위해 Web Worker를 도입하여 "데이터 처리는 백그라운드에서, 화면 그리기는 메인에서" 라는 역할 분담을 적용했습니다.

데이터 전송 최적화 (Transferable Objects)

워커에서 메인 스레드로 대량의 이미지를 보낼 때 데이터를 복제(Copy)하면 심각한 성능 저하가 발생합니다. 저희는 Transferable Objects 기능을 사용하여 데이터 복사 없이 메모리의 소유권만 이전하는 Zero-copy 방식을 택했습니다.


5. 최종 개선: OffscreenCanvas의 도입

하지만 여전히 최종 드로잉 작업은 메인 스레드에서 일어나야 했습니다. 마지막 퍼즐 조각은 OffscreenCanvas였습니다. 이 API를 사용하면 캔버스의 제어권 자체를 워커로 넘길 수 있습니다.

메인 스레드가 블락되어도(왼쪽) 워커에서 동작하는 이미지 처리는 중단 없이 실시간으로 반영됩니다. (출처: 카카오 테크 블로그)

렌더링 부하 0%를 향하여

transferControlToOffscreen()을 통해 제어권을 넘긴 후, 워커 내부에서 직접 렌더링을 수행합니다.

// @src/entities/devices/components/stream/mjpeg.worker.ts
const bitmap = await createImageBitmap(blob);
if (ctx && canvas) {
// 워커가 직접 캔버스에 드로잉 (메인 스레드 간섭 0%)
ctx.drawImage(bitmap, 0, 0);

if (config.showArea && config.area) {
drawPolygonArea(ctx, config.area); // 영역 표시 로직도 워커에서 수행
}
}
bitmap.close();

이 구조에서는 메인 스레드에 아무리 무거운 작업이 걸려도, 스트리밍 영상은 별도의 스레드에서 끊김 없이 독립적으로 재생됩니다.

🌐 브라우저 호환성 및 자동 분기 처리

OffscreenCanvas는 강력한 기능을 제공하지만, 브라우저마다 지원 여부가 다릅니다. EVA 서비스에서는 사용자 환경을 고려하여 이를 자동으로 감지하고 분기 처리하도록 구현되었습니다.

브라우저지원 버전비고
Chrome69+최우선 지원
Edge79+Chromium 기반 버전부터 지원
Firefox105+105 버전부터 기본 활성화
Safari16.4+최신 macOS/iOS 환경 권장
Opera56+-

EVA의 맞춤 렌더링 전략:

  • 최신 브라우저: OffscreenCanvas를 활성화하여 메인 스레드 부하를 0%로 유지합니다.
  • 하위 브라우저(예: Safari 15 이하): 기능을 감지하여 1차 개선안인 메인 스레드 Canvas 렌더링 방식으로 자동 전환(Fallback)합니다.

이를 통해 어떤 브라우저 환경에서도 끊김 없는 스트리밍 경험을 보장합니다.


6. 추가 최적화: 버퍼 재사용과 파싱 속도 향상

성능은 디테일에서 결정됩니다. 워커 내부 로직에서도 몇 가지 최적화를 더했습니다.

  1. 고정 버퍼 재사용: 매번 새로운 Uint8Array를 생성하는 대신, 고정된 크기의 버퍼를 재사용하고 copyWithin을 사용하여 데이터를 관리했습니다. 이는 가비지 컬렉션(GC) 발생 빈도를 대폭 줄여줍니다.
  2. indexOf 기반 고속 파싱: 바이너리 데이터에서 매칭 바이트를 찾을 때 단순 루프 대신 내장 indexOf를 활용하여 불필요한 바이트 검사를 건너뛰도록 구현했습니다. 단순 연산만으로도 프레임 드랍을 획기적으로 줄일 수 있었습니다.

7. 결론: 더 견고해진 EVA 모니터링 환경

이번 최적화 작업을 통해 EVA 서비스는 다음과 같은 결과를 얻었습니다.

  • 메모리 안정성: 장시간 구동 시에도 메모리 점유율이 일정하게 유지되며 OOM 오류가 사라졌습니다.
  • UI 반응성: 고해상도 스트리밍 중에도 메뉴 이동, 버튼 클릭 등 UI 조작이 네이티브 앱 수준으로 부드러워졌습니다.
  • 안정적인 프레임: 스레드 분리를 통해 네트워크 지연이나 메인 스레드 부하와 무관하게 일정한 프레임 레이트를 확보했습니다.

프론트엔드 성능 최적화의 핵심은 **"브라우저의 메인 스레드를 얼마나 자유롭게 유지하느냐"**에 있다는 것을 다시 한번 체감할 수 있는 프로젝트였습니다.

긴 글 읽어주셔서 감사합니다!


참고 기술 요약

  • Web Workers API: 백그라운드 스레드에서 연산 수행
  • OffscreenCanvas: 메인 스레드로부터 독립된 렌더링
  • createImageBitmap: 비동기 이미지 디코딩 및 명시적 메모리 관리
  • Transferable Objects: 복사 비용 없는 고속 데이터 전송

참고 링크

EVA 도입을 통한 데이터센터 리스크 관리

· 약 4분
Daniel Cho
Daniel Cho
Mellerikat Leader

1. 서론: 데이터센터 화재, 기업의 존립을 위협하는 ‘빌리언 달러’ 리스크 🥵

최근 데이터센터 화재는 단순한 시설 피해를 넘어 서비스 중단에 따른 천문학적인 배상 책임을 야기하고 있습니다.

👉 SK C&C 판교 데이터센터 화재 (2022): 리튬이온 UPS 배터리실에서 시작된 불씨는 카카오 등 주요 서비스 장애로 이어졌으며, 피해 규모는 수천억 원에 달하는 것으로 추정됩니다.

👉 프랑스 OVHcloud 화재 (2021): UPS 전력 장비 발화로 발생한 이 사고는 약 1,500억 원(€105M)의 총 피해를 냈으며, 이 중 보험금으로 지급된 금액만 약 800억 원(€58M)에 달해 보험사의 인수 부담을 극대화했습니다.

이러한 대형 사고들은 AI 시대의 데이터센터가 기존의 물리적 보안 수준으로는 통제 불가능한 리스크를 안고 있음을 시사합니다.


😲 2. 데이터센터 보험 구조와 AI GPU 센터의 ‘보험료 급등’ 원인

데이터센터 보험은 일반적으로 Property(건물 및 서버), Business Interruption(기업 휴지), Cyber Liability(사이버 책임), General Liability(일반 배상)를 묶은 패키지 형태입니다.

👉 자산 가치 비례 보험료율 통상적으로 Property 보험료율은 자산 가치의 0.2% ~ 0.5% 수준이지만, 최근 AI 데이터센터는 다음과 같은 이유로 리스크 등급이 상향 조정되어 보험료가 급격히 상승하고 있습니다.

👉 고밀도(High-Density) 서버의 위험성 AI GPU 클러스터는 일반 서버 대비 전력 밀도가 비약적으로 높습니다. 이는 곧 화재 확률의 산술적 증가를 의미합니다.

서버 유형랙당 전력 소비량주요 리스크 요인
전통적 서버5 – 10 kW표준적인 냉각 및 전력 관리 가능
고성능 컴퓨팅15 – 25 kW과열 관리 필요성 증대
GPU 클러스터40 – 120 kW전력 케이블 과열, PDU 과부하, 전기아크

😎 3. 보험사 언더라이팅(Underwriting) 핵심 체크리스트 분석

글로벌 보험 브로커(Aon, Marsh, FM Global 등)는 시설 규모보다 '사고 가능성을 낮추는 기술적 장치'를 중심으로 위험을 평가합니다. EVA는 이 평가 항목들에서 압도적인 가산점을 확보할 수 있는 솔루션입니다.

👉 전력 및 전기 설비 리스크 (Power Infrastructure)
현황: 데이터센터 화재의 40~50%가 전력 설비에서 기인합니다. 특히 리튬이온 배터리의 열폭주(Thermal Runaway)는 보험료 상승의 주범입니다.
🌈 EVA의 역할: 배터리 셀 단위의 미세한 온도 변화나 열화상 징후를 실시간 감지하여, 리튬 배터리 리스크를 획기적으로 낮춥니다.


👉 화재 감지 및 소화 시스템의 고도화
현황: 보험사는 초기 연기 감지나 가스 소화 시스템 유무를 최우선으로 봅니다.
🌈 EVA의 역할: AI 시각 지능을 통해 불꽃이나 연기를 즉각 인지함으로써 감지 속도를 수 초 내로 단축합니다.


👉 운영 및 관리 리스크 (Human Error)
현황: 보험사는 24/7 운영 관제 체계와 열화상 점검 여부를 매우 중요하게 평가합니다.
🌈 EVA의 역할: 관리자의 육안 점검에 의존하던 체계를 AI 자동 관제로 전환합니다.


❣️ 4. EVA 도입의 경제적 기대효과: Risk Engineering 중심의 접근

보험 시장은 이제 사고 후 보상에서 미래 사고 가능성을 낮추는 'Risk Engineering' 시장으로 변모했습니다. EVA 같은 AI 안전 솔루션은 보험사와 가입자 모두에게 Win-Win 구조를 제공합니다.

👉 보험료 직접 할인 (15% ~ 30%)
리스크 관리 시스템이 잘 갖춰진 경우, 실제 보험료율을 15%에서 최대 30%까지 할인받는 사례가 존재합니다. 수천억 원 가치의 데이터센터 자산을 고려할 때, 이는 솔루션 도입 비용을 상회하는 직접적인 재무적 이익입니다.


👉 핵심 리스크 통제 포인트 (5대 핵심 항목)
EVA는 보험료를 좌우하는 실무적 핵심 5가지 항목을 모두 충족합니다.

  • 배터리 시스템(UPS) 상시 모니터링: 열폭주 사전 대응
  • 전력 밀도 대응: AI GPU 서버의 케이블 및 PDU 과열 집중 감시
  • 지능형 화재 감지: 시각적 데이터 기반의 초고속 알람
  • 24시간 무중단 관제: 위험 행동 및 안전 규정 위반, 작업자 실수
  • 사고 대응 시간 단축: 알람 발생부터 조치까지의 프로세스 효율화

🥰 5. AI Safety System이 곧 데이터센터 비즈니스 연속성입니다

데이터센터 운영사 입장에서 EVA는 단순히 '보안용 CCTV'가 아닙니다.
재무적 가치: 보험료 절감 및 사고 시 발생하는 수천억 원 규모의 비즈니스 중단(Business Interruption) 손실 방지
운영적 가치: 초고밀도 AI 서버 환경에서의 전력 및 화재 리스크 관리 표준 확립
대외적 신뢰: 보험사의 엄격한 리스크 평가를 통과한 '안전한 데이터센터'라는 브랜드 가치 확보
AI Safety System → Risk Reduction → Insurance Discount 로 이어지는 선순환 구조를 통해, 데이터센터를 가장 경제적이고 안전하게 운영할 수 있습니다.

EVA x Rebellions: Journey of EVA on NPU

· 약 3분
Gyulim Gu
Gyulim Gu
Tech Leader

Mellerikat EVA와 Rebellions NPU의 통합 및 최적화 과정은 차세대 AI 인프라가 나아갈 방향을 명확히 보여주었습니다. 이번 프로젝트를 통해 우리는 NPU 기반 아키텍처가 기존 GPU 중심 인프라의 고비용·고전력 문제를 해결할 수 있음을 입증했습니다. 특히 실시간 인지(Perception)와 추론(Reasoning)이 핵심인 피지컬 AI(Physical AI) 환경에서 막대한 TCO(Total Cost of Ownership) 절감과 고성능을 동시에 달성할 수 있는 잠재력을 확인했습니다.

오늘은 많은 분이 궁금해하시는 GPU 모델을 NPU로 옮기는 '포팅(Porting)' 과정과 그 뒤에 숨겨진 기술적 과제들을 공유하고자 합니다.


1. GPU 모델의 NPU 포팅(Porting) 과정

NPU는 특정 연산에 최적화된 구조를 갖추고 있어, 새로운 모델이 출시되어도 즉시 실행하기 어렵습니다. 따라서 하드웨어의 잠재력을 최대한 이끌어내기 위해 다음과 같은 필수 단계를 거칩니다.

  • 모델 변환 (Model Conversion) PyTorch나 TensorFlow로 개발된 원본 모델을 NPU가 이해할 수 있는 실행 형식으로 변환합니다. Rebellions의 ATOM Compiler를 통해 모델의 연산 그래프(Computational Graph)가 분석되고, NPU 아키텍처에 맞는 .rbln 실행 형태로 변환됩니다.

  • NPU 최적화 컴파일 (Optimizing Compilation) Rebellions SDK(RBLN SDK)의 컴파일러를 통해 하드웨어 맞춤형 실행 파일로 컴파일합니다.

    • 그래프 최적화: 불필요한 연산을 제거하고 데이터 흐름을 재배치합니다.
    • 연산 융합 (Operator Fusion): 여러 작은 연산을 하나의 큰 커널로 합쳐 메모리 접근 횟수와 오버헤드를 줄입니다.
    • 데이터 레이아웃 최적화: NPU 메모리 구조에 맞춰 텐서 배치를 변경하여 접근 속도를 높입니다.
  • 양자화 (Quantization) NPU 아키텍처에 맞는 연산 정밀도를 적용하여 성능과 메모리 효율을 개선합니다. EVA의 경우 FP16 기반 추론 환경을 기준으로 안정적인 성능을 확보하도록 최적화했습니다.

  • vLLM 통합 및 검증 최적화된 모델을 vLLM-RBLN 서빙 프레임워크에 이식합니다. TTFT(첫 토큰 생성 시간)와 Throughput(처리량) 등 핵심 지표를 측정하며 GPU 환경과 비교 검증을 수행합니다.


2. EVA Application 최적화 및 기술적 과제 해결

포팅된 파운데이션 모델 위에 실질적인 서비스인 EVA Application을 올리는 과정에서는 다음과 같은 구체적인 최적화 로드맵을 실행하고 있습니다.

  • EVA Vision 최적화 (1:1 Mapping & Batching) NPU 코어와 Vision Worker를 1:1로 매핑하여 컨텍스트 스위칭 오버헤드를 제거했습니다. 또한 Continuous Batching 기술을 응용하여 수백 대의 카메라 데이터를 지연 없이 실시간으로 처리할 수 있는 기반을 만들고 있습니다.

  • EVA Agent 최적화 (VLM 부하 절감) VLM(Vision-Language Model)의 입력 해상도를 1280x720으로 표준화하고, 2단계 추론(Two-Stage Reasoning) 구조를 활용해 불필요한 VLM 호출 횟수를 최소화했습니다. 이는 고비용 연산인 Vision Encoder의 부하를 즉각적으로 줄여줍니다.

  • 시스템 메모리 관리 및 KV Cache 최적화 Rebellions와 협력하여 vLLM-RBLN 인스턴스의 메모리 사용 패턴을 분석하고, 페이지 단위 메모리 관리 구조를 기반으로 자원 활용 효율을 개선하고 있습니다. 이를 통해 동일한 하드웨어 환경에서도 더 많은 시각 데이터를 안정적으로 처리할 수 있도록 최적화를 진행하고 있습니다.

  • VLM Vision Encoder 병렬 처리 VLM 추론에서 큰 연산 비중을 차지하는 Vision Encoder 단계의 병렬 처리 구조를 개선하고 있습니다. Vision Encoder 연산이 여러 NPU 코어에 효율적으로 분산 실행되도록 최적화하여 VLM 서빙 처리량 향상을 목표로 하고 있습니다.


3. 결론: PoC를 넘어선 상용 제품으로의 진화

우리는 스트레스 테스트를 통해 발견된 기술적 과제들을 하나씩 해결해 나가며, 리소스를 최대 활용하는 최적화 작업을 지속하고 있습니다. Rebellions와의 긴밀한 협력을 통한 Vision Encoder 병렬 처리, 그리고 EVA 플랫폼의 지능형 스케줄러 개발에 이르기까지 모든 단계는 'EVA on NPU' 솔루션을 단순한 기술 검증(PoC) 수준을 넘어 상용 제품으로 완성시키는 과정에 있습니다.

결국 AI 서비스의 성공은 경제성, 확장성, 서비스 품질이라는 세 가지 조건을 모두 충족하는 데 있습니다. EVA는 앞으로도 최신 NPU 기술을 적극 수용하여, 고객에게 가장 경쟁력 있는 TCO와 압도적인 성능을 갖춘 Physical AI 플랫폼의 글로벌 표준을 제시하겠습니다.

Multi-Frame 기반 VLM 탐지: 단일 이미지 한계를 넘어 시간적 맥락으로

· 약 7분
Gyulim Gu
Gyulim Gu
Tech Leader
Seongwoo Kong
Seongwoo Kong
AI Specialist
Taehoon Park
Taehoon Park
AI Specialist
Jisu Kang
Jisu Kang
AI Specialist

단일 프레임은 충분한가?

최근 Vision-Language Model(VLM)은 단일 이미지에 대한 이해 능력에서 매우 높은 성능을 보여주고 있습니다. 대규모 멀티모달 모델들은 다중 이미지와 텍스트 조건을 함께 처리하는 구조를 제시하며, 멀티 프레임 기반 추론 가능성을 이론적으로 확장해왔습니다.

그러나 실제 산업 현장의 탐지 시나리오는 연구 환경과 다르게 훨씬 복잡합니다. 단일 프레임으로는 충분해 보이던 문제도, 실제 운영 환경에서는 다양한 오탐과 경계 사례를 만들어냅니다.

예를 들어, 사람이 바닥에 누워 있는 장면이 있습니다. 그 순간만 보면 쓰러짐으로 판단하기 쉽습니다. 하지만 바로 직전 프레임에서는 스트레칭을 하고 있었을 수도 있고, 작업 도중 잠시 자세를 바꾼 것일 수도 있습니다.

야간 환경에서는 렌즈 플레어나 조명 반사, 빛 번짐 현상이 화재의 색상 패턴과 유사하게 나타나 단일 이미지 기준으로는 화재로 오탐되는 경우도 존재합니다. 사람조차 한 장의 스냅샷만 보고는 확신하기 어려운 상황에서, 모델에게 단일 프레임만을 제공하는 것은 구조적으로 한계를 가질 수밖에 없습니다.



이러한 사례는 공통적으로 “맥락 부족”이라는 문제를 공유합니다.

오픈클로가 보여주는 AI 서비스의 미래

· 약 4분
Daniel Cho
Daniel Cho
Mellerikat Leader

최근 AI 커뮤니티를 뜨겁게 달구고 있는 오픈클로(OpenClaw) 맥미니와 같은 로컬 환경에서 구동되며 사용자의 화면을 실시간으로 해석하고, 다양한 애플리케이션을 직접제어하는 이 서비스는 우리에게 중요한 사실을 시사합니다.

이제 AI의 승부처는 "얼마나 거대하고 성능 높은 파운데이션 모델(Foundation Model)인가"가 아니라, "그 모델을 활용해 실제 환경에서 얼마나 복잡한 업무를 수행(Application)할 수 있는가"로 옮겨왔다는 점입니다.


패러다임의 전환: 성능에서 실행력으로

  • 기존 패러다임: "얼마나 똑똑한가?" - 지금까지 AI 업계는 주로 파운데이션 모델(Foundation Model)의 규모와 성능에 집중해왔습니다. GPT-4, Claude, Gemini 등 거대 언어 모델들은 더 많은 파라미터, 더 큰 데이터셋, 더 높은 벤치마크 점수를 경쟁의 핵심으로 삼았습니다. 이는 "얼마나 똑똑한 AI인가?"라는 질문에 답하려는 시도였습니다.

  • 새로운 패러다임: "얼마나 일을 대신 수행할 수 있는가?" - 하지만 OpenClaw의 등장은 완전히 다른 질문을 던집니다. "그 모델을 활용해 실제 환경에서 얼마나 복잡한 업무를 수행(Application)할 수 있는가?" 이제 AI의 가치는 단순한 지능 수준이 아니라, 실제 컴퓨팅 환경에서의 실행 능력으로 평가받게 됩니다.

VLM에게 '멀티 태스킹'을 가르치는 법: 시나리오 분해를 통한 상황 인지 능력 고도화

· 약 8분
Hyunchan Moon
Hyunchan Moon
AI Specialist

EVA 핵심은 "화재", "낙상", "교통사고" 등 화면 속에서 동시 다발적으로 일어나는 위급 상황을 놓치지 않고 '이해' 하는 것입니다. 하지만 아무리 뛰어난 VLM(Vision-Language Model)이라도 한 번에 너무 많은 것을 물어보면 인지 능력이 급격히 떨어지는 현상이 발생합니다.[2,3]

본 포스트에서는 텍스트-비디오 검색 분야의 최신 연구인 Q₂E (Query-to-Event Decomposition)[1] 논문을 참고하여, VLM이 단일 화면 내의 복합적인 시나리오를 깊이 있게 인지하도록 만드는 '시나리오 분해(Scenario Decomposition)' 기법을 소개합니다.

EVA로 구현하는 Physical AI

· 약 3분
Gyulim Gu
Gyulim Gu
Tech Leader

AI는 언제 현실에 개입할 수 있을까?

산업 현장에서 사고는 예고 없이 발생합니다. 사람이 쓰러지고, 팔이 설비에 끼이며, 화재가 발생하는 순간은 대부분 아주 짧은 시간 안에 일어납니다.

Physical AI는 이 순간을 인식하는 것에서 멈추지 않고, 현장의 물리적인 동작으로 이어질 수 있어야 합니다.

이번 글에서는 레고 기반 시뮬레이션을 통해 EVA가 사고를 어떻게 탐지하고, 그 판단이 실제 설비 동작으로 어떻게 연결되는지를 하나의 흐름으로 살펴봅니다.




레고로 단순화한 산업 현장 시뮬레이션

복잡한 산업 현장을 그대로 재현하는 대신, 레고를 활용해 사고 상황을 단순하게 구성했습니다.

사람이 쓰러지는 상황, 팔이 설비에 끼이는 상황, 화재가 발생하는 상황을 각각 독립적인 시나리오로 구성했습니다.

설비에 팔 끼임 시나리오 - 컨베이어 멈춤과 비상등 울림

EVA, 물리적 센서를 넘어선 안전 관리의 새로운 기준

· 약 3분
Daniel Cho
Daniel Cho
Mellerikat Leader

EVA가 앞당긴 화재 대응의 골든타임  

제조 현장에서 화재 발생 시 ‘골든타임’을 확보하는 것은 인명과 자산을 보호하기 위한 가장 중요한 요소입니다. 기존의 화재 감지 시스템은 물리적인 센서에 의존해 왔지만, 이제는 카메라 기반의 지능형 감지 기술이 그 역할을 빠르게 대체하고 있습니다. 이번 포스팅에서는 LG전자 사업장에서 진행된 실증 테스트를 통해 EVA의 연기 감지 성능을 분석하고, 그 기술적 의미를 살펴보고자 합니다.




사업장 실증 테스트: 8초 vs 38초의 차이

LG전자 사업장에서 실제 화재 상황을 가정한 연기 감지 테스트가 진행되었습니다. 이번 테스트의 핵심은 기존에 설치된 연기감지기와 새롭게 도입된 EVA 간의 감지 속도를 비교하는 것이었습니다.

테스트 결과는 매우 고무적이었습니다. 화재 발생으로 연기가 피어오르기 시작한 시점을 기준으로, 각 시스템의 평균 반응 속도는 다음과 같았습니다.

EVA : 연기 발생 약 8초 후 감지

기존 연기감지기: 연기 발생 약 38초 후 감지

결과적으로 EVA가 기존 연기감지기 대비 약 4배 이상 빠른 속도로 위험 상황을 인지하고 전파했습니다. 이 30초의 차이는 초기 화재 진압의 성패를 가를 수 있는 결정적인 시간입니다.

EVA와 Workflow Builder의 결합

· 약 6분
Gyulim Gu
Gyulim Gu
Tech Leader

단순한 ‘관찰’을 넘어 ‘개입’하는 AI로

오늘날 AI의 핵심 과제는 단순히 데이터를 분석하거나 장면을 설명하는 것에 그치지 않습니다.

진정한 지능형 시스템은 분석을 바탕으로 물리 세계나 기업 운영 시스템에서 유의미한 액션(Action)을 끌어낼 수 있어야 합니다.

EVA는 이제 시각 정보를 이해하고 상황을 판단하는 '눈'과 '뇌'의 역할을 넘어, Workflow Builder라는 '손'과 결합하고 있습니다.

이는 단순한 알림 중심의 수동적 모니터링을 넘어, 현장의 상황을 스스로 판단하고 문제 해결까지 이어지는 엔드투엔드(End-to-End) 자동화 구조의 완성을 의미합니다.


이미지에서 언어로, 언어에서 판단으로: 카메라 컨텍스트로 VLM 성능 끌어올리기

· 약 7분
Minjun Son
Minjun Son
POSTECH
Jisu Kang
Jisu Kang
AI Specialist

캠퍼스, 안전을 넘어 지능을 갖다: EVA와 함께하는 Postech Living Lab 프로젝트로 손민준 군(지도 교수 고영명 님)과 협동 연구한 주제입니다.


사용자의 한 줄 질의를 더 똑똑하게: 이미지 컨텍스트로 언어를 보강하는 법

EVA는 수백~수천 대의 스마트 카메라로 이상 상황을 감지하는 시스템입니다. 우리는 VLM/LLM을 활용해 카메라 컨텍스트를 자동으로 추론하고, 이를 프롬프트에 녹여 넣어 탐지하고자 하는 이미지의 상황이 반영된(camera-context; 카메라 컨텍스트 기반) 이상 탐지 파이프라인을 만들었습니다. 단일 프레임으로 추출한 카메라 컨텍스트를 VLLM의 사전 지식으로 활용했을 때, 기존 베이스라인 대비 의미 있는 정확도 향상과 더 깊은 해석 가능성을 확인했습니다.