요즘 우아한 AI 개발 (머신러닝에서 GPT, LLM, 생성형 AI, MLOps까지, 배달의민족 실제 프로젝트로 엿보는 AI 활용 이야기)

요즘 우아한 AI 개발 (머신러닝에서 GPT, LLM, 생성형 AI, MLOps까지, 배달의민족 실제 프로젝트로 엿보는 AI 활용 이야기)

$24.07
Description
★ ‘우아한형제들’의 진짜 개발 이야기, AI와 함께 돌아왔습니다!
★ 배달의민족 메뉴 추천 AI부터 배달 로봇까지, 현실이 된 AI 기술 이야기 수록

우아한형제들의 생생한 개발 이야기를 엮은 《요즘 우아한 개발》이 AI 중심 개발 사례와 실무 노하우를 가득 담아 《요즘 우아한 AI 개발》로 돌아왔습니다!
IT 서비스 개발에서 AI 활용의 중요성은 점점 커지고 있습니다. 매일 새로워지는 AI 기술을 따라가는 것만큼 이를 실무에 효과적으로 적용하는 역량이 기업과 개인의 경쟁력을 좌우하죠. 이 책은 우아한형제들이 실제 프로젝트에 적용한 AI 기술과 개발 경험을 담아냈습니다. AI 메뉴 추천 시스템부터 데이터 검색 및 분석 자동화, 로봇 ML 모델 경량화와 MLOps 구축까지, 최신 AI 기술을 활용한 실무 사례를 생생하게 다룹니다. AI를 도입하고자 하는 기획자와 개발자라면, 실제 서비스에 AI 기술을 어떻게 적용하는지 궁금하다면 우아한형제들이 걸어온 AI 개발의 여정을 통해 그 해답을 찾아보세요.
저자

우아한형제들

우아한형제들은배달이일상을조금더행복하게하도록오늘도달리고있습니다.평범한사람들이모여비범한성과를만들어내는곳이될수있도록건강한조직문화를만드는일에진심을다합니다.2016년부터'우아한형제들기술블로그'를운영하며개발조직의성장과정을기록하고있습니다.

목차

[PART1]AI로개발생산성높이기


01장.코파일럿‘열일’하게만들기
_VSCode에코파일럿설치하기
_VSCode깃허브코파일럿주요기능소개
_실험-코파일럿은얼마나유능할까?
_코파일럿을더잘사용하기위한팁
_마치며


02장.챗GPT를활용한GitFlow관리자동화
_화제의챗GPT
_자동화를결심한계기
_챗GPT와대화해보자


[PART2]AI로더편리한서비스만들기


03장.리뷰를재료로GPT가만든메뉴추천,메뉴뚝딱AI
_AI프로덕트만들기미션,그런데GPT가주재료인
_도입배경
_무엇을할수있을까?
_어떻게할수있을까?
_뚝딱이가메뉴를추천합니다
_검색에서의메뉴추천하기
_GPT와함께성장하는메뉴뚝딱AI


04장.프롬프트엔지니어링으로메뉴이미지품질검수하기
_이미지검수에GPT를활용한이유
_프롬프트엔지니어링:GPT를업무환경에맞추는과정
_GPT한계극복:하이브리드접근의필요성
_세상에등장한‘AI이미지검수’
_배포그후,기대보다높은사용률
_우아한형제들에서AI와일하는방법


05장.배민선물하기AI메시지제작기
_배민선물하기에서AI메시지를만들게된이유
_문제
_가설
_금쪽이GPT를훈련시키는솔루션3단계
_마치며


06장.실시간반응형추천개발일지1부:프로젝트소개
_기존추천방식소개
_기존방식의한계
_실시간반응형추천시스템
_개별컴포넌트소개
_A/B테스트
_교훈
_앞으로의계획
_마치며


07장.실시간반응형추천개발일지2부:벡터검색,그리고숨겨진요구사항과기술도입의사결정을다루는방법
_프로젝트에서는원했다,숨겨진요구사항을
_기술적인문제로의환원
_새로운기술컴포넌트도입후보선정하기
_벡터유사도검색이필요한이유
_벡터유사도검색:우리는무엇이다른가?
_HNSW알고리즘에서보는프리필터의문제
_기술후보군선택과실험설계하기
_1차실험
_1차실험구축
_2차실험
_2차실험구축
_간단한성능최적화방법(RDS)
_마치며


[PART3]AI로쉽고빠르게데이터활용하기


08장.AI데이터분석가‘물어보새’등장1부:RAG와Text-To-SQL활용
_우리는‘왜’다시뭉치게되었을까?
_우리는‘무엇을’만들었을까?
_우리는‘어떻게’일을했는가?
_Text-to-SQL을‘어떻게’구현했을까?
_물어보새1부를마치며


09장.AI데이터분석가‘물어보새’등장2부:데이터디스커버리
_우리는‘왜’데이터디스커버리영역으로확장했을까?
_질문이해단계는‘어떻게’구현했을까?
_정보획득단계는‘어떻게’구현했을까?
_물어보새의향후계획
_마치며


10장.폴라스로데이터처리를더빠르고가볍게with실무적용기
_폴라스가필요했던이유
_폴라스소개
_기술적인폴라스장점
_IO기능
_LazyAPI와쿼리최적화
_사용성측면에서폴라스장점
_실무적용사례소개
_마치며


[PART4]안정적인AI서비스운영하기


11장.빠르고안정적인AI서빙시스템구성하기
_AI플랫폼이란?
_서빙컴포넌트
_CI:이미지생성자동화
_CD:서빙자동화
_모니터링및알람
_운영중맞이한문제와해결사례
_마치며


12장.생성형AI서비스:게이트웨이로쉽게시작하기
_개발배경
_생성형AI를잘활용하려면무엇이필요한가?
_풀어야할문제들
_AIAPI게이트웨이
_지원서비스
_자격증명관리
_향후계획
_마치며


[PART5]로봇과머신러닝모델최적화하기


13장.로봇머신러닝모델의경량화1부훈련후양자화
_로봇이실외에서자율주행을하려면?
_엔비디아GPU와제트슨플랫폼의특징
_양자화
_TensorRT를이용한최적화
_양자화단계별성능비교
_실험방식
_실험결과및결론
_마치며


14장.로봇ML모델의경량화2부:양자화인식훈련
_훈련후양자화의한계점
_양자화인식훈련이란?
_양자화인식훈련(QAT)수행하기
_NVIDIApytorch-quantization을활용한QAT수행및ONNX/TensorRT변환가이드
_마치며


15장.로봇을위한MLOps1부:에지디바이스와K3s,에어플로
_머신러닝모델을개발하는과정과문제들
_에지디바이스
_로봇을위한머신러닝개발과정과MLOps시스템이해결해야할문제들
_K3s와에어플로:자원관리솔루션과워크플로관리솔루션
_설치하기
_DAG예제
_마치며


16장.로봇을위한MLOps2부:에지파이프라인의구성
_에지파이프라인의필요성
_에지디바이스에서의AI연산이필요한이유
_에지파이프라인의목적
_엔비디아도구들소개
_엔비디아NsightSystems
_Trt-Infersight개발
_에지파이프라인의구성
_마치며

출판사 서평

★학습하고최적화하고자동화하라,여전히중요한건그모든과정을공유하는것!
★도입부터시행착오까지,우아한형제들의AI개발여정을그대로담았습니다.

GPT와생성형AI,머신러닝,MLOps…기술의흐름은빠르게변하고있지만,그것을실무에어떻게녹여내야하는지는여전히어려운문제입니다.《요즘우아한AI개발》은우아한형제들이실제서비스개발의현장에AI를적용하면서겪은도전과해결과정,그리고그속에서얻은인사이트를담았습니다.

-챗GPT와GPTAPI를도입하고서비스에적용하기
-기존머신러닝기반시스템에생성형AI더하기
-실시간반응형추천서비스에생성형AI적용하기
-코드없이데이터를추출하는AI데이터분석봇만들기
-배달로봇에인공지능알고리즘이식하기
-LLMOps를활용한데이터검색및분석자동화

AI메뉴추천부터프롬프트엔지니어링,실시간반응형추천시스템,로봇을위한MLOps까지,우리에게너무나도익숙한'배달의민족'실제프로젝트를통해AI기술이어떻게적용되었는지를생생하게전합니다.AI개발을이해하기위한다양한개념과AI모델별활용사례,실제활용한코드까지생생하게만나보세요.우아한형제들이직접경험한시행착오와해결책을가감없이공유합니다!

★요즘개발에서AI는선택이아니라필수!
AI는이미개발의한가운데있습니다.이제막AI를도입하려는팀도,이미AI를활용하고있는개발자도우아한형제의경험에서새로운통찰을얻을수있을것입니다.현장의AI활용법이궁금하다면,이책과함께하세요.

★다음에해당한다면이책을추천합니다
-생성형AI,GPT,머신러닝을실무에적용하고싶은개발자
-AI기반서비스를고민하는기획자와프로덕트매니저
-데이터를더스마트하게활용하고싶은분석가
-우아한형제들이AI를활용하는방식을알고싶은사람

★본문속으로-GPT로뚝딱만들어낸'메뉴뚝딱AI'
만약GPT를활용해먹고싶은메뉴에맞는가게를추천할수있다면어떨까요?나아가아직뭘먹고싶은지조차정하지못했다면,메뉴선택은물론가게선택까지도와줄수있지않을까요?저희는이질문에주목하며GPT활용방안을구체화해나갔습니다.
...
먼저GPT-4omini가리뷰를읽고의미있는단위로리뷰를나누어청크로만들고,그청크가어떤메뉴나식재료에대한내용인지추출합니다.또각각의청크가어떤카테고리(맛,식감,함께먹는사람,상황등)에해당하는지분류를진행합니다.마지막으로GPT-4o는청크안에저희가미리만들어놓은키워드와유사한표현이있는지를확인합니다.이과정을통해저희는컨텍스트추출의정확도를높이고,리뷰가메뉴,식재료,서비스,배달등어떤부분에대한평가를담고있는지를고도화하여추출합니다.

★본문속으로-우아톤에서탄생한AI데이터분석가'물어보새'
AI데이터분석가‘물어보새’는생성형AI를주제로한〈우아톤2023〉을계기로탄생한프로덕트입니다.
구성원들의요구와관심이지속되어2024년1월에본격적인개발을위한‘언’지니어’태스크포스(TF)가구성되었습니다.‘물어보새’는더욱발전해쿼리문생성뿐만아니라쿼리문해석,쿼리문법검증,테이블탐색및로그안내등의다양한기능을갖추게되었습니다.

물어보새의기반기술은LLM,RAG,랭체인(Langchain),LLMOps입니다.LLM은딥러닝알고리즘기반의대규모언어모델입니다.가장유명한모델로는OpenAI의GPT시리즈가있습니다.해당모델은일반적인질문에대해대답할수있지만,특정회사에서통용되는질문에대해서는제대로답하지못합니다.그이유는그회사의데이터를모델이직접학습하지않았기때문입니다.

물어보새는랭체인에서제공하는도큐먼트로더,벡터스토어,RAGQA등을활용해도메인지식을기반으로LLM답변을생성하는기능을만들었습니다.그리고다음과같은네가지요소인‘데이터보강’,‘검색알고리즘개발’,‘프롬프트엔지니어링’,‘실험및평가시스템구축’에집중해새로운구조를개발했습니다.

★본문속으로-우아한형제들로보틱스LAP의자율주행배달로봇개발이야기
우아한형제들로보틱스LAB에서도,실외배달로봇의자율주행에사용할머신러닝모델을개발할때이런고성능서버들을사용합니다.덕분에매우큰데이터셋들과다양한고성능머신러닝모델들을손쉽게다루고있죠.그러나여기엔한가지문제점이있는데,바로고성능서버환경에서개발된머신러닝모델은곧바로로봇에배포할수없다는점입니다.

이제부터고성능서버환경에서딥러닝프레임워크를이용해학습한모델을TensorRT엔진으로변환하는과정을예시코드와함께살펴보겠습니다.예시에서는파이토치의ResNet-18모델과허깅페이스의이미지넷검증데이터셋을사용했습니다.

★본문속으로-빠르고안정적인AI서빙시스템구상하기
우아한형제들AI플랫폼에는서빙자동화시스템이구성되어있어서AI모델을생성만하면모델배포및관리등의작업을알아서처리해줍니다.이서빙자동화시스템이어떻게구성되어있는지알아보겠습니다.

우아한형제들AI플랫폼에서구성한모니터링시스템을예로들어보겠습니다.서비스별로대시보드를만드는대신하나의대시보드에서여러서비스를조회할수있도록구성했습니다.대시보드상단에서선택한서비스에해당하는메트릭을확인할수있는구조입니다.

이후에는UI를구성해웹페이지에서쉽게서비스생성및수정을할수있게개발하려고합니다.그리고AI를이용해어떤기능이필요한지설명만해주면,처음부터끝까지자동으로생성하는플랫폼을만들고자하는목표가있습니다.