상세 컨텐츠

본문 제목

[GPT] 나만의 작은 Chat-GPT! "알파카" 코드 두줄로 설치하는 법 (LLaMA, Dalai, Alpaca 설치법)

프로그래밍/Data&ML

by 척척석사 민준 2023. 3. 26. 16:25

본문

728x90

라마와 알파카? 동물원 이야기인가?

얼마 전에 메타(구 페이스북)에서 공개한 (유출되었다가 공개해 버렸다) GPT-3보다 더 작으면서 고성능 모델인 LLaMA를 발표했다.
GPT-3보다 크기는 1/10로 작지만 GPT-3보다 더 성능이 좋다는 소문이 있었는데 토렌트에서 받기는 귀찮고 하이퍼파라미터만 가지고 서비스를 구현하기에는 실력이 부족해서 똑똑한 사람들이 해내주기를 기다리고 있었다. 
그런데 3월 18일 스텐포드에서 LLaMA (라마라고 부르겠다)를 양자화한 모델인 Alpaca (알파카)를 발표했다.
이젠 라즈베리파이4로도 작동시킬 수 있는 챗봇이 나와버린 것이다. GPT-3의 매개변수가 175B (1750억 개) 인 것에 비해 Alpaca는 7B (70억 개)로 용량이 겨우 4기가 정도밖에 되지 않는다. 이 정도면 설치할만하다! 싶어서 허깅페이스와 깃허브를 찾아봤다.

실제 실행되는 모습!

터미널을 이용해 입력을 받고 답변이 출력되는 모델도 있었지만
(구글링하면 제일 먼저 나오는 깃허브이긴 하다 https://github.com/antimatter15/alpaca.cpp)
chat-GPT처럼 좀 더 직관적인 인터페이스에서 실행하는 게 좋아서 좀 더 찾아봤더니 Dalai라는 (아마 모델이 라마니까 달라이라고 언어유희를 한 거 같은데.. 이거 때문에 구글링이 정말 힘들었다) 프런트엔드를 통해 실행하는 방법이 있었다.

인터넷 연결없이 노트북의 리소스로만 작동하는 모습
터미널에 npx dalai serve 한줄이면 실행된다

설치하는 방법은 아주 간단하다.
일단 내 컴퓨터는 M2 Macbook pro이고 메모리는 16기가다.
(M1부터 맥북은 GPU랑 메모리를 공유하므로 VRAM이 16기가라고 생각해도 무방하다)
사용하는 하이퍼파라미터셋은 alpaca ccp나 llama로 동일한데 나는 브라우저에서 이쁘게 보는 게 좋아서 아래의 깃허브를 참조했다.
 
https://cocktailpeanut.github.io/dalai/#/

GitHub - cocktailpeanut/dalai: The simplest way to run LLaMA on your local machine

The simplest way to run LLaMA on your local machine - GitHub - cocktailpeanut/dalai: The simplest way to run LLaMA on your local machine

github.com

 
모델은 7B 13B 30B 65B가 있는데 숫자가 클수록 매개변수가 많은 큰 모델이다. 당연히 모델이 클수록 작동할 때 메모리도 많이 필요하고 용량도 많이 차지한다.
나는 시험삼아 7B를 설치했는데 대답이 만족스러워서 30B도 설치해 볼 생각이다.

Alpaca model 종류필요한 메모리 (VRAM)필요한 용량 (HDD, SSD)
7B~ 4 GB4.21 GB
13B~ 8 GB8.14 GB
30B~ 16 GB20.36 GB
65B~ 32 GB40.88 GB

맥에서 설치하는 방법

1단계 : node.js를 18 버전 이후로 설치한다
2단계 : 터미널에서 다음 명령어를 입력해서 모델을 설치한다
(7B 설치를 위해 7B라고 입력한 것으로 30B를 설치할 때에는 npx dalai alpaca install 30B를 입력하면 된다)

npx dalai alpaca install 7B

3단계 : 터미널에서 실행명령어를 입력한다

npx dalai serve

4단계 : 실행하면 Server running on http://localhost:3000/ 가 뜨고 로컬서버에서 dalai를 통해 alpaca모델이 실행된다
사파리나 크롬 (그냥 아무 브라우저면 된다) 주소창에 http://localhost:3000/ 를 입력하면 dalai로 들어가진다.

실행되는 모습

주의사항

메타에서 아직 LLaMA 모델에 대해서 상업적인 이용을 승인하지 않아서 이를 상속받은 Alpaca 또한 학술적인 목적으로만 사용이 가능하다.
Chat GPT를 사용해서 데이터셋을 학습시켰기 때문에 OpenAI와 경쟁하는 모델개발을 금지하는 정책에 따라 Chat-GPT를 새로 만들거나 하면 안 됨.
LLaMA에 대한 자세한 정보는 다음 블로그에서 자세히 설명되어 있으니까 참조하면 좋겠다.
https://moon-walker.medium.com/리뷰-meta-ai의-small-gaint-model-llama-large-language-model-meta-ai-334e349ed06f

[리뷰] Meta AI의 Small Gaint Model: LLaMA(Large Language Model Meta AI)

ChatGPT의 열풍으로 인해 대중들은 OpenAI와 MS가 Generative AI의 핵심기업으로 인식하는 착시 현상을 겪고 있다. 하지만 최근까지 AI 발전에 가장 많이 공헌한 기업으로 Google과 Meta을 꼽을 수 있다.

moon-walker.medium.com

 https://crfm.stanford.edu/2023/03/13/alpaca.html

728x90

관련글 더보기