Apidog

올인원 협업 API 개발 플랫폼

API 설계

API 문서

API 디버깅

API 모킹

API 자동화 테스트

올라마 치트시트 - 올라마로 LLM을 로컬에서 실행하는 방법

Young-jae

Young-jae

Updated on March 8, 2025

Ollama를 사용한 로컬 LLM 소개

AI 환경은 빠르게 변화하고 있지만, 한 가지 트렌드는 명확합니다: 개발자들은 AI 구현에 대한 제어, 프라이버시 및 유연성을 점점 더 원하고 있습니다. Ollama는 클라우드 기반 API의 제약 없이 하드웨어에서 강력한 대형 언어 모델을 로컬로 실행하는 간소화된 방법을 제공합니다.

모델을 로컬에서 실행하는 이유는 무엇일까요? 세 가지 설득력 있는 이유가 있습니다: 민감한 데이터에 대한 완전한 프라이버시, API 호출에서 발생하는 지연 문제 없음, 그리고 사용 쿼터나 예기치 않은 비용으로부터의 자유입니다. 사용자 데이터를 제3자에게 전송하지 않고 일관된 AI 성능이 필요한 애플리케이션을 구축할 때, 로컬 추론은 단순히 매력적일 뿐만 아니라 필수적입니다.

DeepSeek-R1은 오픈 소스 AI 모델의 중요한 발전을 나타내며, 많은 상업적 제품과의 경쟁력을 갖추고 있습니다. 강력한 추론 기능, 코드 생성 능력 및 다중 모드 입력 처리 기능을 갖추고 있어, 로컬 AI로 가능한 것의 한계를 확장하려는 개발자들에게 훌륭한 선택이 됩니다.


강력한 LLM은 강력한 API 테스트를 필요로 합니다.

Ollama를 통해 DeepSeek과 같은 로컬 LLM과 통합하는 애플리케이션을 구축할 때, 스트리밍 AI 응답 디버깅이라는 도전에 직면하게 됩니다. 바로 이 점에서 Apidog가 진정한 힘을 발휘합니다.



일반 API 도구와는 달리 Apidog의 전문 SSE 디버깅은 실시간으로 토큰 생성 과정을 시각화하여 모델이 어떻게 생각하는지에 대한 전례 없는 가시성을 제공합니다. 챗봇, 콘텐츠 생성기 또는 AI 기반 검색을 구축하는 경우, Apidog는 Ollama의 API 엔드포인트와 작업을 매우 수월하게 만들어 줍니다.

개인적으로 이 조합이 로컬 LLM 개발에 있어 획기적이라고 생각합니다.

버튼

Ollama 시작하기

설치

Ollama 설치는 주요 운영 체제에서 매우 간단합니다:

curl -fsSL https://ollama.com/install.sh | sh

설치 후, 다음 명령어로 Ollama 서버를 시작합니다:

ollama serve

이 명령어는 요청을 localhost:11434에서 수신 대기하는 서비스로 Ollama를 실행합니다. 이 터미널 창을 계속 열어 두거나, 지속적으로 사용할 계획이라면 Ollama를 백그라운드 서비스로 설정하세요.

시스템 요구 사항

DeepSeek-R1과 최적의 성능을 위해:

  • 최소: 8GB RAM, 4개 이상의 코어를 가진 최신 CPU
  • 권장: 16GB 이상의 RAM, 8GB 이상의 VRAM을 가진 NVIDIA GPU
  • 저장소: 기본 모델을 위해 최소 10GB의 여유 공간

기본 명령어

설치된 버전을 확인하세요:

ollama --version

사용 가능한 명령어에 대한 도움을 받으세요:

ollama help

모델 관리

모델 발견 및 다운로드

모델 조작에 들어가기 전에, 사용 가능한 모델을 살펴보겠습니다:

ollama list

이 명령어는 로컬에 설치된 모든 모델을 보여줍니다. DeepSeek-R1을 다운로드할 준비가 되면:

ollama pull deepseek-r1

Ollama는 하드웨어 성능에 맞춘 다양한 모델 크기를 제공합니다. 리소스가 제한된 기기의 경우, 다음과 같이 시도해 보세요:

ollama pull deepseek-r1:7b

더 강력한 설정을 원하시면:

ollama pull deepseek-r1:8b

내용 제한에 직면하셨나요? 일부 개발자들은 필터가 적은 모델을 선호합니다:

ollama pull open-r1

모델 효과적으로 실행하기

Ollama의 진정한 힘은 모델과 상호 작용하기 시작할 때 드러납니다. 대화형 챗 세션을 시작합니다:

ollama run deepseek-r1

이 명령을 사용하면 DeepSeek-R1의 기능을 탐색할 수 있는 실시간 대화가 열립니다. 질문을 입력하고 Enter를 누르거나 /help를 사용하여 세션 중 사용할 수 있는 특별한 명령을 확인하세요.

대화형 모드에 들어가지 않고 빠른 일회성 쿼리를 위해:

ollama run deepseek-r1 "양자 컴퓨팅을 간단한 용어로 설명해 주세요"

파일에서 직접 텍스트를 처리하세요. 요약, 분석 또는 변환 작업에 매우 유용합니다:

ollama run deepseek-r1 "이 파일의 내용을 50단어로 요약해 주세요." < input.txt

모델 매개변수 조정

DeepSeek-R1의 동작은 매개변수 조정을 통해 극적으로 변경될 수 있습니다. 창의적이고 다양한 출력을 위해:

ollama run deepseek-r1 --temperature 0.7 --top-p 0.9

코딩 또는 기술 설명에 더 적합한 사실적이고 결정적인 응답을 위해:

ollama run deepseek-r1 --temperature 0.1 --top-p 1.0

매개변수 가이드:

  • 온도 (0.0-1.0): 낮은 값은 응답을 더 집중적이고 결정적으로 만들고, 높은 값은 창의성과 다양성을 도입합니다.
  • Top-p (0.0-1.0): 이 임계값을 초과하는 누적 확률을 가진 가장 확률적인 토큰만 고려하여 다양성을 제어합니다.
  • 컨텍스트 윈도우: 모델이 기억하는 이전 대화의 양을 결정합니다.

고급 사용 및 API 통합

특정 애플리케이션을 위한 사용자 정의 Modelfile

Ollama의 진정한 유연성은 특정 작업에 맞게 DeepSeek-R1을 조정하기 위해 사용자 정의 Modelfile을 만들 때 나타납니다:

FROM deepseek-r1:8b
PARAMETER temperature 0.3
PARAMETER top_p 0.95
SYSTEM 당신은 Python을 전문으로 하는 선임 소프트웨어 개발자입니다. 유용한 주석이 포함된 깔끔하고 효율적인 코드를 제공하세요.

이 파일을 Modelfile로 저장하고 사용자 정의 모델을 생성합니다:

ollama create python-expert -f Modelfile

다른 모델처럼 실행하세요:

ollama run python-expert "주어진 범위에서 소수인 숫자를 찾는 함수를 작성하세요"

애플리케이션 통합을 위한 REST API

명령 줄 사용은 실험에 편리하지만, 실제 애플리케이션은 API 접근이 필요합니다. Ollama는 11434 포트에서 간단한 REST API를 제공합니다:

# 기본 생성 요청
curl -X POST http://localhost:11434/api/generate -d '{
  "model": "deepseek-r1",
  "prompt": "재귀 함수를 작성하여 피보나치 수를 계산하세요",
  "stream": false
}'

스트리밍 응답을 원하시면 (챗 인터페이스에 이상적):

curl -X POST http://localhost:11434/api/generate -d '{
  "model": "deepseek-r1",
  "prompt": "신경망이 어떻게 학습하는지 간단한 용어로 설명하세요",
  "stream": true
}'

Apidog를 사용한 API 엔드포인트 테스트

Ollama의 API와 통합된 애플리케이션을 구축할 때, 스트리밍 응답을 테스트하고 시각화하는 것이 중요합니다. Apidog는 Ollama의 스트리밍 API가 생성하는 서버 전송 이벤트(SSE)를 처리하는 데 탁월합니다:

  1. Apidog에서 새 HTTP 프로젝트를 생성합니다.
  2. URL http://localhost:11434/api/generate를 갖는 엔드포인트를 추가합니다.
  3. 다음과 같은 JSON 본문을 가진 POST 요청을 설정합니다:
{
  "model": "deepseek-r1",
  "prompt": "프로그래머가 AI를 발견하는 이야기 작성",
  "stream": true
}
  1. 요청을 보내고 Apidog의 SSE 디버거가 토큰 생성 과정을 실시간으로 시각화하는 과정을 지켜보세요.

이 시각화는 응답 형식, 토큰 생성 또는 디버깅하기 어려운 예상치 못한 모델 동작에 대한 문제를 식별하는 데 도움이 됩니다.

DeepSeek-R1을 사용한 실제 애플리케이션

DeepSeek-R1은 다양한 실용적인 시나리오에서 뛰어납니다:

콘텐츠 생성

전문적인 품질의 블로그 게시물을 작성하세요:

ollama run deepseek-r1 "지속 가능한 기술에 대한 500단어 블로그 게시물을 작성하세요"

정보 추출

문서를 처리하고 분석하여 주요 정보를 추출하세요:

ollama run deepseek-r1 "이 연구 논문에서 주요 포인트를 추출하세요: " < paper.txt

이미지 분석

콘텐츠 설명 또는 분석을 위해 이미지를 처리하세요:

ollama run deepseek-r1 "이 이미지의 내용을 분석하고 설명하세요" < image.jpg

코드 생성 및 설명

특정 문제에 대한 코드 솔루션을 생성하세요:

ollama run deepseek-r1 "상세한 주석이 포함된 이진 검색 알고리즘을 구현하는 Python 함수를 작성하세요"

또는 복잡한 코드에 대해 설명하세요:

ollama run deepseek-r1 "이 코드의 기능을 설명하세요: " < complex_algorithm.py

일반 문제 해결

메모리 및 성능 문제

메모리 부족 오류가 발생하면:

  • 작은 모델 변형(7B 대신 8B)을 시도하십시오.
  • --ctx N를 사용하여 컨텍스트 윈도우 크기를 줄이십시오 (예: --ctx 2048).
  • 메모리를 많이 사용하는 다른 응용 프로그램을 종료하십시오.
  • CUDA 사용자의 경우 최신 NVIDIA 드라이버가 설치되어 있는지 확인하십시오.

API 연결 문제

API에 연결할 수 없는 경우:

  • Ollama가 ollama serve로 실행되고 있는지 확인하십시오.
  • 기본 포트가 차단되었거나 사용 중인지 확인하세요 (lsof -i :11434).
  • 다른 기계에서 연결하는 경우 방화벽 설정을 확인하십시오.

결론

DeepSeek-R1과 함께하는 Ollama는 개발자에게 강력한 언어 모델을 직접 손에 넣을 수 있게 하여 AI 민주화에 중요한 단계를 나타냅니다. 이 조합은 프라이버시, 제어 및 인상적인 기능을 제공하며, 모두 외부 서비스에 의존하지 않고 가능합니다.

로컬 LLM으로 애플리케이션을 구축할 때 API 통합의 proper testing이 신뢰할 수 있는 성능을 위해 중요하다는 점을 잊지 마세요. Apidog와 같은 도구는 Ollama의 스트리밍 응답을 시각화하고 디버깅하는 데 도움을 줄 수 있으며, 특히 모델 출력을 실시간으로 처리해야 하는 복잡한 애플리케이션을 구축할 때 유용합니다.

내용을 생성하든, 대화형 인터페이스를 구축하든, 코드 도우미를 만들든 이 강력한 조합은 귀하의 하드웨어에서 정교한 AI 통합을 위한 기반을 제공합니다.