티스토리 뷰
🚀 FastAPI 기반 로컬 LLM + RAG 챗봇 만들기 – Ollama 및 LLaMA3 모델 설정
octo54 2025. 2. 26. 16:06🚀 FastAPI 기반 로컬 LLM + RAG 챗봇 만들기 – Ollama 및 LLaMA3 모델 설정
이 글에서는 Ollama를 설치하고 LLaMA3-Korean-Blossom 모델을 FastAPI와 연동하는 과정을 다룹니다.
✅ Ollama 설치 → LLaMA3 모델 다운로드 → 모델 등록 및 테스트 순서로 진행됩니다.
📌 1. Ollama란?
Ollama는 로컬에서 LLM(대형 언어 모델, Large Language Model)을 실행할 수 있도록 지원하는 프레임워크입니다.
이를 통해 클라우드 의존도를 줄이고, 로컬 환경에서 AI 모델을 쉽게 배포 및 실행할 수 있습니다.
✅ Ollama의 주요 기능:
- 로컬 LLM 실행 → 인터넷 없이도 AI 모델 사용 가능
- 다양한 모델 지원 → LLaMA3, Mistral, DeepSeek, Phi 등 다양한 모델 실행 가능
- 간단한 명령어 실행 → ollama pull <모델> 및 ollama run <모델>로 실행 가능
- 컨테이너 기반 경량화 → GPU 또는 CPU 환경에서도 실행 가능
💡 Ollama를 활용하면 로컬 PC에서 LLaMA3 기반 챗봇을 구축할 수 있습니다! 🚀
📌 2. Ollama 설치 및 실행
✅ 1️⃣ Ollama 설치
🔹 macOS & Linux
curl -fsSL https://ollama.com/install.sh | sh
🔹 Windows
Ollama는 Windows에서 공식 지원되지 않지만, **WSL(Windows Subsystem for Linux)**을 활용하면 실행할 수 있습니다.
- WSL2(우분투) 설치 → 공식 가이드 참고
- WSL에서 curl -fsSL https://ollama.com/install.sh | sh 실행
- WSL에서 ollama run을 실행하여 정상 동작 확인
✅ 설치 확인
ollama --version
✅ 정상적으로 설치되었다면, 버전 정보가 출력됩니다.
📌 3. LLaMA3-Korean-Blossom 모델 다운로드 및 설정
✅ 1️⃣ LLaMA3-Korean-Blossom 모델 다운로드
Hugging Face에서 LLaMA-3-Korean-Blossom-8B-Q4_K_M.gguf 모델을 다운로드해야 합니다.
이 모델은 한국어 지원이 강화된 LLaMA3 기반 모델로, RAG 시스템과 궁합이 좋습니다.
🔹 모델 다운로드 (Hugging Face)
- Hugging Face 공식 사이트 접속
- LLaMA-3-Korean-Blossom-8B-Q4_K_M.gguf 검색 후 다운로드
- 다운로드한 모델을 ~/.ollama/models/ 폴더에 저장
💡 ~/.ollama/models/는 Ollama가 기본적으로 모델을 저장하는 폴더입니다.
✅ 모델 다운로드 완료 후 확인
ls ~/.ollama/models/
📌 4. Ollama에 LLaMA3 모델 등록하기
Ollama에서는 modelfile을 사용하여 커스텀 모델을 정의할 수 있습니다.
✅ 1️⃣ modelfile 생성
modelfile을 생성하여 LLaMA3 모델을 Ollama에 등록합니다.
🔹 modelfile 내용
FROM LLaMA-3-Korean-Blossom-8B-Q4_K_M.gguf
✅ modelfile 저장 위치
nano modelfile # nano 또는 vim으로 modelfile 생성
내용 입력 후 CTRL + X → Y → ENTER로 저장
✅ Ollama에 모델 등록
ollama create korean-llama3 -f modelfile
✅ 모델 등록 확인
ollama list
📌 5. LLaMA3 모델 실행 및 테스트
모델이 정상적으로 등록되었는지 실행하여 확인합니다.
✅ 1️⃣ Ollama 실행 테스트
ollama run korean-llama3
이제 프롬프트 입력창이 나타나며 LLaMA3-Korean-Blossom 모델이 정상적으로 실행됩니다.
예제 질문을 입력해봅니다.
사용자: 안녕하세요!
모델: 안녕하세요! 무엇을 도와드릴까요?
💡 정상적으로 모델이 실행되었다면, FastAPI와 연동할 준비가 완료된 것입니다! 🚀
📌 6. 오류 해결 및 디버깅
🔥 1️⃣ command not found: ollama 오류 발생
✅ 원인: Ollama가 PATH에 등록되지 않음
✅ 해결 방법:
export PATH="$HOME/.ollama/bin:$PATH"
또는 새로운 터미널을 열고 Ollama 실행
🔥 2️⃣ No such file or directory: 'LLaMA-3-Korean-Blossom-8B-Q4_K_M.gguf' 오류 발생
✅ 원인: 모델이 올바르게 다운로드되지 않음
✅ 해결 방법:
ls ~/.ollama/models/
- 모델이 없으면 Hugging Face에서 재다운로드
- 경로가 다르면 modelfile에서 올바른 모델 경로 설정
🔥 3️⃣ Error: failed to start model 'korean-llama3' 오류 발생
✅ 원인: 시스템 메모리 부족
✅ 해결 방법:
- swap 메모리를 추가하여 실행 가능하도록 설정
sudo fallocate -l 8G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
- 또는 더 작은 크기의 모델 다운로드 (4B 또는 7B 버전 사용)
📌 7. 결론 및 다음 단계
✅ Ollama를 설치하고 LLaMA3-Korean-Blossom 모델을 등록 및 실행 완료!
✅ FastAPI에서 Ollama 모델을 호출할 준비 완료!
🚀 다음 글에서는 FastAPI를 활용하여 Ollama의 LLaMA3 모델을 API 형태로 호출하는 방법을 설명합니다!
'project > 로컬 LLM + RAG 기반 AI 채팅봇 만들기' 카테고리의 다른 글
🚀 FastAPI 기반 로컬 LLM + RAG 챗봇 만들기 – FastAPI 개요 및 특징 (0) | 2025.02.26 |
---|---|
🚀 FastAPI 기반 로컬 LLM + RAG 챗봇 만들기 – FastAPI 프로젝트 구조 및 설정 (0) | 2025.02.26 |
🚀 FastAPI 기반 로컬 LLM + RAG 챗봇 만들기 – Python 및 필수 라이브러리 설치 (0) | 2025.02.26 |
FastAPI 기반 로컬 LLM + RAG 챗봇 만들기 – LangChain 및 RAG 개념과 활용 (0) | 2025.02.26 |
FastAPI 기반 로컬 LLM + RAG 챗봇 만들기 – Ollama를 활용한 로컬 LLM 개념 및 활용 (0) | 2025.02.26 |
- Total
- Today
- Yesterday
- Webpack
- 페이지
- Next.js
- 챗봇개발
- 백엔드
- Ktor
- Docker
- fastapi
- 로컬LLM
- kotlin
- LangChain
- 개발블로그
- nodejs
- Python
- AI챗봇
- llm
- 관리자
- github
- 리액트
- rag
- 백엔드개발
- 웹개발
- til
- Project
- 프론트엔드
- REACT
- babel
- Page
- PostgreSQL
- nextJS
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |