성능이 두 배인 Gemma 2, 같은 레벨로 Llama 3를 플레이하는 방법은 무엇입니까?
AI 트랙에서는 거대 기술 기업들이 치열하게 경쟁합니다. 앞발에는 GPT-4o가, 뒷발에는 클로드 3.5 소네트가 등장했습니다. 이런 치열한 경쟁 속에서 구글은 뒤늦게 공을 들였음에도 불구하고 단기간에 후속 조치를 취하는 상당한 능력을 갖고 있어 기술 발전과 혁신의 가능성을 보여주고 있다. 제미니 모델 외에도 경량 SOTA 오픈 모델 시리즈인 젬마(Gemma)가 우리에게 더 가까이 다가온 것 같습니다. Gemini 모델과 동일한 연구 및 기술을 기반으로 구축되었으며 모든 사람에게 AI 구축을 위한 도구를 제공하는 것을 목표로 합니다. Google은 CodeGemma, RecurrentGemma 및 PaliGemma를 포함하도록 Gemma 제품군을 계속 확장하고 있습니다. 각 모델은 다양한 AI 작업을 위한 고유한 기능을 제공하며 Hugging Face, NVIDIA 및 Ollama와 같은 파트너를 통해 쉽게 액세스할 수 있습니다.
이제 Gemma 가족은 짧고 간결한 전통을 이어가는 새로운 멤버인 Gemma 2를 맞이합니다. 이번에 Gemma 2가 제공하는 90억 개(9B)와 270억 개(27B) 매개변수의 두 가지 버전은 1세대보다 추론 성능과 효율성이 더 뛰어나고 보안도 대폭 향상됐다. 실제로 270억 개의 매개변수 버전은 크기가 2배 이상인 모델과 동일한 수준에서 경쟁할 수 있으며 이전에는 단일 NVIDIA H100 Tensor Core GPU 또는 TPU에서 달성할 수 있는 독점 모델에서만 달성한 성능을 제공합니다. 호스트를 구축하므로 배포 비용이 크게 절감됩니다.
Google 팀은 Gemma 제품군의 새로운 구성원이 탁월한 성능과 효율적인 추론 기능을 모두 제공할 수 있도록 재설계된 아키텍처를 바탕으로 Gemma 2를 구축했습니다. 간단히 요약하면 성능, 비용, 추론이 뛰어난 특징입니다.
- 뛰어난 성능: Gemma 2 27B 모델은 크기가 2배 이상인 모델과 경쟁하더라도 해당 볼륨 범주에서 최고의 성능을 제공합니다. 9B Gemma 2 모델도 해당 크기 범주에서 좋은 성능을 발휘했으며 Llama 3 8B 및 기타 유사한 개방형 모델보다 성능이 뛰어났습니다.
- 고효율, 저비용: 27B Gemma 2 모델은 고성능을 유지하면서 단일 Google Cloud TPU 호스트, NVIDIA A100 80GB Tensor Core GPU 또는 NVIDIA H100 Tensor Core GPU에서 최대 정밀도로 효율적으로 추론을 실행하도록 설계되었습니다. 비용을 획기적으로 절감합니다. 이를 통해 AI 배포가 더욱 편리하고 저렴해졌습니다.
- 초고속 추론: Gemma 2는 강력한 게임용 노트북, 고급 데스크톱, 클라우드 기반 설정 등 다양한 하드웨어에서 놀라운 속도로 실행되도록 최적화되었습니다. 사용자는 Google AI Studio에서 최대 정밀도로 Gemma 2를 실행하거나, CPU에서 Gemma.cpp의 양자화된 버전을 사용하여 로컬 성능을 잠금 해제하거나, Hugging Face Transformers를 통해 NVIDIA RTX 또는 GeForce RTX를 사용하는 가정용 컴퓨터에서 사용해 볼 수 있습니다.
위는 Gemma2, Llama3 및 Grok-1의 점수 데이터 비교입니다.
사실 다양한 점수 데이터로 판단하면 오픈소스 9B 대형 모델의 장점은 특별히 뚜렷하지 않습니다. 거의 한 달 전 Zhipu AI가 오픈소스로 공개한 국내 대형 모델 GLM-4-9B는 훨씬 더 많은 장점을 가지고 있습니다.
또한 Gemma 2는 더욱 강력할 뿐만 아니라 워크플로에 더 쉽게 통합할 수 있도록 설계되었습니다. Google은 개발자에게 AI 솔루션을 보다 쉽게 구축하고 배포할 수 있는 더 많은 가능성을 제공하고 있습니다.
- 개방성과 접근성: 원래 Gemma 모델과 마찬가지로 Gemma 2를 사용하면 개발자와 연구원이 혁신을 공유하고 상용화할 수 있습니다.
- 광범위한 프레임워크 호환성: Gemma 2는 Hugging Face Transformers와 같은 주요 AI 프레임워크는 물론 Keras 3.0, vLLM, Gemma.cpp, Llama.cpp 및 Ollama를 통해 기본적으로 지원되는 JAX, PyTorch 및 TensorFlow와도 호환됩니다. 사용자가 선호하는 도구 및 워크플로우와 쉽게 통합됩니다. 또한 Gemma는 NVIDIA TensorRT-LLM으로 최적화되었으며 NVIDIA 가속 인프라에서 실행되거나 NVIDIA NIM 추론 마이크로서비스로 실행될 수 있으며 향후 NVIDIA의 NeMo에도 최적화될 예정이며 Keras 및 Hugging Face를 사용하여 미세 조정할 수 있습니다. 또한 Google은 미세 조정 기능을 적극적으로 업그레이드하고 있습니다.
- 간편한 배포: 다음 달부터 Google Cloud 고객은 Vertex AI에서 Gemma 2를 쉽게 배포하고 관리할 수 있습니다.
Google은 사용자가 자신의 애플리케이션을 구축하고 특정 작업에 맞게 Gemma 2 모델을 미세 조정하는 데 도움이 되도록 설계된 일련의 실용적인 예제와 가이드인 새로운 Gemma Cookbook도 제공합니다. Gemma Cookbook 링크: https://github.com/google-gemini/gemma-cookbook동시에 Google은 개발자들에게 I/O 컨퍼런스에서 발표된 공식 제품도 제공했습니다. Gemini 1.5 Pro의 200만 개 컨텍스트 창 액세스, Gemini API용 코드 실행 기능, Google AI Studio에 Gemma 2 추가.
- 최신 블로그에서 Google은 모든 개발자에게 Gemini 1.5 Pro의 200만 토큰 컨텍스트 창 액세스를 공개했다고 발표했습니다. 그러나 컨텍스트 창이 증가하면 입력 비용도 증가할 수 있습니다. 개발자가 동일한 토큰을 사용하여 여러 프롬프트 작업의 비용을 줄일 수 있도록 Google은 Gemini 1.5 Pro 및 1.5 Flash용 Gemini API에서 컨텍스트 캐싱 기능을 신중하게 출시했습니다.
- 수학이나 데이터 추론을 처리할 때 정확성을 높이기 위해 대규모 언어 모델이 코드를 생성하고 실행해야 하는 문제를 해결하기 위해 Google은 Gemini 1.5 Pro 및 1.5 Flash에서 코드 실행을 활성화했습니다. 활성화되면 모델은 Python 코드를 동적으로 생성 및 실행하고 원하는 최종 출력이 달성될 때까지 결과에서 반복적으로 학습할 수 있습니다. 실행 샌드박스는 인터넷에 연결되지 않으며 일부 숫자 라이브러리와 함께 표준으로 제공됩니다. 개발자는 모델의 출력 토큰을 기준으로만 비용을 청구하면 됩니다. Google이 모델 기능의 한 단계로 코드 실행을 도입한 것은 이번이 처음입니다. 현재 Google AI Studio의 Gemini API 및 고급 설정을 통해 사용할 수 있습니다.
- Google은 API 키를 통해 Gemini 모델을 통합하든 개방형 모델 Gemma 2를 사용하든 관계없이 모든 개발자가 AI에 액세스할 수 있도록 하고자 합니다. 개발자가 Gemma 2 모델을 활용할 수 있도록 Google 팀은 Google AI Studio에서 해당 모델을 실험할 수 있도록 할 것입니다.
다음은 Gemma2의 기술 실험 보고서입니다. 기술적 세부 사항을 다각도로 분석할 수 있습니다.
- 문서 주소: https://storage.googleapis.com/deepmind-media/gemma/gemma-2-report.pdf
- 블로그 주소: https://blog.google/ technology/developers/google-gemma-2/
이전 Gemma 모델과 유사하게 Gemma 2 모델도 디코더 전용 변환기 아키텍처를 기반으로 합니다. 표 1에는 모델의 주요 매개변수와 아키텍처 선택이 요약되어 있습니다. 일부 구조 요소는 Gemma 모델의 첫 번째 버전과 유사합니다. 즉, 컨텍스트 길이는 8192 토큰이고 RoPE(회전 위치 임베딩) 사용 및 GeGLU 비선형성 근사치입니다. Gemma 1과 Gemma 2는 더 깊은 네트워크 사용을 포함하여 몇 가지 차이점이 있습니다. 주요 차이점은 다음과 같이 요약됩니다.
- 로컬 슬라이딩 윈도우와 글로벌 관심. 연구팀은 다른 모든 계층에서 로컬 슬라이딩 윈도우 관심과 글로벌 관심을 번갈아 가며 사용했습니다. 로컬 어텐션 레이어의 슬라이딩 윈도우 크기는 4096 토큰으로 설정되고, 글로벌 어텐션 레이어의 범위는 8192 토큰으로 설정됩니다.
- 로짓 소프트 캡. 연구팀은 Gemini 1.5의 방법에 따라 각 attention 레이어와 최종 레이어에서 로짓 값이 -soft_cap과 +soft_cap 사이에 유지되도록 로짓을 제한했다.
- 9B와 27B 모델에 대해 연구팀은 관심의 로그 상한을 50.0으로, 최종 로그 상한을 30.0으로 설정했습니다. 출판 당시 주의 로짓 소프트 캡핑은 일반적인 FlashAttention 구현과 호환되지 않으므로 FlashAttention을 사용하는 라이브러리에서 이 기능을 제거했습니다. 연구팀은 Attention Logit Soft Capping 유무에 관계없이 모델 생성에 대한 절제 실험을 수행한 결과, 대부분의 사전 훈련 및 사후 평가에서 생성 품질이 거의 영향을 받지 않는다는 것을 발견했습니다. 이 백서의 모든 평가는 주의 로짓 소프트 캡핑을 포함한 전체 모델 아키텍처를 사용합니다. 그러나 일부 다운스트림 성능은 이러한 제거로 인해 여전히 약간의 영향을 받을 수 있습니다.
- 사후 규범과 사전 규범에는 RMSNorm을 사용하세요. 연구팀은 훈련을 안정화하기 위해 RMSNorm을 사용해 각 변환 하위 계층, 주의 계층, 피드포워드 계층의 입력과 출력을 정규화했습니다.
- 그룹 단위로 관심을 물어보세요. 27B와 9B 모델 모두 GQA, num_groups = 2를 사용하며 절제 기반 실험에서는 다운스트림 성능을 유지하면서 향상된 추론 속도를 보여줍니다.
Google은 Gemma 1과 다른 사전 훈련 부분에 대한 간략한 개요를 제공합니다. 그들은 주로 영어 데이터인 13조 토큰으로 Gemma 2 27B를 훈련했고, 8조 토큰으로 9B 모델을 훈련했으며, 2조 토큰 열차로 2.6B 모델을 훈련했습니다. 이러한 토큰은 웹 문서, 코드, 과학 기사를 포함한 다양한 데이터 소스에서 나옵니다. 이 모델은 다중 모드가 아니며 최첨단 다국어 기능을 위해 특별히 훈련되지도 않았습니다. 최종 데이터 혼합은 Gemini 1.0과 유사한 절제 연구를 통해 결정됩니다. 연구팀은 모델 학습에 TPUv4, TPUv5e, TPUv5p를 사용합니다. 자세한 내용은 아래 표 3과 같습니다. Google은 학습 후 모델을 명령어 조정 모델로 미세 조정합니다.
- 먼저 일반 텍스트, 순수 영어 합성 및 인위적으로 생성된 프롬프트-응답 쌍의 혼합에 감독 미세 조정(SFT)을 적용합니다.
- 그런 다음 보상 모델(RLHF) 기반 강화 학습이 이 모델에 적용됩니다. 보상 모델은 토큰 기반 순수 영어 선호도 데이터를 학습하고 전략은 SFT 단계와 동일한 프롬프트를 사용합니다.
- 마지막으로 각 단계에서 얻은 모델을 평균화하여 전반적인 성능을 향상시킵니다. 조정된 하이퍼파라미터를 포함한 최종 데이터 혼합 및 사후 학습 방법은 모델 유용성을 높이는 동시에 안전 및 환각과 관련된 모델 위험을 최소화하는 방식으로 선택됩니다.
Gemma 2 모델의 미세 조정은 Gemma 1 모델과 다른 형식 모드를 사용합니다. Google은 표 4에 설명된 것과 동일한 제어 토큰을 사용하며 표 5에 대화 예시가 제공됩니다. 표 6에서는 더 큰 모델의 결과를 정제하면 처음부터 훈련하는 것에 비해 성능이 향상되는 것을 볼 수 있습니다. 500B 토큰은 2.6B 모델에 대해 계산된 최적 토큰 수의 10배라는 점에 유의해야 합니다. 연구팀은 27B 모델에서 9B 모델로 증류하는 것과 비슷한 비율을 유지하기 위해 7B 모델에서 증류를 실시했다. 표 7에서 Google 팀은 모델 크기가 증가함에 따라 증류의 영향을 측정합니다. 모델 크기가 증가함에 따라 이러한 이득이 지속되는 것을 볼 수 있습니다. 이 절제 실험에서 연구팀은 교사 모델 크기를 7B로 유지하고 최종 교사 모델 크기와 학생 모델 크기 간의 차이를 시뮬레이션하기 위해 더 작은 모델을 훈련했습니다. 또한 Google은 표 11과 같이 프롬프트/평가 형식 변경의 영향을 고려하고 MMLU의 성능 차이를 측정했습니다. Gemma 2B 모델은 형식 견고성 측면에서 대형 모델에 비해 약간 열등합니다. Mistral 7B는 견고성 측면에서 Gemma 시리즈 모델보다 훨씬 낮다는 점은 주목할 가치가 있습니다. 연구팀은 13조 개의 토큰을 학습한 27B 모델(비증류)의 성능도 평가해 비슷한 크기의 Qwen1.5 34B 모델, 2.5배 더 큰 LLaMA-3 70B 모델과도 성능을 비교했다. HuggingFace 평가 스위트에 있는 모델들을 비교하였고, 평가 결과는 표 12에 나열되어 있다. HuggingFace 리더보드의 순위를 기준으로 모델이 선정되었습니다. 전반적으로 Gemma-2 27B 모델은 해당 크기 범주에서 최고의 성능을 발휘하며 훈련 시간이 더 오래 걸리는 대형 모델과도 경쟁할 수 있습니다. Gemma-2 27B 및 9B 명령 미세 조정 모델은 다른 SOTA 모델과 비교하여 인간 평가자가 Chatbot Arena에서 맹목적으로 평가했습니다. 연구팀은 그림 1에 ELO 점수를 보고합니다. 또한 연구팀은 인간 평가자가 모델과 대화하고 테스트를 위해 지정된 시나리오에 따라 Gemma 1.1 7B, Gemma 2 9B 및 27B 모델의 다중 회전 대화 기능을 평가했습니다. Google은 브레인스토밍, 계획 세우기, 새로운 것을 배우는 등 모델에 대한 일련의 요청을 설명하는 500가지 시나리오로 구성된 다양한 보유 세트를 사용합니다. 사용자 상호 작용의 평균 횟수는 8.4입니다. 마지막으로 Gemma 1.1과 비교하여 사용자들은 Gemma 2 모델의 대화 만족도와 대화 목표 달성률이 상당히 높은 것으로 나타났다(표 15 참조). 또한 Gemma 2 모델은 대화 시작부터 후속 라운드까지 Gemma 1.1 7B 모델보다 고품질 응답을 더 잘 유지할 수 있습니다. 위 내용은 효율성과 경제성에 중점을 둔 Google의 '성실한 작업', Gemma2의 오픈소스 9B 및 27B 버전!의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!