본문 바로가기

IT/python

llama2 셋팅 하기

반응형

AI모델중, 오픈소스로 최초! 공개된 Llama2. 로컬PC에 셋팅하는 방법을 공유 합니다!

 

 

1. 모델 받기

 

1.1 Meta 사이트에 요청해서 받기

Llama 2 (meta.com)

 

Llama 2

Our latest version of Llama is now accessible to individuals, creators, researchers, and businesses of all sizes.

llama.meta.com

메타사이트에 접속 후, 다운로드 모델을 클릭하면, 폼이 나옵니다.

적당하게 셋팅하고 전송을 하면 24시간 이내로 메일이 옵니다.

 

1번에 있는 링크로 리포지토리에 접속하고, 소스를 clone 으로 받고, 가이드에 나와있는것처럼 download.sh 를 실행해 줍니다! 저는 윈도우에서 실행할꺼라, 혹시나? 해서 wsl 로 우분투22.04 를 설치해서 실행 했습니다.

실행하면 2번에 있는 링크를 넣으면 다운로드가 시작됩니다.

 

5시간 정도 지났는데, 아직도 다운로드 중입니다.. 엄청 오래걸리네요..

 

1.2 허깅페이스에서 받기

meta-llama (Meta Llama 2) (huggingface.co)

 

meta-llama (Meta Llama 2)

Llama 2 From Meta Welcome to the official Hugging Face organization for Llama 2 models from Meta! In order to access models here, please visit the Meta website and accept our license terms and acceptable use policy before requesting access to a model. Requ

huggingface.co

필요한 모델에 들어가서 역시 요청 후, 다운받아야 합니다. 

승인되면 업데이트 하겠습니다.

 

승인되었습니다!!

이렇게 보이네요~~!

 

1.3 Onnx 사이트에서 받기

microsoft/Llama-2-Onnx (github.com)

 

GitHub - microsoft/Llama-2-Onnx

Contribute to microsoft/Llama-2-Onnx development by creating an account on GitHub.

github.com

여기도 역시 승인후, 다운받을수 있네요.

 

2. 실행하기

2.1 ollama 이용하기

Ollama

 

Ollama

Get up and running with large language models, locally.

ollama.com

가장 빠르고 편하게 할수 있습니다. 

모델을 따로 받을 필요도 없습니다!!

OS별로 프로그램을 다운받고 실행하면 됩니다. 

실행시에, 

ollama run llama2

로 하면 llama2 모델도 받고 바로 실행까지 됩니다. 

명령어도 그렇고, 실행화면이 웬지 도커를 쓰는거 같습니다. 어쨌든 바로 이용이 가능합니다.

 

 

성공!

 

필요한건 이제 영어 뿐 ㅡㅜ;

 

2.2 text-generation webui 이용하기

oobabooga/text-generation-webui: A Gradio web UI for Large Language Models. Supports transformers, GPTQ, AWQ, EXL2, llama.cpp (GGUF), Llama models. (github.com)

 

GitHub - oobabooga/text-generation-webui: A Gradio web UI for Large Language Models. Supports transformers, GPTQ, AWQ, EXL2, lla

A Gradio web UI for Large Language Models. Supports transformers, GPTQ, AWQ, EXL2, llama.cpp (GGUF), Llama models. - oobabooga/text-generation-webui

github.com

AI 모델을 편하게 테스트 할수 있는 실행기+테스트 프로그램 입니다.

git clone 하신후, 설명서있는것처럼

start_windows.bat

 

로 실행합니다.

 

실행화면은 아래와 같습니다. 스테이블 디퓨전과 정말 흡사하게 생겼네요~!

 

혼자서는 실행안되고, 모델이 있어야 합니다.

모델은 gguf 면 단일 파일이고, 아니면 bin 형이 있는데, 이거는 폴더방식으로 모델폴더에 넣어줘야 합니다. ( 가이드에 써있음 )

테스트 용 모델파일을 다운로드 받습니다. 이왕 새로 받을꺼, 한국어가 파인튜닝? 된 모델을 받아봤습니다. 

psymon/KoLlama2-7b at main (huggingface.co)

 

psymon/KoLlama2-7b at main

Detected Pickle imports (4) "torch._utils._rebuild_tensor_v2", "collections.OrderedDict", "torch.HalfStorage", "torch.FloatStorage" What is a pickle import?

huggingface.co

시간이 오래 걸래는군요.. 이것도역시 그럼 다운로드 완료 및 테스트 후에 자료 업데이트 해보겠습니다~!

 

다운로드 완료후, model 폴더에 이동하고 실행해봤습니다.

복사가 잘되면  모델리스트에 뜨니  선택하고 ( 안보이면 리프래쉬버튼 누르기 ) , Load 버튼을 누릅니다.

오류가 발생하는군요..

 

그래픽카드 드라이버가 너무 오래됐다고 합니다. 업데이트 후 다시 시도 하겠습니다. 

 

그래픽카드를 최신카드로 업데이트 후 다시 실행 했습니다~!

정상으로 로딩은 되었지만, 챗을 시작하니, OutOfMemory 가 발생합니다.

 

 

테스트 하는 환경이, GTX 1660 Super 를 쓰는데 이걸로는 역부족 인거 같습니다..

요구사항이 더 낮은 모델을 쓰던가, 아님 더 좋은 컴퓨터를 구해야 겠네요 ㅡㅜ

 

gguf, ggml 이 궁금해서 찾아보니, 

LLM 모델 저장 형식 GGML, GGUF - 정우일 블로그 (wooiljeong.github.io)

 

LLM 모델 저장 형식 GGML, GGUF

GPT와 같은 언어 모델에 사용되는 두 가지 혁신적 파일 형식, GGUF와 GGML에 대해 소개하겠습니다. 이들의 차이점과 각각의 장단점을 살펴보겠습니다. 이 글은 What is GGUF and GGML?의 내용을 한글로 번

wooiljeong.github.io

텐서 라이브러리라고 합니다. 

 

** 언어별로 주제를 구분하고 있어서 이쪽으로 들어왔지만, 아직도 카타고리는 고민중...

반응형