생성형 AI 프로젝트 개발 라이프사이클

생성형 AI 기술의 발전과 함께 다양한 혁신적인 서비스들이 등장하고 있습니다. Perplexity와 같은 대화형 검색엔진, 전문 분야에 특화된 AI 서비스들이 그 예입니다. 이러한 서비스들은 각기 다른 목적을 바탕으로 복잡한 개발 라이프사이클을 거쳐 만들어집니다. 이번 포스팅에서는 생성형 AI 기반 서비스의 개발 과정, 즉 프로젝트 범위 설정부터 모델 선택, 미세 조정, 애플리케이션 통합까지의 과정을 소개합니다.

생성형 AI 프로젝트 개발 라이프사이클

생성형 AI 서비스 개발 프로세스의 모든 것

생성형 AI 기술이 발전하고 gpt-4o나 claude-3.5-sonnet 등 파운데이션 모델의 성능이 상향평준화 되면서 다양하고 참신한 생성형 AI 서비스들이 많이 출시되고 있습니다. 생성형 AI 기반 연구 및 대화형 검색엔진을 표방하는 서비스인 Perplexity나 구글의 대표적인 파운데이션 모델인 Gemini를 활용하여 사용자가 문서와 상호 작용할 수 있도록 도와주는 Notebooklm과 같은 서비스들이 그 대표적인 예입니다.

AI 기반 대화형 검색엔진 ‘Perplexity’(출처 : perplexity.ai)

그 외에도 생성형 AI 모델을 활용해 법이나 의학 등 전문 분야의 논문 등 깊이있는 전문 지식을 제공하는 지식 특화형 서비스들 역시 주목받고 있습니다. 이러한 생성형 AI 기반 서비스들은 각각의 컨셉과 목적을 바탕으로 저마다 특수한 기능과 강점을 가지고 치열한 경쟁을 벌이고 있습니다. 

그렇다면 이처럼 다양한 생성형 AI 서비스 프로젝트의 개발은 어떤 과정을 거쳐 만들어질까요? 생성형 AI 기반 서비스는 인공지능 개발자 및 서비스 기획자와 디자이너 등 각 분야의 전문가들로 구성된 팀의 협업을 통해 복잡하고 난이도 높은 과정들을 통해 만들어집니다. 또한 서비스의 컨셉을 구체화 하고, 목적에 맞는 생성형 AI 모델을 선별하며 이를 지속적으로 개선해 나아가는 지난한 과정을 거쳐야 합니다.

생성형 AI 프로젝트 라이프사이클(출처 : Coursera)

이번에는 현업 인공지능 소프트웨어 아키텍트가 경험한 프로젝트에 따라서 우리가 사용하는 생성형 AI 기반 서비스들이 구체적으로 어떠한 과정을 거쳐 탄생하는지 살펴보도록 하겠습니다. 이해를 돕기 위해 프로젝트 범위 설정 > 생성형 AI 모델 선택 > 생성형 AI 모델 적용 및 미세조정정  > 애플리케이션 통합의 네 단계로 이루어지는 생성형 AI 관련 서비스의 개발 라이프사이클에 대해서 살펴보도록 하겠습니다.


1. 프로젝트 범위 설정

우선 생성형 AI 서비스 개발 프로젝트 사이클의 첫 번째 단계에서는 생성형 AI 서비스의 용도 및 예상 사용자를 정의할 필요가 있습니다. 이 단계에서는 특히 최종 사용자를 명확히 정의하는 것이 중요한데, 예를들어 b2b 기업의 특정 부서 업무 효율화를 위한 것인지, 혹은 불특정 다수의 유저를 염두에 두는 b2c 서비스인지 등에 따라 개발 방향이 전혀 달라질 수 있기 때문입니다.

다음으로 생성형 AI 서비스의 기능을 정의하는 일 역시 중요합니다. 도입을 생성형 AI 모델을 특정 서비스에 관한 정보를 제공해주는 챗봇으로 활용해줄지, 논문에 대한 요약 도구로 사용할지 혹은 번역 도구로 사용할지 등을 결정하는 것과 같은 일입니다. 이에 따라 모델의 답변 정확도에 집중할지 혹은 사용자 편의를 위한 특정 기능에 집중할지가 정해집니다. 

다양한 용도의 생성형 AI 서비스(출처 : Coursera)

서비스의 타겟 사용자와 기능이 정의되면 마지막으로 해당 사용 사례에서 모델의 성능을 평가하는 작업이 필요합니다. 성능 평가 작업에서는 챗GPT와 같이 다양한 작업에서 대체로 좋은 퍼포먼스를 내는 보편적인 생성형 AI 서비스를 만들 것인지 아니면 번역이나 요약 등 특정 작업에 특화된 모델을 만드는 것인지를 명확히 할 필요가 있습니다.

2. 생성형 AI 모델 선택

프로젝트의 범위가 정의되면, 다음 단계는 기존 모델을 선택하거나 새 모델을 사전 훈련하는 것입니다. 생성형 AI 서비스의 뼈대가 되는 초거대언어모델(LLM)을 선택할 때는 모델의 크기, 아키텍처, 사전 훈련 목표 등을 고려해야 합니다. 최근에는 OpenAI사의 GPT-4o나 Anthropic사의 Claude-3.5-Sonnet 등 최신 사전 훈련된 LLM 에 쉽게  접근할 수 있는 MS Azure나 AWS Bedrock과 같은 SaaS 형태의 다양한 모델 허브를 활용할 수 있으므로 이를 최대한 활용하는 것이 좋습니다.

Foundation model vs Fine-tuned model(출처 : Coursera)

이 때 사전 훈련된 LLM을 사용하는 것과 맞춤형 LLM을 훈련하는 것 사이의 트레이드오프가 존재한다는 사실을 고려해야 합니다. 성능이 뛰어난 모델은 매개변수(parameter)가 많기 때문에 그만큼 계산 리소스와 구축 비용 역시 많이 들 수 밖에 없습니다. 따라서 목적에 맞게 성능과 가격 사이의 밸런스를 추구하며 다양한 모델 아키텍처와 사전 훈련 목표를 이해하는 것이 중요합니다. 

서비스 구현 목적에 따른 모델 아키텍쳐(출처 : Coursera)

예를 들어, BERT와 같은 자동 인코딩 모델은 텍스트를 재구성하도록 훈련되며, 이러한 모델은 감정 분석, 명명된 엔터티 인식, 단어 분류와 같은 작업에 적합합니다. GPT와 같은 자동 회귀 모델은 시퀀스에서 다음 토큰을 예측하도록 훈련되며, 이러한 모델은 텍스트 생성과 같은 작업에 적합합니다. T5와 같은 시퀀스-투-시퀀스 모델은 하나의 시퀀스를 다른 시퀀스로 매핑하도록 훈련되며, 이는 번역, 요약, 질문 응답과 같은 작업에 적합합니다.

3. 생성형 AI 모델 적용 및 미세조정

생성형 AI 서비스의 컨셉과 이를 구현하기 위해 사용할 구체적인 LLM을 선택한 후에는 해당 모델을 특정 사용 사례에 맞게 적용하고 반복적으로 최적화 하는 과정이 필요합니다. 이 때 생성형 AI 개발자들은 목적 달성을 위해 프롬프트 엔지니어링, 미세 조정(Fine-tuning), 인간 피드백을 통한 강화학습(Reinforcement Learning from Human Feedback) 등의 기법을 최대한 활용할 수 있습니다.

각 기법에 대해 간단히 설명드리자면 우선 프롬프트 엔지니어링은 모델에서 원하는 출력을 이끌어내기 위해 프롬프트를 설계하는 과정을 말합니다. 파인튜닝으로도 잘 알려진 미세 조정은 특정 사용 사례에 맞는 데이터셋을 사용하여 모델을 추가 훈련하는 과정이며, 마지막으로 인간 피드백을 통한 정렬은 인간의 피드백을 사용하여 모델의 출력을 개선하는 과정을 뜻합니다.

4. 애플리케이션 통합

생성형 AI 프로젝트 생애 주기의 마지막 단계는 모델을 애플리케이션에 통합하는 것입니다. 이는 모델을 추론을 위한 최적화 및 배포하는 것과 LLM(대형 언어 모델) 기반 애플리케이션을 구축하는 것을 포함합니다.

이 때 언어모델의 성능 뿐 아니라 사용자의 편의성을 최대한 고려한 UI/UX 설계가 중요합니다. 아무리 성능이 좋은 모델을 활용해  

또한 LLM을 훈련하는데 있어서는 리소스 관리가 필수적입니다. 따라서 훈련 과정에서 메모리 요구 사항을 줄이는 기술을 탐구하는 것이 중요한데,  예를 들어, 양자화 및 분산 컴퓨팅 전략이 이러한 문제를 해결하는 데 도움을 줄 수 있습니다. 

모델 크기와 훈련 시간의 트레이드 오프(출처 : Coursera)

또한, 모델과 데이터셋 크기에 대한 확장 법칙(law of scale)을 고려하는 것도 중요합니다. 이는 컴퓨팅 예산에 맞는 최적의 모델과 데이터셋 크기를 결정하는 데 도움이 될 수 있습니다. 마지막으로, 도메인 적응을 위한 사전 훈련이 사용 사례에 도움이 될지 고려해야 합니다. 예를 들어, BloombergGPT는 금융 작업에서 성능을 향상시키기 위해 대규모 금융 데이터 코퍼스를 기반으로 사전 훈련되었습니다.

결론

생성형 AI 기반 서비스는 개발 과정의 복잡성과 높은 난이도에도 불구하고 여러 분야에서 폭발적으로 성장하고 있는 분야이기도 합니다. 각 서비스의 개발 과정에서는 명확한 목표 설정과 맞춤형 모델 선택, 지속적인 최적화와 애플리케이션 통합이 중요한데, 이 때 성공적인 서비스 개발을 위해서는 성능과 비용의 균형을 잘 맞추는 것이 중요합니다. 또한, 사용자의 경험을 최우선으로 고려한 UI/UX 설계와 지속적인 개선 작업을 통해 사용성을 개선하는 것 역시 빼놓을 수 없는 포인트라고 할 수 있습니다.







문과 출신으로 AI 스타트업에서 데이터 사이언티스트로 일하고 있습니다. 


* 슈퍼브 블로그의 외부 기고 콘텐츠는 외부 전문가가 작성한 글로 운영 가이드라인에 따라 작성됩니다. 슈퍼브 블로그에서는 독자분들이 AI에 대한 소식을 더 쉽고 간편하게 이해하실 수 있도록 유용한 팁과 정보를 제공하고 있습니다.