본문으로 이동

:Ollama 사용법

lse
Hschoi2 (토론 | 기여)님의 2025년 2월 5일 (수) 06:17 판 (참고: curl 사용)

Ollama 설명에 대한 내용입니다.

사용방법

  • 모델 실행하기

ollama run 명령어로 원하는 모델을 실행할 수 있습니다. 예를 들어 Llama 3 모델을 실행하려면:

ollama run llama3

만약 해당 모델이 설치되어 있지 않다면 자동으로 다운로드 후 실행됩니다.

  • 대화하기

모델이 실행되면 프롬프트가 나타납니다. 여기에 질문을 입력하면 모델이 답변을 생성합니다.

>>> 하늘은 왜 파란가요? 하늘이 파랗게 보이는 이유는 빛의 산란 때문입니다. 태양 빛 중 파장이 짧은 푸른색 계열의 빛이 대기 중 입자에 의해 강하게 산란되어 우리 눈에 많이 들어오기 때문이죠. 반면 파장이 긴 빨간색 계열은 대기를 통과해 직진하는 경향이 있습니다. 이런 레일리 산란 현상 때문에 하늘은 푸르게 보이는 것입니다.


  • 멀티라인 입력

긴 문장을 입력하고 싶다면 """ 로 감싸면 됩니다.

>>> """ 
안녕하세요.
오늘도 좋은 하루 되세요!
"""
  • 이미지 입력

일부 멀티모달 모델은 이미지 입력도 지원합니다.

>>> 이 이미지에 무엇이 있나요? /path/to/image.png
이미지에는 푸른 하늘을 배경으로 한 해바라기 꽃이 클로즈업되어 있습니다. 노란 꽃잎이 선명하게 보이고, 가운데 꽃술도 잘 보이네요. 매우 생동감 있는 사진입니다.
  • 명시적 사용

prompt: 라고 명시적 단어를 사용하여 입력 가능하다.

프롬프트 입력 명령 예 - DeepSeek R1

prompt: <<내용 넣기>>


  • 모델 커스터마이징

Ollama 라이브러리의 모델은 프롬프트로 커스터마이징할 수 있습니다. 예를 들어 llama3 모델을 수정하려면:

1. 모델 다운로드

ollama pull llama3

2. Modelfile 생성

FROM llama3
# 온도 설정 (높을수록 창의적, 낮을수록 정확함)  
PARAMETER temperature 1

# 시스템 메시지 설정
SYSTEM """
당신은 슈퍼마리오입니다. 마리오처럼 대답해주세요.
"""

3. 모델 생성 및 실행

ollama create mario -f ./Modelfile
ollama run mario
  • API로 접근

Ollama는 모델 실행과 관리를 위한 REST API도 제공합니다.

응답 생성

curl http://localhost:11434/api/generate -d '{
  "model": "llama3", 
  "prompt": "하늘은 왜 파란가요?"
}'

채팅

curl http://localhost:11434/api/chat -d '{
  "model": "llama3",
  "messages": [
    {"role": "user", "content": "하늘은 왜 파란가요?"}
  ]  
}'


참고: curl 사용

curl은 다양한 프로토콜을 사용하여 데이터를 전송하기 위한 명령줄 도구 및 라이브러리입니다. 주요 특징은 다음과 같습니다:

기본 개념

  • "Client URL"의 약자로, URL을 통해 데이터를 주고받는 클라이언트 도구입니다.
  • 웹 서버와 통신하여 데이터를 전송하고 받을 수 있습니다3.
  • 명령줄에서 사용할 수 있는 도구이자 라이브러리 형태로도 제공됩니다18.

지원 프로토콜 curl은 다음과 같은 다양한 프로토콜을 지원합니다.

  • HTTP/HTTPS
  • FTP/SFTP
  • SMTP
  • POP3
  • SCP
  • 기타 여러 프로토콜

주요 기능

  • 웹 페이지 내용 가져오기
  • API 요청 보내기
  • 파일 다운로드/업로드
  • 인증 및 쿠키 처리
  • 커스텀 HTTP 헤더 설정
  • POST 데이터 전송

사용 예시 기본적인 사용법은 다음과 같습니다:

curl [옵션] [URL]

예를 들어 웹 페이지 내용을 가져오려면:

curl https://example.com

예시:

  • 웹페이지 내용 가져오기: 'curl https://example.com'
  • HTTP 헤더만 보기: curl -I https://example.com
  • POST 요청 보내기: curl -X "POST" "http://example.com/api" -d "param1=value1&param2=value2"

장점

  • 다양한 프로토콜 지원
  • 스크립트 작성 및 자동화에 용이
  • 디버깅 및 API 테스트에 유용
  • 크로스 플랫폼 지원

curl은 개발자들이 웹 서비스와 상호작용하고 네트워크 요청을 테스트하는 데 널리 사용되는 강력하고 유연한 도구입니다.