Ollama 사용법: Ollama를 이용한 로컬 LLM 완전 초보 가이드

Young-jae

Young-jae

28 April 2025

Ollama 사용법: Ollama를 이용한 로컬 LLM 완전 초보 가이드

인공지능의 세계는 끊임없이 발전하고 있으며, 대규모 언어 모델(LLM)은 점점 더 강력해지고 접근성이 높아지고 있습니다. 많은 사람들이 클라우드 기반 서비스를 통해 이러한 모델과 상호작용하지만, 개인 컴퓨터에서 직접 실행하는 데 초점을 맞추는 움직임이 커지고 있습니다. 바로 여기서 Ollama가 등장합니다. Ollama는 Llama 3, Mistral, Gemma, Phi 등 최첨단 LLM을 로컬에서 다운로드, 설정 및 실행하는 복잡한 과정을 획기적으로 단순화하도록 설계된 강력하면서도 사용자 친화적인 도구입니다.

이 포괄적인 가이드는 설치 및 기본 사용법부터 고급 사용자 지정, API 사용 및 필수 문제 해결까지 Ollama를 시작하는 데 필요한 모든 것을 안내합니다. 로컬 LLM을 애플리케이션에 통합하려는 개발자, 다양한 아키텍처를 실험하려는 연구원, 또는 오프라인에서 AI를 실행하는 데 관심이 있는 애호가이든 관계없이 Ollama는 간소화되고 효율적인 플랫폼을 제공합니다.

💡
아름다운 API 문서를 생성하는 훌륭한 API 테스트 도구가 필요하신가요?

개발 팀이 최대 생산성으로 함께 작업할 수 있는 통합 All-in-One 플랫폼이 필요하신가요?

Apidog은 모든 요구를 충족시키고 Postman을 훨씬 더 저렴한 가격에 대체합니다!
버튼

로컬 LLM 실행에 왜 Ollama를 선택해야 할까요?

기술적인 세부 사항으로 들어가기 전에, 클라우드 기반 대안 대신 Ollama와 로컬 LLM을 선택하는 이유를 고려해 보는 것이 중요합니다. 왜 단순히 이용 가능한 클라우드 API에 의존하는 대신 이 접근 방식을 선택해야 할까요?

  1. Ollama를 통한 비교할 수 없는 개인 정보 보호 및 보안: 사용자 기기에서 Ollama를 사용하여 LLM을 실행하면 프롬프트, 제공하는 문서, 모델이 생성한 텍스트 등 모든 데이터가 로컬 시스템 내에 완전히 유지됩니다. 하드웨어 밖으로 나가지 않습니다. 이는 민감한 개인 정보, 기업 기밀 데이터 또는 독점 연구를 다룰 때 중요한 요소인 최고 수준의 개인 정보 보호 및 데이터 제어를 보장합니다.
  2. Ollama를 통한 상당한 비용 절감: 클라우드 기반 LLM API는 종종 사용량 기반 모델로 운영되거나 지속적인 구독료가 필요합니다. 이러한 비용은 특히 사용량이 많을 경우 빠르게 누적될 수 있습니다. Ollama는 이러한 반복 비용을 제거합니다. 적절한 하드웨어에 대한 초기 투자(이미 보유하고 있을 수 있음) 외에 로컬에서 모델을 실행하는 것은 사실상 무료이며, API 청구서 걱정 없이 무제한 실험과 생성이 가능합니다.
  3. Ollama를 통한 진정한 오프라인 기능: Ollama 모델을 로컬 저장소에 다운로드하면 언제 어디서나 인터넷 연결 없이 완전히 독립적으로 사용할 수 있습니다. 이 오프라인 액세스는 연결이 제한된 환경에서 작업하는 개발자, 현장 연구원 또는 이동 중에 안정적인 AI 액세스가 필요한 모든 사람에게 매우 중요합니다.
  4. Ollama Modelfile을 통한 심층적인 사용자 지정 및 실험: Ollama는 강력한 Modelfile 시스템으로 차별화됩니다. 이를 통해 사용자는 매개변수(예: 창의성 수준 또는 출력 길이)를 조정하고, 사용자 지정 시스템 프롬프트를 정의하여 AI의 페르소나를 형성하고, 특수 미세 조정 어댑터(LoRA)를 통합하여 모델 동작을 쉽게 수정할 수 있습니다. GGUF 또는 Safetensors와 같은 표준 형식에서 모델 가중치를 직접 가져올 수도 있습니다. 이러한 세분화된 제어 및 유연성 수준은 폐쇄 소스 클라우드 API 제공 업체에서는 거의 제공되지 않습니다.
  5. Ollama를 통한 잠재적인 성능 이점: 로컬 하드웨어 구성, 특히 고성능 그래픽 처리 장치(GPU)의 존재 여부에 따라 Ollama는 네트워크 대기 시간, 속도 제한 또는 공유 리소스의 가변 부하에 영향을 받을 수 있는 클라우드 서비스에 비해 훨씬 빠른 응답 시간(추론 속도)을 제공할 수 있습니다. 전용 하드웨어를 활용하면 훨씬 더 부드럽고 상호 작용적인 경험을 얻을 수 있습니다.
  6. 활기찬 Ollama 오픈 소스 생태계 참여: Ollama 자체는 오픈 소스 프로젝트로서 투명성과 커뮤니티 기여를 촉진합니다. 또한, 이는 주로 빠르게 확장되는 방대한 오픈 액세스 가능 LLM 라이브러리로 가는 관문 역할을 합니다. Ollama를 사용하면 이 역동적인 생태계의 일부가 되어 공유된 지식, 커뮤니티 지원 및 개방형 협업에 의해 주도되는 지속적인 혁신의 혜택을 누릴 수 있습니다.

Ollama의 주요 성과는 이러한 정교한 AI 모델을 실행하는 데 필요한 소프트웨어 환경 설정, 종속성 관리 및 복잡한 설정 구성과 관련된 내재적 복잡성을 숨기는 데 있습니다. 유명한 llama.cpp 라이브러리를 비롯한 고도로 최적화된 백엔드 추론 엔진을 능숙하게 활용하여 표준 소비자 하드웨어에서 효율적인 실행을 보장하고 CPU 및 GPU 가속을 모두 지원합니다.

Ollama 대 Llama.cpp 이해하기

Ollama와 llama.cpp는 밀접하게 관련되어 있지만 서로 다른 목적을 수행하므로 그 관계를 명확히 하는 것이 유용합니다.

본질적으로, 기술적으로 llama.cpp를 직접 컴파일하고 명령줄 도구를 실행하여 사용할 수 있지만, 이는 설정, 모델 변환 및 매개변수 관리와 관련하여 훨씬 더 많은 기술적 노력이 필요합니다. Ollama는 이 힘을 접근하기 쉽고 사용하기 쉬운 애플리케이션으로 패키징하여, 특히 초보자에게 로컬 LLM을 훨씬 더 광범위한 사용자에게 실용적으로 만듭니다. llama.cpp를 고성능 엔진 부품으로, Ollama를 운전 준비가 된 완전히 조립된 사용자 친화적인 차량으로 생각하십시오.

시스템에 Ollama 설치하기

Ollama는 접근성을 위해 설계되었으며 macOS, Windows, Linux 및 Docker 환경에 대한 간단한 설치 절차를 제공합니다.

Ollama의 일반적인 시스템 요구 사항:

macOS에 Ollama 설치하기

  1. 다운로드: 공식 Ollama 웹사이트에서 Ollama macOS 애플리케이션 DMG 파일을 직접 받습니다.
  2. 마운트: 다운로드한 .dmg 파일을 더블 클릭하여 엽니다.
  3. 설치: Ollama.app 아이콘을 응용 프로그램 폴더로 드래그합니다.
  4. 실행: 응용 프로그램 폴더에서 Ollama 애플리케이션을 실행합니다. 처음 실행할 때 실행 권한을 부여해야 할 수 있습니다.
  5. 백그라운드 서비스: Ollama는 백그라운드 서비스로 실행되기 시작하며 메뉴 막대에 아이콘으로 표시됩니다. 이 아이콘을 클릭하면 애플리케이션 종료 또는 로그 보기와 같은 옵션이 제공됩니다.

애플리케이션을 실행하면 Ollama 서버 프로세스가 자동으로 시작되고 ollama 명령줄 도구가 시스템 PATH에 추가되어 터미널 애플리케이션(Terminal.app, iTerm2 등)에서 즉시 사용할 수 있게 됩니다. Apple Silicon(M1, M2, M3, M4 칩)이 장착된 Mac에서는 Ollama가 수동 구성 없이 Apple의 Metal 그래픽 API를 통해 내장 GPU를 원활하게 활용합니다.

Windows에 Ollama 설치하기

  1. 다운로드: Ollama 웹사이트에서 OllamaSetup.exe 설치 관리자 파일을 받습니다.
  2. 설치 관리자 실행: 다운로드한 .exe 파일을 더블 클릭하여 설정 마법사를 시작합니다. 최소 Windows 버전 요구 사항(10 22H2+ 또는 11)을 충족하는지 확인합니다.
  3. 프롬프트 따르기: 설치 단계를 진행하고 라이선스 계약에 동의하며 필요한 경우 설치 위치를 선택합니다(일반적으로 기본값이 괜찮습니다).

설치 관리자는 시스템 시작 시 Ollama가 백그라운드 서비스로 자동 실행되도록 구성합니다. 또한 ollama.exe 실행 파일을 시스템 PATH에 추가하여 명령 프롬프트(cmd.exe), PowerShell 또는 최신 Windows 터미널과 같은 표준 Windows 터미널에서 ollama 명령을 사용할 수 있도록 합니다. Ollama API 서버는 자동으로 시작되고 http://localhost:11434에서 수신 대기합니다.

Ollama를 위한 Windows GPU 가속:

Linux에 Ollama 설치하기

대부분의 Linux 배포판에 가장 편리한 방법은 공식 설치 스크립트를 사용하는 것입니다.

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

이 명령은 스크립트를 다운로드하고 sh를 사용하여 실행합니다. 스크립트는 다음 작업을 수행합니다.

Ollama를 위한 수동 Linux 설치 및 Systemd 구성:
스크립트가 실패하거나 수동 제어를 선호하는 경우(예: 다른 위치에 설치, 사용자를 다르게 관리, 특정 ROCm 버전 보장), Ollama GitHub 리포지토리의 자세한 Linux 설치 가이드를 참조하십시오. 일반적인 단계는 다음과 같습니다.

  1. 아키텍처에 맞는 바이너리를 다운로드합니다.
  2. 바이너리를 실행 가능하게 만들고(chmod +x ollama) PATH에 있는 위치(예: /usr/local/bin)로 이동합니다.
  3. (권장) 시스템 사용자/그룹을 생성합니다: sudo useradd -r -s /bin/false -m -d /usr/share/ollama ollamasudo groupadd ollama, 그런 다음 sudo usermod -a -G ollama ollama. 자신의 사용자를 그룹에 추가합니다: sudo usermod -a -G ollama $USER.
  4. 적절한 설정(사용자, 그룹, 실행 파일 경로, 필요한 경우 환경 변수)으로 systemd 서비스 파일(/etc/systemd/system/ollama.service)을 생성합니다. 일반적으로 문서에 샘플 스니펫이 제공됩니다.
  5. systemd 데몬을 다시 로드합니다: sudo systemctl daemon-reload.
  6. 부팅 시 서비스가 시작되도록 활성화합니다: sudo systemctl enable ollama.
  7. 서비스를 즉시 시작합니다: sudo systemctl start ollama. sudo systemctl status ollama로 상태를 확인할 수 있습니다.

Ollama를 위한 필수 Linux GPU 드라이버:
최적의 성능을 위해서는 GPU 드라이버 설치를 강력히 권장합니다.

공식 Ollama Docker 이미지 사용하기

Docker는 플랫폼에 구애받지 않고 Ollama를 격리된 컨테이너에서 실행하는 방법을 제공하며, 특히 복잡한 GPU 설정의 경우 종속성 관리를 단순화합니다.

CPU 전용 Ollama 컨테이너:

docker run -d \
  -v ollama_data:/root/.ollama \
  -p 127.0.0.1:11434:11434 \
  --name my_ollama \
  ollama/ollama

NVIDIA GPU Ollama 컨테이너:

docker run -d \
  --gpus=all \
  -v ollama_data:/root/.ollama \
  -p 127.0.0.1:11434:11434 \
  --name my_ollama_gpu \
  ollama/ollama

이 플래그는 툴킷에서 감지한 모든 호환되는 NVIDIA GPU에 대한 액세스 권한을 컨테이너에 부여합니다. 필요한 경우 특정 GPU를 지정할 수 있습니다(예: --gpus '"device=0,1"').

AMD GPU (ROCm) Ollama 컨테이너:

docker run -d \
  --device /dev/kfd \
  --device /dev/dri \
  -v ollama_data:/root/.ollama \
  -p 127.0.0.1:11434:11434 \
  --name my_ollama_rocm \
  ollama/ollama:rocm

Ollama 컨테이너가 실행되면 docker exec 명령을 사용하여 컨테이너 내부에서 ollama CLI 명령을 실행하여 상호 작용할 수 있습니다.

docker exec -it my_ollama ollama list
docker exec -it my_ollama ollama pull llama3.2
docker exec -it my_ollama ollama run llama3.2

또는 포트를 매핑한 경우(-p), 호스트 머신 또는 http://localhost:11434(또는 매핑한 IP/포트)를 가리키는 다른 애플리케이션에서 직접 Ollama API와 상호 작용할 수 있습니다.

Ollama는 모델을 어디에 저장하나요? Ollama 저장 위치 이해하기

Ollama가 다운로드한 모델을 어디에 보관하는지 아는 것은 디스크 공간 관리 및 백업에 필수적입니다. 기본 위치는 운영 체제 및 설치 방법에 따라 다릅니다.

모델 저장 위치는 구성 섹션에서 설명하는 OLLAMA_MODELS 환경 변수를 사용하여 리디렉션할 수 있습니다. 기본 드라이브의 공간이 부족하거나 대규모 모델을 전용 SSD 또는 더 큰 드라이브에 구성하려는 경우 유용합니다.

Ollama 첫걸음: LLM 실행하기

이제 Ollama가 설치되었고 서버가 활성 상태(데스크톱 앱, systemd 서비스 또는 Docker 컨테이너를 통해 실행 중)이므로 터미ナル에서 간단한 ollama 명령을 사용하여 LLM과 상호 작용을 시작할 수 있습니다.

Ollama 모델 다운로드: pull 명령어

특정 LLM을 실행하기 전에 먼저 가중치 및 구성 파일을 다운로드해야 합니다. Ollama는 인기 있는 공개 모델의 선별된 라이브러리를 제공하며 ollama pull 명령을 통해 쉽게 액세스할 수 있습니다. 사용 가능한 모델은 Ollama 웹사이트의 라이브러리 페이지에서 찾아볼 수 있습니다.

# 예제 1: 최신 Llama 3.2 8B Instruct 모델 가져오기
# 종종 'latest' 또는 단순히 기본 이름으로 태그 지정됨
ollama pull llama3.2

# 예제 2: Mistral의 특정 버전 가져오기 (70억 매개변수, 기본 모델)
ollama pull mistral:7b

# 예제 3: Google의 Gemma 3 4B 모델 가져오기
ollama pull gemma3

# 예제 4: Microsoft의 더 작은 Phi-4 Mini 모델 가져오기 (효율적)
ollama pull phi4-mini

# 예제 5: Vision 모델 가져오기 (이미지 처리 가능)
ollama pull llava

Ollama 모델 태그 이해하기:
Ollama 라이브러리의 모델은 모델_패밀리_이름:태그 명명 규칙을 사용합니다. 태그는 다음과 같은 변형을 지정합니다.

pull 명령은 필요한 파일(수 기가바이트가 될 수 있음)을 지정된 Ollama 모델 디렉토리에 다운로드합니다. 특정 모델:태그 조합을 한 번만 가져오면 됩니다. Ollama는 모델을 업데이트할 수도 있습니다. 기존 모델에서 pull을 다시 실행하면 변경된 계층(차이점)만 다운로드되므로 업데이트가 효율적입니다.

Ollama 모델과 대화형 채팅: run 명령어

다운로드한 모델과 대화하는 가장 직접적인 방법은 ollama run 명령을 사용하는 것입니다.

ollama run llama3.2

지정된 모델(llama3.2:latest의 경우)이 아직 다운로드되지 않은 경우 ollama run은 편리하게 먼저 ollama pull을 트리거합니다. 모델이 준비되고 메모리에 로드되면(특히 대규모 모델의 경우 몇 초가 걸릴 수 있음) 대화형 프롬프트가 표시됩니다.

>>> 메시지를 보내세요 (도움말은 /?)

이제 질문이나 지침을 입력하고 Enter 키를 누른 다음 AI가 응답을 생성할 때까지 기다리면 됩니다. 출력은 일반적으로 토큰 단위로 스트리밍되어 응답성이 좋은 느낌을 줍니다.

>>> 양자 얽힘 개념을 간단한 용어로 설명해 주세요.
네, 마법처럼 서로 연결된 두 개의 특별한 동전이 있다고 상상해 보세요. 동전 A와 동전 B라고 부르겠습니다. 보기 전에는 어느 동전도 앞면이나 뒷면이 아닙니다. 두 가능성이 모호하게 섞인 상태입니다.

이제 동전 A를 친구에게 주고 동전 B를 가지고 수 광년 떨어진 곳으로 여행합니다. 자신의 동전 B를 보고 예를 들어 앞면이라는 것을 알게 된 순간, 친구의 동전 A가 뒷면이라는 것을 *확실히* 알게 됩니다. 그리고 뒷면을 보았다면 친구의 것이 앞면이라는 것을 알게 될 것입니다.

이것이 양자 얽힘과 비슷합니다! 두 입자(우리 동전처럼)가 연결되고 그 속성(앞면/뒷면처럼)은 아무리 멀리 떨어져 있어도 상관관계를 유지합니다. 하나를 측정하면 다른 하나의 속성에 즉시 영향을 미치며, 빛이 그 사이를 이동하는 것보다 빠릅니다. 양자 물리학의 가장 이상하고 멋진 부분 중 하나입니다!

>>> 메시지를 보내세요 (도움말은 /?)

Ollama 대화 모드 내 유용한 명령어:
ollama run을 통해 모델과 상호 작용하는 동안 /로 시작하는 특수 명령을 사용할 수 있습니다.

로컬 Ollama 모델 관리하기

모델을 다운로드하고 생성함에 따라 관리 방법이 필요합니다.

다운로드한 Ollama 모델 목록 보기: 현재 로컬에 저장된 모든 모델을 보려면 다음을 사용합니다.

ollama list

이 명령은 모델 이름(NAME), 고유 ID, 디스크 크기(SIZE) 및 수정 시간(MODIFIED)을 보여주는 테이블을 출력합니다.

상세 Ollama 모델 정보 보기: 특정 모델의 세부 정보(매개변수, 시스템 프롬프트, 템플릿 등)를 검사하려면 다음을 사용합니다.

ollama show llama3.2:8b-instruct-q5_K_M

그러면 해당 특정 모델 태그와 관련된 Modelfile 내용, 매개변수 설정, 템플릿 세부 정보 및 기타 메타데이터가 출력됩니다.

Ollama 모델 제거하기: 모델이 더 이상 필요 없고 디스크 공간을 확보하려면 다음을 사용합니다.

ollama rm mistral:7b

이렇게 하면 지정된 모델:태그 조합이 스토리지에서 영구적으로 삭제됩니다. 주의해서 사용하십시오!

Ollama 모델 복사/이름 바꾸기: 기존 모델의 복사본을 만들거나 사용자 지정을 위한 시작점으로 사용하거나 단순히 다른 이름을 지정하려면 다음을 사용합니다.

ollama cp llama3.2 my-custom-llama3.2-setup

이렇게 하면 원래 llama3.2를 기반으로 my-custom-llama3.2-setup이라는 새 모델 항목이 생성됩니다.

현재 로드된 Ollama 모델 확인하기: RAM 또는 VRAM에 현재 로드되어 즉시 추론할 준비가 된 모델을 확인하려면 다음을 사용합니다.

ollama ps

이 명령은 모델 이름, ID, 크기, 사용된 프로세서(CPU/GPU) 및 마지막으로 액세스한 시점을 보여줍니다. 모델은 일반적으로 사용 후 짧은 시간(예: 5분) 동안 로드된 상태를 유지하여 후속 요청 속도를 높인 다음 리소스를 확보하기 위해 자동으로 언로드됩니다.

최적의 Ollama 모델은 무엇인가요? 올바른 LLM 선택하기

이것은 자주 묻는 중요한 질문이지만 답은 미묘합니다. 모든 사람이나 모든 작업에 대해 단일 "최고" Ollama 모델은 없습니다. 최적의 선택은 여러 요인에 따라 달라집니다.

초보자를 위한 권장 사항(2024년 후반):

가장 좋은 접근 방식은 경험적입니다: Ollama 라이브러리에서 모델 설명을 읽고 하드웨어를 고려하여 ollama pull을 사용하여 몇 가지 유력한 후보를 다운로드하고 ollama run을 사용하여 일반적인 프롬프트로 테스트한 다음 자신에게 가장 적합한 성능을 보이는 것을 확인하십시오. 공간을 절약하기 위해 필요에 맞지 않는 모델을 ollama rm하는 것을 주저하지 마십시오.

Ollama 모델 개념 이해하기

Ollama를 효과적으로 사용하고 사용자 지정하려면 몇 가지 핵심 LLM 개념을 이해하는 것이 도움이 됩니다.

Ollama 모델 매개변수 설명

LLM에는 출력을 제어하기 위해 조정할 수 있는 다양한 내부 설정 또는 매개변수가 있습니다. Ollama를 사용하면 이들 중 많은 것을 제어할 수 있습니다.

이들은 ollama run에서 /set parameter를 사용하여 일시적으로, Modelfile에서 PARAMETER 지침을 사용하여 영구적으로 또는 Ollama API의 options 개체를 통해 요청별로 설정할 수 있습니다.

Ollama 컨텍스트 길이: num_ctx 매개변수

컨텍스트 길이는 종종 컨텍스트 창 또는 Ollama 및 llama.cpp 설정의 num_ctx라고 하며 LLM의 가장 중요한 아키텍처 제한 중 하나입니다.

일반적인 작업에 맞는 num_ctx 값을 선택하십시오. 간단한 Q&A의 경우 더 작은 창(예: 4096)으로 충분할 수 있습니다. 긴 채팅이나 대규모 문서 요약의 경우 하드웨어와 모델이 합리적으로 지원할 수 있는 가장 큰 컨텍스트 창(예: 8192, 16384 또는 사용 가능한 경우 그 이상)의 이점을 누릴 수 있습니다.

고급 Ollama: API 및 사용자 지정 활용

ollama CLI는 쉬운 직접 상호 작용을 제공하지만, Ollama를 워크플로 및 애플리케이션에 통합하기 위한 진정한 잠재력은 내장된 REST API 및 Modelfile 사용자 지정 시스템에 있습니다.

Ollama API와 프로그래밍 방식으로 상호 작용하기

기본적으로 Ollama 서버 프로세스(데스크톱 앱, systemd 또는 Docker를 통해 실행 중이든)는 로컬 머신의 포트 11434(http://localhost:11434 또는 http://127.0.0.1:11434)에서 들어오는 HTTP 요청을 수신합니다. 이 API를 사용하면 동일한 머신(또는 구성된 경우 네트워크의 다른 머신)에서 실행 중인 다른 프로그램, 스크립트 또는 웹 인터페이스가 Ollama 모델과 프로그래밍 방식으로 상호 작용할 수 있습니다.

주요 Ollama API 엔드포인트:

API 요청/응답 형식:
대부분의 POSTDELETE 요청은 요청 본문에 JSON 페이로드를 예상합니다. 응답은 일반적으로 JSON 개체로 반환됩니다. generatechat 엔드포인트의 경우 응답 형식을 제어할 수 있습니다.

curl을 사용한 API 상호 작용 예:

1. 간단한 생성 요청 (비스트리밍):

curl http://localhost:11434/api/generate -d '{
  "model": "phi4-mini",
  "prompt": "팩토리얼을 계산하는 짧은 Python 함수를 작성하세요:",
  "stream": false,
  "options": {
    "temperature": 0.3,
    "num_predict": 80
  }
}'

2. 대화형 채팅 요청 (스트리밍):

# 참고: 스트리밍 출력은 여러 JSON 줄로 표시됩니다.
curl http://localhost:11434/api/chat -d '{
  "model": "llama3.2:8b-instruct-q5_K_M",
  "messages": [
    { "role": "system", "content": "당신은 지식이 풍부한 역사학자입니다." },
    { "role": "user", "content": "제1차 세계 대전의 주요 원인은 무엇이었습니까?" }
  ],
  "stream": true,
  "options": {
    "num_ctx": 4096
  }
}'

3. 임베딩 생성 요청:

curl http://localhost:11434/api/embeddings -d '{
  "model": "mxbai-embed-large",  # 또는 다른 적절한 임베딩 모델
  "prompt": "Ollama는 로컬에서 LLM을 쉽게 실행할 수 있게 합니다."
}'

이 다재다능한 API는 웹 UI, 개발 도구, 백엔드 서비스, 자동화 스크립트 등 로컬 Ollama 인스턴스를 기반으로 하는 수많은 커뮤니티 통합의 중추를 형성합니다.

Ollama OpenAI 호환성 API 활용하기

OpenAI의 API 표준이 널리 채택되고 있음을 인식하여 Ollama는 사려 깊게 실험적인 호환성 계층을 포함합니다. 이를 통해 OpenAI 서비스용으로 설계된 많은 도구, 라이브러리 및 애플리케이션이 최소한의, 종종 사소한 수정만으로 로컬 Ollama 인스턴스와 작동할 수 있습니다.

작동 방식:
Ollama 서버는 /v1/ 경로(예: http://localhost:11434/v1/) 아래에 엔드포인트를 노출하며, 이는 주요 OpenAI API 엔드포인트의 구조와 예상되는 요청/응답 형식을 미러링합니다.

주요 호환 엔드포인트:

Ollama와 함께 OpenAI 클라이언트 라이브러리 사용하기:
주요 이점은 클라이언트를 초기화할 때 두 개의 구성 매개변수만 변경하여 표준 OpenAI 클라이언트 라이브러리(openai-python, openai-node 등)를 사용할 수 있다는 것입니다.

  1. base_url (또는 api_base): 로컬 Ollama v1 엔드포인트로 설정합니다: http://localhost:11434/v1/.
  2. api_key: 비어 있지 않은 문자열을 제공합니다. Ollama의 /v1/ 엔드포인트는 실제로 인증을 수행하지 않으며 키 값을 무시하지만 대부분의 OpenAI 클라이언트 라이브러리에는 매개변수가 있어야 합니다. 일반적인 관행은 문자열 "ollama" 또는 "nokey"를 사용하는 것입니다.

openai-python을 사용한 Python 예제:

# openai 라이브러리가 설치되어 있는지 확인하십시오: pip install openai
from openai import OpenAI
import os

# Ollama 엔드포인트 및 더미 API 키 정의
OLLAMA_BASE_URL = "http://localhost:11434/v1"
OLLAMA_API_KEY = "ollama" # 자리 표시자, Ollama에서 값 무시됨

# 사용하려는 로컬 Ollama 모델 지정
OLLAMA_MODEL = "llama3.2"

try:
    # OpenAI 클라이언트를 초기화하고 Ollama 서버를 가리키도록 함
    client = OpenAI(
        base_url=OLLAMA_BASE_URL,
        api_key=OLLAMA_API_KEY,
    )

    print(f"Ollama 모델에 요청 보내는 중: {OLLAMA_MODEL} (OpenAI 호환성 계층 경유)...")

    # 표준 채팅 완성 요청 생성
    chat_completion = client.chat.completions.create(
        model=OLLAMA_MODEL, # 로컬 Ollama 모델 이름 사용
        messages=[
            {"role": "system", "content": "당신은 도움이 되는 어시스턴트입니다."},
            {"role": "user", "content": "Ollama와 llama.cpp의 차이점을 설명해주세요."}
        ],
        temperature=0.7,
        max_tokens=250, # 참고: 'max_tokens'는 Ollama의 'num_predict'와 대략 일치
        stream=False # 스트리밍 응답의 경우 True로 설정
    )

    # 응답 처리
    if chat_completion.choices:
        response_content = chat_completion.choices[0].message.content
        print("\nOllama 응답:")
        print(response_content)
        print("\n사용 통계:")
        print(f"  프롬프트 토큰: {chat_completion.usage.prompt_tokens}")
        print(f"  완성 토큰: {chat_completion.usage.completion_tokens}")
        print(f"  총 토큰: {chat_completion.usage.total_tokens}")
    else:
        print("Ollama로부터 응답 선택지를 받지 못했습니다.")

except Exception as e:
    print(f"\n오류가 발생했습니다:")
    print(f"  오류 유형: {type(e).__name__}")
    print(f"  오류 세부 정보: {e}")
    print(f"\nOllama 서버가 실행 중이고 {OLLAMA_BASE_URL}에서 액세스할 수 있는지 확인하십시오.")
    print(f"또한 모델 '{OLLAMA_MODEL}'이 로컬에서 사용 가능한지('ollama list') 확인하십시오.")

이 호환성은 기존 OpenAI 기반 프로젝트를 Ollama를 통해 로컬 모델을 사용하도록 마이그레이션하거나 클라우드와 로컬 백엔드 간에 유연하게 전환할 수 있는 새 애플리케이션을 구축하는 것을 크게 단순화합니다. 모든 모호한 OpenAI 기능이 완벽하게 미러링되지는 않을 수 있지만 핵심 채팅, 임베딩 및 모델 목록 기능은 잘 지원됩니다.

Modelfile을 이용한 심층적인 Ollama 사용자 지정

Modelfile은 Ollama 사용자 지정 기능의 초석입니다. 이는 Ollama 모델이 어떻게 구성되거나 수정되어야 하는지를 정확하게 정의하는 청사진 또는 레시피 역할을 합니다. 이러한 간단한 텍스트 파일을 생성하고 편집함으로써 모델 동작, 매개변수 및 구조를 세밀하게 제어할 수 있습니다.

핵심 Ollama Modelfile 지침:

TEMPLATE """{{ if .System }}<|im_start|>system
{{ .System }}<|im_end|>{{ end }}{{ range .Messages }}
<|im_start|>{{ .Role }}
{{ .Content }}<|im_end|>{{ end }}
<|im_start|>assistant
"""

템플릿을 올바르게 설정하는 것은 모델이 지침을 따르거나 자연스럽게 대화하도록 만드는 데 필수적입니다. 모델의 기본 템플릿은 ollama show --modelfile <모델_이름>을 사용하여 볼 수 있습니다.

Modelfile에서 Ollama 모델 빌드하기:
Modelfile을 생성한 후(예: MyCustomModel.modelfile로 저장), ollama create 명령을 사용하여 해당 Ollama 모델을 빌드합니다.

ollama create my-new-model-name -f MyCustomModel.modelfile

Ollama는 지침을 처리하고 잠재적으로 레이어를 결합하고 어댑터를 적용하고 매개변수를 설정하고 새 모델(my-new-model-name)을 로컬 라이브러리에 등록합니다. 그런 다음 다른 모델처럼 실행할 수 있습니다: ollama run my-new-model-name.

외부 모델을 Ollama로 가져오기 (GGUF, Safetensors)

Ollama의 Modelfile 시스템은 다른 소스(Hugging Face, 독립 연구원 등)에서 얻은 표준 형식으로 배포된 모델을 원활하게 사용하는 방법을 제공합니다.

GGUF 모델을 Ollama로 가져오기: GGUF는 llama.cpp 및 유사한 추론 엔진을 위해 특별히 설계된 인기 있는 형식입니다. 모델 가중치(종종 사전 양자화됨), 토크나이저 정보 및 메타데이터를 단일 파일로 패키징합니다. 이것은 종종 가져오기가 가장 쉬운 형식입니다.

  1. .gguf 파일을 다운로드합니다 (예: zephyr-7b-beta.Q5_K_M.gguf).
  2. 최소한의 Modelfile을 생성합니다 (예: ZephyrImport.modelfile):
# ZephyrImport.modelfile
FROM ./zephyr-7b-beta.Q5_K_M.gguf

# 중요: 이 모델에 필요한 올바른 프롬프트 템플릿을 추가하십시오!
# (모델에 필요한 템플릿 형식을 찾아보십시오)
TEMPLATE """<|system|>
{{ .System }}</s>
<|user|>
{{ .Prompt }}</s>
<|assistant|>
{{ .Response }}</s>
"""
PARAMETER num_ctx 4096 # 합리적인 기본 컨텍스트 설정
SYSTEM "당신은 친절한 챗봇입니다." # 선택적 기본 시스템 프롬프트
  1. Ollama 모델을 빌드합니다: ollama create my-zephyr-gguf -f ZephyrImport.modelfile.

Safetensors 모델 (전체 가중치)을 Ollama로 가져오기: Safetensors는 모델 텐서를 저장하기 위한 안전하고 빠른 형식입니다. 이 형식으로 모델의 완전한 가중치 및 구성 파일 세트가 있는 경우:

  1. 필요한 모든 파일 (*.safetensors 가중치 파일, config.json, tokenizer.json, special_tokens_map.json, tokenizer_config.json 등)이 단일 디렉토리 내에 있는지 확인합니다 (예: /data/models/Mistral-7B-v0.1-full/).
  2. 이 디렉토리를 참조하는 Modelfile을 생성합니다:
# MistralImport.modelfile
FROM /data/models/Mistral-7B-v0.1-full/

# 필요한 TEMPLATE, PARAMETER, SYSTEM 지침 추가
TEMPLATE """[INST] {{ if .System }}{{ .System }} \n{{ end }}{{ .Prompt }} [/INST]
{{ .Response }}"""
PARAMETER num_ctx 4096
PARAMETER temperature 0.7
  1. 모델을 빌드합니다: ollama create my-mistral-safetensors -f MistralImport.modelfile. Ollama는 호환되는 아키텍처 로드를 시도합니다. 모델이 양자화되지 않은 경우(예: FP16), 선택적으로 생성 중에 양자화할 수 있습니다 (아래 참조).

Ollama Modelfile을 통해 Safetensors LoRA 어댑터 적용하기:

  1. 먼저 LoRA 어댑터가 훈련된 정확한 기본 Ollama 모델이 있는지 확인합니다. 필요한 경우 가져옵니다 (예: ollama pull llama3.2:8b).
  2. LoRA 어댑터 파일 (예: adapter_model.safetensors, adapter_config.json)을 자체 디렉토리에 배치합니다 (예: /data/adapters/my_llama3_lora/).
  3. 기본과 어댑터를 모두 지정하는 Modelfile을 생성합니다:
# ApplyLora.modelfile
FROM llama3.2:8b # 어댑터의 기본과 일치해야 함!

ADAPTER /data/adapters/my_llama3_lora/

# LoRA가 필요한 경우 매개변수 또는 템플릿 조정
PARAMETER temperature 0.5
SYSTEM "이제 LoRA가 가르쳐 준 스타일로 응답합니다."
  1. 적용된 모델을 빌드합니다: ollama create llama3-with-my-lora -f ApplyLora.modelfile.

Ollama로 모델 양자화하기

양자화는 모델 가중치의 수치 정밀도를 줄이는 프로세스입니다 (예: 16비트 부동 소수점 숫자를 4비트 정수로 변환). 이렇게 하면 모델의 파일 크기와 메모리 사용량(RAM/VRAM 사용량)이 크게 줄어들고 추론 속도가 빨라져 더 크고 성능이 좋은 모델을 소비자 하드웨어에서 실행할 수 있습니다. 절충안은 일반적으로 작고 종종 감지할 수 없는 출력 품질 저하입니다.

Modelfile의 FROM 지침이 양자화되지 않았거나 더 높은 정밀도의 모델 가중치(일반적으로 FP16 또는 FP32 Safetensors)를 가리키는 경우 Ollama는 모델 생성 프로세스 중에 양자화를 수행할 수 있습니다.

ollama create를 사용하여 양자화하는 방법:

  1. 양자화되지 않은 모델 가중치가 포함된 디렉토리를 가리키는 Modelfile을 생성합니다.
# QuantizeMe.modelfile
FROM /path/to/my/unquantized_fp16_model/
# 필요에 따라 TEMPLATE, PARAMETER, SYSTEM 추가
  1. -q(또는 --quantize) 플래그 다음에 원하는 양자화 수준 식별자를 붙여 ollama create 명령을 실행합니다.
# Q4_K_M으로 양자화 (크기/품질의 인기 있는 균형)
ollama create my-quantized-model-q4km -f QuantizeMe.modelfile -q q4_K_M

# Q5_K_M으로 양자화 (약간 더 크고 잠재적으로 더 나은 품질)
ollama create my-quantized-model-q5km -f QuantizeMe.modelfile -q q5_K_M

# Q8_0으로 양자화 (양자화 중 가장 큰 일반적인 크기, 양자화 중 최고 품질)
ollama create my-quantized-model-q8 -f QuantizeMe.modelfile -q q8_0

# Q3_K_S로 양자화 (매우 작고 품질 손실이 더 큼)
ollama create my-quantized-model-q3ks -f QuantizeMe.modelfile -q q3_K_S

Ollama는 llama.cpp의 양자화 루틴을 사용하여 변환을 수행하고 새로 양자화된 모델을 지정된 이름으로 저장합니다.

일반적인 양자화 수준:

올바른 양자화 수준을 선택하는 것은 하드웨어 제약 조건과 잠재적인 품질 저하에 대한 허용 범위에 따라 다릅니다. 종종 q4_K_M 또는 q5_K_M을 먼저 시도해 볼 가치가 있습니다.

사용자 지정 Ollama 모델 공유하기

Modelfile을 사용하여 고유한 모델 변형을 만든 경우(예: 특정 LoRA 적용, 창의적인 시스템 프롬프트 및 템플릿 설정 또는 매개변수 미세 조정) 공식 Ollama 모델 레지스트리 웹사이트를 통해 더 넓은 Ollama 커뮤니티와 창작물을 공유할 수 있습니다.

Ollama 모델 공유 단계:

  1. Ollama 계정 만들기: Ollama 웹사이트(ollama.com)에서 무료 계정에 가입합니다. 선택한 사용자 이름이 공유 모델의 네임스페이스가 됩니다.
  2. 로컬 Ollama 연결: 로컬 Ollama 설치를 온라인 계정과 연결해야 합니다. 여기에는 로컬 머신의 Ollama 공개 키를 웹사이트의 계정 설정에 추가하는 작업이 포함됩니다. 웹사이트에서는 운영 체제에 따라 로컬 공개 키 파일(id_ed25519.pub)을 찾는 방법에 대한 구체적인 지침을 제공합니다.
  3. 모델 이름 올바르게 지정: 공유 모델은 Ollama 사용자 이름으로 네임스페이스를 지정해야 하며 사용자 이름/모델 이름 형식을 따라야 합니다. 로컬 사용자 지정 모델의 이름이 다른 경우(예: mario), 먼저 ollama cp를 사용하여 올바른 네임스페이스 이름으로 복사해야 합니다.
# 사용자 이름이 'luigi'이고 로컬 모델이 'mario'라고 가정
ollama cp mario luigi/mario
  1. 레지스트리에 모델 푸시: 모델이 로컬에서 올바르게 명명되고 키가 연결되면 ollama push 명령을 사용합니다.
ollama push luigi/mario

Ollama는 필요한 모델 레이어와 메타데이터를 레지스트리에 업로드합니다.

푸시가 완료되면 전 세계 다른 Ollama 사용자는 네임스페이스 이름을 사용하여 공유 모델을 쉽게 다운로드하고 실행할 수 있습니다.

ollama run luigi/mario

이 공유 메커니즘은 협업을 촉진하고 커뮤니티가 특수하거나 창의적으로 사용자 지정된 모델로부터 혜택을 받을 수 있도록 합니다.

GPU 가속으로 Ollama 성능 최적화하기

Ollama는 모델을 순전히 컴퓨터의 CPU에서 실행할 수 있지만, 호환되는 그래픽 처리 장치(GPU)를 활용하면 모델이 텍스트를 생성하는 속도(추론 속도)가 크게 향상됩니다. Ollama는 가능한 경우 지원되는 GPU를 자동으로 감지하고 활용하도록 설계되었습니다.

NVIDIA GPU를 사용하는 Ollama: Ollama는 NVIDIA GPU에 대한 뛰어난 지원을 제공하며 다음이 필요합니다.

AMD Radeon GPU를 사용하는 Ollama: 최신 AMD GPU 지원은 Windows 및 Linux 모두에서 사용할 수 있습니다.

Apple Silicon을 사용하는 Ollama (macOS): M1, M2, M3 또는 M4 시리즈 칩이 장착된 Mac에서는 Ollama가 Apple의 Metal 그래픽 API를 통해 내장 GPU 기능을 자동으로 활용합니다. 일반적으로 추가 드라이버 설치나 구성이 필요하지 않습니다. GPU 가속은 즉시 작동합니다.

Ollama GPU 사용 확인하기:
Ollama가 실제로 GPU를 사용하고 있는지 확인하는 가장 쉬운 방법은 모델이 로드된 상태에서 ollama ps 명령을 실행하는 것입니다(예: 다른 터미널에서 ollama run <모델>을 시작한 직후 또는 API 요청이 처리되는 동안). 출력에서 PROCESSOR 열을 확인합니다.

다중 GPU Ollama 설정에서 특정 GPU 선택하기:
시스템에 여러 개의 호환되는 GPU가 있는 경우, Ollama 서버 프로세스를 시작하기 전에 환경 변수를 설정하여 Ollama(및 기본 llama.cpp)에 사용할 특정 장치를 지시할 수 있습니다.

잘못된 장치 ID(예: export CUDA_VISIBLE_DEVICES=-1)를 설정하는 것은 의도적으로 Ollama가 CPU만 사용하도록 강제하는 방법으로 종종 사용되며 디버깅에 유용할 수 있습니다. 이러한 환경 변수를 설정한 후 변경 사항을 적용하려면 Ollama 서버/앱을 다시 시작해야 합니다.

Ollama 환경 구성하기

기본 설정 외에도 Ollama의 동작은 다양한 환경 변수를 사용하여 미세 조정할 수 있습니다. 이를 통해 네트워크 설정, 저장 위치, 로깅 수준 등을 사용자 지정할 수 있습니다.

구성을 위한 주요 Ollama 환경 변수

Ollama 환경 변수 설정 방법

이러한 변수를 설정하는 올바른 방법은 Ollama를 설치하고 실행한 방식에 따라 다릅니다.

macOS의 Ollama (앱 사용): macOS의 GUI 애플리케이션 환경 변수는 launchctl을 사용하여 설정하는 것이 가장 좋습니다. 터미널을 열고 다음을 사용합니다.

launchctl setenv OLLAMA_MODELS "/Volumes/ExternalSSD/OllamaStorage"
launchctl setenv OLLAMA_HOST "0.0.0.0:11434"
# 다른 변수에 대해 반복

변수를 설정한 후 변경 사항을 적용하려면 메뉴 모음 아이콘에서 Ollama 애플리케이션을 종료하고 다시 시작해야 합니다.

Linux의 Ollama (Systemd 서비스 사용): 권장되는 방법은 서비스에 대한 재정의 파일을 만드는 것입니다.

  1. sudo systemctl edit ollama.service를 실행합니다. 빈 텍스트 편집기가 열립니다.
  2. 필요에 따라 변수와 값을 수정하여 다음 줄을 추가합니다.
[Service]
Environment="OLLAMA_MODELS=/path/to/custom/model/dir"
Environment="OLLAMA_HOST=0.0.0.0:11434"
Environment="OLLAMA_DEBUG=1"
  1. 편집기를 저장하고 닫습니다.
  2. 변경 사항을 적용합니다: sudo systemctl daemon-reload
  3. Ollama 서비스를 다시 시작합니다: sudo systemctl restart ollama

Windows의 Ollama: 내장된 환경 변수 편집기를 사용합니다.

  1. 시작 메뉴에서 "시스템 환경 변수 편집"을 검색하여 엽니다.
  2. "환경 변수..." 버튼을 클릭합니다.
  3. 특정 사용자("사용자 변수") 또는 모든 사용자("시스템 변수")에 대해 변수를 설정할 수 있습니다. 시스템 변수는 일반적으로 관리자 권한이 필요합니다.
  4. 원하는 섹션 아래에서 "새로 만들기..."를 클릭합니다.
  5. 변수 이름(예: OLLAMA_MODELS)과 변수 값(예: D:\OllamaData)을 입력합니다.
  6. 열려 있는 모든 대화 상자에서 확인을 클릭합니다.
  7. 중요하게도 Ollama 백그라운드 프로세스를 다시 시작해야 합니다. 작업 관리자(Ctrl+Shift+Esc)를 열고 "서비스" 탭으로 이동하여 "Ollama"를 찾고 마우스 오른쪽 버튼을 클릭한 다음 "다시 시작"을 선택합니다. 또는 컴퓨터를 재부팅합니다.

Docker를 통한 Ollama: 각 변수에 대해 -e 플래그를 사용하여 docker run 명령에서 직접 환경 변수를 전달합니다.

docker run -d \
  --gpus=all \
  -v ollama_data:/root/.ollama \
  -p 127.0.0.1:11434:11434 \
  -e OLLAMA_HOST="0.0.0.0:11434" \
  -e OLLAMA_DEBUG="1" \
  -e OLLAMA_KEEP_ALIVE="10m" \
  --name my_ollama_configured \
  ollama/ollama

터미널에서 수동 ollama serve를 통한 Ollama: 명령 앞에 동일한 줄에 변수 할당을 접두사로 붙입니다.

OLLAMA_DEBUG=1 OLLAMA_HOST=0.0.0.0:11434 OLLAMA_MODELS=/data/ollama ollama serve

이러한 변수는 해당 특정 서버 인스턴스에만 적용됩니다.

설정에 적합한 방법을 선택하고 변경 사항을 적용한 후 Ollama 서버 프로세스를 다시 시작해야 합니다.

일반적인 Ollama 문제 해결하기

Ollama는 단순성에 중점을 두지만 가끔 문제가 발생할 수 있습니다. 다음은 자주 발생하는 문제를 진단하고 해결하는 방법입니다.

Ollama 로그 확인하기

주요 진단 도구는 Ollama 서버 로그 파일입니다. 시작 정보, 모델 로드 시도, GPU 감지 결과, API 요청 및 가장 중요한 상세 오류 메시지가 기록됩니다.

기본 로그 파일 위치:

팁: 더 자세한 문제 해결을 위해 Ollama 서버를 시작하기 전에 항상 OLLAMA_DEBUG=1 환경 변수를 설정하여 디버그 로깅을 활성화한 다음 로그를 다시 확인하십시오.

Ollama 오류 수정: listen tcp 127.0.0.1:11434: bind: address already in use

이 특정 오류 메시지는 신규 사용자가 접하는 가장 일반적인 문제 중 하나입니다. Ollama가 필요로 하는 네트워크 포트(기본값 11434)를 다른 프로세스가 이미 점유하고 있어 Ollama가 API 서버를 시작할 수 없음을 의미합니다.

Ollama GPU 감지 및 사용 문제 해결하기

ollama psgpu 대신 cpu를 표시하거나 로그에 특정 GPU 관련 오류(예: CUDA error, ROCm error)가 발생하는 경우 다음 단계를 따르십시오.

기타 일반적인 Ollama 문제 해결하기

이러한 문제 해결 단계를 모두 시도하고 디버그 로그를 확인했지만 성공하지 못한 경우 Ollama 커뮤니티는 훌륭한 리소스입니다. 문제에 대한 명확한 설명, OS, Ollama 버전, 하드웨어(CPU/GPU/RAM), 사용 중인 특정 모델, 실행한 명령 및 중요하게는 디버그 로그의 관련 섹션을 포함하여 준비합니다. Ollama Discord에 질문을 게시하거나 Ollama GitHub 리포지토리에 잘 문서화된 문제를 제출하십시오.

Ollama를 완전히 제거하는 방법

시스템에서 Ollama를 제거해야 하는 경우 프로세스는 초기 설치 방법에 따라 다릅니다. 일반적으로 애플리케이션/바이너리, 백그라운드 서비스(해당되는 경우) 및 저장된 모델/구성 파일을 제거하는 작업이 포함됩니다.

macOS에서 Ollama 제거하기 (.app 통해 설치):

  1. Ollama 종료: Ollama 메뉴 모음 아이콘을 클릭하고 "Ollama 종료"를 선택합니다.
  2. 애플리케이션 제거: /Applications 폴더에서 Ollama.app을 휴지통/Bin으로 드래그합니다.
  3. 데이터 및 구성 제거: 터미널을 열고 rm -rf ~/.ollama를 실행합니다. 경고: 다운로드한 모든 모델과 구성이 영구적으로 삭제됩니다. 실행하기 전에 명령을 다시 확인하십시오.
  4. (선택 사항) 환경 변수 설정 해제: launchctl setenv를 사용하여 수동으로 변수를 설정한 경우 설정 해제할 수 있습니다: launchctl unsetenv OLLAMA_HOST, launchctl unsetenv OLLAMA_MODELS 등.

Windows에서 Ollama 제거하기 (.exe 통해 설치):

  1. Windows 제거 프로그램 사용: "설정" > "앱" > "설치된 앱"으로 이동합니다. 목록에서 "Ollama"를 찾아 옆에 있는 세 개의 점(...)을 클릭하고 "제거"를 선택합니다. 제거 프롬프트를 따릅니다.
  2. 데이터 및 구성 제거: 제거 프로그램이 완료된 후 Ollama 데이터 디렉토리를 수동으로 삭제합니다. 파일 탐색기를 열고 주소 표시줄에 %USERPROFILE%\.ollama를 입력하고 Enter 키를 누른 다음 .ollama 폴더 전체를 삭제합니다. 경고: 모든 모델이 삭제됩니다.
  3. (선택 사항) 환경 변수 제거: 시스템 속성을 통해 수동으로 OLLAMA_HOST, OLLAMA_MODELS 등을 추가한 경우 해당 위치("시스템 환경 변수 편집")로 돌아가서 삭제합니다.

Linux에서 Ollama 제거하기 (스크립트 또는 수동 바이너리 통해 설치):

  1. 서비스 중지: sudo systemctl stop ollama
  2. 서비스 비활성화: sudo systemctl disable ollama
  3. 바이너리 제거: sudo rm /usr/local/bin/ollama (또는 설치한 경로).
  4. 서비스 파일 제거: sudo rm /etc/systemd/system/ollama.service
  5. Systemd 다시 로드: sudo systemctl daemon-reload
  6. (선택 사항) 사용자/그룹 제거: ollama 사용자/그룹이 생성된 경우: sudo userdel ollama, sudo groupdel ollama.
  7. 데이터 및 구성 제거: 모델 저장 디렉토리를 삭제합니다. 저장 위치에 따라 다릅니다.

Docker를 통한 Ollama 제거:

  1. 컨테이너 중지: docker stop my_ollama (컨테이너 이름 사용).
  2. 컨테이너 제거: docker rm my_ollama.
  3. 이미지 제거: docker rmi ollama/ollama (사용한 경우 ollama/ollama:rocm도 제거).
  4. (선택 사항, 파괴적) 볼륨 제거: Docker 볼륨에 저장된 다운로드한 모든 모델을 삭제하려면 docker volume rm ollama_data를 실행합니다 (생성한 볼륨 이름 사용). 경고: 되돌릴 수 없습니다.

결론: Ollama와 함께 로컬 AI의 힘을 받아들이기

Ollama는 현대 대규모 언어 모델의 막대한 힘에 대한 접근을 민주화하는 데 중추적인 도구로 서 있습니다. 설정, 구성 및 실행의 복잡성을 우아하게 추상화함으로써 숙련된 개발자 및 연구원에서 호기심 많은 애호가에 이르기까지 다양한 사용자가 자신의 하드웨어에서 직접 정교한 AI를 실행할 수 있도록 지원합니다. 이점은 분명합니다. 비교할 수 없는 개인 정보 보호, 반복되는 API 비용으로부터의 자유, 안정적인 오프라인 작동, 직관적인 Modelfile 시스템과 강력한 API를 사용하여 모델을 심층적으로 사용자 지정하고 실험할 수 있는 자유로운 능력입니다.

목표가 차세대 AI 기반 애플리케이션을 구축하는 것이든, 데이터 주권을 유지하면서 최첨단 연구를 수행하는 것이든, 또는 단순히 외부 종속성 없이 언어 생성의 매혹적인 기능을 탐색하는 것이든, Ollama는 안정적이고 효율적이며 사용자 친화적인 기반을 제공합니다. llama.cpp와 같은 추론 엔진의 원시적인 힘과 사용자의 실제 요구 사항 사이의 격차를 성공적으로 메우고 활기찬 오픈 소스 AI 환경 내에서 혁신을 촉진합니다.

로컬 LLM의 세계로의 여정은 Ollama 덕분에 접근 가능하고 매우 보람 있습니다. 애플리케이션을 다운로드하고 ollama pull을 사용하여 첫 번째 모델을 가져오고 ollama run으로 대화를 시작하여 바로 자신의 기계에서 인공 지능의 방대한 잠재력을 발휘하기 시작하십시오.

💡
아름다운 API 문서를 생성하는 훌륭한 API 테스트 도구가 필요하신가요?

개발 팀이 최대 생산성으로 함께 작업할 수 있는 통합 All-in-One 플랫폼이 필요하신가요?

Apidog은 모든 요구를 충족시키고 Postman을 훨씬 더 저렴한 가격에 대체합니다!
버튼

Explore more

Swagger UI 한국어 무료 다운로드 위치

Swagger UI 한국어 무료 다운로드 위치

Swagger UI 한국어 인터페이스를 얻는 것의 어려움을 탐색하고 Apidog이 API 개발을 위한 강력한 플랫폼 대안인 이유를 알아보세요.

23 April 2025

무료 한국어 Postman 다운로드 방법

무료 한국어 Postman 다운로드 방법

Postman 한국어 버전을 무료로 다운로드할 수 있나요? Postman은 한국어를 네이티브로 지원하지 않지만, 해결 방법은 있습니다. 이 방법들을 살펴보고 언어에 관계없이 전체 API 워크플로우를 간소화하도록 설계된 강력하고 통합된 Postman 대안인 Apidog을 발견하십시오.

22 April 2025

초보자를 위한: Postman 기본 사용법 완벽 가이드

초보자를 위한: Postman 기본 사용법 완벽 가이드

포스트맨(Postman)은 API 개발 및 테스트를 위한 필수 도구로, REST/SOAP/WebSocket 등 다양한 프로토콜 지원과 모의 서버 생성 기능을 제공합니다. 본 가이드에서는 HTTP 요청 전송부터 OAuth 2.0 인증 구현, Newman을 활용한 테스트 자동화까지 체계적으로 설명합니다. 무료 버전의 월 25회 컬렉션 실행 제한과 HTTP/2 미지원 문제점을 보완할 오픈소스 대안 툴 Apidog를 소개하며, 엔터프라이즈 환경에서의 효율적인 API 관리 전략을 제시합니다.

19 March 2025

Apidog에서 API 설계-첫 번째 연습

API를 더 쉽게 구축하고 사용하는 방법을 발견하세요