Llama 2를 로컬로 다운로드하고 설치하는 방법

2023년 여름, 메타는 Llama 2를 공개했습니다. Llama의 새로운 버전은 기존 모델보다 40% 더 많은 토큰으로 미세 조정되어, 문맥 길이를 두 배로 늘렸으며, 현재 사용 가능한 다른 오픈 소스 모델들을 훨씬 능가하는 뛰어난 성능을 자랑합니다. Llama 2에 가장 빠르고 쉽게 접근하는 방법은 온라인 플랫폼의 API를 활용하는 것이지만, 최상의 사용자 경험을 원한다면 개인 컴퓨터에 직접 설치하고 로드하는 것이 이상적입니다.

이러한 점을 고려하여, 양자화된 Llama 2 LLM을 Text-Generation-WebUI를 사용하여 개인 컴퓨터에 로컬로 로드하는 방법에 대한 상세한 가이드를 준비했습니다.

Llama 2를 로컬에 설치해야 하는 이유

개인이 Llama 2를 직접 실행하고자 하는 이유는 다양합니다. 개인 정보 보호를 중요시하거나, 사용자 정의를 원하거나, 오프라인에서 사용해야 할 필요성이 있을 수 있습니다. Llama 2를 연구, 미세 조정 또는 프로젝트에 통합하는 경우, API를 통한 접근은 적합하지 않을 수 있습니다. PC에서 LLM을 로컬로 실행하면 타사 AI 도구에 대한 의존성을 줄일 수 있으며, 민감한 데이터 유출 위험 없이 언제 어디서든 AI를 사용할 수 있다는 장점이 있습니다.

이제 Llama 2를 로컬에 설치하는 방법에 대한 단계별 안내를 시작하겠습니다.

작업의 편의성을 위해, Text-Generation-WebUI(Llama 2를 GUI 환경에서 로드하는 데 사용되는 프로그램)용 원클릭 설치 프로그램을 사용할 예정입니다. 하지만 이 설치 프로그램을 사용하기 전에 Visual Studio 2019 빌드 도구를 다운로드하고 필요한 구성 요소를 설치해야 합니다.

다운로드: Visual Studio 2019 (무료)

  • 소프트웨어의 Community 버전을 다운로드하세요.
  • Visual Studio 2019를 설치한 후, 소프트웨어를 실행합니다. C++를 사용한 데스크톱 개발 옵션을 선택하고 설치를 진행합니다.

C++를 사용한 데스크톱 개발 설치가 완료되면, Text-Generation-WebUI 원클릭 설치 프로그램을 다운로드할 차례입니다.

2단계: Text-Generation-WebUI 설치

Text-Generation-WebUI 원클릭 설치 프로그램은 필요한 폴더를 자동으로 생성하고, Conda 환경 및 AI 모델 실행에 필요한 모든 구성 요소를 설정하는 스크립트입니다.

스크립트를 설치하려면, 코드 > ZIP 다운로드 버튼을 클릭하여 원클릭 설치 프로그램을 다운로드하십시오.

다운로드: Text-Generation-WebUI 설치 프로그램 (무료)

  • 다운로드가 완료되면, 원하는 위치에 ZIP 파일의 압축을 해제한 후 추출된 폴더를 엽니다.
  • 폴더 내에서 스크롤을 내려 운영체제에 맞는 실행 파일을 찾아 실행합니다.
    • Windows 사용자는 start_windows 배치 파일을 선택합니다.
    • MacOS 사용자는 start_macos 쉘 스크립트를 선택합니다.
    • Linux 사용자는 start_linux 쉘 스크립트를 선택합니다.
  • 백신 프로그램이 경고를 표시할 수 있습니다. 이것은 정상적인 현상이며, 배치 파일 또는 스크립트 실행에 대한 백신 프로그램의 오탐지일 뿐입니다. 실행을 진행하십시오.
  • 터미널이 열리고 설정이 시작됩니다. 초기 설정 시에는 어떤 GPU를 사용할지 묻는 메시지가 나타납니다. 컴퓨터에 설치된 GPU 유형을 선택하고 Enter 키를 누릅니다. 전용 그래픽 카드가 없는 경우, “없음(CPU 모드에서 모델을 실행하고 싶습니다)”을 선택합니다. CPU 모드에서의 실행은 GPU를 사용하는 것에 비해 속도가 훨씬 느립니다.
  • 설정이 완료되면, 이제 Text-Generation-WebUI를 로컬에서 시작할 수 있습니다. 웹 브라우저를 열고 주어진 IP 주소를 입력하면 됩니다.
  • 이제 WebUI를 사용할 준비가 되었습니다.

그러나 이 프로그램은 모델 로더일 뿐입니다. 모델 로더를 실행하기 위해 Llama 2 모델을 다운로드해야 합니다.

3단계: Llama 2 모델 다운로드

어떤 Llama 2 버전을 사용할지 결정할 때 고려해야 할 사항이 많습니다. 여기에는 매개변수, 양자화, 하드웨어 최적화, 크기 및 사용 목적이 포함됩니다. 이 모든 정보는 모델 이름에 표시되어 있습니다.

  • 매개변수: 모델을 훈련하는 데 사용된 매개변수의 수입니다. 매개변수가 많을수록 모델의 성능은 향상되지만, 처리 속도는 느려질 수 있습니다.
  • 사용 목적: 표준 또는 채팅 모델일 수 있습니다. 채팅 모델은 ChatGPT와 같은 챗봇으로 사용하도록 최적화되어 있으며, 표준 모델은 기본 모델입니다.
  • 하드웨어 최적화: 모델이 가장 잘 실행되는 하드웨어를 나타냅니다. GPTQ는 전용 GPU에서 실행하도록 최적화되었음을 의미하고, GGML은 CPU에서 실행하도록 최적화되었음을 의미합니다.
  • 양자화: 모델의 가중치 및 활성화의 정밀도를 나타냅니다. 추론에는 q4 정밀도가 최적입니다.
  • 크기: 특정 모델의 크기를 나타냅니다.

일부 모델은 다른 방식으로 명명될 수 있으며, 동일한 유형의 정보가 표시되지 않을 수도 있습니다. 그러나 이러한 명명 규칙은 Hugging Face 모델 라이브러리에서 매우 일반적이며, 이해할 가치가 있습니다.

이 예시에서 모델은 CPU 환경에서 채팅 추론에 최적화된 130억 개의 매개변수로 훈련된 중간 크기의 Llama 2 모델로 볼 수 있습니다.

전용 GPU를 사용하는 경우 GPTQ 모델을 선택하고, CPU를 사용하는 경우 GGML 모델을 선택하십시오. ChatGPT와 같이 모델과 채팅하려면 채팅 모델을 선택하고, 모델의 모든 기능을 사용해보고 싶다면 표준 모델을 선택하십시오. 매개변수의 경우, 더 큰 모델을 사용하면 더 나은 결과를 얻을 수 있지만, 성능 저하가 발생할 수 있다는 점을 기억하십시오. 개인적으로는 7B 모델로 시작하는 것을 추천합니다. 양자화의 경우, 추론에만 사용되므로 q4를 선택하십시오.

다운로드: GGML (무료)

다운로드: GPTQ (무료)

이제 필요한 Llama 2 버전을 알았으므로, 원하는 모델을 다운로드하십시오.

본 예시에서는 울트라북에서 실행하고 있으므로 채팅에 최적화된 GGML 모델인 llama-2-7b-chat-ggmlv3.q4_K_S.bin을 사용하겠습니다.

다운로드가 완료되면, 해당 모델 파일을 text- Generation-webui-main > models 폴더에 넣습니다.

이제 모델을 다운로드하여 모델 폴더에 넣었으므로, 모델 로더를 구성할 차례입니다.

4단계: Text-Generation-WebUI 구성

이제 구성 단계를 시작하겠습니다.

  • Text-Generation-WebUI를 실행하려면, 이전에 설명한 것처럼 start_(사용자 OS) 파일을 다시 실행합니다.
  • GUI 상단의 탭에서 “모델”을 클릭합니다. “모델” 드롭다운 메뉴에서 새로 고침 버튼을 클릭한 후 모델을 선택합니다.
  • 모델 로더의 드롭다운 메뉴에서, GPTQ 모델을 사용하는 경우 “AutoGPTQ”를, GGML 모델을 사용하는 경우 “ctransformers”를 선택합니다. 마지막으로 “로드” 버튼을 클릭하여 모델을 로드합니다.
  • 모델을 사용하려면, “채팅” 탭을 열고 모델 테스트를 시작합니다.

축하합니다! 개인 컴퓨터에 Llama 2 모델을 성공적으로 로드했습니다.

다른 LLM 사용해보기

이제 Text-Generation-WebUI를 사용하여 컴퓨터에서 Llama 2를 직접 실행하는 방법을 알았으므로, Llama 이외의 다른 LLM을 실행해 볼 수 있습니다. 모델의 명명 규칙과 양자화된 버전(일반적으로 q4 정밀도)만 일반 PC에서 로드할 수 있다는 점을 기억하십시오. Hugging Face에서 다양한 양자화된 LLM을 이용할 수 있습니다. 다른 모델을 찾아보려면 Hugging Face의 모델 라이브러리에서 TheBloke를 검색해보세요.