GPT-4 아키텍처, 인프라, 훈련 데이터셋, 비용, 비전, MoE
OpenAI는 GPT-4의 아키텍처를 공개하지 않는 이유가 인류에 대한 존재적 위협 때문이 아니라, 그들이 구축한 것이 복제 가능하다는 점 때문입니다. 사실, 우리는 Google, Meta, Anthropic, Inflection, Character, Tencent, ByteDance, Baidu 등이 가까운 미래에 GPT-4만큼 또는 그보다 더 능력있는 모델을 가지고 있을 것으로 기대하고 있습니다.
OpenAI는 놀라운 엔지니어링을 갖추고 있으며, 그들이 구축한 것은 놀라운 것이지만, 그들이 도출한 해결책은 마법이 아닙니다. 이는 여러 복잡한 트레이드오프를 포함한 우아한 해결책입니다. 크게 만드는 것은 전체의 일부에 불과합니다. OpenAI의 가장 강력한 힘은 가장 많은 사용자 보유, 선도적인 엔지니어링 인재, 그리고 미래 모델로 다른 사람들보다 앞서 나갈 수 있는 능력을 가지고 있다는 것입니다.
우리는 GPT-4에 대한 많은 정보를 다양한 소스에서 수집했으며, 오늘은 그 정보를 공유하고자 합니다. 이에는 model architecture, training infrastructure, inference infrastructure, parameter count, training dataset composition, token count, layer count, parallelism strategies, multi-modal vision adaptation, 다양한 엔지니어링 트레이드오프의 사고과정, 구현된 독특한 기술, 그리고 거대한 모델의 추론과 관련된 가장 큰 병목 현상을 완화하는 방법 등이 포함됩니다.
GPT-4의 가장 흥미로운 측면은 어떤 아키텍처적 결정을 내렸는지 이해하는 것입니다.뿐만 아니라, 우리는 GPT-4의 훈련과 추론 비용을 A100에서 H100으로 다음 세대 모델 아키텍처에 대해 어떻게 확장되는지 설명할 것입니다.
먼저, 문제 상황에 대해 이야기하겠습니다. GPT-3에서 4로 진화함에 있어서 OpenAI는 100배로 스케일을 확장하고자 했지만, 문제의 핵심은 비용입니다. Dense Transformers 모델은 더 이상 확장되지 않을 것입니다. 밀집 트랜스포머는 OpenAI GPT-3, Google PaLM, Meta LLAMA, TII Falcon, MosaicML MPT 등이 사용하는 모델 아키텍처입니다. 우리는 이러한 동일한 아키텍처를 사용하여 LLM을 훈련시키는 50개 이상의 회사를 쉽게 언급할 수 있습니다. 이것은 좋은 아키텍처입니다만, 확장하기에는 결함이 있습니다.
우리는 GPT-4 발표 이전에 Dense 모델의 훈련 비용 관점에서 AI 벽에 대한 토론에서 OpenAI가 GPT-4의 아키텍처와 다양한 기존 모델의 훈련 비용에 대해 어떤 일을 하고 있는지에 대해 논의했습니다.
지난 6개월 동안 우리는 훈련 비용이 무의미하다는 것을 깨달았습니다.
마음에 들지 않을 수도 있지만, 모델을 훈련시키기 위해 수십억 달러, 심지어 수천억 달러의 컴퓨팅 시간을 소비하는 것은 하찮은 일입니다. 이는 이러한 기업들에게는 자본 지출 항목으로서 크게 의미가 없습니다. 더 크게 확장하는 것이 일관된 결과를 제공했습니다. 유일한 제한 요인은 인간이 피드백을 받고 아키텍처를 수정할 수 있는 시간대로 컴퓨팅을 확장하는 것입니다.
다음 몇 년 동안 Google, Meta, OpenAI/Microsoft와 같은 여러 회사들은 천억 달러 이상의 슈퍼컴퓨터에서 모델을 훈련할 것입니다. Meta는 "메타버스"에 매년 160억 달러 이상을 투자하고 있으며, Google은 다양한 프로젝트에 매년 100억 달러를 낭비하고 있습니다. Amazon은 Alexa에 500억 달러 이상을 소비했습니다. 암호화폐는 가치 없는 것에 1000억 달러 이상을 낭비했습니다.
이러한 기업들과 사회 전반은 수십억 달러 이상을 소비하여 단일 거대한 모델을 훈련할 수 있는 슈퍼컴퓨터를 만들 것이며, 이러한 거대한 모델은 다양한 방식으로 상품화될 수 있습니다. 이러한 노력은 여러 국가와 기업에서 중복되어 이루어질 것입니다. 이것은 새로운 우주 경쟁입니다. 그 이전의 낭비와의 차이점은 AI로 인해 단기적으로 인간 보조와 자율 에이전트에서 현실적인 가치가 창출될 것이라는 점입니다.
AI를 확장하는 더 중요한 문제는 실제 추론입니다. 목표는 훈련 컴퓨팅을 추론 컴퓨팅과 분리하는 것입니다. 이것이 모델을 배포할 때 Chinchilla 최적에 맞추기 위해 훈련을 더 진행하는 이유입니다. 이것이 희소 모델 아키텍처를 사용하는 이유입니다. 추론 중에는 모든 매개변수가 활성화되지 않습니다.
실제 전투는 이러한 모델을 사용자와 에이전트에 확장하는 데 너무 많은 비용이 듭니다. 추론 비용은 훈련 비용보다 여러 배 더 많이 듭니다. 이것이 OpenAI의 모델 아키텍처와 인프라에 대한 혁신의 목표입니다.
대형 모델의 추론은 Dense 모델의 경우에는 다변수 문제로, edge에서 이에 대해 자세히 논의한 바 있으나, 데이터 센터에서는 유사한 문제가 발생합니다. 간단히 말해, 큰 언어 모델의 경우 장치는 항상 충분한 메모리 대역폭을 갖지 못하여 특정 수준의 처리량을 달성할 수 없습니다. 대역폭이 충분하더라도 에지의 하드웨어 계산 자원의 활용은 매우 낮을 것입니다.
데이터 센터에서의 활용도
데이터 센터나 클라우드에서는 활용률이 중요합니다. Nvidia가 소프트웨어 우수성을 인정받는 이유 중 하나는 GPU의 세대 수명 동안 Nvidia가 저수준 소프트웨어를 지속적으로 업데이트하여 데이터를 더 스마트하게 칩 내부, 칩 간, 메모리 간에 이동시켜 FLOPS 활용률을 높입니다.
대부분의 경우 LLM 추론은 실시간 어시스턴트로 작동해야 합니다.
LLM 추론은 일반적으로 실시간 어시스턴트로 작동해야 합니다. 이는 사용자가 실제로 사용할 수 있을 정도로 높은 처리량을 달성해야 함을 의미합니다. 평균적으로 사람들은 분당 약 250단어를 읽지만 일부 사람들은 분당 약 1,000단어를 읽을 수도 있습니다. 따라서 최소한 8.33토큰/초, 심지어 모든 극단적인 경우를 고려하여 33.33토큰/초를 출력해야 합니다.
1조 파라미터 밀집 모델의 경우 메모리 대역폭 요구 사항 때문에 이러한 처리량을 달성할 수 없습니다.
최신 Nvidia H100 GPU 서버에서라도 1조 파라미터 밀집 모델은 메모리 대역폭 요구 사항으로 인해 이러한 처리량을 달성할 수 없습니다. 생성된 각 토큰은 모든 파라미터가 메모리로부터 칩으로 로드되어야 합니다. 그런 다음 생성된 토큰은 프롬프트로 전달되고 다음 토큰이 생성됩니다. 게다가 어텐션 메커니즘을 위해 KV 캐시를 스트리밍하기 위해 추가적인 대역폭이 필요합니다.
위 차트는 개선이 필요한 연산 융합, 어텐션 메커니즘에 필요한 메모리 대역폭, 하드웨어 오버헤드가 파라미터 읽기와 동등하다고 가정한 것입니다.
실제로 Nvidia의 FasterTransformer 라이브러리와 같은 "최적화된" 라이브러리를 사용하더라도 총 오버헤드는 더 큽니다.
위의 차트는 개별 사용자에게 서비스할 충분한 처리량으로 LLM을 추론하기 위해 필요한 메모리 대역폭을 보여줍니다. 8개의 H100은 33.33토큰/초의 1조 파라미터 밀집 모델을 서비스할 수 없다는 것을 보여줍니다. 게다가, 20토큰/초에서 8개의 H100의 FLOPS 활용률은 여전히 5% 미만이며, 매우 높은 추론 비용을 초래합니다. 현재 8-way 텐서 병렬 H100 시스템에서 약 3000억 피드포워드 파라미터에 대한 추론 제약이 있습니다.
그럼에도 불구하고 OpenAI는 1조 파라미터보다 큰 모델을 사용하여 인간의 읽기 속도를 달성하고 있으며, A100을 사용하고 있으며, 1,000토큰 당 단지 $0.06의 저렴한 가격으로 제공하고 있습니다. 이는 희소 모델로, 모든 파라미터가 사용되지 않기 때문입니다.
GPT-4 모델 아키텍처, 훈련 인프라, 추론 인프라, 파라미터 개수, 훈련 데이터셋 구성, 토큰 개수, 레이어 개수, 병렬화 전략, 멀티모달 비전 인코더, 다른 엔지니어링 트레이드오프에 대한 사고 과정, 구현된 고유한 기술 및 거대한 모델의 추론과 관련된 가장 큰 병목 현상을 완화하는 방법에 대해 알아봅시다.
https://www.semianalysis.com/p/gpt-4-architecture-infrastructure
GPT-4 Architecture, Infrastructure, Training Dataset, Costs, Vision, MoE
Demystifying GPT-4: The engineering tradeoffs that led OpenAI to their architecture.
www.semianalysis.com
Keyword
[KV Cache]
Workers KV는 지연 시간이 짧은 글로벌 키-값 데이터 저장소입니다. 소수의 중앙 집중식 데이터 센터에 데이터를 저장한 다음 액세스 후 해당 데이터를 데이터 센터에 캐시합니다. KV는 짧은 지연 시간으로 매우 높은 읽기 볼륨을 지원하므로 캐시된 정적 파일처럼 빠르게 응답하는 매우 동적인 API와 웹사이트를 구축할 수 있습니다. 읽기는 백그라운드에서 주기적으로 재검증되지만, 캐시에 저장되지 않고 중앙 집중식 백엔드에 도달해야 하는 요청은 높은 지연 시간을 보일 수 있습니다.
'Tools > ChatGPT' 카테고리의 다른 글
[GPT4V]OpenAI DevDay, Opening Keynote (0) | 2023.11.08 |
---|---|
[AutoGen] 개발을 윤택하게 feat.GPT-4 (0) | 2023.09.30 |
[OpenAI-GPT] LangChain 효율적인 Token 관리 (0) | 2023.05.21 |
[LLM] ChatGPT Prompt Engineering for Developers - Chatbot (0) | 2023.05.07 |
[LLM] ChatGPT Prompt Engineering for Developers - Expanding (0) | 2023.05.06 |