x

이메일로 만나보는 스타트업 가이드

투자, 행사, 정부사업 등 스타트업 생태계 소식을 이메일로 편하게 받아보세요.

일반 노트북에 탑재된 GPU로도 대규모 언어 모델을 파인튜닝할 수 있는 오픈소스 도구 수프(Soup)가 공개됐다. 개발자 검증에 따르면 VRAM 4GB GPU를 사용해 80억 파라미터인 라마 3.1 8B 인스트럭트(Llama 3.1 8B Instruct)를 파인튜닝하는 데 성공했다고 한다.

대규모 언어 모델 파인튜닝이란 기존 AI 모델에 추가 데이터를 학습시켜 특정 질문에 대답하기 쉽게 하거나 정해진 문체로 문장을 작성하도록 만드는 작업이다. 다만 규모가 큰 모델을 학습시키려면 대량 VRAM이 필요하기 때문에 고성능 GPU를 탑재한 PC나 클라우드 서비스를 준비하는 게 일반적이었다.

수프는 학습 중 변경하지 않는 기반 모델 디코더 레이어를 메인 메모리에 두고 연산에 필요한 디코더 레이어를 한 층씩 VRAM으로 보내는 레이어 스트리밍(Layer Streaming)이라는 기법을 채택했다. VRAM 사용량을 줄일 수 있기 때문에 기존에는 메모리 부족이 발생하기 쉬웠던 노트북용 GPU로도 8B 모델을 파인튜닝할 수 있는 가능성이 열린 것이다.

실제로 개발자는 VRAM 4GB인 지포스 RTX 3050 랩톱 GPU를 사용해 메타 라마 3.1 8B 인스트럭트를 NF4 형식으로 양자화한 뒤 로라(LoRA)로 파인튜닝하는 데 성공했다고 한다. 1회에 처리하는 문장 길이가 512토큰, 배치 사이즈 1인 조건에서 피크 시 VRAM 사용량은 3.32GB, 처리 속도는 초당 119.6토큰이었다고 보고됐다. 동일한 NF4 형식 모델 전체를 GPU에 상주시킨 경우와 연산 결과가 비트 단위로 일치하는 것도 확인했다고 한다.

물론 VRAM 용량이 적은 GPU로 작동시킬 경우 CPU 메인 메모리 등을 병용하기 때문에 모델 전체를 GPU VRAM에 상주시키는 방식보다 학습 시간이 길어진다. 어떤 설정에서든 작동하는 건 아니며 1회에 처리하는 문장 길이나 배치 사이즈에 따라서는 VRAM이 부족해질 가능성도 있다고 한다.

한편 수프는 원래 용도에 맞는 학습 데이터를 지정하고 명령어를 실행하는 것만으로 파인튜닝을 시작할 수 있다는 점이 장점인 커맨드라인 도구로 버전 0.72 업데이트에서 레이어 스트리밍을 지원하게 된 형태다. 도구 전체로서는 대규모 언어 모델 파인튜닝 작업을 일괄 처리할 수 있으며 GPU 감지나 배치 사이즈 조정도 자동화되어 있어 복잡한 학습 환경을 처음부터 구축하는 수고를 덜 수 있다. 그 밖에도 학습된 모델과의 대화나 사용하는 실행 환경에 맞춘 형식 변환에도 대응하는 등 특징이 있다.

수프 레이어 스트리밍 기능은 아직 베타 버전이다. 개발자는 검증에 사용한 조건과 결과를 깃허브에 공개하고 있어 실패 사례나 오류로 판명된 전제, 측정 후 채택되지 않은 수치를 포함하는 완전한 측정 기록을 확인할 수 있다고 한다. 관련 내용은 이곳에서 확인할 수 있다.

뉴스 레터 구독하기

Related Posts

Next Post