-
#1 Llama 3.3 (Ollama) 사용법 + 간단한 FineTuning까지LLM 2025. 3. 17. 22:33
1. Llama 3.3이란?
Llama 3.3은 Meta(구 페이스북)에서 개발한 최신 대규모 언어 모델(LLM)입니다. 오픈 소스로 공개되어 누구나 사용할 수 있으며, 비용 효율성이 높아 다양한 AI 활용 분야에서 인기를 끌고 있습니다. 특히, GPT-4와 같은 유료 모델에 비해 무료로 사용 가능하다는 점이 큰 장점입니다.
이 글에서는 Llama 3.3을 로컬 환경에서 실행하는 방법과 활용법, 그리고 Fine-tuning(미세 조정)하는 방법까지 자세히 소개해드리겠습니다.
2. Llama 3.3 설치 방법
Llama 3.3을 로컬 환경에서 사용하려면 Ollama라는 도구를 이용하면 쉽고 간편하게 실행할 수 있습니다. 아래는 운영체제별 Ollama 설치 방법입니다.
macOS 설치 방법
- Ollama 공식 사이트에서
Ollama.app
을 다운로드합니다. - 다운로드한 앱을 응용 프로그램 폴더에 이동합니다.
Linux 설치 방법
터미널을 열고 아래 명령어를 실행하면 Ollama가 설치됩니다.
curl https://ollama.ai/install.sh | sh
Windows 설치 방법
- Ollama 공식 사이트에서 Windows용 설치 파일을 다운로드합니다.
- 설치 파일을 실행하고 안내에 따라 Ollama를 설치합니다.
설치가 완료되면 터미널(또는 명령 프롬프트)에서 아래 명령어를 실행하여 Llama 3.3 모델을 다운로드할 수 있습니다.
ollama pull llama3
3. Llama 3.3 사용법
설치가 완료되었다면, 이제 Llama 3.3을 실행하고 활용하는 방법을 알아보겠습니다.
터미널에서 직접 실행하기
터미널(또는 명령 프롬프트)에서 아래 명령어를 실행하면 Llama 3.3과 대화할 수 있습니다.
ollama run llama3
이제 프롬프트에 원하는 질문을 입력하면, Llama 3.3이 답변을 생성합니다.
Python을 활용한 API 호출
Python에서 Ollama API를 활용하면 Llama 3.3을 더욱 편리하게 사용할 수 있습니다.
예제 코드 (Python)
import requests response = requests.post("http://localhost:11434/api/generate", json={"model": "llama3", "prompt": "안녕하세요!"}) print(response.json())
위 코드를 실행하면 Llama 3.3이 "안녕하세요!"에 대한 응답을 생성합니다.
4. Llama 3.3 Fine-tuning (미세 조정)
기본적인 사용법을 익혔다면, 이제 Fine-tuning을 통해 모델을 특정 작업에 맞게 학습시키는 방법을 살펴보겠습니다.
Fine-tuning이란?
Fine-tuning(미세 조정)은 사전 학습된 LLM 모델에 추가 데이터를 제공하여 특정 목적에 맞게 성능을 향상시키는 과정입니다. Llama 3.3의 경우, LoRA(Low-Rank Adaptation), QLoRA(Quantized LoRA) 등의 방법을 활용하면 적은 자원으로 효율적인 Fine-tuning이 가능합니다.
Fine-tuning을 위한 준비
- 필요 패키지 설치
pip install torch transformers peft datasets
- 데이터셋 준비
- Hugging Face의
datasets
라이브러리를 이용하여 원하는 데이터셋을 로드합니다.from datasets import load_dataset dataset = load_dataset("your_dataset")
- 사용자 맞춤 데이터셋을 CSV 또는 JSON 파일로 만들어 사용할 수도 있습니다.
- Hugging Face의
LoRA를 이용한 Fine-tuning 예제
from transformers import AutoModelForCausalLM, TrainingArguments, Trainer from peft import get_peft_model, LoraConfig # 모델 로드 model = AutoModelForCausalLM.from_pretrained("meta-llama/Llama-3-7b") # LoRA 설정 peft_config = LoraConfig(r=8, lora_alpha=16, lora_dropout=0.1, target_modules=["q_proj", "v_proj"]) model = get_peft_model(model, peft_config) # Fine-tuning 설정 training_args = TrainingArguments( output_dir="./llama3_finetuned", per_device_train_batch_size=4, num_train_epochs=3, save_steps=500, logging_dir="./logs", ) trainer = Trainer( model=model, args=training_args, train_dataset=dataset["train"] ) # 학습 시작 trainer.train()
Fine-tuned 모델 사용하기
Fine-tuning이 완료된 모델을 로드하여 예측을 수행할 수 있습니다.
from transformers import pipeline pipe = pipeline("text-generation", model="./llama3_finetuned") output = pipe("안녕하세요! 오늘 날씨는?") print(output)
'LLM' 카테고리의 다른 글
#2 vLLM 과 LoRA 기반 Fine-tuning (0) 2025.03.17 - Ollama 공식 사이트에서