Ollama: Chạy LLM cục bộ không cần GPU đắt tiền

Bạn muốn chạy mô hình ngôn ngữ lớn (LLM) ngay trên laptop cá nhân mà không cần đầu tư card đồ họa đắt tiền? Ollama là giải pháp hoàn hảo — công cụ mã nguồn mở đóng gói mọi thứ bạn cần để tải, chạy và quản lý LLM cục bộ chỉ bằng vài dòng lệnh.

Ollama là gì?

Ollama là nền tảng chạy LLM cục bộ được xây dựng bằng Go, hỗ trợ macOS, Linux và Windows (qua WSL2). Nó đóng gói model weights, tokenizer và inference engine vào một binary duy nhất — không cần Docker, không cần Python environment phức tạp, không cần GPU NVIDIA với CUDA.

Sơ đồ kiến trúc mô hình ngôn ngữ đa phương thức vision-language-action

Tại sao chọn Ollama?

  • Zero config: ollama run llama3.2 — model tự động tải về và chạy ngay
  • CPU inference: Tận dụng CPU instruction set (AVX2, AVX-512, ARM NEON) — chạy được trên Mac M-series, laptop Intel/AMD hiện đại
  • Quantization built-in: Hỗ trợ GGUF 4-bit, 8-bit — giảm VRAM/RAM 4-8 lần so với FP16
  • Model library phong phú: Llama 3.2, Qwen 2.5, Phi-3, Gemma 2, DeepSeek-Coder, CodeLlama… hơn 200 model sẵn có
  • OpenAI-compatible API: ollama serveExpose REST API tại http://localhost:11434 — drop-in replacement cho OpenAI SDK
  • Modelfile tùy chỉnh: Tạo model riêng với system prompt, template, parameters — giống Dockerfile cho LLM
  • Quantization chi tiết: GGUF format hỗ trợ nhiều cấp quantization từ Q2 đến Q8. Q4_K_M là sweet spot: chất lượng gần FP16, dung lượng giảm 75%. Q5_K_M cho use case cần độ chính xác cao hơn.
  • GPU acceleration: Trên macOS, Ollama dùng Metal API — tốc độ gấp 3-5 lần CPU thuần. Trên Linux, ROCm hỗ trợ AMD GPU. NVIDIA CUDA vẫn tốt nhất nhưng yêu cầu driver riêng.
  • Multi-model hosting: Chạy nhiều model song song trên cùng một server, tự động load/unload dựa trên memory pressure.

Cài đặt và chạy model đầu tiên

macOS (Apple Silicon)

brew install ollama
ollama serve  # chạy background
ollama run llama3.2:3b  # model 3B params, ~2GB RAM

Linux

curl -fsSL https://ollama.com/install.sh | sh
ollama run qwen2.5:7b-instruct-q4_k_m

Windows (WSL2)

winget install Ollama.Ollama
# hoặc tải installer từ ollama.com/download
ollama run phi3:mini
Biểu đồ Venn quan hệ giữa trí tuệ nhân tạo và mô hình sinh tạo

So sánh hiệu năng CPU vs GPU

Model Params Quant RAM cần Tokens/giây (CPU M2) Tokens/giây (RTX 3060 12GB)
Llama 3.2 3B Q4_K_M ~2.5 GB ~45 tok/s ~120 tok/s
Qwen 2.5 7B Q4_K_M ~5 GB ~22 tok/s ~85 tok/s
Phi-3 3.8B Q4_K_M ~3 GB ~38 tok/s ~100 tok/s
Gemma 2 9B Q4_K_M ~6 GB ~16 tok/s ~70 tok/s

Trên CPU Apple Silicon (Unified Memory), hiệu năng ấn tượng nhờ memory bandwidth cao. Trên x86 CPU, tốc độ chậm hơn nhưng vẫn dùng được cho chat, summarization, coding assist.

Tích hợp vào workflow developer

VS Code extension: CodeGPT / Continue

Cài extension Continue, cấu hình config.json:

{
  "models": [
    {
      "title": "Ollama - Qwen 2.5 Coder",
      "provider": "ollama",
      "model": "qwen2.5-coder:7b",
      "apiBase": "http://localhost:11434"
    }
  ]
}

Terminal AI với llm CLI

pip install llm
llm install llm-ollama
llm -m ollama/qwen2.5:7b "viết regex extract email từ log"

Ollama + LangChain / LlamaIndex

from langchain_community.llms import Ollama
llm = Ollama(model="llama3.2", base_url="http://localhost:11434")
print(llm.invoke("Giải thích RAG trong 3 câu"))

Tạo model tùy chỉnh với Modelfile

Ví dụ: model code reviewer tiếng Việt:

FROM qwen2.5-coder:7b
SYSTEM """Bạn là senior code reviewer. Phân tích code tiếng Việt, chỉ ra bug, security issue, performance, style. Trả lời ngắn gọn, có ví dụ sửa."""
PARAMETER temperature 0.1
PARAMETER top_p 0.9

Build và chạy:

ollama create code-reviewer-vi -f Modelfile
ollama run code-reviewer-vi

Quản lý model: xóa, cập nhật, export

  • ollama list — xem model đã cài, dung lượng
  • ollama rm llama3.2:3b — xóa model
  • ollama pull llama3.2:latest — cập nhật phiên bản mới
  • ollama create my-model -f Modelfile — build từ Modelfile
  • ollama run --verbose llama3.2 — debug template, token usage

Khi nào KHÔNG nên dùng Ollama?

  • Cần throughput cao (>100 concurrent requests) — dùng vLLM hoặc llama.cpp server
  • Cần model >70B params — RAM CPU thường không đủ
  • Production serving cần SLA, autoscaling, monitoring — dùng TGI, vLLM, Triton
  • Cần fine-tuning — Ollama chỉ inference, không train

Troubleshooting phổ biến

  • Model không tải được: Kiểm tra disk space, xóa partial file ở ~/.ollama/models, thử lại với ollama pull.
  • Chậm trên CPU: Đảm bảo AVX2/AVX-512 enabled trong BIOS, đóng ứng dụng tốn RAM, thử quantization thấp hơn (Q3 thay vì Q4).
  • OOM (Out of Memory): Giảm context length trong Modelfile PARAMETER num_ctx 2048 (mặc định 2048, tăng lên 4096/8192 tốn RAM nhiều).
  • API không kết nối được: Kiểm tra ollama serve đang chạy, firewall không chặn port 11434, đúng host 0.0.0.0 nếu cần remote access.

Tài liệu tham khảo

Tôi là một lập trình viên IOS. Code chính là IOS nhưng thỉnnh thoảng vẫn đá sang Android hoặc web. Mặc dù không quá thông thạo nhưng tôi sẽ chia sẻ những kiến thức mà mình đã tìm hiểu, áp dụng qua.

Bài viết liên quan

Gradient Descent là gì: Thuật toán tối ưu mọi mô hình học máy

Gradient Descent là gì: Thuật toán tối ưu mọi mô hình học máy Gradient descent là thuật toán tối ưu cơ bản nhất của học máy, dùng để tìm các…

Xem thêm

BERT là gì: mô hình nền tảng cho xử lý ngôn ngữ tự nhiên

BERT là gì: mô hình nền tảng cho xử lý ngôn ngữ tự nhiên BERT (Bidirectional Encoder Representations from Transformers) là mô hình ngôn ngữ hai chiều dựa trên kiến…

Xem thêm

AlphaFold là gì: AI dự đoán cấu trúc 3D của protein như thế nào

AlphaFold là gì: AI dự đoán cấu trúc 3D của protein như thế nào AlphaFold là hệ thống trí tuệ nhân tạo do DeepMind phát triển, dự đoán cấu trúc…

Xem thêm
0 0 đánh giá
Article Rating
Theo dõi
Thông báo của
guest
0 Comments
Cũ nhất
Mới nhất Được bỏ phiếu nhiều nhất