기쁨의 눈물을 자아내게 하는 소프트웨어를 사용하게 된다면 환호 소리가 일어날 것입니다.
바로 이를 위해 마이크로소프트 애저(Microsoft Azure)의 인지 서비스인 트랜스레이터(Translator)는 더욱 많은 사람들의 의사소통을 지원하기 위해 세계에서 가장 큰 AI 모델 중 일부를 적용하고 있습니다.
트렌스레이터 개발팀 매니저 비샬 차우하리(Vishal Chowdhary)는 “멋진 이야기들이 정말 많습니다”라고 말했는데요.
그 중에는 2010년 7 강도의 지진이 일어난 아이티에서 구호 요원들을 돕던 애플리케이션에 아이티어 크리올(Creole)을 5일만에 빠르게 추가했던 일이 있었습니다. 혹은 이 소프트웨어를 사용해 먼 곳에서 떨어져 성장하여 서로 이해할 수 없는 언어를 사용하던 손주들과 처음으로 실시간으로 대화할 수 있었던 조부모들도 있었죠.
야심찬 목표
차우하리는 “우리의 비전은 수천 명의 개발자가 이미 사용하고 있는 API를 통해 모든 언어와 모달리티의 장벽을 허무는 일입니다”라고 전했습니다.
전 세계에서 사용되고 있는 언어가 약 7,000개임을 감안한다면 이는 야심 찬 목표입니다.
따라서 트렌스레이터 개발팀은 강력하고 복잡한 도구인 MoE(mixture of experts) AI 기술을 사용합니다.
MoE 모델은 자연어 처리의 빠른 발전을 이끄는 트랜스포머 모델의 최첨단 기술에 속합니다. 50억 개의 파라미터를 사용하기 때문에 자연어 처리를 위한 생산 분야에서 개발팀이 현재 보유한 가장 큰 모델보다 80배 더 큽니다.
MoE 모델은 고도의 컴퓨팅 기술이기에 이를 생산으로 이어갈 수 있는 인력을 찾기 어렵습니다. 또한 초기 테스트에서 CPU 기반 서버로는 이 모델을 사용해 1초 만에 문서를 번역해야 하는 개발팀의 요건을 충족하지 못했습니다.
속도를 27배 향상시킨 NVIDIA 추론 서버 Triton
그 후 개발팀은 이번 주 GTC 2022에서 발표한 NVIDIA AI Enterprise 2.0 플랫폼에 속한 NVIDIA Triton Inference Server를 사용한 가속 시스템에서 테스트를 실시했습니다.
차우하리는 “NVIDIA GPU와 Triton을 사용해 MoE 모델을 효율적으로 실행할 수 있었습니다”라고 말했습니다.
실제로 개발팀은 최적화되지 않은 GPU 런타임에 비해 최대 27배 향상된 속도를 달성했습니다.
테스트를 감독한 마이크로소프트의 수석 연구원인 해니 하산 아와달라(Hanny Hassan Awadalla)는 “우리는 각 작업에 대해 별도의 모델을 개발할 필요 없이 요약, 텍스트 생성 및 번역 등 여러 언어의 이해 작업을 한꺼번에 수행할 수 있는 하나의 모델을 구축할 수 있었습니다”라고 말했죠.
NVIDIA Triton가 지원하는 방식
마이크로소프트의 모델은 문서 더미를 번역하는 엄청난 규모의 작업을 수백 개의 문장을 번역하는 작은 작업 여러 개로 쪼갭니다. Triton의 동적 배치(batching) 기능은 GPU 기술을 최대한 활용하기 위해 이러한 많은 요청을 풀링합니다.
개발팀은 CPU와 GPU 혹은 기타 가속기를 사용해 모든 모드로 모든 모델을 실행할 수 있는 Triton의 성능을 높이 평가했습니다.
십년 넘게 대규모 분산 시스템을 개발해온 개발팀 매니저 비샬 차우하리는 “이는 제가 저를 위해 개발한 것처럼 저의 시나리오에 필요한 모든 기능이 잘 고려된 것 같았습니다”라고 전했습니다.
Triton의 성공의 핵심은 두 개의 소프트웨어 구성 요소였습니다. NVIDIA는 MoE 모델을 지원하기 위해 추론 연산을 처리하는 소프트웨어 레이어인 Faster Transformer를 확장했습니다. 또한 MoE모델을 효율적으로 구현하기 위해 NVIDIA 수학 라이브러리인 CUTLASS가 지원됐습니다.
4주 만에 시제품 검증
테스트는 복잡했지만 개발팀은 NVIDIA 엔지니어들과 협력하여 Triton을 사용한 엔드-투-엔드 시제품을 만들고 시행하는 데 한 달이 채 걸리지 않았습니다.
아와달라는 “그 기간 안에 배송 가능한 제품을 만들었던 건 정말 인상적이었습니다. 정말 감사합니다”라고 전했습니다.
또한 Triton을 사용한 첫 경험이었지만, “이를 사용해 큰 노력을 들이지 않고 런타임 환경을 재설계하여 MoE 모델을 출하했습니다. 그래서 이제는 Trion이 이 장기적 호스트(host) 시스템의 일부가 되었으면 좋겠습니다”라고 덧붙였습니다.
다음 단계
가속 서비스는 먼저 몇 개의 주요 언어를 통한 문서 번역 작업에서 시작해 적절한 단계로 거쳐 나갈 것입니다.
차우하리는 “결국 우리는 고객들이 우리의 모든 시나리오에서 이러한 새로운 모델의 장점을 경험하길 바랍니다”라고 밝혔습니다.
이 작업은 마이크로소프트의 광범위한 이니셔티브에 속합니다. 마이크로소프트는 오피스(Office) 및 팀즈(Teams)와 같은 광범위한 제품군은 물론 소형 IT 기업에서부터 포츈(Fortune) 500대 기업에 이르는 개발자와 고객의 제품 발전을 촉진하는 것을 목표로 삼고 있습니다.
아와달라 팀은 지난 9월 NVIDIA A100 Tensor Core GPU에서 최대 2000억 개의 파라미터가 있는 MoE 모델 훈련에 관한 연구를 발표했습니다. 그 이후로 3000억 개 이상의 파라미터를 가진 모델에서 A100 GPU의 80G 버전을 사용해 추가로 속도를 8배 높일 수 있었죠.
아와달라는 “특히 데이터가 많지 않은 언어들을 더 잘 구현하기 위해서는 모델들이 점차 더 확대될 필요가 있습니다”라고 말했습니다.