장소: 서울 코엑스
일자: 2024.11.12(화)
개요
이번 2024년도 네이버 컨퍼런스는 기술 세션 뿐만 아니라 다지안, 기획 세션도 함께 운영하는 모습을 보여줬습니다.
강연
1. 키노트
키노트에서 공통되게 이야기하던 것은 사용자들의 경험 데이터를 서로 연결하여 가치를 만들고 이를 다시 고객에게 제공하는 것이었습니다. 이를 기반으로 여러 검색 인터페이스를 제공하며, 최근에는 Cue라는 대화형 검색 서비스를 고객에게 제공했지만, 아직은 사용자들이 대화형 검색 서비스를 어색해한다는 것을 알게 되었습니다.
2. 쿠버네티스 네이티브 사이드카 컨테이너 및 오픈소스 기여 경험 소개
해당 강연에서 발표자는 사이드카 컨테이너 패턴에 대한 설명을 진행하였습니다. 한 줄 요약을 하자면 메인 컨테이너에 새로운 기능을 주입하거나 보강할 때 도움을 주는 컨테이너를 사이드카 컨테이너라고 하며, 이를 사용하는 하나의 패턴이라고 하였습니다.
또한 이를 쿠버네티스에서 네이티브하게 지원할 수 있게 Alpha(v1.28)에 지원을 위한 API와 핵심 기능이 추가되었으며, Beta(v1.29)에서 기본적으로 해당 패턴을 활성화 및 해당 패턴에서 발생할 수 있는 문제들이 개선되었다고 하였습니다.
해당 패턴을 도입하면서 만날 수 있는 문제는 시작과 종료 순서가 보장되지 않음으로써 정보 유실 등이 일어날 수 있는 것이었습니다. 이를 해결하기 위해 3가지 방법을 설명하였습니다.
•
해결책 1: 사이드카는 메인 컨테이너보다 먼저 시작한다.
•
해결책 2: 사이드카는 메인 컨테이너보다 나중에 종료된다.
•
해결책 3: 사이드카는 파드의 완료를 막지 않는다.
이를 위해 쿠버네티스에서는 Init Container에 restartPolicy 속성을 도입한 것을 알려줬습니다.
그리고 쿠버네티스 네이티브 사이드카 컨테이너를 도입하기 위해 개발자 및 클러스터 관리자 입자에서 생각할 점에 대해 설명과 함께 쿠버네티스 오픈소스에 기여하기 위한 방법을 설명 및 도움될 만한 사이트를 공유해주었습니다.
3. 당신의 Python 모델이 이븐하게 추론하지 못하는 이유 [CPU 추론/모델서빙 Python 딥다이브]
해당 강연에서 발표자는 파이썬을 깊게 아는 것을 통해 성능 개선을 할 수 있는 것을 공유하였습니다.
모델서버의 Inference Latency를 줄일 수 있는 방법에는 단순히 모델서버를 증설하는 것 외에도 파이썬 언어의 깊은 이해를 통해 줄일 수 있다는 것을 설명하였습니다.
너무 딥해서 이해하기 어려웠지만, 한 줄로 요약하자면 파이썬의 Global Interpreter Lock(GIL)에 영향을 받지 않는 영역의 데이터를 이용하는 것이 속도상 이점을 갖게 되며, GIL에 영향을 받게 되는 Object의 형태가 되는 순간부터는 속도 저하가 발생할 수 있다는 것이었습니다.
또한, 이외에도 Python type hint를 이용하여 mypyc 라이브러리로 먼저 컴파일을 진행할 때 동적 타입검사를 스킵시켜 속도를 향상시키고 미리 바이너리 파일을 만들어두면, 추후 프로그램 실행시 PVM 컴파일을 스킵시킬 수 있게 하여 속도를 향상시킬 수 있다고 설명하였습니다.
ML Framework에서 제공하는 연산들을 각각 반복문을 돌리는게 아닌 하나의 반복문에서 처리함으로써 M*N의 시간복잡도에서 N이라는 시간복잡도로 줄일 수 있는 것을 설명하였습니다.
또한, 여러 회사(ex. Intel)에서 이를 지원하는 라이브러리를 제공하고 있는 것을 설명하였습니다.
예시 라이브러리
•
intel-extension-for-pytorch
여러 모델서버 중에서 도입 상황에 맞는 서버를 선택해야 성능상 이점을 가질 수 있다고 하였습니다.
4. HyperCLOVA X, MLOps로 Hyperscale AI 개발의 새로운 장을 열다
현재 네이버는 통합 MLOps 플랫폼인 CLOps를 통해 ML엔지니어의 역량을 끌어올리고 있었습니다.
CLOps 플랫폼을 통해 지속 가능성, 비용 효율화/최적화, 확장성, 위험관리 4가지 방면에서 여러 이점을 갖고 있다는 것을 설명하였습니다.
해당 플랫폼을 이용하여 HyperLoop라는 데이터 관리 자동화 파이프라인을 구축한 경험, 허깅페이스 인터페이스 형태의 인터페이스를 제공하는 Datahub 시스템 등을 구축한 경험을 공유하였습니다.
모델 개발자들이 많이 사용하는 허깅페이스에서 제공하는 인터페이스와 유사한 형태로 시스템을 제공함으로써 사내 데이터를 사외로 떠나지 않게 만들 수 있게 되었다고 하였습니다.
네이버는 EventBus, 대규모 학습 지원 유틸리티 제공, 스토리지 문제 해결 등 여러 가지를 준비하고 있다고 하였습니다.
여기서 EventBus는 서로 다른 이기종 시스템간 트리거 기능을 제공하기 위한 것이라고 설명하였습니다. 또한, 대규모 학습 지원 유틸리티 제공은 대규모 모델 학습시 잦은 하드웨어 장애가 발생하게 되는데, 여러 호스트 및 레이어에 걸쳐 있어 장애 지점 식별이 어렵기 때문에, 이를 위한 종합 Scanning 도구를 제공하는 것을 의미한다고 하였습니다.
체험존
DAN 24에서는 나만의 워드 시트 만들기, 버튜버와 사진 찍기 등 여러 체험존을 운영하고 있었으며, 또한 상담존도 운영하고 있었습니다. 그 중 저는 나만의 워드 시트 만들기를 체험해봤습니다.
느낀점
평소 오픈소스 기여에 대해 많이 생각만 해보고 어떻게 시작해야 할지 감이 오지 않는 경우가 많았는데, 이에 대해 도움이 될 수 있어서 좋았습니다. 또한, 하나의 언어 혹은 기술에 대해 깊게 아는 것이 매우 중요하다는 것을 다시 한번 상기시킬 기회라 좋았습니다.