요즘 AI 전환에 대한 관심이 높아지면서 거대 언어 모델(Large Language Model, 이하 LLM)과 특정 분야나 작업에 최적화된 소형 언어 모델(Small Language Model, 이하 SLM) 관련 프로젝트를 준비하거나 추진 중인 조직이 많습니다. 사실상 AI 프로젝트를 추진하는 데 필요한 GPU 서버로 구성한 인프라와 MLOps 플랫폼 그리고 이를 운영할 인력을 잘 갖춘 곳은 그리 많지 않습니다.
그렇다고 해서 AI 성숙도가 높은 기업만 LLM, SLM을 이용한 AI 어시스턴트나 AI 에이전트를 개발해 비즈니스와 업무 현장에서 활용할 수 있는 것은 아닌데요.
Google Cloud와 같은 퍼블릭 클라우드 서비스를 활용하면 인프라와 플랫폼이 없어도, AI 관련 노하우가 많지 않아도 생성형 AI 프로젝트를 추진할 수 있습니다.
그렇기에 이번 포스팅에서는 LLM, SLM으로 훈련, 미세 조정, 추론 작업을 클라우드 환경에서 하는 데 있어
Kubernetes와 Google Cloud의 GKE(Google Kubernetes Engine)를 활용하면 어떤 이점을 누릴 수 있는 지 알아볼까 합니다.
초대형 모델의 시대를 수용하는 GKE
LLM 모델의 크기가 기하급수적으로 증가하다 보니, 이제 수백억에서 수조 개의 파라미터를 가진 모델이 등장하는 것이 어색하지 않을 정도가 되었습니다. 이를 지원하기 위해 GKE는 세계 최대 규모의 관리형 클러스터 서비스를 제공합니다. GKE는 점점 더 커지는 모델 학습 요구를 충족하기 위해 65,000개의 노드를 지원하는 확장 옵션을 제공하고 있습니다. 이를 통해 Google Cloud는 10조 개 이상의 파라미터를 가진 초대형 모델도 처리할 수 있는 역량을 클라우드 사용자에게 제공합니다.
좀 더 자세히 보자면 GKE 클러스터는 Terraform을 활용해 빠르게 설정할 수 있으며, 기본적으로 1,000개의 노드 풀에 추가로 16개의 4,000 노드 풀을 더하여 총 65,000개 노드까지 확장할 수 있습니다. 클러스터 설정은 약 1시간 반에서 2시간 정도 소요되며, 이후 학습과 추론 워크로드를 병렬로 처리할 수 있습니다.
실제 사례를 살펴보면 50,000개의 Pod를 사용하는 학습 워크로드와 15,000개의 Pod를 사용하는 추론 워크로드를 혼합하여 실행하며, 추론 트래픽이 급증할 경우 학습 작업을 일시 중단하고 추론에 리소스를 우선 배정합니다. 트래픽이 감소하면 다시 학습 작업이 재개됩니다. 이러한 동적 리소스 할당은 클러스터의 리소스를 효율적으로 활용할 수 있도록 합니다.
Kubernetes와 GKE의 이점
Kubernetes는 AI 플랫폼으로서의 강점을 극대화하는데, 컨테이너화된 애플리케이션의 배포와 관리를 자동화하여 개발자들이 반복 작업 대신 모델 개발에 집중할 수 있는 환경을 제공합니다. 다양한 하드웨어 및 소프트웨어와의 호환성을 통해 유연한 확장이 가능하며, 온프레미스와 다중 클라우드 환경에서도 일관되게 활용될 수 있습니다.
GKE의 노드 확장성은 특히 대규모 AI 모델 지원에 유리합니다. 가령 OpenAI의 GPT-4는 약 1.7조 개의 파라미터를 가지고 있으며, 이를 학습하려면 수십만 개의 GPU 코어와 대규모 스토리지가 필요합니다. 이러한 요구를 GKE의 65,000 노드 클러스터로 대응할 수 있으며, 이를 통해 학습, 추론, 배포에 필요한 모든 작업을 하나의 플랫폼에서 효율적으로 처리할 수 있습니다.
65,000노드가 결코 과하지 않은 이유
6,5000노드가 왜 필요한지 좀더 피부에 와닿게 이야기해 보겠습니다. 대략 10억 개 전후의 파라미터를 가진 모델의 경우 소규모 클러스터로도 학습이 가능하지만, 1조 개 이상의 파라미터를 가진 초대형 모델은 65,000개 노드가 필요할 수 있습니다. 이 노드는 대규모 GPU 리소스를 포함하며, 이를 통해 초당 수백 개의 Pod를 스케줄링하거나 트래픽 급증에 빠르게 대응할 수 있습니다. 또한, 추론 과정에서 초당 수천 개의 요청을 처리할 수 있는 환경을 제공하여 실시간 AI 서비스 구축에도 적합합니다.
정리하자면 GKE는 대규모 AI 모델을 학습 및 추론하기 위한 최적의 환경을 제공하며, 이러한 확장성과 유연성은 AI 개발자와 데이터 과학자들에게 새로운 가능성을 열어줍니다. 기업은 이를 통해 대규모 데이터를 처리하고 혁신적인 AI 솔루션을 효율적으로 개발하고 배포할 수 있습니다.
SLM 훈련과 추론에도 딱 좋은 GKE
한편, GKE는 초대형 모델뿐만 아니라 SLM을 활용하는 데에도 매우 유리한 환경을 제공합니다. SLM은 상대적으로 적은 수백만~수억 개의 파라미터로 특정 도메인이나 과제를 위해 최적화한 모델로, LLM 모델과 비교할 때 학습 및 추론 시 더 적은 컴퓨팅 자원을 요구합니다. 하지만 이러한 모델 역시 효율적인 리소스 관리와 확장성을 제공하는 플랫폼이 필요합니다.
SLM은 대규모 모델에 비해 적은 컴퓨팅 리소스를 필요로 하므로, GKE의 유연한 노드 풀 설정 기능이 큰 장점으로 작용합니다. 예를 들어, 초대형 모델을 위한 65,000 노드 클러스터 대신 SLM을 위한 1,000~5,000 노드 크기의 클러스터를 설정하면, 비용 효율적으로 작업을 수행할 수 있습니다. GKE는 필요에 따라 클러스터의 크기를 확장하거나 축소할 수 있어 리소스 낭비를 최소화합니다.
도메인 최적화에도 딱 좋은 GKE
GKE는 훈련, 추론뿐만 아니라 미세 조정(Fine-Tuning) 작업에도 잘 어울립니다. SLM은 의료, 법률, 금융 등 특정 도메인에 맞춰 미세 조정 과정을 거칩니다. 이 과정에서 여러 가지 실험과 검증 작업이 필요하며, 각 작업은 비교적 짧은 학습 주기를 가지는 경우가 많습니다. GKE는 빠른 워크로드 스케줄링을 통해 이러한 반복적이고 짧은 작업을 효율적으로 처리할 수 있습니다. 특히, Cluster Loader 2와 같은 도구를 활용하면 여러 SLM의 병렬 학습 및 추론 작업을 원활히 실행할 수 있습니다.
실시간 서비스에도 최적
SLM은 실시간 애플리케이션에서 자주 사용됩니다. 예를 들어 챗봇, 추천 시스템, 음성 인식 시스템 등에서 SLM을 실행할 때 GKE는 높은 Pod 스케줄링 처리량을 통해 실시간 추론 요청에 대응할 수 있습니다. 이를 통해 트래픽이 급증하는 상황에서도 신속하게 확장하여 사용자 경험을 유지할 수 있습니다.
멀티 AI 에이전트 처리도 충분
기업은 종종 여러 개의 SLM을 동시에 활용해야 합니다. 예를 들어 고객 서비스에서 사용하는 챗봇 모델과 법률 문서를 요약하는 모델이 각각 다른 워크로드를 가질 수 있습니다. GKE는 멀티테넌트 클러스터를 지원하여 여러 모델을 하나의 클러스터에서 실행하고, 각각의 리소스를 독립적으로 관리할 수 있도록 합니다. 이를 통해 운영 복잡성을 줄이고 인프라 효율성을 극대화할 수 있습니다.
하이브리드 클라우드 및 온프레미스 연계
SLM은 종종 특정 도메인 데이터를 활용하기 때문에 데이터 프라이버시와 규정 준수가 중요한 경우가 많습니다. GKE는 온프레미스와 클라우드 환경 간의 연계를 지원하여, 데이터를 온프레미스에서 처리하고 추론 작업은 클라우드에서 실행하는 하이브리드 환경을 구축할 수 있습니다. 이는 특히 금융, 의료 분야에서 유리합니다.
간단히 살펴본 바와 같이 GKE는 LLM, SLM 중심의 AI 전환에 있어 AI 성숙도 같은 조건에 구애받지 않고 모든 조직에게 공평하게 기회를 제공합니다. GKE를 활용해 AI 전환을 하는 것에 관심이 있다면 메가존소프트가 도움을 드리겠습니다. [ 문의하기 ]