Experimenting with Lllama 3 via Ollama

Michael Lynch

Ollama로 Llama 3 실험하기

원문은 Michael Lynch님이 에 게재했습니다. 이 블로그 구독하기

Meta가 Llama 3 AI 모델을 출시한 걸 봤는데, 사람들이 꽤 흥분한 것 같아서 나도 한번 써 보기로 했다.

오픈소스 AI 모델을 직접 실행해 본 경험이 많지 않고, 실행 방법에 대한 문서도 많이 보이지 않았다. 몇 시간 정도 만져 본 끝에 Ollama로 Llama 3를 구동하는 데 성공해서 그 과정을 공유하려 한다.

GPU가 탑재된 클라우드 서버 준비하기

이번 실험을 위해 Scaleway에서 다음과 같은 사양의 서버를 준비했다:

  • 서버 인스턴스 유형: GPU-3070-S
  • OS: Ubuntu Focal
  • 디스크 크기: 100GB (모델 용량이 커서 필요함)

서버의 localhost 인터페이스에서 실행될 웹 인터페이스에 접속해야 하므로, 포트 포워딩을 설정해 다음 명령어로 SSH 접속했다.

TARGET_IP='51.159.184.186' # Change to your server's IP.
REMOTE_PORT='8080'
LOCAL_PORT='8080'

# SSH in and port-forward a port to access the Open-WebUI web interface.
ssh "${TARGET_IP}" -L "${REMOTE_PORT}:localhost:${LOCAL_PORT}"

CUDA 설치

먼저 Ollama가 GPU를 사용할 수 있도록 CUDA를 설치한다:

sudo apt-get install linux-headers-$(uname -r) && \
  sudo apt-key del 7fa2af80 && \
  echo "deb [signed-by=/usr/share/keyrings/cudatools.gpg] https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/ /" | sudo tee /etc/apt/sources.list.d/cuda-ubuntu2204-x86_64.list && \
  wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin && \
  sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600 && \
  sudo apt-get update && \
 sudo apt-get install -y cuda-toolkit nvidia-container-toolkit ca-certificates curl

Docker 설치

다음으로 Ollama용 Open-WebUI 웹 인터페이스에서 Ollama를 실행할 수 있도록 Docker를 설치한다:

sudo install -m 0755 -d /etc/apt/keyrings && \
  sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc && \
  sudo chmod a+r /etc/apt/keyrings/docker.asc && \
  echo \
    "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
    $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
    sudo tee /etc/apt/sources.list.d/docker.list > /dev/null && \
  sudo apt-get update && \
  sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin && \
  sudo usermod -aG docker "${USER}" && \
  newgrp docker

모든 것이 정상적으로 작동하는지 확인하려면 다음 명령어를 실행한다:

docker run hello-world

Ollama와 Open-WebUI 시작하기

표준 Open-WebUI Docker Compose 파일을 Ollama용으로 수정해 두었는데, 다음 명령어로 다운로드해 실행할 수 있다:

wget https://mtlynch.io/notes/ollama-llama3/docker-compose.yml && \
  docker-compose up

서버가 정상적으로 실행되면 브라우저에서 다음 URL로 접속한다:

먼저 로그인을 요구하는 페이지가 나타난다. “Sign up”을 클릭한다.

그 다음 아무 정보나 입력하면 된다. 내 경험상 유효한 이메일이 꼭 필요한 것 같지는 않다.

이제 사용할 모델을 다운로드해야 한다. 설정 버튼을 클릭한다:

모델들 간의 차이는 잘 모르겠지만, Llama 3가 며칠 전에 나온 가장 최신 모델이라 이걸 써 보기로 했다. ollama.com에 보면 llama3:70b가 챗봇 용도에 최적화되어 있다고 해서 처음에는 그걸로 시도했는데, 엄청나게 느렸다. llama3로 바꾸니 그럭저럭 쓸 만했다:

진행률이 한동안 100%에 머물러 있겠지만, 모델이 완전히 다운로드되었다는 팝업이 뜰 때까지 기다려야 한다.

다운로드가 끝나면 설정 창을 닫고 드롭다운에서 llama3:latest를 선택한다:

이제 Llama 3를 가지고 놀 수 있다. Nathan Fielder인 척하는 Llama 3와 대화해 본 모습이다:

이 글은 muse-spark-1.2-contributor 모델을 사용해 번역했습니다.

댓글