본문 바로가기

Data Engineering/Cloud

[세션발표] 티끌모아 GPU, GCP에서 GPU 모델 서빙하기(RetroFest 2024 후기)

2024년 말, GDG on Campus 가천대, 경희대, 한국외대 챕터에서 감사하게도  2024 RetroFest 행사를 열어주어 세션 Speaker로 참석하였다.

 

 

RetroFest 2024: Back to the Future, 미래를 위한 돌아보기 | Festa!

Festa에서 당신이 찾는 이벤트를 만나보세요.

festa.io


Speaker 선정기:

세션 Speaker를 모집하고 있었을 때, 한 번쯤 기술 세션 발표를 진행하고 싶었기에 바로 어떤 것을 주제로 할 지 생각해봤다.

 

이 중에서 올해 기술적으로 가장 가치가 있었던 경험을 곰곰히 생각해본 결과, 내게는 이전에 삽질하면서 느꼈던 "클라우드 환경에서의 GPU 사용기"가 가장 힘들었지만 보람이 있었던 경험이었던 것 같아 선정하였다.

 

아래 포스팅을 참고하였다.

 

[GCP] 티끌모아 GPU, 구글 클라우드에서의 GPU 모델 서빙기 (feat. BATCH)

문제점: 대부분의 CSP는 GPU 부족 상태H100 기준으로 2023에 GCP는 약 5만 여대의 GPU를 확보한 것으로 추정된다고 합니다.  리드타임이 거의 1년이므로, 아직 수요에 비하면 GPU 공급이 따라오지 못하

ket0825.tistory.com

 

 

또한, 청자들 대부분 학생이기에 클라우드 환경에서의 비용이 부담스러울 것이라고 생각했다. 

따라서 내 경험을 세션에서 전달할 수 있다면 더욱 나은 프로젝트, 비용 절감을 할 수 있을 것이기에

 

티끌모아 GPU, 구글 클라우드에서 GPU 모델 서빙기

 

 

를 주제로 세션을 신청했고, 결국 Speaker로 선정되었다!

행사 타임테이블 및 후원사


준비 과정:

선정된 이후, 한동안 잊고 살다가 허겁지겁 캡스톤도 모두 마친 이후에 본격적으로 세션을 준비했다.

 

개인적으로 중요하다고 생각하는 부분만 추렸는데,

  • GPU는 물리적으로 부족한 자원이기에 클라우드 상에서 쓰고 싶다고 하더라도 항상 쓸 수 있는 것은 아니다.
  • GPU 서빙 전략으로 Real-time, Near Real-time, Batch가 있다.
  • GCP에서 BERT 모델을 서빙할 때 내가 사용했던 서비스로는 Cloud Run, GCE, Batch 서비스가 있다.
  • 비용과 효용을 모두 고려하여 Batch 서비스로 Batch 서빙 전략을 사용하였다.
  • 서울 뿐 아닌 모든 리전을 고려한다면 거의 확정적으로 GPU를 빌릴 수 있고, SPOT까지 사용한다면 비용을 러프하게 1/40까지 낮출 수 있다.
  • 클라우드 서비스의 추상화된 면만을 바라보지 말고, 서비스가 돌아가는 원리와 컴퓨터 자체에 대한 이해가 있어야 클라우드 서비스를 적용할 수 있다.

등이 있었다.

 

또한, 개념을 알아도 실제 적용은 막막하기에 샘플 코드 또한 작성하였다.

 

GitHub - ket0825/gdg-batch-gpu-sample: gdg-batch-gpu-sample

gdg-batch-gpu-sample. Contribute to ket0825/gdg-batch-gpu-sample development by creating an account on GitHub.

github.com

 

최근에 ModernBERT라는 새로운 BERT 계열 모델이 나온 것을 소개하고 싶어 샘플 코드 속에 포함시켰다.

 

answerdotai/ModernBERT-base · Hugging Face

ModernBERT Table of Contents Model Summary Usage Evaluation Limitations Training License Citation Model Summary ModernBERT is a modernized bidirectional encoder-only Transformer model (BERT-style) pre-trained on 2 trillion tokens of English and code data w

huggingface.co


행사:

 

이렇게 알찬 세션 발표를 위한 만반의 준비를 마치고, 행사장에 도착하였다!

전반적으로 포스터가 이쁘다.

 

리셉션도 이렇게 준비되어 있었다.

리셉션과 인프런에서 후원해준 물병.

 

 

부스 종류도 다양했고, 준비를 잘 해주셨다는 인상을 받았다.

5가지의 부스.

 

부스 모두가 재밌었지만, 이 중 제일 재밌던 것은 회고 영수증 만들기였다.

지난 한달동안 내가 어떤 언어를 사용하여 개발을 많이 했는지 볼 수 있었다.

다른 분의 회고 영수증이다.

 

세션 발표장은 상당히 넓었다.

행사 시작 전.

 

생각보다 많은 분들이 와주셨다.

행사 시작. 이후에는 더 많은 분들이 와주셨다.

 

사이드에서 찍힌 개인 컷

우연히 카메라 옆에 앉아 잘 나온 것 같다.

 


발표 중 사진:

 

Speaker에겐 따로 후드도 줘서 그걸 입고 발표했다! (현재 매우 편하게 입고 다니는 중...)

 

세션 중 개인 컷 1

아직 가만히 있는 모습.

세션 중 개인 컷 2,3

슬슬 시동이 걸린 모습.

 

30초 정도 타임오버가 된 부분은 아쉬웠다. 연습을 더 했더라면 내용을 더 알차게 했을 것 같다.

 


다른 발표 세션

그리고 내가 진행한 세션 이외에 다양한 발표 세션이 있었다. 아래는 개인적으로 정리한 부분이다.


더 나은 개발자의 기록과 협업을 위한 파피루스 종이: 김기훈

기획자, 디자이너, 개발자 모두의 협업을 위하여 개발자 친화적인 Github의 PR 등을 모두가 친화적인 Notion에서 API 연동을 통하여 칸반보드 형태로 쉽게 협업을 진행할 수 있음을 알 수 있었다.

 

이후에 협업 시에 Notion을 사용한다면 백오피스 도구로 API를 만들어 사용하는 것을 고려해봐야겠다.


 

Sharing Driven Learning(SDL): 공유 주도 학습과 성장: 한우준

학습 방식 중 하나로, 지식 공유를 하며 나의 지식을 다져나가는 것을 "공유 주도 학습"이라는 이름으로 설명해주셨다. 어린아이에게 설명할 수 있도록 이해를 하는 파인만 테크닉과 유사한 느낌이 들었지만, 남에게 실제로 설명을 하는 것이기에 더 적극적인 형태의 학습 형태라는 느낌이 들었다.

 

개인적으로 공감을 많이 했던 발표였다. 타인에게 알려주거나 질문을 받으며 성장하는 것이 매우 공감이 되었다.

 

 


 

AI 제품에 관한 오해들 제품을 만들며 깨달은 상식과 다른 이야기들: 오현수 대표님, Lilys AI

AI 제품은 어떻게 만드는 지에 대한 세션으로, 2명이 AI 소프트웨어를 만들고, 이미 손익분기점을 넘었다고 한다. 개인적으로 릴리스 AI를 들어본 적이 있었다.

 

2명이라는 적은 인원으로 높은 생산성을 내는 방법은 AI 도구를 적극 활용해서 개발하는 것이며, 개발자로서의 자아를 버리는 것이다. 또한 효율적으로 빠르게 일하는 방법으로는 디자인시스템, 다크모드, A/B 테스트 등 당연할 수도 있는 결과물을 내거나, 노력에 비 해 신규유저유치가 되지 않는 기능 및 방법은 이용하지 않는다고 알려주셨다.

 

또한 AI 제품에는 다음과 같은 함정이 있다고 알려주셨다.

첫째는 채팅의 함정이다. 자연어 UI는 사람이 가장 좋아하는 궁극의 UI가 아니다. AI에게 좋은 질문을 하는 방법은 꽤나 어렵기 때문이다.

 

둘째는 기반기술의 함정이다. 기반기술이 반드시 있어야 하는 것은 아니다. 대부분의 기업은 기존 기술의 래퍼(Wrapper) 형식이다.

대부분은 기반기술을 처음부터 가지고 있지 않으며, 생각해보면 회사가 충분히 커졌을 때 기존 기술로 해결되지 않기에 기반기술이 만들어진 것이다. 따라서 처음부터 기반기술을 반드시 지녀야 한다는 것은 함정이다. 오히려 이를 집착하다 경쟁사의 기반모델에 밀리게 된다면 극심한 손해가 나타난다.

 

스타트업 입장에서 개발자의 정체성은 서비스 개발이지, 중요한 부분에 대한 이해만 하고 부차적인 것은 넘어가도 된다는 의미로 느껴졌다. 이는 AI가 발전하여 사람 한 명당 처리할 수 있는 일이 점점 많아지는 요즘에 더욱 맞아떨어지는 것 같다. 개발자는 가면 갈수록 내부 원리에 대한 이해가 주가 되고, 단순 코딩하는 업무는 점점 AI가 대신해줄 것이라는 생각이 든다.


 

다양한 개발자 커뮤니티와 기여하기: 은은수

우분투와 트랜스포머를 예시로 오픈소스 기여, 커뮤니티 기여 방법 중 하나인 한국어로 번역하는 과정에 대해 설명해주셨다. 기여 가이드라인이 존재하며, PR 포맷을 확실히 지켜야 좋다는 것을 알 수 있었다.

 

오픈소스와 커뮤니티에 기여하는 방법은 기술적인 방식만은 아니라는 생각이 들었다. 기회가 된다면 나중에 해보고 싶은 일 중 하나였다.


 

꾸준함이 정말 중요할까? 10년 넘는 블로그 회고: 권태환, lemontree

블로그 작성 팁에 대하여 알려주셨다. 꾸준한 블로그를 하기 위한 목적은 경험한 이슈 공유, 공부 및 발표 목적, 머릿속을 정리하는 것이다. 그렇기에 반드시 남을 위한 글을 작성할 필요는 없으며, 취업만을 위한 글 또한 좋지 않다고 하셨다.

 

개인적으로 시간을 아껴주는 글과 코드를 먼저 주고, 설명을 하는 글 등을 생각해본 계기가 되었다. 항상 흐름을 생각하며 글을 작성하였는데, 흐름보다 중요한 것이 나 자신의 이해라면 반드시 그럴 필요는 없을 것 같다는 생각 또한 들었다.

 

 

 

모든 세션이 각기 다른 깨달음을 담고 있어 유익했다.


후기:

경험을 정리하여 타인에게 잘 전달한다는 것은 어려운 일이다. 그럼에도 행사 자체가 재미있고 알찼다. 개인적으로 발표도 나름 잘 했던 것 같아 만족스럽다!

 

동시에 내 경험이 더 많은 타인에게 도움이 되었으면 한다.


마무리:

RetroFest를 준비해주시고 후원해주신 분들, 참석해주신 분들 모두 감사합니다.

마지막으로 이 글을 봐주신 분들께도 감사드립니다.

 

2025년 새로운 한 해, 원하는 일, 안풀리던 일 모두 결실을 맺기 바랍니다.

응원합니다.

 


만약 관련 자료가 필요하시다면 댓글로 요청해주세요. 기쁜 마음으로 보내드리겠습니다.