Experimenting with Lllama 3 via Ollama

Michael Lynch

Ollama로 Llama 3 실험하기

Meta가 Llama 3 AI 모델을 출시했다는 걸 알게 됐고 사람들의 반응이 뜨거운 것 같아 직접 한번 써보기로 했습니다.

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

GPU를 탑재한 클라우드 서버 준비하기

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

  • 서버 인스턴스 유형: GPU-3070-S
  • OS: Ubuntu Focal
  • 디스크 크기: 100 GB (모델 용량이 크기 때문에 필요합니다)

서버의 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를 가지고 놀아볼 수 있습니다. Llama 3가 Nathan Fielder인 척하며 나눈 대화입니다:

원문은 Michael Lynch님이 에 게재했습니다.

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