새소식

300x250
AI/Tech Lounge: IT 이슈와 생각들

Ollama 활용 아이디어 기록의 글 (feat 로컬 LLM를 어떻게 활용해볼까?)

  • -
728x90

안녕하세요! 갓대희 입니다. :- )

 

Ollama를 로컬에 설치해 보았고, 그냥 끝내긴 아쉬운 부분이 있다.

그래서 Ollama를 통해 어떤 일들을 할 수 있을지 간단한 컨셉을 기록해 두려고 한다. 

 

지금 작성한 글은 거의 컨셉정도, 아이디어 정도라고 봐주시면 좋을 것 같다. (개인의 메모장 처럼)

이후 이를 구현하면 각각의 하기에 링크를 남겨 실제 구현방법도 추가하도록 하겠다.

 

Ollama가 뭔가요? 🤔

Ollama는 로컬 환경에서 대규모 언어 모델(LLM)을 쉽게 실행할 수 있게 해주는 오픈소스 도구다. 쉽게 말해서 ChatGPT 같은 AI를 내 컴퓨터에서 직접 돌릴 수 있게 해주는 프로그램이라고 보면 된다.

 

하기 링크에 간단한 내용 및 설치 방법은 작성 해 두었다.

2025.08.03 - [AI/Tech Lounge: IT 이슈와 생각들] - Ollama 설치 및 기초 사용방법 (feat 로컬 LLM 환경 구축해보기)

 

 

Modelfile로 커스텀 모델 만들기

Ollama의 Modelfile 기능을 사용하면 기존 모델에 나만의 설정을 추가해서 커스텀 모델을 만들 수 있다.

마치 Docker의 Dockerfile 같은 개념이다.

// 코딩 어시스턴트용 커스텀 모델 만들기
# 1. Modelfile 생성
cat > Modelfile << 'EOF'
FROM llama3.2

# 시스템 프롬프트 설정
SYSTEM """
당신은 친근한 시니어 개발자입니다.
- 코드는 항상 실행 가능한 형태로 제공
- 복잡한 개념은 쉬운 예시로 설명
- 보안과 성능을 고려한 코드 작성
- 한국어로 친근하게 대화
"""

# 파라미터 조정
PARAMETER temperature 0.3        # 일관성 있는 답변
PARAMETER top_p 0.9             # 창의성과 정확성 균형
PARAMETER num_ctx 4096          # 컨텍스트 길이
EOF

# 2. 커스텀 모델 생성
ollama create coding-assistant -f Modelfile

# 3. 커스텀 모델 실행
ollama run coding-assistant

 

API로 활용하기

CLI로만 쓰기엔 아쉬우니까 API로 연동해서 써보자. Ollama는 OpenAI API와 호환되는 REST API를 제공한다.

API로 활용 가능하니, 이를 활용하여 재미있는 웹 기반 개발을 할수도 있을 것 같다. 

// Python에서 Ollama API 사용하기
import requests
import json

def ask_ollama(prompt, model="llama3.2"):
    url = "http://localhost:11434/api/generate"
    data = {
        "model": model,
        "prompt": prompt,
        "stream": False
    }
    
    response = requests.post(url, json=data)
    if response.status_code == 200:
        return response.json()["response"]
    else:
        return f"Error: {response.status_code}"

# 사용 예시
answer = ask_ollama("React Hook의 장점을 설명해줘")
print(answer)

 

ex) 언어에 따른 개발 활용

ex) python 예시 : 코딩 문제 자동 생성

def generate_coding_problems(language, difficulty, concept):
    prompt = f"""
코딩 테스트 문제를 만들어주세요.

**언어:** {language}
**난이도:** {difficulty}
**개념:** {concept}

**문제 형식:**
## 문제 제목
{{문제 설명}}

**입력:**
- 

**출력:**
- 

**예시:**
입력: 
출력: 

**제약사항:**
- 

**힌트:**
- 

**예상 풀이 시간:** {{분}}
**태그:** [{{알고리즘 유형}}]
"""
    
    return ask_ollama(prompt, model="codellama")

 

 

ex) node 예시

// Node.js에서 Ollama API 호출
const fetch = require('node-fetch');

async function askOllama(prompt) {
    const response = await fetch('http://localhost:11434/api/generate', {
        method: 'POST',
        headers: { 'Content-Type': 'application/json' },
        body: JSON.stringify({
            model: 'llama3.2',
            prompt: prompt,
            stream: false
        })
    });
    
    const data = await response.json();
    return data.response;
}

// 사용 예시
askOllama("JavaScript 최적화 팁을 알려줘").then(console.log);


IDE Extention으로 코딩 생산성 향상에 활용하기

 - VSCode Extention으로도 활용 가능하다. 

 - 당장의 예시는 코드를 작성하면 ollama가 자동으로 소스를 완성해주거나 추천해주는 기능이다

  - qwen2.5-coder 모델을 필요로 하고 있다는 내용.

 

 - 최소 스펙 확인

https://ollama.com/library/qwen2.5-coder

  - 내 pc에서는 qwen2.5-coder:3b 모델이 한계인것으로 보여 해당 모델을 설치하고, 설정 tab에서 model명은 변경 하였다. 

ex) ollama pull qwen2.5-code:3b

ex) 설정 변경

 

ex) ollama가 자동으로 소스 추천하는 모습

 

프레임워크 & 플랫폼 통합

1. LangFlow에서 활용하기

 - LLangFlow에서 GPT와 같은 모델을 사용하려면 api key가 필요하고, 이에 따른 비용이 발생한다. 

 

 - 이를 ollama를 통해 대체 하게 할 수도 있다. 

  - langchain 실제 예시는 별도의 포스팅에서 작성할 예정이다.

 

2. n8n에서도 활용 가능 하다.

 - 내가 만약 적당한 수준의 gpu만 보유하고 있다면, 간단한 ragBot은 openAPI토큰을 허비하지 않고 ollama로 교체도 가능할 것 같다.

 

3. 데이터 베이스 통합에 활용

 - pgai - PostgreSQL을 벡터 데이터베이스로 사용하여 pgvector를 통해 Ollama 모델에서 임베딩 생성 및 검색에 활용.

 

 - 즉, 하기 문서에 의하면 embedding 처리에 활용할 수도 있다고 한다.
( 난 아직 gpt의 embedding 모델밖에 사용해보지 못했는데, 시간이 나면 이 부분도 별도로 시험 해 보도록 해야겠다. )

 - 문서링크 : https://www.elightwalk.com/blog/latest-ollama-models

 

4. 지식 관리 시스템 : RAG 기반 문서 검색

 - 사내 RAG, 챗봇정도로 활용한다면, ollama를 로컬 설치하여 사용하는 방법도 충분히 가능하다. 

 

참고 자료

마지막 조언
Ollama는 시작하기 쉽지만 깊이 파면 무궁무진한 도구다. 완벽한 설정을 찾으려고 너무 오래 고민하지 말고, 일단 써보면서 점진적으로 개선해나가는 것을 추천한다.
특히 개인정보가 중요한 프로젝트라면 클라우드 API 대신 로컬 LLM을 활용할 수 있지 않을까?

 

300x250
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.

💡 AI 관련 질문이 있나요? 눌러보세요!