★ 학습하고 최적화하고 자동화하라, 여전히 중요한 건 그 모든 과정을 공유하는 것!
★ 도입부터 시행착오까지, 우아한형제들의 AI 개발 여정을 그대로 담았습니다.
GPT와 생성형 AI, 머신러닝, MLOps… 기술의 흐름은 빠르게 변하고 있지만, 그것을 실무에 어떻게 녹여내야 하는지는 여전히 어려운 문제입니다. 《요즘 우아한 AI 개발》은 우아한형제들이 실제 서비스 개발의 현장에 AI를 적용하면서 겪은 도전과 해결 과정, 그리고 그 속에서 얻은 인사이트를 담았습니다.
- 챗GPT와 GPT API를 도입하고 서비스에 적용하기
- 기존 머신러닝 기반 시스템에 생성형 AI 더하기
- 실시간 반응형 추천 서비스에 생성형 AI 적용하기
- 코드 없이 데이터를 추출하는 AI 데이터 분석 봇 만들기
- 배달 로봇에 인공지능 알고리즘 이식하기
- LLMOps를 활용한 데이터 검색 및 분석 자동화
AI 메뉴 추천부터 프롬프트 엔지니어링, 실시간 반응형 추천 시스템, 로봇을 위한 MLOps까지, 우리에게 너무나도 익숙한 "배달의민족" 실제 프로젝트를 통해 AI 기술이 어떻게 적용되었는지를 생생하게 전합니다. AI 개발을 이해하기 위한 다양한 개념과 AI 모델별 활용 사례, 실제 활용한 코드까지 생생하게 만나보세요. 우아한형제들이 직접 경험한 시행착오와 해결책을 가감 없이 공유합니다!
★ 요즘 개발에서 AI는 선택이 아니라 필수!
AI는 이미 개발의 한가운데 있습니다. 이제 막 AI를 도입하려는 팀도, 이미 AI를 활용하고 있는 개발자도 우아한형제의 경험에서 새로운 통찰을 얻을 수 있을 것입니다. 현장의 AI 활용법이 궁금하다면, 이 책과 함께하세요.
★ 다음에 해당한다면 이 책을 추천합니다
- 생성형 AI, GPT, 머신러닝을 실무에 적용하고 싶은 개발자
- AI 기반 서비스를 고민하는 기획자와 프로덕트 매니저
- 데이터를 더 스마트하게 활용하고 싶은 분석가
- 우아한형제들이 AI를 활용하는 방식을 알고 싶은 사람
★ 본문 속으로 - GPT로 뚝딱 만들어낸 "메뉴뚝딱 AI"
만약 GPT를 활용해 먹고 싶은 메뉴에 맞는 가게를 추천할 수 있다면 어떨까요? 나아가 아직 뭘 먹고 싶은지조차 정하지 못했다면, 메뉴 선택은 물론 가게 선택까지 도와줄 수 있지 않을까요? 저희는 이 질문에 주목하며 GPT 활용 방안을 구체화해나갔습니다.
...
먼저 GPT-4o mini가 리뷰를 읽고 의미 있는 단위로 리뷰를 나누어 청크로 만들고, 그 청크가 어떤 메뉴나 식재료에 대한 내용인지 추출합니다. 또 각각의 청크가 어떤 카테고리(맛, 식감, 함께 먹는 사람, 상황 등)에 해당하는지 분류를 진행합니다. 마지막으로 GPT-4o는 청크 안에 저희가 미리 만들어놓은 키워드와 유사한 표현이 있는지를 확인합니다. 이 과정을 통해 저희는 컨텍스트 추출의 정확도를 높이고, 리뷰가 메뉴, 식재료, 서비스, 배달 등 어떤 부분에 대한 평가를 담고 있는지를 고도화하여 추출합니다.
★ 본문 속으로 - 우아톤에서 탄생한 AI 데이터 분석가 "물어보새"
AI 데이터 분석가 ‘물어보새’는 생성형 AI를 주제로 한 〈우아톤 2023〉을 계기로 탄생한 프로덕트입니다.
구성원들의 요구와 관심이 지속되어 2024년 1월에 본격적인 개발을 위한 ‘언’지니어’ 태스크포스(TF)가 구성되었습니다. ‘물어보새’는 더욱 발전해 쿼리문 생성뿐만 아니라 쿼리문 해석, 쿼리 문법 검증, 테이블 탐색 및 로그 안내 등의 다양한 기능을 갖추게 되었습니다.
…
물어보새의 기반 기술은 LLM, RAG, 랭체인(Langchain), LLMOps입니다. LLM은 딥러닝 알고리즘 기반의 대규모 언어 모델입니다. 가장 유명한 모델로는 OpenAI의 GPT 시리즈가 있습니다. 해당 모델은 일반적인 질문에 대해 대답할 수 있지만, 특정 회사에서 통용되는 질문에 대해서는 제대로 답하지 못합니다. 그 이유는 그 회사의 데이터를 모델이 직접 학습하지 않았기 때문입니다.
…
물어보새는 랭체인에서 제공하는 도큐먼트로더, 벡터스토어, RAG QA 등을 활용해 도메인 지식을 기반으로 LLM 답변을 생성하는 기능을 만들었습니다. 그리고 다음과 같은 네 가지 요소인 ‘데이터 보강’, ‘검색 알고리즘 개발’, ‘프롬프트 엔지니어링’, ‘실험 및 평가 시스템 구축’에 집중해 새로운 구조를 개발했습니다.
★ 본문 속으로 - 우아한형제들 로보틱스LAP의 자율주행 배달 로봇 개발 이야기
우아한형제들 로보틱스LAB에서도, 실외 배달 로봇의 자율주행에 사용할 머신러닝 모델을 개발할 때 이런 고성능 서버들을 사용합니다. 덕분에 매우 큰 데이터셋들과 다양한 고성능 머신러닝 모델들을 손쉽게 다루고 있죠. 그러나 여기엔 한 가지 문제점이 있는데, 바로 고성능 서버 환경에서 개발된 머신러닝 모델은 곧바로 로봇에 배포할 수 없다는 점입니다.
…
이제부터 고성능 서버 환경에서 딥러닝 프레임워크를 이용해 학습한 모델을 TensorRT 엔진으로 변환하는 과정을 예시 코드와 함께 살펴보겠습니다. 예시에서는 파이토치의 ResNet-18 모델과 허깅페이스의 이미지넷 검증 데이터셋을 사용했습니다.
★ 본문 속으로 - 빠르고 안정적인 AI 서빙 시스템 구상하기
우아한형제들 AI 플랫폼에는 서빙 자동화 시스템이 구성되어 있어서 AI 모델을 생성만 하면 모델 배포 및 관리 등의 작업을 알아서 처리해줍니다. 이 서빙 자동화 시스템이 어떻게 구성되어 있는지 알아보겠습니다.
…
우아한형제들 AI 플랫폼에서 구성한 모니터링 시스템을 예로 들어보겠습니다. 서비스별로 대시보드를 만드는 대신 하나의 대시보드에서 여러 서비스를 조회할 수 있도록 구성했습니다. 대시보드 상단에서 선택한 서비스에 해당하는 메트릭을 확인할 수 있는 구조입니다.
…
이후에는 UI를 구성해 웹페이지에서 쉽게 서비스 생성 및 수정을 할 수 있게 개발하려고 합니다. 그리고 AI를 이용해 어떤 기능이 필요한지 설명만 해주면, 처음부터 끝까지 자동으로 생성하는 플랫폼을 만들고자 하는 목표가 있습니다.