1. Ollama 설치
Ollama는 로컬에서 LLM을 실행할 수 있는 경량화된 프레임워크입니다. 먼저 Ollama를 설치해야 합니다.
① MacOS (Homebrew)
brew install ollama
② Linux (Debian/Ubuntu)
curl -fsSL https://ollama.com/install.sh | sh
③ Windows
1. ollama 공식 사이트(https://ollama.com/)에 접속한다.
Ollama
Get up and running with large language models.
ollama.com
2. 사이트에 접속 후 Download 버튼을 클릭한다.
3. Download for Windows 버튼을 클릭한다.
2. DeepSeek 모델 다운로드 및 실행
Ollama는 여러 오픈소스 LLM을 지원하며, DeepSeek 모델도 로컬에서 실행할 수 있습니다.
① DeepSeek 모델 다운로드
ollama pull deepseek
위 명령어를 실행하면 deepseek 모델이 로컬에 다운로드됩니다.
② DeepSeek 모델 실행
ollama run deepseek
이제 DeepSeek 모델을 실행하고 프롬프트를 입력하여 응답을 받을 수 있습니다.
3. Ollama API를 활용한 서비스 구현
Ollama는 API를 제공하여 로컬에서 실행되는 LLM을 쉽게 호출할 수 있습니다.
① Ollama API 활성화
Ollama는 기본적으로 REST API 서버를 제공하며, 이를 활용하여 Python 등의 환경에서 LLM을 사용할 수 있습니다.
로컬 서버 실행:
ollama serve
이제 http://localhost:11434에서 Ollama의 REST API를 사용할 수 있습니다.
② Python 코드로 API 호출
아래는 Python을 활용하여 DeepSeek 모델을 API로 호출하는 코드입니다.
import requests
url = "http://localhost:11434/api/generate"
payload = {
"model": "deepseek",
"prompt": "DeepSeek 모델을 활용하여 Ollama에서 동작하는 예제를 보여줘.",
"stream": False
}
response = requests.post(url, json=payload)
print(response.json()["response"])
위 코드 실행 시 DeepSeek 모델이 Ollama를 통해 프롬프트에 대한 응답을 반환합니다.
4. FastAPI를 활용한 간단한 API 서비스 만들기
DeepSeek 모델을 웹 서비스 형태로 배포하려면 FastAPI를 활용할 수 있습니다.
① FastAPI 설치
pip install fastapi uvicorn
② FastAPI API 서버 구현
from fastapi import FastAPI
import requests
app = FastAPI()
OLLAMA_URL = "http://localhost:11434/api/generate"
@app.post("/generate/")
def generate_text(prompt: str):
payload = {
"model": "deepseek",
"prompt": prompt,
"stream": False
}
response = requests.post(OLLAMA_URL, json=payload)
return response.json()
if __name__ == "__main__":
import uvicorn
uvicorn.run(app, host="0.0.0.0", port=8000)
③ FastAPI 서버 실행
uvicorn main:app --host 0.0.0.0 --port 8000 --reload
이제 http://localhost:8000/docs에서 API를 테스트할 수 있습니다.
5. 프론트엔드 연동 (옵션)
FastAPI를 활용해 만든 API를 프론트엔드(React, Vue.js 등)에서 호출하여 LLM 기반 챗봇이나 AI 서비스로 확장할 수도 있습니다.
예제 (JavaScript - Fetch API):
fetch("http://localhost:8000/generate/", {
method: "POST",
headers: {
"Content-Type": "application/json"
},
body: JSON.stringify({ prompt: "Hello, DeepSeek!" })
})
.then(response => response.json())
.then(data => console.log(data.response));
결론
- Ollama를 설치하면 로컬에서 LLM을 실행할 수 있음.
- ollama pull deepseek을 통해 DeepSeek 모델을 다운로드하여 실행 가능.
- ollama serve를 통해 REST API로 활용 가능.
- FastAPI와 연동하면 간단한 LLM 웹 서비스를 만들 수 있음.
'Coding > DeepSeek' 카테고리의 다른 글
[DeepSeek] Deepseek-V3 를 로컬 환경에 구성하는 방법 (1) | 2025.02.03 |
---|