원격으로 로컬 LLM에 접근하기 - Tailscale 사용 가이드

Accessing Local LLMs Remotely Using TailScale

강력한 언어 모델을 로컬 장치에서 실행하면 빠른 속도로 쿼리를 처리하고 비싼 클라우드 서비스에 의존하지 않아도 됩니다. 하지만 한 가지 문제는 해당 장치에서만 접근할 수 있다는 점입니다. 다른 공간에 있는 노트북이나 다른 기기에서도 사용하고 싶다면 어떻게 해야 할까요?

로컬에서 LLM을 실행하는 것이 점점 일반화되고 있지만, 여러 기기에서 접근할 수 있도록 만드는 것은 항상 간단하지 않습니다. 이 가이드에서는 Tailscale, Open WebUI, Ollama를 사용하여 로컬 LLM에 원격으로 접근할 수 있는 방법을 안내해 드립니다. 이 방법을 통해 안전하고 손쉽게 어디서든 모델과 상호작용할 수 있습니다.

로컬 LLM에 원격으로 접근해야 하는 이유

단일 장치에만 국한된 LLM은 유연성이 제한됩니다. 원격 접근을 통해 다음과 같은 이점을 얻을 수 있습니다:

  • 어떤 장치에서든 LLM과 상호작용 가능
  • 사양이 낮은 하드웨어에서 대형 모델을 실행할 필요 없음
  • 데이터와 처리 과정에 대한 통제권 유지
  • 필요한 도구

    • Tailscale: 장치 연결을 위한 안전한 VPN
    • Docker: 컨테이너화 플랫폼
    • Open WebUI: LLM용 웹 기반 인터페이스
    • Ollama: 로컬 LLM 관리 도구

    1단계: Tailscale 설치 및 구성

    • 로컬 장치에 Tailscale을 다운로드하고 설치합니다.
    • Google, Microsoft 또는 GitHub 계정으로 로그인합니다.
    • Tailscale을 시작합니다.
    • macOS를 사용 중이라면, 터미널에서 Tailscale을 실행하기 위한 절차를 따르세요. 그렇지 않다면 이 부분을 건너뛰어도 됩니다.
  • cmd/터미널에서 다음 명령어를 실행합니다:
  • tailscale up

    이 명령어는 장치가 Tailscale 네트워크에 연결되도록 합니다.

    2단계: Ollama 설치 및 실행

    • 로컬 장치에 Ollama를 설치합니다.
    • 터미널/cmd에서 다음 명령어를 사용하여 모델을 로드합니다:

    ollama pull

    예를 들어, mistral을 사용한다면:

    ollama pull mistral

  • 다음 명령어로 모델을 실행합니다:
  • ollama run

    mistral의 경우:

    ollama run mistral

    Mistral 모델이 실행되고 상호작용할 수 있게 됩니다:

    Install and Run Ollama

    종료하려면 /bye를 입력하세요.

    3단계: Docker 설치 및 Open WebUI 설정

    • 로컬 장치에 docker desktop 애플리케이션을 설치합니다.
    • 호스트 네트워킹을 활성화합니다. 설정의 리소스 탭으로 이동한 다음 네트워크에서 '호스트 네트워킹 활성화'를 선택합니다.

    enable host networking

  • 터미널/cmd에서 다음 명령어를 실행합니다:
  • docker run -d --network=host -v open-webui:/app/backend/data -e OLLAMABASEURL=http://127.0.0.1:11434 --name open-webui --restart always ghcr.io/open-webui/open-webui:main

    이 명령어는 Docker 컨테이너에서 Open WebUI를 실행하고 Ollama에 연결합니다.

  • http://localhost:8080에 접속하여 Open WebUI를 사용합니다. 인증 후에는 아래와 같은 화면이 표시됩니다:
  • Access Open WebUI

    Ollama를 통해 여러 LLM을 로드한 경우, 빨간색 사각형으로 표시된 드롭다운 메뉴를 사용하여 쉽게 전환할 수 있습니다.

    4단계: 원격으로 LLM 접근하기

  • 로컬 장치에서 다음 명령어를 실행하여 tailnet IP 주소를 확인합니다:
  • tailscale ip -4

    이 명령은 100.x.x.x와 같은 Tailnet IP를 반환합니다.

  • 1단계를 따라 원격 장치에 Tailscale을 설치합니다. Android/iOS 장치를 원격 장치로 사용하는 경우 1단계의 5번은 건너뛰고 Tailscale 앱을 열어 장치가 연결되었는지 수동으로 확인하세요.
  • 원격 장치에서 브라우저를 열고 http://:8080으로 접속하여 로컬 LLM에 접근합니다.
  • Access LLMs Remotely

    마무리

    Tailscale을 사용하면 로컬 LLM에 원격으로 접근하는 것이 간단하고 안전합니다. 이 단계별 가이드를 통해 프로세스를 명확하게 안내했으니, 어려움이 있으시면 언제든지 질문해 주세요!