최근에는 OpenAI gpt-oss, Meta Llama, Google Gemma, Alibaba Qwen, Microsoft Phi 같은 공개형 LLM을 개인 PC나 회사 서버에서 직접 실행할 수 있습니다.
이때 모델 설치와 실행, API 제공을 간편하게 처리해 주는 대표적인 프로그램이 Ollama입니다.
Ollama를 사용하면 복잡한 AI 개발환경을 직접 구성하지 않아도 명령어 몇 개로 LLM을 내려받고 실행할 수 있습니다. C#, Python, Flask, MES, ERP, 문서관리시스템에서도 REST API를 통해 연결할 수 있습니다.
1. Ollama란?
Ollama는 공개형 LLM을 개인 컴퓨터나 회사 서버에서 쉽게 실행하도록 도와주는 로컬 AI 실행 플랫폼입니다.
다음 작업을 통합적으로 처리합니다.
- 공개형 LLM 다운로드
- 모델별 실행환경 관리
- CPU와 GPU를 이용한 추론
- 명령창 기반 AI 대화
- 로컬 REST API 제공
- 모델 생성과 사용자 설정
- 임베딩 모델 실행
- 이미지 입력 모델 실행
- JSON 구조화 응답
- 도구 호출과 AI 에이전트 연동
기존에는 공개형 LLM을 실행하려면 Python, PyTorch, CUDA, 모델 가중치와 추론 라이브러리를 직접 구성해야 했습니다.
Ollama는 이러한 복잡한 과정을 단순화합니다.
2. Ollama의 주요 장점
로컬에서 AI 실행
질문과 문서를 외부 AI API로 전송하지 않고 PC나 사내 서버에서 처리할 수 있습니다.
보안이 중요한 다음 업무에 적합합니다.
- 회사 내부 규정
- 작업표준서
- 설비 매뉴얼
- 품질문서
- 생산실적
- 거래처 정보
- 제품 설계자료
- 프로그램 소스코드
API 사용료 절감
로컬 모델을 이용하면 질문할 때마다 외부 LLM API 비용을 지불하지 않아도 됩니다.
다만 GPU 서버, 전력, 유지보수 등의 자체 운영비는 발생합니다.
간편한 모델 교체
명령어에서 모델 이름만 변경해 여러 LLM을 비교할 수 있습니다.
ollama run qwen3.5:4b
ollama run gemma4:4b
ollama run llama3.2:3b
ollama run phi4
실제 지원 모델과 태그는 Ollama 모델 라이브러리에서 확인할 수 있습니다.
프로그램 연동이 쉬움
Ollama를 설치하면 기본적으로 다음 로컬 API가 제공됩니다.
http://localhost:11434/api
Python과 JavaScript 공식 라이브러리가 제공되며, C#에서는 일반적인 HttpClient로 호출할 수 있습니다. Ollama API 안내
인터넷이 없어도 사용 가능
모델을 미리 내려받았다면 인터넷이 연결되지 않은 환경에서도 실행할 수 있습니다.
공장 내부망이나 외부 통신이 제한된 현장에 유용합니다.
3. Ollama와 ChatGPT의 차이
| 성격 | LLM 실행 플랫폼 | 완성된 AI 서비스 |
| 실행 위치 | 사용자 PC·사내 서버 | 클라우드 |
| 모델 | 사용자가 선택 | 서비스 제공 모델 |
| 인터넷 | 모델 설치 후 오프라인 가능 | 일반적으로 필요 |
| 데이터 | 로컬 처리 가능 | 서비스 서버와 통신 |
| 설치 | 직접 설치 필요 | 웹·앱에서 바로 사용 |
| GPU | 사용자가 준비 | 서비스 제공자가 운영 |
| 모델 성능 | 모델과 장비에 따라 다름 | 고성능 모델 제공 |
| 운영관리 | 사용자가 수행 | 서비스 제공자가 수행 |
| API 비용 | 로컬 실행은 별도 API 비용 없음 | 사용량에 따라 비용 발생 |
Ollama 자체가 LLM은 아닙니다. Llama, Qwen, Gemma 등의 모델을 실행하고 프로그램에서 사용할 수 있게 해주는 플랫폼입니다.
4. 설치 전 확인사항
운영체제
Ollama는 다음 운영체제를 지원합니다.
- Windows
- macOS
- Linux
메모리
모델 크기와 양자화 방식에 따라 필요한 메모리가 달라집니다.
| RAM 8GB | 1B~3B 경량 모델 |
| RAM 16GB | 3B~8B Q4 모델 |
| RAM 32GB | 7B~14B Q4 모델 |
| RAM 64GB | 14B~32B 모델 |
| 고성능 GPU 서버 | 32B 이상 또는 대형 MoE |
운영체제와 다른 프로그램도 메모리를 사용하므로 모델 크기와 같은 용량만 준비해서는 부족합니다.
GPU
GPU가 없어도 CPU로 실행할 수 있지만 응답속도가 느릴 수 있습니다.
지원 가능한 GPU 예시는 다음과 같습니다.
- NVIDIA GPU
- 일부 AMD GPU
- Apple Silicon
- 일부 Vulkan 지원 GPU
GPU 지원 범위는 운영체제와 드라이버에 따라 달라지므로 Ollama GPU 지원 문서를 확인하는 것이 좋습니다.
5. Windows에 Ollama 설치하기
Windows에서는 공식 설치 프로그램을 사용하는 방법이 가장 간단합니다.
1단계: 설치 프로그램 내려받기
Ollama 공식 홈페이지에서 Windows용 설치 파일을 내려받습니다.
- 공식 홈페이지: Ollama 다운로드
- 설치 파일: OllamaSetup.exe
Windows용 설치 프로그램은 일반적으로 사용자 계정 영역에 설치되며 관리자 권한이 필요하지 않습니다. Windows 설치 안내
2단계: 설치 실행
OllamaSetup.exe를 실행하고 설치를 완료합니다.
설치가 끝나면 Ollama가 백그라운드에서 실행되며 작업표시줄 알림 영역에 아이콘이 나타날 수 있습니다.
3단계: 설치 확인
명령 프롬프트나 PowerShell을 열고 다음 명령을 실행합니다.
ollama --version
버전이 표시되면 정상적으로 설치된 것입니다.
4단계: 실행 상태 확인
브라우저에서 다음 주소를 열어봅니다.
http://localhost:11434
또는 PowerShell에서 모델 목록을 확인합니다.
ollama list
6. Linux에 Ollama 설치하기
Linux에서는 다음 명령으로 설치할 수 있습니다.
curl -fsSL https://ollama.com/install.sh | sh
설치 후 버전을 확인합니다.
ollama -v
수동으로 서버를 실행하려면 다음 명령을 사용합니다.
ollama serve
서비스 방식으로 설치했다면 상태를 확인합니다.
sudo systemctl status ollama
Linux 업데이트는 설치 스크립트를 다시 실행하는 방식으로 진행할 수 있습니다. Ollama Linux 설치 문서
7. macOS에 설치하기
macOS에서는 공식 ollama.dmg 파일을 내려받고 Ollama 앱을 Applications 폴더로 이동합니다.
설치 후 터미널에서 확인합니다.
ollama --version
Apple Silicon Mac은 통합 메모리를 CPU와 GPU가 함께 사용하므로 로컬 LLM 실행환경으로 활용하기 좋습니다. 모델 파일은 수GB에서 수십GB 이상이 될 수 있으므로 저장공간을 충분히 확보해야 합니다. macOS 설치 안내
8. 첫 번째 모델 실행하기
설치가 끝났다면 명령창에서 모델을 실행할 수 있습니다.
예를 들어 소형 Llama 모델을 실행하려면 다음과 같이 입력합니다.
ollama run llama3.2:3b
처음 실행할 때는 모델을 자동으로 내려받습니다. 다운로드가 완료되면 대화 입력창이 나타납니다.
>>> 안녕하세요. MES가 무엇인지 설명해 주세요.
대화를 종료하려면 다음 명령을 입력합니다.
/bye
또는 Ctrl+D, 운영환경에 따라 Ctrl+C를 사용할 수 있습니다.
9. 한국어용 모델 선택
한국어 문서와 제조업 업무에 적용한다면 여러 모델을 직접 비교하는 것이 좋습니다.
Qwen 계열
ollama run qwen3.5:4b
- 한국어와 다국어 지원
- 일반 문서작성
- 코드 생성
- 논리적 추론
- 다양한 크기 제공
Gemma 계열
ollama run gemma4:4b
- Google의 공개형 모델
- 비교적 효율적인 실행
- 다국어 지원
- 이미지 입력 가능 모델 제공
Llama 계열
ollama run llama3.2:3b
- 관련 자료와 개발 생태계가 풍부
- 일반 대화와 요약
- RAG와 에이전트 구성
- 다양한 연동 도구 지원
Phi 계열
ollama run phi4
- Microsoft의 소형 모델 계열
- 논리적 추론과 코딩
- Windows·엣지 환경
- 비교적 작은 운영환경 고려
모델 이름과 크기는 계속 추가되거나 변경될 수 있으므로 실제 설치 전 모델 라이브러리에서 태그와 용량을 확인해야 합니다.
10. 주요 Ollama 명령어
모델 내려받기
대화를 시작하지 않고 모델만 내려받습니다.
ollama pull llama3.2:3b
모델 실행
ollama run llama3.2:3b
설치된 모델 목록
ollama list
실행 중인 모델 확인
ollama ps
모델 삭제
ollama rm llama3.2:3b
모델은 수GB 이상의 저장공간을 사용할 수 있으므로 사용하지 않는 모델은 정확한 이름을 확인한 후 삭제하는 것이 좋습니다.
모델 복사
ollama cp llama3.2:3b emes-assistant
모델 정보 확인
ollama show llama3.2:3b
Ollama 서버 실행
ollama serve
11. 모델 크기와 태그 이해하기
Ollama 모델 이름은 다음과 같은 형태로 구성됩니다.
모델명:태그
예를 들면 다음과 같습니다.
llama3.2:3b
qwen3.5:4b
qwen3.5:9b
3b, 4b, 9b는 대략적인 모델 파라미터 규모를 나타냅니다.
태그를 생략하면 해당 모델의 기본 태그가 선택됩니다.
ollama run llama3.2
그러나 업무시스템에서는 업데이트로 기본 모델이 변경되는 일을 방지하기 위해 모델과 태그를 명시하는 것이 안전합니다.
12. Ollama REST API 사용하기
Ollama를 설치하면 기본적으로 다음 주소에서 API가 실행됩니다.
http://localhost:11434/api
단일 응답 생성
Windows PowerShell에서는 다음처럼 호출할 수 있습니다.
$body = @{
model = "llama3.2:3b"
prompt = "MES의 작업지시 절차를 설명해 주세요."
stream = $false
} | ConvertTo-Json
Invoke-RestMethod `
-Uri "http://localhost:11434/api/generate" `
-Method Post `
-ContentType "application/json" `
-Body $body
대화형 API
/api/chat은 역할별 메시지를 전달할 수 있습니다.
{
"model": "llama3.2:3b",
"messages": [
{
"role": "system",
"content": "당신은 중소 제조업 MES 전문가입니다."
},
{
"role": "user",
"content": "작업지시 이후의 업무 절차를 설명해 주세요."
}
],
"stream": false
}
요청 주소는 다음과 같습니다.
POST http://localhost:11434/api/chat
Ollama의 /api/chat은 사용자와 AI 사이의 대화 메시지를 전달하고 다음 응답을 생성합니다. Chat API 공식 문서
13. C#에서 Ollama 호출하기
C# WinForms, .NET MAUI, ASP.NET에서 HttpClient를 이용해 호출할 수 있습니다.
using System.Net.Http.Json;
using System.Text.Json;
public sealed class OllamaService
{
private readonly HttpClient _httpClient;
public OllamaService(HttpClient httpClient)
{
_httpClient = httpClient;
_httpClient.BaseAddress =
new Uri("http://localhost:11434");
}
public async Task<string> AskAsync(
string question,
CancellationToken cancellationToken = default)
{
var request = new
{
model = "llama3.2:3b",
messages = new[]
{
new
{
role = "system",
content =
"당신은 중소 제조업 MES 전문가입니다."
},
new
{
role = "user",
content = question
}
},
stream = false
};
using var response = await _httpClient.PostAsJsonAsync(
"/api/chat",
request,
cancellationToken);
response.EnsureSuccessStatusCode();
using var json = JsonDocument.Parse(
await response.Content.ReadAsStringAsync(
cancellationToken));
return json.RootElement
.GetProperty("message")
.GetProperty("content")
.GetString() ?? string.Empty;
}
}
사용 예시는 다음과 같습니다.
var httpClient = new HttpClient
{
Timeout = TimeSpan.FromMinutes(5)
};
var ollama = new OllamaService(httpClient);
string answer = await ollama.AskAsync(
"생산실적과 작업일보의 차이를 설명해 주세요.");
MessageBox.Show(answer);
로컬 LLM은 모델을 처음 메모리에 올릴 때 시간이 걸릴 수 있으므로 일반적인 웹 API보다 넉넉하게 Timeout을 설정하는 것이 좋습니다.
14. OpenAI 호환 API
Ollama는 기존 OpenAI API 기반 프로그램을 쉽게 연결할 수 있도록 일부 OpenAI 호환 API를 제공합니다. OpenAI API 호환 안내
기본 주소는 일반적으로 다음과 같이 사용합니다.
http://localhost:11434/v1
기존 프로그램이 OpenAI SDK나 OpenAI 호환 라이브러리를 사용한다면 다음 항목을 바꾸는 방식으로 연결할 수 있습니다.
- Base URL: Ollama 주소
- Model: 설치된 Ollama 모델
- API Key: 로컬 연결에서는 형식상 임의 문자열을 요구할 수 있음
다만 OpenAI API의 모든 기능이 동일하게 지원되는 것은 아니므로 사용하는 엔드포인트와 옵션을 확인해야 합니다.
15. 사용자 전용 모델 만들기
Ollama에서는 Modelfile을 이용해 기본 모델에 업무 역할과 옵션을 적용할 수 있습니다.
파일명:
Modelfile
내용 예시:
FROM llama3.2:3b
SYSTEM """
당신은 eMES Lite의 업무 도우미입니다.
중소 제조업 사용자가 이해하기 쉬운 한국어로 답변합니다.
확인되지 않은 내용은 사실처럼 만들지 않습니다.
생산, 품질, 설비, 재고 업무를 중심으로 설명합니다.
"""
PARAMETER temperature 0.2
PARAMETER num_ctx 8192
모델을 생성합니다.
ollama create emes-assistant -f Modelfile
생성한 모델을 실행합니다.
ollama run emes-assistant
이 방법은 모델을 완전히 다시 학습하는 것이 아닙니다. 기본 모델에 시스템 지침과 실행 옵션을 묶어 새로운 이름으로 사용하는 방식입니다.
16. RAG란?
RAG는 Retrieval-Augmented Generation의 약자로, 우리말로는 검색증강생성이라고 합니다.
LLM이 학습한 일반지식에만 의존하지 않고 회사 문서나 데이터베이스에서 관련 자료를 찾아 그 내용을 근거로 답변하도록 만드는 방식입니다.
예를 들어 사용자가 질문합니다.
프레스 2호기에서 이상 진동이 발생하면 어떻게 조치해야 하나요?
일반 LLM은 보편적인 설비점검 방법을 답할 수 있습니다.
RAG를 적용하면 회사의 프레스 2호기 점검 매뉴얼과 과거 고장이력에서 관련 내용을 검색한 뒤 회사 기준에 맞는 답변을 생성할 수 있습니다.
17. RAG가 필요한 이유
LLM만 사용하면 다음 문제가 발생할 수 있습니다.
- 회사 내부정보를 알지 못함
- 최신 개정 문서를 알지 못함
- 존재하지 않는 내용을 생성할 수 있음
- 답변의 출처를 확인하기 어려움
- 회사별 업무규칙을 반영하기 어려움
RAG를 적용하면 다음 효과를 기대할 수 있습니다.
- 사내 문서 기반 답변
- 최신 문서 반영
- 문서 출처 표시
- 환각 가능성 감소
- 업무별 전문 답변
- 모델 재학습 없이 자료 갱신
18. 임베딩이란?
임베딩은 문장의 의미를 숫자 배열인 벡터로 변환하는 기술입니다.
예를 들어 다음 문장들은 사용한 단어가 다르지만 의미가 비슷합니다.
- 설비가 고장 났습니다.
- 장비에 장애가 발생했습니다.
- 기계가 정상적으로 작동하지 않습니다.
임베딩 모델은 이러한 문장들을 의미적으로 가까운 숫자 위치에 배치합니다.
이 덕분에 정확히 같은 단어가 없어도 의미가 비슷한 문서를 찾을 수 있습니다.
Ollama는 /api/embed API를 통해 임베딩을 생성합니다. 공식 문서에서는 다음 모델들을 예로 권장합니다.
- embeddinggemma
- qwen3-embedding
- all-minilm
19. 임베딩 모델 설치와 사용
임베딩 모델을 내려받습니다.
ollama pull embeddinggemma
API 요청 예시는 다음과 같습니다.
{
"model": "embeddinggemma",
"input": "프레스 설비의 이상 진동 점검 방법"
}
요청 주소:
POST http://localhost:11434/api/embed
반환 결과에는 문장을 표현하는 숫자 벡터가 포함됩니다. Embed API 문서
여러 문장을 한 번에 전달할 수도 있습니다.
{
"model": "embeddinggemma",
"input": [
"프레스 설비 점검 기준",
"이상 진동 발생 시 조치",
"작업 종료 후 청소 방법"
]
}
20. RAG 구축 절차
1단계: 문서 수집
다음 자료를 준비합니다.
- Word
- 한글 문서에서 변환한 PDF나 텍스트
- Excel
- CSV
- 작업표준서
- 설비 매뉴얼
- 품질규정
- DB 조회 결과
2단계: 텍스트 추출
파일에서 실제 텍스트를 추출합니다.
스캔한 PDF처럼 이미지로 된 문서는 OCR이 필요합니다.
3단계: 문서 분할
긴 문서를 작은 단위인 Chunk로 나눕니다.
예를 들어 다음과 같이 분리할 수 있습니다.
- 제목
- 장
- 절
- 문단
- 표
- 500~1,000자 단위
너무 크게 나누면 관련 없는 내용이 함께 검색되고, 너무 작게 나누면 문맥이 끊어질 수 있습니다.
4단계: 임베딩 생성
각 Chunk를 임베딩 모델에 전달해 벡터로 변환합니다.
5단계: 벡터 DB 저장
벡터와 원문 정보를 함께 저장합니다.
- 문서번호
- 문서명
- 개정번호
- Chunk 내용
- 페이지
- 문서분류
- 접근권한
- 임베딩 벡터
6단계: 질문 의미검색
사용자의 질문도 동일한 임베딩 모델로 변환하고 가장 가까운 문서 Chunk를 검색합니다.
7단계: 프롬프트 구성
검색한 자료와 질문을 LLM에 함께 전달합니다.
8단계: 답변과 출처 표시
LLM 답변과 함께 사용된 문서명, 페이지, 개정번호 등을 표시합니다.
21. RAG 프롬프트 예시
당신은 중소 제조업 설비관리 도우미입니다.
다음 참고자료에 포함된 내용만 근거로 답변하세요.
참고자료에 답이 없으면 "제공된 문서에서 확인할 수 없습니다"라고 답하세요.
답변 마지막에 참고 문서명과 페이지를 표시하세요.
[참고자료 1]
문서명: 프레스 설비 점검표
개정번호: 3
페이지: 12
내용:
이상 진동 발생 시 즉시 설비를 정지하고
전원 차단 후 베어링과 체결부를 점검한다.
[질문]
프레스 설비에서 이상 진동이 발생하면
어떻게 해야 하나요?
이런 지침을 사용하면 LLM이 임의로 내용을 확대하는 것을 줄일 수 있습니다.
22. RAG용 벡터 데이터베이스
소규모 시험에서는 메모리나 일반 DB에 벡터를 저장하고 코사인 유사도를 직접 계산할 수 있습니다.
운영시스템에서는 벡터 검색을 지원하는 데이터베이스를 사용하는 것이 좋습니다.
| Qdrant | 벡터 검색 전문, 자체 서버 구축 가능 |
| Chroma | Python 기반 RAG 시험에 편리 |
| pgvector | PostgreSQL에서 벡터 검색 |
| Milvus | 대규모 벡터 검색 |
| Weaviate | 검색과 메타데이터 관리 |
| FAISS | 라이브러리 방식의 고속 유사도 검색 |
MariaDB를 기존 업무 DB로 계속 사용하면서 벡터 검색만 Qdrant 같은 별도 시스템으로 구성할 수도 있습니다.
MariaDB
- 문서 기본정보
- 사용자 권한
- 개정이력
- 업무 데이터
Qdrant
- Chunk 임베딩
- 문서 키
- 검색용 메타데이터
이 구조는 기존 MES·ERP 데이터베이스를 크게 변경하지 않고 RAG를 추가하기에 적합합니다.
23. MES Lite에 적용하는 권장 구조
각 구성요소의 역할은 다음과 같습니다.
| C# 프로그램 | 질문 입력과 답변 표시 |
| Flask·ASP.NET | 권한검사, 검색, 프롬프트 구성 |
| MariaDB | 사용자·문서·생산·설비정보 |
| NAS | 원본 PDF·도면·매뉴얼 보관 |
| 벡터 DB | 의미가 유사한 문서 검색 |
| Ollama | 임베딩과 답변 생성 |
| LLM | 검색자료를 바탕으로 답변 |
C# 프로그램에서 Ollama에 바로 연결하는 것도 가능하지만, 운영환경에서는 중간 AI 서버를 두는 방식이 더 안전합니다.
중간 서버에서 다음 기능을 통제할 수 있기 때문입니다.
- 사용자 인증
- 문서 접근권한
- 질문이력
- 사용량 제한
- 프롬프트 관리
- 개인정보 제거
- 모델 변경
- 오류처리
- 답변 출처 관리
24. RAG에서 권한관리가 중요한 이유
사용자가 접근할 수 없는 문서를 벡터 검색 결과로 제공하면 정보유출이 발생할 수 있습니다.
따라서 벡터 검색 시 반드시 사용자 권한을 함께 적용해야 합니다.
질문 접수
→ 로그인 사용자 확인
→ 부서·직책·문서권한 확인
→ 접근 가능한 문서만 검색
→ 검색 결과를 LLM에 전달
→ 답변과 출처 표시
벡터 DB에는 다음 메타데이터를 함께 저장하는 것이 좋습니다.
- 회사코드
- 사업장코드
- 부서코드
- 문서분류
- 보안등급
- 열람권한
- 문서상태
- 개정번호
- 시행일
- 폐기 여부
25. Ollama 보안 설정
Ollama는 기본적으로 로컬 컴퓨터에서 사용하는 것을 전제로 합니다.
다음 주소는 동일한 PC에서만 접근하는 형태입니다.
http://localhost:11434
사내 다른 PC에서 접속하게 하려고 Ollama 포트를 그대로 외부에 노출하는 것은 권장하지 않습니다.
Ollama 로컬 API에는 기업용 사용자 인증과 세밀한 권한관리가 기본 업무시스템 수준으로 포함된 것이 아니기 때문입니다.
권장 구조는 다음과 같습니다.
사용자
→ HTTPS 업무서버
→ 로그인·권한검사
→ Ollama 로컬 API
보안 점검항목은 다음과 같습니다.
- 11434 포트 인터넷 공개 금지
- 방화벽에서 허용 IP 제한
- HTTPS 역방향 프록시 사용
- 사용자 인증 적용
- 질문 및 응답 감사이력
- 민감정보 마스킹
- 모델 다운로드 출처 확인
- 문서별 접근권한 적용
- 백업과 장애대응
- 라이선스 확인
26. 모델 저장 위치 변경
모델 파일은 용량이 매우 크므로 기본 드라이브의 공간이 부족할 수 있습니다.
Windows에서는 사용자 환경변수 OLLAMA_MODELS를 이용해 모델 저장 위치를 변경할 수 있습니다.
예:
변수 이름: OLLAMA_MODELS
변수 값: D:\OllamaModels
설정 순서는 다음과 같습니다.
- Ollama를 종료합니다.
- Windows 환경변수 설정을 엽니다.
- 사용자 환경변수에 OLLAMA_MODELS를 추가합니다.
- 모델을 저장할 폴더를 지정합니다.
- Ollama를 다시 실행합니다.
환경변수 변경 후에는 Ollama를 완전히 종료하고 다시 시작해야 합니다. Ollama FAQ
27. 자주 발생하는 문제
명령어를 찾을 수 없음
'ollama'은 내부 또는 외부 명령이 아닙니다.
대응 방법:
- Ollama 재설치
- Windows 재로그인
- 명령 프롬프트 다시 실행
- 설치경로와 PATH 확인
API 연결 실패
Connection refused
대응 방법:
- Ollama 앱 실행 확인
- ollama serve 실행
- 11434 포트 확인
- 방화벽 확인
응답이 매우 느림
원인:
- 모델이 너무 큼
- GPU 메모리 부족
- CPU만 사용
- 컨텍스트가 너무 김
- 다른 프로그램이 메모리 사용
대응 방법:
- 더 작은 모델 사용
- Q4 양자화 모델 검토
- 입력 문서 길이 축소
- GPU 사용 여부 확인
- 불필요한 프로그램 종료
메모리 부족
대응 방법:
ollama ps
실행 중인 모델을 확인하고 더 작은 모델로 변경합니다.
한국어 답변 품질이 낮음
대응 방법:
- 한국어 성능이 좋은 모델 비교
- 명확한 시스템 프롬프트 작성
- 더 큰 모델 사용
- RAG에 정확한 한국어 자료 제공
- 실제 업무질문으로 평가
28. Ollama 도입 시 주의사항
Ollama를 설치했다고 바로 기업용 AI 시스템이 완성되는 것은 아닙니다.
추가로 필요한 기능은 다음과 같습니다.
- 사용자 및 권한관리
- 문서 수집과 정제
- RAG 검색
- 질문·답변 이력
- 모델 성능평가
- 개인정보 보호
- 장애복구
- GPU 모니터링
- 라이선스 관리
- 답변 검증
- 원문 출처 표시
특히 AI 답변은 확정된 사실이 아니라 모델이 생성한 결과이므로 생산, 품질, 설비 안전과 관련된 중요 결정은 담당자가 최종 확인해야 합니다.
29. 권장 구축 단계
1단계: 개인 PC 시험
- Ollama 설치
- 3B~8B 모델 실행
- 한국어 응답 확인
- C# API 호출 시험
2단계: 모델 비교
- 동일한 질문 목록 준비
- 정확성 비교
- 속도 비교
- 메모리 사용량 확인
- 답변 형식 평가
3단계: RAG 시범 구축
- 작업표준서 10~20개 선정
- 텍스트 추출
- Chunk 분할
- 임베딩 생성
- 유사 문서 검색
- 출처 포함 답변
4단계: 업무 프로그램 연결
- MES 로그인 연동
- 사용자별 권한 적용
- 질문이력 저장
- 답변 화면 구현
- 오류처리
5단계: 사내 서버 운영
- GPU 서버 도입
- 동시 사용자 시험
- HTTPS와 방화벽 구성
- 모델과 문서 백업
- 모니터링과 감사이력
30. Ollama를 활용한 자체 AI의 현실적인 의미
Ollama와 공개형 LLM을 사용하면 ‘자체 AI 서비스’를 구축할 수 있습니다.
그러나 이는 거대언어모델을 처음부터 직접 학습해 만든다는 의미와는 다릅니다.
현실적인 자체 AI 구축은 다음과 같습니다.
공개형 LLM을 회사 서버에서 운영하고,
회사 문서와 업무데이터를 RAG로 연결하며,
회사의 권한과 업무규칙을 적용한 AI 서비스
중소 제조업에서는 이 방식이 비용과 개발 난이도 측면에서 가장 현실적입니다.
마무리
Ollama는 Llama, Qwen, Gemma, Phi와 같은 공개형 LLM을 개인 PC나 회사 서버에서 쉽게 실행할 수 있도록 해주는 로컬 AI 플랫폼입니다.
명령어 몇 개로 모델을 내려받아 대화할 수 있고, REST API를 이용해 C# WinForms, .NET MAUI, Flask, MES, ERP와 연결할 수 있습니다.
Ollama의 가치는 단순히 로컬에서 AI와 대화하는 데 그치지 않습니다.
- 사내 문서검색
- 설비 매뉴얼 질의응답
- 작업표준서 안내
- 생산실적 분석
- 품질문서 요약
- 프로그램 개발 지원
- 자체 AI 업무도우미
특히 RAG를 결합하면 LLM의 일반지식과 회사의 실제 업무자료를 연결할 수 있습니다.
처음에는 개인 PC에서 작은 모델을 실행하고, 실제 업무문서로 RAG를 시험한 뒤, 효과가 확인되면 사내 AI 서버로 확장하는 방법을 권장합니다.
조그만 기술로 세상을 이롭게
'AI > LLM' 카테고리의 다른 글
| 파인튜닝이란? LLM을 우리 업무에 맞게 학습시키는 방법 (1) | 2026.08.04 |
|---|---|
| RAG란? 사내 문서와 LLM을 연결하는 검색증강생성 완벽 이해 (0) | 2026.08.04 |
| 무료 LLM이란? Meta·OpenAI 등 공개형 AI 모델 비교 (0) | 2026.08.03 |
| Transformer란? LLM을 만든 핵심 AI 기술 (0) | 2026.08.03 |
| LLM이란? 생성형 AI를 움직이는 거대언어모델 이해하기 (1) | 2026.08.03 |