Nếu bạn đã chán cảnh gửi mọi prompt lập trình lên API cloud, thì OpenCode kết hợp Ollama chính là thiết lập bạn đang tìm. Nó hoạt động được, nhưng cũng chậm hơn và dễ gặp trục trặc hơn so với những gì các bản demo cho thấy.
Kỳ vọng hợp lý rất đơn giản: OpenCode cục bộ rất lý tưởng cho các công việc nhỏ, riêng tư và lặp đi lặp lại. Nhưng đừng giao cho nó xử lý một đợt migration nhiều file lộn xộn — trừ khi bạn thích ngồi canh chừng.
Cài đặt Ollama
Trên macOS:
brew install --cask ollama-app
open -a Ollama
Trên Linux:
curl -fsSL https://ollama.com/install.sh | sh
Sau đó tải model về:
ollama pull gemma4
Kiểm tra xem model đã sẵn sàng chưa:
ollama list
Dùng chính xác tên model từ output đó trong cấu hình OpenCode của bạn.
Cấu hình OpenCode
OpenCode có thể giao tiếp với các provider tương thích OpenAI. Ollama cung cấp endpoint tương thích tại:
http://localhost:11434/v1
Thêm provider Ollama vào file cấu hình OpenCode:
{
"provider": {
"ollama": {
"npm": "@ai-sdk/openai-compatible",
"options": {
"baseURL": "http://localhost:11434/v1"
},
"models": {
"gemma4:latest": {}
}
}
}
}
Nếu OpenCode yêu cầu xác thực, hãy dùng API key tạm:
{
"ollama": {
"type": "api",
"key": "ollama"
}
}
Khởi động lại OpenCode và chuyển sang model Ollama từ menu chọn model.
Các model nên thử trước
Gemma 4
Lựa chọn khởi đầu tốt. Xử lý tốt việc giải thích code, chỉnh sửa đơn giản và code nhỏ. Chạy được trên các máy có cấu hình khiêm tốn so với các model code lớn hơn.
Qwen3.5
Thường tốt hơn cho code, đặc biệt nếu bạn chạy được biến thể lớn hơn. Các model cỡ 27B hữu ích hơn nhiều so với các model nhỏ, nhưng chúng ngốn khá nhiều RAM.
Llama 3.3
Model đa năng tốt nếu bạn có phần cứng đủ mạnh. Kém tiện lợi hơn trên các laptop cấu hình thấp.
Kỳ vọng về hiệu năng
Các thread gần đây về model cục bộ đều nói thẳng điều mà nhiều người ngại nhắc đến: prompt có thể chạy được, code có thể tốt, nhưng tổng thể vẫn có cảm giác chậm khi các tool call bắt đầu chồng chéo.
Chuyện này hoàn toàn bình thường. Một coding agent không phải là một request chat đơn lẻ — nó đọc file, lập kế hoạch, chỉnh sửa, kiểm tra output rồi lặp lại. Suy luận cục bộ khiến từng vòng lặp lộ rõ hơn.
Để dễ chịu hơn:
- Giữ context nhỏ
- Dùng model nhỏ hơn cho các chỉnh sửa đơn giản
- Giữ model luôn trong RAM
- Đóng các ứng dụng ngốn bộ nhớ
- Dùng cloud dự phòng cho các lần refactor dài
Giữ Ollama luôn trong RAM
export OLLAMA_KEEP_ALIVE="-1"
Khởi động lại Ollama sau khi thiết lập. Điều này giúp tránh cold start lặp đi lặp lại trong một phiên lập trình.
Khi nào nên dùng cloud dự phòng
Dùng OpenCode cục bộ cho:
- Đọc code chưa quen
- Soạn thảo các thay đổi nhỏ
- Tạo test
- Giải thích lỗi
- Làm việc với file riêng tư
Dùng model cloud cho:
- Refactor nhiều file
- Debug khó
- Thay đổi kiến trúc
- Bất cứ thứ gì bạn không muốn review từng dòng
Thiết lập tốt nhất không phải là chỉ dùng cục bộ — mà là ưu tiên cục bộ trước.
Thiết lập liên quan
Nếu mục tiêu thực sự của bạn là Gemma 4, hãy đọc Thiết lập Gemma 4 với Ollama. Nếu bạn đang dùng OpenClaw thay vì OpenCode, hãy xem Gemma 4 với OpenClaw.