- Tác giả
- Name
- Nguyễn Đức Xinh
- Ngày xuất bản
- Ngày xuất bản
Ollama là gì? Nền tảng chạy mô hình ngôn ngữ lớn (LLMs) cục bộ trên máy tính của bạn
🧠 Ollama là gì?
Ollama là một nền tảng (hoặc runtime) cho phép bạn chạy các mô hình ngôn ngữ lớn (LLMs) như Llama 3, Mistral, Phi, Gemma,… ngay trên máy tính của bạn, mà không cần kết nối Internet hay API từ OpenAI/Anthropic.
👉 Nói ngắn gọn: Ollama là một công cụ để tải, quản lý và chạy các mô hình AI cục bộ.
⚙️ Cách hoạt động
Ollama hoạt động tương tự như Docker, nhưng dành cho AI models.
Khi bạn chạy lệnh:
ollama run llama3
Ollama sẽ:
- Tải model (ví dụ
llama3
) về máy từ registry của họ (giống Docker Hub). - Lưu model vào local cache (thường trong
~/.ollama
). - Chạy model thông qua một local server trên
localhost:11434
. - Nhận request từ client (CLI, HTTP API, hoặc SDK).
- Trả về kết quả text (hoặc structured JSON) giống như bạn gọi OpenAI API vậy.
🧩 Kiến trúc cơ bản
+----------------+
| Your App |
| (Python, JS...)|
+-------+--------+
|
| HTTP (localhost:11434)
v
+------------------+
| Ollama Server |
| (runs locally) |
+------------------+
|
| Load .gguf model
v
+------------------+
| LLM Engine (C++) |
| llama.cpp core |
+------------------+
- Ollama sử dụng llama.cpp ở tầng thấp để thực thi inference nhanh bằng CPU/GPU.
- Nó đóng gói lại và thêm model manager, HTTP API, config system, giúp developer dễ dùng hơn.
🧰 Một số lệnh cơ bản
# Kiểm tra các model đã cài
ollama list
# Chạy một model
ollama run llama3
# Tải model về
ollama pull mistral
# Xóa model
ollama rm phi3
# API mode (giống OpenAI API)
curl http://localhost:11434/api/generate -d '{"model":"llama3","prompt":"Hello"}'
📦 File cấu hình model (Modelfile
)
Ollama hỗ trợ file Modelfile
— tương tự Dockerfile
— để tùy chỉnh model:
FROM llama3
PARAMETER temperature 0.7
SYSTEM "You are a helpful assistant"
Rồi build model custom:
ollama create mymodel -f Modelfile
Giờ bạn có thể chạy:
ollama run mymodel
💻 Tích hợp với ứng dụng
Ollama cung cấp API giống OpenAI, vì vậy bạn có thể thay thế nhanh:
// JavaScript (Node.js)
const response = await fetch('http://localhost:11434/api/generate', {
method: 'POST',
body: JSON.stringify({ model: 'llama3', prompt: 'Hello!' }),
});
const data = await response.json();
console.log(data.response);
Hoặc dùng trong Python:
import requests
resp = requests.post('http://localhost:11434/api/generate', json={
'model': 'mistral',
'prompt': 'Explain what Ollama is in 2 sentences.'
})
print(resp.json()['response'])
🚀 Ưu điểm
✅ Chạy offline — Không cần Internet, không gửi dữ liệu ra ngoài. ✅ Nhanh & riêng tư — Dữ liệu xử lý cục bộ, không qua server bên thứ 3. ✅ Dễ tích hợp — Có HTTP API, SDK cho JS, Python, Go,… ✅ Tương thích nhiều model — Llama, Mistral, Phi, Gemma, CodeLlama,…
⚠️ Nhược điểm
❌ Tốn RAM & VRAM — Model lớn như Llama 3 70B cần GPU mạnh (hoặc nhiều RAM nếu chạy CPU). ❌ Không fine-tuning online (chỉ hỗ trợ embedding, custom prompt). ❌ Chậm hơn Cloud API nếu không có GPU mạnh. ❌ Không có model “mới nhất” như GPT-4o (vì bản quyền và kích thước).
💡 Ứng dụng thực tế
- Chạy AI chatbot cục bộ trong công ty (bảo mật dữ liệu).
- Tạo local coding assistant (giống Copilot, nhưng không cần Internet).
- Tích hợp vào Edge AI system, server nội bộ, hoặc offline demo.
- Kết hợp với LangChain, LlamaIndex, hoặc RAG pipelines.
🔒 So sánh nhanh với OpenAI API
Tính năng | Ollama | OpenAI API |
---|---|---|
Chạy offline | ✅ | ❌ |
Tốc độ | Nhanh (tùy GPU) | Nhanh (Cloud) |
Dữ liệu riêng tư | ✅ | ❌ (qua Internet) |
Model mạnh (GPT-4) | ❌ | ✅ |
Chi phí | Miễn phí (sau khi tải model) | Tính theo token |
Dễ tích hợp | ✅ | ✅ |
🔧 Mẹo cho developer
-
Có thể proxy Ollama API như OpenAI API để test local trước khi lên cloud.
-
Dùng Docker để deploy Ollama server:
docker run -d -p 11434:11434 ollama/ollama
-
Có thể kết hợp RAG bằng cách dùng Ollama + LlamaIndex hoặc LangChain.
📚 Kết luận
Ollama là một giải pháp tuyệt vời cho developer muốn:
- Tự chạy LLM tại chỗ,
- Giữ dữ liệu an toàn,
- Không tốn phí API,
- Và vẫn có khả năng mở rộng cho các ứng dụng thực tế như chatbot, document QA, code assistant,...