kyegomez/Gemini
The open source implementation of Gemini, the model that will "eclipse ChatGPT" by Google
해결하는 문제
이 프로젝트는 Google의 Gemini를 영감으로 삼은 멀티모달 트랜스포머 모델의 오픈소스 구현을 제공합니다. 각각의 입력 모달리티(텍스트, 이미지, 오디오)를 별도의 인코더에 의존하지 않고, 단일 트랜스포머 아키텍처 내에서 처리하고 생성할 수 있는 시스템을 구축하는 것을 목표로 합니다.
작동 방식
모델은 텍스트, 오디오, 이미지, 비디오를 입력 시퀀스로 받아 토큰으로 변환합니다. 전통적인 시각 트랜스포머(ViT)와 달리, 이 구현은 이미지 임베딩을 직접 트랜스포머에 입력합니다. 입력 유형을 구분하기 위해 [IMG] 또는 [AUDIO]와 같은 특수 모달리티 토큰을 사용합니다. 아키텍처는 Flash Attention, QK norm, 그리고 회전 위치 임베딩(RoPE)과 같은 여러 최적화 기법을 포함하며, LongGemini 버전은 확장된 컨텍스트를 위해 링 어텐션(Ring Attention)을 사용합니다.
대상 사용자
텍스트, 이미지, 오디오 데이터를 혼합하여 처리할 수 있는 네이티브 멀티모달 AI 모델을 구축하거나 훈련하고자 하는 개발자 및 연구자.
주요 특징
- 네이티브 멀티모달리티: 하나의 트랜스포머 내에서 텍스트, 이미지, 오디오를 동시에 처리.
- 최적화된 성능: Flash Attention, QK norm, KV 캐싱을 구현하여 효율적인 추론을 제공.
- 확장된 컨텍스트: 링 어텐션을 사용한
LongGemini구현 포함. - 사용자 정의 토크나이저: Llama 토크나이저를 기반으로 하며, 모달리티별 토큰을 추가한
MultimodalSentencePieceTokenizer제공.
관련
- Dispatch
- 프로젝트
- 프로젝트
- 프로젝트
- Dispatch