Diary - 2024년 회고
01 Jan 20252022년 개발자가 되면서 매년 쓰기로 결심했던 연말 회고. 벌써 세 번째 회고다. 2024년엔 긴 글을 쓸 일이 있을 때 보통 GPT로 초안을 쓰곤 했는데, 회고는 한글자 한글자 직접 적어본다. 그래야 좀 더 한 해를 정리하고 반성하며, 내년의 목표를 섬세하게 세울 수 있을 것만 같다. 2024년엔 어떤 일들이 있었는지, 2025년엔 어떻게 살아가려 하는지 밑그림을 그려봤다!! 스압주의~~
(Apple intelligence가 선정한 2024 요약과 함께)
2024년에는…
원했던 업무를 하게 되다
대학원에서 자율주행과 로보틱스, 강화학습을 전공했던 내가 2023년 SKT에 입사하기로 결심한 것에는 LLM에 사용되는 “Alignment-tuning” 이라는 강화학습 기술도 한몫 했다. RLHF 라고도 불리는 “사람의 선호에 맞추어 모델을 학습하는 방법론” 에 대학원 시절부터 계속 관심이 있었고, 기업의 거대 리소스를 통해 이걸 직접 구현해 볼 수 있는 기회라고 생각했기 때문이다. 2023년 초중반까지만 해도 이 방법론이 실제 효용이 있는지 없는지 사내에서도 말이 많아서 업무까지 연결되지는 못했지만, 2024년이 되면서 드디어 해당 업무를 진행할 수 있게 되었다.
1년동안 진행했던 업무는 크게 4가지로 나눌 수 있을 것 같다.
- Alignment 학습 파이프라인 구축 및 효율화
- Alignment 데이터 구축
- LLM 평가 파이프라인 구축
- 협업 효율화 작업
우선 지금까지 나왔던 모든 alignment tuning 방법론들을 펼쳐놓고 공부하는 것부터 시작했다. 한 2~3주 내내 논문을 한 50~100개쯤 본 것 같은데, 계속 파고들다보면 어떤 방법론이 괜찮은건지 슬슬 눈에 보이기 시작한다. 공부가 되고 있다는 순간, 뭔가 성장했다고 느껴지는 순간. 이 과정이 정말 재미있고, 희열이 느껴졌던 것 같다.
Reward model 학습, PPO를 이용한 RLHF, offline DPO, online DPO 까지 5~6명이서 차근차근 코드를 빌드해 나갔고, 다양한 방법론들을 적용해 우리만의 레포를 만들어냈다. 특히 제일 재미있었던 부분들은 파이프라인을 효율화시키는 엔지니어링 작업들이었다. vLLM 을 이용해서 학습의 bottleneck 을 해결하기도 하고, batch packing 등을 접목해 학습 속도를 올렸다. 얼른 우리 모델 A.X LLM 이 오픈소스가 되어서, 이 일련의 과정들을 하나의 technical report로 엮어내고 싶은 마음이다. (언제까지 비공개로…ㅠㅠ)
또 누가 시켜서 한 것은 아닌데, 개인적으로 목표를 세워서 해낸 일도 있었다. (사실 이게 제일 뿌듯하고 기억에 많이 남음) 모델 학습을 하다보니 가장 bottleneck 이라고 느껴졌던 부분은, 다른 동료가 학습한 모델에 대한 parameter 를 확인하거나, 평가 프로세스가 조금씩 달라 공정한 비교가 어려운 부분 등이었다. 그래서 클릭만으로 LLM 평가를 돌릴 수 있는 A.X LLM 평가 페이지를 하나 만들었다. 또 GUI 로 특정 모델의 spec 과 backbone 모델, 어떤 데이터를 통해 학습했는지 확인할 수 있는 웹페이지도 하나 만들었다.
난 항상 이런 뷰어처럼 시각화 가능한 형태의 소통창구를 중요하다고 생각한다. 한페이지의 글보다 한 장의 사진이 더 많은 것을 설득할 수 있다고 여기기 때문이기도 하다. 실제로 이 툴들을 팀원분들이 잘 사용해주시고, 더 편하게 협업할 수 있게 되었다는 피드백을 들어서 너무 보람찼다.
아무튼 회사에 입사하면서 꼭 하고 싶었던 일을 직접 할 수 있어서 너무 좋았다. 대기업에 있으면 원하는 일이 아니라 시키는 일을 하게 된다는 이야기가 많았는데, 나는 운이 정말 좋았던 것 같다. 개인적으론 Alignment-tuning 이라는게 LLM 에서 주로 사용되기는 하지만 언젠가는 로봇 분야에서 큰 breakthrough 를 만들어낼 것이라는 직감이 든다. 그 날이 올 때면 지금의 이 경험이 큰 자산이 될 것이다!
대형 사고
크게 3가지 대형 사고를 쳤던 기억이 난다… 그 때만 생각하면 참 아찔하다.
첫 번째는 5월 중순 쯤이었다. 2월부터 RAG 데이터 구축을 맡았고, 해당 데이터가 4월정도부터 계속 들어가고 있었다. 그런데 5월 중순에 사수님이 데이터를 보시더니
재경님…이거 context 를 “meta” 필드에 넣어놓으셨더라구요. 이거 2월에 deprecated 된 필드인데….지금까지 학습에 context 가 사용이 안되고 있었네요.
거의 한 달 동안 잘못된 데이터들이 들어가고 있었던 것이다. 처음 데이터를 만들었을 때 사수님께 같이 한 번 검토를 해보자고 부탁해볼걸… 학습 코드 안에서 데이터가 제대로 사용되고 있는지 assertion 코드 넣어둘걸… 이런 후회가 밀려왔었다. 결국 5월에 릴리즈 해야 했던 모델은 6월 초로 릴리즈가 밀렸다.
두 번째는 6월 말에 사내의 타 팀에서 구축해준 데이터를 A.X 모델에 학습시켜 모델을 전달하는 일이었다. 문제는 GPU 증설작업 때문에 일주일 안에 모델을 학습해야 하는 상황이었다. 일주일 내내 야근을 해서 모델을 학습시켰는데, 성능 개선이 계속 안되는 것이었다.
그러다가 마지막 날에 전달받은 데이터에 이상이 있다는 사실을 알았다. 진짜 어이없는… 근데 그 데이터를 자세히 안 보고 당연히 잘 줬을거라고 생각해서 학습에 사용한 내 잘못도 있다… 더 꼼꼼히 확인했어야 했는데. 결국 팀장님은 윗선에 왕창 깨지고 GPU 증설작업도 일주일 딜레이 시켜 주셨다. 빡센 일정속에서 잘하려고 하다가 그런거니까 괜찮다고 말해주셨고, 위에서 오는 화살을 다 막아주신 것 같아 너무 죄송하면서도 감사했다.
세 번째는 11월 초에 다른 SK 그룹사에서 A.X 에 대한 비판이 담긴 평가 보고서를 메일로 보낸 사건이었다. 문제는 그 때 너무 SK summit 행사때문에 너무 바쁜 일정이어서, 메일을 대강 보고 팀장님께 구두로만 “저희 모델 성능이 좀 떨어진다던데요?”라고 말한 상황이었다. 문제는…그 보고서가 굉장히 공격적으로 쓰여 있었다는 것. 일주일 뒤 임원 회의에서 그 소식을 다른 그룹사 임원분께 처음 들은 우리 임원분께서 극대노를 하셔서, 왜 이런 내용 전달을 안하냐, 처음 전달받은거 누구냐 했는데, 나였다.
그렇다고 내가 손놓고 있었냐 하면 그건 또 아니다. 사수님이랑 대책을 세워서 데이터를 추가 구축하고 학습하던 중이었다. 그 메일을 받자마자 팀장님께 포워딩 했으면 별 문제가 없었을 거란 후회가 남아서 너무 아쉬웠다. 커뮤니케이션 능력도 개발 능력만큼이나 중요하다.
사실 세 사건 모두 당시에 너무 걱정되던 일들이지만 연말 회고를 쓰는 지금, 이 일들을 돌아봤을 땐 잘 흘러간 일이었다는 느낌이 든다. 실수를 숨기지 않고, 멈추지 않으며, 끝까지 책무를 다하려고 노력한다면 주변 많은 사람들이 도와준다는 것을 느꼈다. 물론 최대한 실수를 줄여야겠지만, 또 예상치 못한 실수를 한 경우에는 항상 관계자 모두에게 사과하고, 더 열심히 일하는 모습으로 신뢰를 회복하자고 생각했다. 나는 이 실수들을 통해 한 단계 성장했음을 느낀다.
개발 이외의 업무들
9월 중순부터 11월 중순까지 정말 정신없이 일했다. 개발이 아니라 다른 일들이 너무 바빠서. 장표를 만들고, 채용 면접관도 되고, SK summit 부스 운영까지… 안하던 야근을 엄청나게 했다.
추석 연휴 즈음 갑작스럽게 장표 공장에 들어가게 되었다. 그니까 임원 보고 자료나 외부 강연 자료를 만드는 임시 TF업무를 하게 된건데, 당연하게도 개발업무는 전혀 아니다. 15장 장표를 만드는데, 3명이 달라붙어서 거의 50장 장표를 만들어 낸다. 여기서 단 15장만 살아남는다. 이걸 2~3주 내내 주말도 없이 반복했다. 이제야 드디어 대기업 사원이 된 기분이랄까?
그래도 무의미한 반복작업이라고 생각하고 싶지는 않아서 의미를 찾으려 애썼다. 결국 장표를 만들 때 가장 중요한 능력은 디테일이었던 것 같다. 예전에 연구실에서 세미나를 하면 교수님께서 간혹 이런 피드백을 하셨다.
몇 월인지 표기할 때 3글자만 쓰려면 뒤에 점을 꼭 찍어라. “Feb” 가 아니고 “Feb.”로. 이런거 첫페이지에서 보는 순간 그거만 보여서 뒤에 내용 듣지도 않는 사람이 무조건 한명쯤은 있다. 그 사람이 나한테 중요한 사람일 수도 있다. PPT 만들 때 이런 디테일한 것들 꼭 신경써라.
그땐 교수님만의 의견이라고 생각했는데 회사에서도 똑같은 피드백을 들었다. 글자 위치, 글자 크기, 배열, 대칭 이런 디테일까지 모두 신경써야 했다. 내가 잘 알지 못하는 불특정 다수를 반드시 설득해야 한다면, 디테일은 필수다. 뭐든지 빠르게 착수하고 빠르게 결과물을 내놓는 타입인 나에게 가장 부족한 능력이었고, 이 장표 공장 수업은 많은 도움이 되었다.
장표 공장을 마무리하고 함께했던 임원분과 회식할 때 들었던 얘기도 재미있었다. 삼성 출신이셨는데, 처음 일년 내내 장표를 만들었는데 딱 한 장만 쓰였다고 한다.
“장표를 잘 만든다는 것 자체가 메타인지가 높다는 거죠. 삼성에 들어가서 1년동안 장표만 만들었던 훈련이 결국 누군가를 설득하기 위한 방법을 체득하는데 도움이 되었어요.”
이 기간동안 내 메타인지 능력이 성장했을까? 다음 장표공장에 불려갔을 때에는 조금 더 수월하게 일을 해낼수 있기를.
장표 공장 중간에는 또 SKT 채용 면접관으로 활동했다. 채용이 생각보다 힘들었다. 기억에 남는 점은 “명확한 기준을 잡지않으면 결국 나와 비슷한 사람을 뽑게 된다는 것” 이라는 면접관 교육 내용이었다. 실제로 나랑 비슷한 사람들에게 되게 후한 평가를 하려하는 내 모습을 볼 수 있었다.
같은 사람들만 모여있으면 조직의 다양성은 망가진다고 한다. 흔히 말해 회사가 고여버린다. 면접 평가 과정의 모든 과제와 평가에 대해서 명확한 체크리스트를 세우려고 노력했고, 지원자 분들을 더 객관적으로 바라볼 수 있었다.
지금은 내 면접관으로써의 평가가 회사의 채용 결과에 미비한 영향을 끼쳤지만, 언젠가 더 높은 자리에 가거나 나의 회사를 만들었을 때 이러한 채용 경험이 큰 힘이 될 거라고 믿는다.
마지막으로 11월 4~5일 동안 있었던 SK summit 에서 A.X LLM 부스 전시를 담당하게 되었다. A.X LLM 성능을 재미있게 보여줄 수 있는 Attention visualization 이라는 아이디어를 직접 내고, 부스 운영까지 성황리에 잘 마무리를 했던 것 같다. 부스 운영하면서 많은 분들이 찾아와서 질문도 해주시고, 지인분들도 많이 만났다. 또 부스 운영도 좋은 평가를 해주셔서 기분이 좋았다.
사실 주변 동료분들은 내가 쓸모없는 일들에 끌려다닌다고 생각하실지 몰라도, 나는 개발 이외의 업무들에 대해 나를 많이 찾아주는건 좋은 신호라고 생각한다. 평생 개발만 할 수 있을 것이라고 생각하지도 않고, 다양한 경험을 쌓을 수 있는 기회를 받는 거라고 생각하니까. 실제로 SKT에 입사할 때 썼던 자기소개서를 보면, “동료들이 문제에 직면했을 때 가장 먼저 편하게 찾아올 수 있는 사람이 되고 싶다” 라고 썼다. 그런 사람이 되어가는 과정이지 않을까?
글쓰기를 다시 시작하다
올해부터 SK 그룹의 개발자 커뮤니티인 데보션 활동을 시작했다. 처음 목표는 한달에 한 개 블로그 글을 올리는 거였다. 결과적으로 10개의 블로그 글을 썼고, 데보션 영 인터뷰도 한차례 가졌다. 바빴던 9~11월을 제외하면 한달에 한 개 정도 쓴 셈이니 만족스럽다.
이런 블로그 글을 쓰는 이유는 두 가지가 있다. 첫 번째는 누군가에게 도움이 되었으면 하는 마음이다. 옆 팀에 계신 김진 님께서 데보션에 엄청나게 많은 글을 쓰시는데, 진님께서 작성하신 LLM 관련 글들을 통해서 너무 많은 도움을 받았다. 나 또한 그런 사람이 되고 싶었기에 데보션 활동을 시작했다.
두 번째는 글을 씀으로써 내가 그 내용에 대해 더 깊게 이해하기 위함이다. 어떤 내용을 읽는 것, 어떤 내용에 대해 발표하는 것, 어떤 내용에 대한 글을 쓰는 것. 개인적으로 셋 중 글을 쓰는 것이야 말로 해당 내용을 가장 깊게 이해해야만 가능하다고 생각한다.
최종적으로 쓴 글의 개수는 전체 커뮤니티 12위였다. 내년에는 10위권 진입을 목표로 글을 써 봐야겠다는 생각이 들었다. 또 OpenAI API 를 활용해 최신 AI 논문 정보를 알려주는 Telegram bot 만들기 라는 글은 2024년 데보션 전체에서 좋아요를 가장 많이 받은 블로그 글로 선정되기도 했다. 많은 사람들이 좋아해주고, 도움을 받았다고 생각하니 너무 뿌듯하다.
하반기에는 링크드인 활동을 시작했다. 링크드인에 작성하는 글들은 데보션에 비해 비교적 간단한 내용들을 작성했다. 가장 큰 장점은 피드백이다. 사실 이전부터 개인 블로그 활동은 해왔지만, 댓글이라던지 반응이 많지 않았기 때문에 보람이 덜했던 느낌이 있었다. 데보션이나 링크드인에 글을 쓰면서 사람들의 관심을 수치적으로 볼 수 있는게 동기부여가 많이 되는 것 같다.
또 어떤 내용에 사람들이 많은 관심을 가지는지 알 수도 있었다. 2024년에 올린 게시글 중 가장 많은 조회수와 좋아요를 받은 글은 Attention noise에 관한 글로 25K의 조회수와 400개의 좋아요, 50개의 퍼감 피드백을 얻었다. 이런 수치적인 피드백이 있다보니 글을 쓰고자 하는 동기부여를 강하게 받을 수 있었다. 이런 면에서 정말 잘 만든 플랫폼이라는 생각이 들었고, 나한테 가장 잘 맞는 SNS 라는 생각도 들었다.
스피치 경험
올해는 감사하게도 이곳 저곳 불러주는 곳들도 많았던 것 같다.
- 2024년 SKT Junior Talent와의 대화
- 멋쟁이 사자처럼 중앙 해커톤 심사위원
- SK summit A.X LLM 부스 운영
- Weights & Biases 2차 meetup 연사
특히 W&B meetup는 꼭 해보고 싶었던 외부 연사였고, 내가 하고 있는 일들에 대해서 발표할 수 있어서 너무 좋았다. 2022년부터 W&B 애용하고 있었는데, 그곳에서 불러주셔서 너무 뿌듯하기도 했다.
아무튼 내년에도 데보션과 링크드인 활동을 열심히 해볼 작정이다. 내가 쓴 글을 통해서 누군가가 도움을 받고, 그 도움을 또 다른 사람에게 돌려줄 수 있는 세상이 되도록. 글쓰기와 마찬가지로 내년에도 더 많은 스피치 경험이 있었으면 좋겠다. 사람들 앞에 서서 발표할 때면 항상 에너지를 많이 얻고 도파민이 팍팍 돈다.
기타 등등 이모저모…
작년에 세웠던 목표 중 하나였던 조주기능사 자격증을 땄다. (주조 아님) 신기하게도 따고나니까 칵테일 먹고 싶은 생각이 싹 사라졌다. 생각보다 맛있는 칵테일이 별로 없어서 그런가. 하이볼이랑 위스키만 맛들려서 계속 먹게 된다. 다들 조주기능사 있으면 뭐 할 수 있냐고 물어보는데, 별건 없다. 멋있잖아? 한 잔 해~
올해는 또 아프지 않아서 다행이었다. 특히 2월부터 시작한 농구 스킬트레이닝(스테이포커스)은 너무 재미있었다. 슛이 점점 안들어가는 것 같아서 문제긴 한데, 뭔가 테크닉이 조금씩 좋아지는 것 같기도 하고? 테니스도 2주에 한 번씩 꼬박꼬박 재미있게 쳤다.
디피스트 활동이랑 SKT 동기 ML/DL 스터디를 통해 딥러닝 트렌드도 따라가려고 노력했고, 스터디메이트 독서모임을 통해서 안읽던 책도 조금씩 읽었다.
개인적으론 2024년은 열심히 일하고, 열심히 삶을 즐기는 딱 황금 밸런스의 삶을 살았던 것 같다. 덕분에 엄청 스트레스 받는 순간이 많지도 않았고, 아프지도 않았지 않나 생각이 든다.
2025년에는…
내가 진정으로 원하는 것은 무엇일까? 나는 어떨 때 희열을 느끼는가를 정확하게 정의하는 것이 중요하다 - “내가 가진 것을 세상이 원하게 하라” 중 (최인아 저서)
나같은 경우에는 보이지 않는 것을 보이게 할 때, 어려운 것을 쉽게 설명할 수 있을 때, 긴 설명보다는 아주 간단한 데모로 사람을 설득할 수 있을 때 희열을 느낀다.
또한 뭔가 내가 잘하기보다는 누군가 나를 원할 때 희열을 느낀다. 농구할 때를 예로 들어보면, 나는 득점을 많이하고 그런 것 보다 “재경이랑 같이 뛰고 싶은데”라는 말을 듣는게 더 좋다.
Pay forward: 특정인에게 도움 받은 것을 pay back 하는 것이 아니라, 내가 지금까지 받았던 것들을 불특정 다수의 후배들에게 도움 주는 것
올해 알게된 단어 중 가장 맘에 들었던 단어다. 지금의 내가 있기 까지 받았던 수많은 조언들과 가르침들을 많은분들께 나누며 살아가야겠다는 삶의 목표가 생겼다. 비록 지금은 많이 부족하여 아주 작은 일들밖에 나눌 수 없지만, 언젠가는 더 큰 것들을 나누고 그로인해 pay forward 가 더 널리 퍼지는 날까지! 열심히 성장하고 경험을 나누고 싶다.
마지막으로 이런 삶을 이미 살고 있는 멋진 멘토분들을 찾아보려 한다. 난 항상 선배님들과 친해지는 걸 어려워했다. 고등학교 1학년 입학했을 때 신입생 환영회, 동아리 오디션에서 선배들이 이상한걸 엄청 많이 시켰고, 이런 기억이 너무 안좋았던 것도 한몫 하는 것 같다. 선배나 나보다 나이 많고 경험많은 분들에게 다가가는 게 항상 어려웠는데, 올해에는 선배들과 많이 친해질 수 있도록 노력해보려 한다.
또 올해는 결혼이라는 큰 행사도 앞두고 있다. 사실상 이미 결혼한거나 다름없는 생활을 하고 있긴 하지만, 결혼식을 핑계로 자주 못봤던 친구들과도 연락하고 결혼식날 얼굴 볼 수 있으니까.
연말답지 않게 정신없는 시국이지만, 슬픈 소식들이 많이 들려왔지만, 모두들 씩씩하게 잘 이겨냈으면 좋겠다. 내년에는 좋은 소식만 들려오기를.