brunch

You can make anything
by writing

C.S.Lewis

by 최재철 May 27. 2024

Ollama + Llama 3 사용법

ollama  + llama3 를 통해서 나만의 노래가사를 만드는 챗봇

기업이 생성형 AI를 도입하는 데 있어 가장 우려하는 것은 바로 비용과 보안 문제입니다. 

로컬에서 LLM을 실행함으로써 기업들은 비용과 보안 문제에서 벗어나게 될 기회가 생겼습니다. 


이전글에서 "LLM을 로컬에서 실행할 수 있는 방법들" 이라는 제목을 글을 올렸는데, 

https://brunch.co.kr/@b2439ea8fc654b8/24

많은 분들의 관심이 있어서, LLM을 로컬에서 실행하는 여러 방법 중에서 Ollama + Llama 3 를 구체적으로 알려드리겠습니다. 


들어가기 

최근에 마이크로소프트는 5월 20일(현지시간) 미국 시애틀 본사에서 개최한 특별 이벤트에서 새로운 윈도 PC 카테고리인 '코파일럿 플러스 PC(Copilot+ PC)'를 공개했습니다.

코파일럿 플러스 PC에는 로컬의 SLM이 내장되어 있어서, 바로 AI 기능을 활용할 수 있게 되는 것입니다.   

이처럼 로컬에서 AI 를 바로 사용하는 형태로 발전할 것이고, 영화 her 처럼 나만의 인공지능을 가지게 되는 것입니다.   

 

최신모델 의 가격비교

(기준 100만 토큰당)

GPT-4o 가격은   입력 토큰 가격: $5.00  / 출력 토큰 가격: $15.00 입니다. 

Gemini 1.5 Pro의 가격은  입력 토큰 가격: $7.00  / 출력 토큰 가격: $21.00입니다.

라마3 (8B) 가격은 입력 토큰 가격 : $0.20 / 출력 토큰 가격 : $0.20

======================================

모델명               | 가격(입력기준 토큰100만개당) 

======================================

GPT-4o                |    $5

--------------------------------------

제미나이 1.5pro  |    $7

--------------------------------------

라마-3(8B)         |    $0.2

--------------------------------------

(출처 : https://artificialanalysis.ai/models/llama-3-instruct-8b)


이는 GPT-4o(옴니)와 구글의 제미나이 1.5프로의 경우 라마-3(0.2달러)보다 25배 이상 비쌉니다. 

(*토큰은 언어모델이 인식하는 문자 데이터 단위를 의미합니다.)


이처럼, 대규모 언어 모델을 클라우드 환경에서 사용하는 것은 상당히 많은 비용이 지출됩니다. 


Ollama 의 특징

Ollama는 로컬 환경에서 대규모 언어 모델(LLM)을 실행할 수 있도록 설계된 도구입니다. 로컬에서 LLM을 실행하는 것은 데이터 프라이버시, 성능 최적화, 비용 절감 등의 이점이 있습니다. Ollama의 주요 특징은 다음과 같습니다.


    로컬 실행: Ollama는 대규모 언어 모델을 로컬에서 실행할 수 있게 해줍니다. 이를 통해 클라우드 기반 서비스에 의존하지 않고도 강력한 NLP 기능을 사용할 수 있습니다.  

    데이터 프라이버시: 로컬에서 모델을 실행하기 때문에 사용자 데이터가 외부 서버로 전송되지 않습니다. 이는 민감한 데이터를 다룰 때 매우 중요한 이점입니다.  

    성능 최적화: 로컬 하드웨어의 성능을 최대한 활용할 수 있습니다. 특히 GPU가 있는 경우, 로컬에서 모델을 실행하면 높은 성능을 얻을 수 있습니다.  

    비용 절감: 클라우드 서비스 사용에 따른 비용을 절감할 수 있습니다. 특히 대규모 언어 모델을 자주 사용해야 하는 경우, 로컬 실행은 비용 효율적일 수 있습니다.  

    모델 커스터마이징: 사용자는 자신의 요구에 맞게 모델을 커스터마이징할 수 있습니다. 특정 도메인에 특화된 데이터로 모델을 재훈련하거나 튜닝할 수 있습니다.  

    오프라인 사용: 인터넷 연결 없이도 모델을 사용할 수 있습니다. 이는 인터넷 연결이 불안정하거나 보안상 인터넷 접근이 제한된 환경에서 유용합니다.  


Ollama 가장 큰 장점은 다양한 대화 모델 중에서 원하는 것을 선택해서 사용할 수 있다는 것입니다. 


Ollama + llama3 사용법


1. 먼저, Ollama 를 설치를 합니다. 

다운로드 공식사이트

Ollama는 다양한 운영 체제를 지원합니다. 여기서는 운영체제별 설치 방법을 안내합니다.

macOS 사용자 : 공식사이트에서 파일을 다운로드합니다.다운로드 받은 Ollama.app 파일을 응용 프로그램 폴더로 이동합니다.

Linux 사용자  : 터미널에서 다음 명령어를 입력하여 설치합니다.

      curl https://ollama.ai/install.sh | sh  

Windows 사용자  : 공식사이트에서 파일을 다운로드합니다.


2. 정상적으로 설치했다는 가정하에, 원하는 모델을 다운 받습니다. 

저는 윈도우 환경으로 llama3 를 다운받도록 하겠습니다. 


명령어 : ollama pull llama3 

llama3 를 다운받는 모습

(참고)

윈도우 환경에서 ollama pull 해서 다운받은 모델은 

C:\Users\<YourUsername>\.ollama\models  에 저장됩니다. 


3. 다음과 같이 파이썬 프로그램을 작성합니다. 

[ 소스 ] 

위의 프로그램을 통해서 노래가사를 작성해달라고 해 보았습니다. 

[ 결과 ]

'당신은 사랑받기 위해 태어난 사람\n\n(Verse 1)\n그대의 눈에 비추어 나는 태어난 것 같아\n사랑받는 것이 내 생애의 이유야\n자연스러운 풍경 속에서 나는 꽃이 피어나\n널리 사랑을 찾는 나의 노래를 불러\n\n(Chorus)\n당신은 사랑받기 위해 태어난 사람\n너무도 사랑받는 것이 내 운명이야\n지금은 여기 있는 순간을 즐겨라\n나의 사랑을 찾아가보자\n\n(Verse 2)\n그대의 손을 잡아 나는 강을 건너간다\n사랑받는 것이 내 꿈의 시작이야\n하늘 위로 날리는 비상에 나는 부딪혀\n널리 사랑을 찾는 나의 노래를 불러\n\n(Chorus)\n당신은 사랑받기 위해 태어난 사람\n너무도 사랑받는 것이 내 운명이야\n지금은 여기 있는 순간을 즐겨라\n나의 사랑을 찾아가보자\n\n(Bridge)\n사랑받는 것은 너무나 쉬운 일이야\n하지만 너무나 어려운 일이야\n그러나 나는 그대에게 간직한다\n널리 사랑을 찾는 나의 노래를 불러\n\n(Chorus)\n당신은 사랑받기 위해 태어난 사람\n너무도 사랑받는 것이 내 운명이야\n지금은 여기 있는 순간을 즐겨라\n나의 사랑을 찾아가보자'


마무리

ollama  + llama3 를 통해서 나만의 노래가사를 만드는 챗봇을 만들어보았습니다. 

비용 걱정 없이 내 컴퓨터에서 LLM 실행할 수 있게 되었습니다. 

Ollama는 llama3 뿐만 아니라 다양한 LLM 모델을 지원합니다. 설치 가능한 모델 목록과 각 모델의 사양에 대한 자세한 정보는 여기서 확인할 수 있습니다. Ollama에 관심 있는 분들에게 유용한 정보가 제공되었길 바랍니다.



브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari