[딥러닝 프로젝트] 13강. 트랜스포머 디코더 모델 | ②Llama 모델로 텍스트 생성하기
- 라마 모델은 메타에서 공개한 디코더 전용 LLM으로, 오픈소스 LM 진영에 크게 기여했습니다. 🚀
- 2023년에 라마 1, 2를 개발했으며, 라마 2부터 오픈소스로 공개되었습니다. 🔓
- 라마 1은 1조 개의 토큰, 라마 2는 2조 개의 토큰으로 훈련되었으며, 문맥 길이는 각각 2048, 4096입니다. 📚
- 라마 2는 70억, 130억, 700억 개 파라미터 버전을 제공하여 모델 크기별 선택지를 넓혔습니다. 🎛️
- 라마 2는 드롭아웃이 없고, 층 정규화 대신 RMS 정규화를 사용하며, 위치 임베딩이 어텐션 모듈 내부에 포함되어 있습니다. 💡
- 로터리 위치 임베딩은 토큰 위치에 비례하여 각도를 회전시켜 벡터를 변환, 토큰 간 상대적 위치 정보를 인코딩합니다. 🔄
- RMS 정규화는 평균을 구하지 않아 계산량을 줄이면서도 준수한 성능을 유지합니다. ⚡
- 스위글루 활성 함수는 스위치 함수와 글루 함수를 결합한 형태로, 첫 번째 밀집층에만 활성 함수를 적용합니다. ✨
- 그룹 쿼리 어텐션은 멀티 헤드 어텐션과 멀티 쿼리 어텐션의 절충안으로, 일부 헤드에서 키와 밸류를 공유합니다. 🤝
- 라마 3는 라마 2와 구조가 거의 동일하며, 더 많은 토큰으로 훈련되었고, 문맥 길이와 사전 크기가 증가했습니다. 📈
- 허깅페이스에서 라마 3를 사용할 수 있으며, 한국어로 미세 튜닝된 블로섬 모델도 존재합니다. 🌸
- LLM은 프롬프트 컴플리션(텍스트 완성)을 기본 동작으로 수행하며, 특정 목적을 위한 응답은 별도 미세 튜닝이 필요합니다. 🎯
- 라마 3.2는 텍스트와 이미지를 함께 처리할 수 있는 멀티모달 모델입니다. 🖼️