로컬 AI 도구: Ollama 시작하기 (Tool 1)

발행: (2025년 12월 9일 오후 09:15 GMT+9)
5 min read
원문: Dev.to

Source: Dev.to

개요

접근성이 좋은 로컬 AI 도구에 대해 이야기할 때 오늘날 가장 인기 있는 옵션 중 하나는 Ollama입니다. 이 도구는 단순함, 신뢰성, 그리고 모든 주요 운영 체제(Windows, Linux, macOS)에서 사용할 수 있다는 점으로 잘 알려져 있습니다. 공식 Ollama 웹사이트에서 설치 프로그램을 다운로드하고 간단한 회원가입을 마친 뒤, 데스크톱 애플리케이션을 실행하면 사전 학습된 AI 모델 모음 중에서 선택할 수 있습니다. 전체 모델 목록은 Ollama 웹사이트에서 확인할 수 있으며, 많은 모델을 설치 프로그램을 통해 직접 다운로드할 수 있습니다.

Ollama는 클라우드 기반 사용을 위한 유료 구독 서비스도 제공하지만, 데스크톱 버전이 가장 쉬운 진입점으로 남아 있습니다.

Docker 배포

보다 세밀한 제어가 필요하거나 Ollama를 자동화된 워크플로에 통합하고자 하는 개발자를 위해, 이 도구를 Docker 컨테이너 안에서 실행할 수 있습니다.

docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
docker exec -it ollama ollama run llama3.2

컨테이너는 http://localhost:11434/에서 접근 가능한 로컬 서버를 시작합니다.

Note: Docker 버전에는 웹 인터페이스가 포함되어 있지 않으며, 상호작용은 전적으로 API를 통해 이루어집니다.

API 사용

Ollama API는 웹사이트에 문서화되어 있으며, 표준 POST 요청을 통해 다음을 지원합니다:

  • 사용 가능한 모델 목록 조회
  • 프롬프트 전송
  • 프로그래밍 방식으로 응답 수신(스트리밍)

예시: 프롬프트 스트리밍

async function askModel() {
  const response = await fetch("http://localhost:11434/api/generate", {
    method: "POST",
    headers: { "Content-Type": "application/json" },
    body: JSON.stringify({
      model: "llama3.2",
      prompt: "Who are you?"
    })
  });

  const reader = response.body.getReader();
  const decoder = new TextDecoder("utf-8");

  // Output a stream response
  while (true) {
    const { done, value } = await reader.read();
    if (done) break;
    console.log(decoder.decode(value));
  }
}

askModel();

스트리밍된 샘플 출력:

{
  "model": "llama3.2",
  "created_at": "2025-12-09T10:20:54.622934272Z",
  "response": "I",
  "done": false
}
{
  "model": "llama3.2",
  "created_at": "2025-12-09T10:20:54.761152451Z",
  "response": "'m",
  "done": false
}
...

커스텀 Docker 이미지 만들기

Dockerfile을 작성하면 빌드 시 특정 모델을 미리 로드할 수 있어, 컨테이너 시작 시 시간을 절약할 수 있습니다.

Dockerfile

FROM ollama/ollama:latest
COPY entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
EXPOSE 11434
ENTRYPOINT ["/entrypoint.sh"]

entrypoint.sh

#!/bin/bash
ollama serve &
sleep 3
ollama pull llama3.1
wait

빌드 및 실행

docker build -t my-ollama .
docker run -p 11434:11434 my-ollama

이 설정은 Ollama를 플러그‑인‑플레이 모듈로 만들어 웹 서비스, 자동화 파이프라인, 혹은 로컬 개발 환경에 손쉽게 통합할 수 있게 합니다.

개발 도구와의 통합

Ollama 문서에는 다음과 같은 서비스와 연결하는 예시가 제공됩니다:

  • n8n
  • Visual Studio Code
  • JetBrains IDEs
  • Codex 및 기타 워크플로 도구

이러한 통합을 통해 Ollama를 보다 넓은 자동화 또는 개발 파이프라인에 삽입할 수 있습니다.

결론

Ollama의 주요 장점은 단순함입니다: 쉬운 설치, 크로스‑플랫폼 지원, 그리고 직관적인 API. 복잡한 설정 없이 로컬에서 AI 모델을 실험하고자 하는 사용자에게 훌륭한 시작점이 됩니다.

하지만 보다 깊은 커스터마이징, 고급 설정, 혹은 복잡한 워크플로에 고성능으로 통합해야 하는 개발자에게는 다른 도구가 효율성과 유연성 면에서 더 나은 선택이 될 수 있습니다. 앞으로 이 시리즈의 다음 기사에서는 그런 대안들을 살펴볼 예정입니다.

Back to Blog

관련 글

더 보기 »