Làm thế nào để nâng cấp Ollama?
Ollama trên macOS và Windows sẽ tự động tải xuống các bản cập nhật. Nhấp vào mục trên thanh tác vụ hoặc thanh menu, sau đó nhấp vào "Khởi động lại để cập nhật" để áp dụng bản cập nhật. Bạn cũng có thể cài đặt các bản cập nhật bằng cách tải xuống phiên bản mới nhất thủ công.
Trên Linux, hãy chạy lại tập lệnh cài đặt:
shell
curl -fsSL https://ollama.com/install.sh | shLàm thế nào để xem nhật ký (logs)?
Tham khảo tài liệu Khắc phục sự cố để biết thêm về cách sử dụng logs.
Card đồ họa (GPU) của tôi có tương thích với Ollama không?
Vui lòng tham khảo tài liệu GPU.
Làm thế nào để chỉ định kích thước cửa sổ ngữ cảnh?
Theo mặc định, Ollama sử dụng cửa sổ ngữ cảnh có kích thước 4096 token.
Bạn có thể ghi đè giá trị này bằng biến môi trường OLLAMA_CONTEXT_LENGTH. Ví dụ, để đặt cửa sổ ngữ cảnh mặc định thành 8K, sử dụng lệnh:
shell
OLLAMA_CONTEXT_LENGTH=8192 ollama serveĐể thay đổi giá trị này khi sử dụng lệnh ollama run, hãy dùng lệnh /set parameter:
shell
/set parameter num_ctx 4096Khi sử dụng API, hãy chỉ định tham số num_ctx:
shell
curl http://localhost:11434/api/generate -d '{
"model": "llama3.2",
"prompt": "Why is the sky blue?",
"options": {
"num_ctx": 4096
}
}'Làm thế nào để biết mô hình của tôi đã được tải lên GPU chưa?
Sử dụng lệnh ollama ps để xem các mô hình hiện đang được tải vào bộ nhớ.
shell
ollama psINFO
Kết quả xuất ra:
NAME ID SIZE PROCESSOR UNTIL
llama3:70b bcfb190ca3a7 42 GB 100% GPU 4 minutes from nowCột Processor sẽ hiển thị loại bộ nhớ mà mô hình được tải vào:
100% GPUnghĩa là mô hình được tải hoàn toàn vào GPU100% CPUnghĩa là mô hình được tải hoàn toàn vào bộ nhớ hệ thống48%/52% CPU/GPUnghĩa là mô hình được tải một phần vào cả GPU và bộ nhớ hệ thống
Làm thế nào để cấu hình máy chủ Ollama?
Máy chủ Ollama có thể được cấu hình thông qua các biến môi trường.
Thiết lập biến môi trường trên Mac
Nếu Ollama được chạy dưới dạng ứng dụng macOS, bạn cần thiết lập biến môi trường bằng công cụ launchctl:
- Đối với mỗi biến môi trường, gọi lệnh
launchctl setenv.bashlaunchctl setenv OLLAMA_HOST "0.0.0.0:11434" - Khởi động lại ứng dụng Ollama.
Thiết lập biến môi trường trên Linux
Nếu Ollama được chạy dưới dạng dịch vụ systemd, bạn cần thiết lập biến môi trường bằng công cụ systemctl:
- Chỉnh sửa dịch vụ systemd bằng lệnh
systemctl edit ollama.service. Lệnh này sẽ mở một trình soạn thảo văn bản. - Đối với mỗi biến môi trường, thêm một dòng
Environmentvào phần[Service]:ini[Service] Environment="OLLAMA_HOST=0.0.0.0:11434" - Lưu và thoát trình soạn thảo.
- Tải lại cấu hình
systemdvà khởi động lại Ollama:shellsystemctl daemon-reload systemctl restart ollama
Thiết lập biến môi trường trên Windows
Trên Windows, Ollama sẽ kế thừa các biến môi trường của người dùng và hệ thống của bạn.
- Đầu tiên, thoát Ollama bằng cách nhấp vào biểu tượng của Ollama trên thanh tác vụ.
- Mở ứng dụng Cài đặt (Windows 11) hoặc Bảng điều khiển (Windows 10) và tìm kiếm mục biến môi trường.
- Nhấp vào mục Chỉnh sửa biến môi trường cho tài khoản của bạn.
- Chỉnh sửa hoặc tạo biến môi trường mới cho tài khoản người dùng của bạn với các tên như
OLLAMA_HOST,OLLAMA_MODELS, v.v. - Nhấp OK/Apply để lưu thay đổi.
- Khởi động ứng dụng Ollama từ menu Start của Windows.
Làm thế nào để sử dụng Ollama qua máy chủ proxy?
Ollama tải các mô hình từ Internet và có thể cần dùng máy chủ proxy để truy cập các mô hình này. Sử dụng biến môi trường HTTPS_PROXY để chuyển hướng các yêu cầu đi ra ngoài thông qua proxy. Đảm bảo chứng chỉ proxy đã được cài đặt dưới dạng chứng chỉ hệ thống. Tham khảo phần ở trên để biết cách thiết lập biến môi trường trên nền tảng của bạn.
Lưu ý
Không nên thiết lập biến HTTP_PROXY. Ollama không sử dụng giao thức HTTP để tải mô hình, chỉ sử dụng HTTPS. Thiết lập HTTP_PROXY có thể làm gián đoạn kết nối giữa máy khách và máy chủ.
Làm thế nào để sử dụng Ollama qua proxy trong Docker?
Hình ảnh container Docker của Ollama có thể được cấu hình để sử dụng proxy bằng cách truyền tham số -e HTTPS_PROXY=https://proxy.example.com khi khởi động container.
Ngoài ra, bạn có thể cấu hình daemon Docker để sử dụng proxy. Hướng dẫn cấu hình có sẵn cho Docker Desktop trên macOS, Windows, Linux và daemon Docker sử dụng systemd.
Đảm bảo chứng chỉ đã được cài đặt dưới dạng chứng chỉ hệ thống khi sử dụng HTTPS. Bạn có thể cần xây dựng một hình ảnh Docker mới nếu sử dụng chứng chỉ tự ký.
dockerfile
FROM ollama/ollama
COPY my-ca.pem /usr/local/share/ca-certificates/my-ca.crt
RUN update-ca-certificatesXây dựng và chạy hình ảnh này:
shell
docker build -t ollama-with-ca .
docker run -d -e HTTPS_PROXY=https://my.proxy.example.com -p 11434:11434 ollama-with-caOllama có gửi lại lời nhắc (prompt) và câu trả lời của tôi về ollama.com không?
Ollama chạy cục bộ trên thiết bị của bạn. Chúng tôi không thấy các lời nhắc (prompt) hoặc dữ liệu của bạn khi bạn chạy Ollama ở chế độ cục bộ. Khi sử dụng các mô hình được lưu trữ trên đám mây, chúng tôi xử lý các lời nhắc và phản hồi của bạn để cung cấp dịch vụ, nhưng không lưu trữ hoặc ghi lại nội dung này và không sử dụng nội dung đó để huấn luyện mô hình. Chúng tôi chỉ thu thập thông tin tài khoản cơ bản và siêu dữ liệu sử dụng hạn chế để cung cấp dịch vụ, không bao gồm nội dung lời nhắc hoặc phản hồi. Chúng tôi không bán dữ liệu của bạn. Bạn có thể xóa tài khoản của mình bất cứ lúc nào.
Làm thế nào để tắt các tính năng đám mây của Ollama?
Bạn có thể chạy Ollama ở chế độ chỉ cục bộ bằng cách tắt các tính năng đám mây của Ollama. Khi tắt các tính năng này, bạn sẽ không thể sử dụng các mô hình đám mây và tính năng tìm kiếm web của Ollama nữa.
Đặt thuộc tính disable_ollama_cloud trong tệp ~/.ollama/server.json:
json
{
"disable_ollama_cloud": true
}Bạn cũng có thể thiết lập biến môi trường:
shell
OLLAMA_NO_CLOUD=1Khởi động lại Ollama sau khi thay đổi cấu hình. Khi đã tắt, nhật ký (logs) của Ollama sẽ hiển thị thông báo Ollama cloud disabled: true.
Làm thế nào để công khai Ollama trên mạng của tôi?
Theo mặc định, Ollama liên kết với địa chỉ 127.0.0.1 trên cổng 11434. Bạn có thể thay đổi địa chỉ liên kết bằng biến môi trường OLLAMA_HOST.
Tham khảo phần ở trên để biết cách thiết lập biến môi trường trên nền tảng của bạn.
Làm thế nào để sử dụng Ollama với máy chủ proxy?
Ollama chạy một máy chủ HTTP và có thể được công khai thông qua máy chủ proxy như Nginx. Để thực hiện điều này, cấu hình proxy để chuyển tiếp các yêu cầu và tùy chọn thiết lập các tiêu đề yêu cầu (nếu không công khai Ollama trên mạng). Ví dụ, với Nginx:
nginx
server {
listen 80;
server_name example.com; # Thay thế bằng tên miền hoặc địa chỉ IP của bạn
location / {
proxy_pass http://localhost:11434;
proxy_set_header Host localhost:11434;
}
}Làm thế nào để sử dụng Ollama với ngrok?
Bạn có thể truy cập Ollama thông qua nhiều ứng dụng đường hầm khác nhau. Ví dụ với Ngrok:
shell
ngrok http 11434 --host-header="localhost:11434"Làm thế nào để sử dụng Ollama với Cloudflare Tunnel?
Để sử dụng Ollama với Cloudflare Tunnel, sử dụng các cờ --url và --http-host-header:
shell
cloudflared tunnel --url http://localhost:11434 --http-host-header="localhost:11434"Làm thế nào để cho phép các nguồn web bổ sung truy cập Ollama?
Theo mặc định, Ollama cho phép các yêu cầu cross-origin từ 127.0.0.1 và 0.0.0.0. Bạn có thể cấu hình các nguồn bổ sung bằng biến môi trường OLLAMA_ORIGINS.
Đối với tiện ích mở rộng trình duyệt, bạn cần cho phép rõ ràng mẫu nguồn của tiện ích đó. Đặt biến OLLAMA_ORIGINS để bao gồm chrome-extension://*, moz-extension://* và safari-web-extension://* nếu bạn muốn cho phép tất cả các tiện ích mở rộng trình duyệt truy cập, hoặc chỉ các tiện ích cụ thể tùy theo nhu cầu:
# Cho phép tất cả tiện ích mở rộng của Chrome, Firefox và Safari
OLLAMA_ORIGINS=chrome-extension://*,moz-extension://*,safari-web-extension://* ollama serveTham khảo phần ở trên để biết cách thiết lập biến môi trường trên nền tảng của bạn.
Các mô hình được lưu trữ ở đâu?
- macOS:
~/.ollama/models - Linux:
/usr/share/ollama/.ollama/models - Windows:
C:\Users\%username%\.ollama\models
Làm thế nào để đổi vị trí lưu trữ mô hình sang thư mục khác?
Nếu bạn cần sử dụng thư mục khác, hãy đặt biến môi trường OLLAMA_MODELS thành đường dẫn thư mục bạn muốn sử dụng.
Lưu ý
Trên Linux khi sử dụng bộ cài đặt tiêu chuẩn, người dùng ollama cần có quyền đọc và ghi vào thư mục đã chỉ định. Để gán quyền sở hữu thư mục cho người dùng ollama, chạy lệnh sudo chown -R ollama:ollama <directory>.
Tham khảo phần ở trên để biết cách thiết lập biến môi trường trên nền tảng của bạn.
Làm thế nào để sử dụng Ollama trong Visual Studio Code?
Hiện đã có rất nhiều plugin có sẵn cho VS Code cũng như các trình soạn thảo khác tích hợp với Ollama. Bạn có thể xem danh sách tiện ích mở rộng và plugin ở cuối tệp readme chính của kho lưu trữ.
Làm thế nào để sử dụng Ollama với tăng tốc GPU trong Docker?
Container Docker của Ollama có thể được cấu hình để sử dụng tăng tốc GPU trên Linux hoặc Windows (kết hợp với WSL2). Tính năng này yêu cầu cài đặt nvidia-container-toolkit. Tham khảo hình ảnh ollama/ollama để biết thêm chi tiết.
Tăng tốc GPU không khả dụng cho Docker Desktop trên macOS do thiếu khả năng truyền qua GPU và giả lập GPU.
Tại sao kết nối mạng chậm trên WSL2 của Windows 10?
Vấn đề này có thể ảnh hưởng đến cả quá trình cài đặt Ollama và tải xuống các mô hình.
Mở Control Panel > Networking and Internet > View network status and tasks và nhấp vào Change adapter settings ở panel bên trái. Tìm adapter vEthernet (WSL), nhấp chuột phải và chọn Properties. Nhấp vào Configure và mở tab Advanced. Tìm kiếm qua từng thuộc tính cho đến khi tìm thấy Large Send Offload Version 2 (IPv4) và Large Send Offload Version 2 (IPv6). Tắt cả hai thuộc tính này.
Làm thế nào để tải trước mô hình vào Ollama để có thời gian phản hồi nhanh hơn?
Nếu bạn đang sử dụng API, bạn có thể tải trước mô hình bằng cách gửi một yêu cầu trống đến máy chủ Ollama. Tính năng này hoạt động với cả hai điểm cuối API /api/generate và /api/chat.
Để tải trước mô hình mistral sử dụng điểm cuối generate, dùng lệnh:
shell
curl http://localhost:11434/api/generate -d '{"model": "mistral"}'Để sử dụng điểm cuối chat completions, dùng lệnh:
shell
curl http://localhost:11434/api/chat -d '{"model": "mistral"}'Để tải trước mô hình sử dụng dòng lệnh (CLI), dùng lệnh:
shell
ollama run llama3.2 ""Làm thế nào để giữ mô hình trong bộ nhớ hoặc giải phóng ngay lập tức?
Theo mặc định, các mô hình được giữ trong bộ nhớ trong 5 phút trước khi được giải phóng. Tính năng này giúp có thời gian phản hồi nhanh hơn nếu bạn gửi nhiều yêu cầu đến LLM (Mô hình ngôn ngữ lớn). Nếu bạn muốn giải phóng ngay lập tức một mô hình khỏi bộ nhớ, hãy sử dụng lệnh ollama stop:
shell
ollama stop llama3.2Nếu bạn đang sử dụng API, hãy sử dụng tham số keep_alive với các điểm cuối /api/generate và /api/chat để đặt thời gian mô hình được giữ trong bộ nhớ. Tham số keep_alive có thể được đặt thành các giá trị sau:
- chuỗi thời gian (ví dụ "10m" hoặc "24h")
- số giây (ví dụ 3600)
- bất kỳ số âm nào, sẽ giữ mô hình luôn được tải trong bộ nhớ (ví dụ -1 hoặc "-1m")
0sẽ giải phóng mô hình ngay sau khi tạo xong phản hồi
Ví dụ, để tải trước mô hình và giữ nó trong bộ nhớ, sử dụng lệnh:
shell
curl http://localhost:11434/api/generate -d '{"model": "llama3.2", "keep_alive": -1}'Để giải phóng mô hình và dọn dẹp bộ nhớ, sử dụng lệnh:
shell
curl http://localhost:11434/api/generate -d '{"model": "llama3.2", "keep_alive": 0}'Ngoài ra, bạn có thể thay đổi thời gian tất cả các mô hình được giữ trong bộ nhớ bằng cách đặt biến môi trường OLLAMA_KEEP_ALIVE khi khởi động máy chủ Ollama. Biến OLLAMA_KEEP_ALIVE sử dụng các kiểu tham số giống như tham số keep_alive đã đề cập ở trên. Tham khảo phần giải thích cách cấu hình máy chủ Ollama để thiết lập đúng biến môi trường.
Tham số API keep_alive với các điểm cuối /api/generate và /api/chat sẽ ghi đè lên cấu hình của biến OLLAMA_KEEP_ALIVE.
Làm thế nào để quản lý số lượng yêu cầu tối đa mà máy chủ Ollama có thể xếp hàng chờ?
Nếu quá nhiều yêu cầu được gửi đến máy chủ, máy chủ sẽ trả về lỗi 503 cho biết máy chủ đang quá tải. Bạn có thể điều chỉnh số lượng yêu cầu được phép xếp hàng chờ bằng cách đặt giá trị cho biến OLLAMA_MAX_QUEUE.
Ollama xử lý các yêu cầu đồng thời như thế nào?
Ollama hỗ trợ hai mức xử lý đồng thời. Nếu hệ thống của bạn có đủ bộ nhớ khả dụng (bộ nhớ hệ thống khi sử dụng suy luận trên CPU, hoặc VRAM khi sử dụng suy luận trên GPU) thì nhiều mô hình có thể được tải cùng lúc. Đối với một mô hình cụ thể, nếu có đủ bộ nhớ khả dụng khi tải mô hình, mô hình đó sẽ được cấu hình để cho phép xử lý yêu cầu song song.
Nếu không có đủ bộ nhớ khả dụng để tải yêu cầu mô hình mới trong khi một hoặc nhiều mô hình đã được tải, tất cả các yêu cầu mới sẽ được xếp hàng chờ cho đến khi mô hình mới có thể được tải. Khi các mô hình trước đó trở nên nhàn rỗi, một hoặc nhiều mô hình sẽ được giải phóng để nhường chỗ cho mô hình mới. Các yêu cầu xếp hàng chờ sẽ được xử lý theo thứ tự. Khi sử dụng suy luận trên GPU, các mô hình mới phải có thể vừa hoàn toàn trong VRAM để cho phép tải đồng thời nhiều mô hình.
Xử lý yêu cầu song song đối với một mô hình cụ thể sẽ làm tăng kích thước ngữ cảnh bằng số lượng yêu cầu song song. Ví dụ, ngữ cảnh 2K với 4 yêu cầu song song sẽ dẫn đến ngữ cảnh 8K và phân bổ thêm bộ nhớ.
Các cài đặt máy chủ sau có thể được sử dụng để điều chỉnh cách Ollama xử lý yêu cầu đồng thời trên hầu hết các nền tảng:
OLLAMA_MAX_LOADED_MODELS- Số lượng mô hình tối đa có thể được tải đồng thời, với điều kiện chúng vừa trong bộ nhớ khả dụng. Giá trị mặc định là 3 * số lượng GPU, hoặc 3 nếu sử dụng suy luận trên CPU.OLLAMA_NUM_PARALLEL- Số lượng yêu cầu song song tối đa mà mỗi mô hình sẽ xử lý cùng lúc, giá trị mặc định là 1. Lượng RAM yêu cầu sẽ tỷ lệ thuận vớiOLLAMA_NUM_PARALLEL*OLLAMA_CONTEXT_LENGTH.OLLAMA_MAX_QUEUE- Số lượng yêu cầu tối đa mà Ollama sẽ xếp hàng chờ khi đang bận trước khi từ chối các yêu cầu bổ sung. Giá trị mặc định là 512
Lưu ý: Hệ thống Windows sử dụng GPU Radeon hiện tại mặc định chỉ tải tối đa 1 mô hình do giới hạn trong việc báo cáo VRAM khả dụng của ROCm v5.7. Khi ROCm v6.2 được phát hành, GPU Radeon trên Windows sẽ tuân theo các giá trị mặc định ở trên. Bạn có thể bật tính năng tải đồng thời nhiều mô hình trên Radeon của Windows, nhưng đảm bảo bạn không tải nhiều mô hình hơn dung lượng VRAM của GPU có thể chứa.
Ollama tải mô hình trên nhiều GPU như thế nào?
Khi tải một mô hình mới, Ollama sẽ đánh giá lượng VRAM yêu cầu của mô hình so với lượng VRAM hiện có sẵn. Nếu mô hình có thể vừa hoàn toàn trên một GPU bất kỳ, Ollama sẽ tải mô hình trên GPU đó. Thông thường cách này mang lại hiệu suất tốt nhất vì giảm lượng dữ liệu được truyền qua bus PCI trong quá trình suy luận. Nếu mô hình không vừa hoàn toàn trên một GPU, nó sẽ được phân phối trên tất cả các GPU khả dụng.
Làm thế nào để bật Flash Attention?
Flash Attention là một tính năng của hầu hết các mô hình hiện đại, có thể giảm đáng kể mức sử dụng bộ nhớ khi kích thước ngữ cảnh tăng lên. Ollama sẽ tự động sử dụng Flash Attention khi hậu phương và thiết bị được chọn hỗ trợ tính năng này. Để bắt buộc bật Flash Attention, hãy đặt biến môi trường OLLAMA_FLASH_ATTENTION=1 khi khởi động máy chủ Ollama. Để tắt tính năng này, hãy đặt OLLAMA_FLASH_ATTENTION=0.
Làm thế nào để đặt loại lượng tử hóa cho bộ đệm K/V?
Bộ đệm ngữ cảnh K/V có thể được lượng tử hóa để giảm đáng kể mức sử dụng bộ nhớ khi Flash Attention được bật.
Để sử dụng bộ đệm K/V đã lượng tử hóa với Ollama, bạn có thể đặt biến môi trường sau:
OLLAMA_KV_CACHE_TYPE- Loại lượng tử hóa cho bộ đệm K/V. Giá trị mặc định làf16.
Lưu ý
Hiện tại đây là một tùy chọn toàn cục - nghĩa là tất cả các mô hình sẽ chạy với loại lượng tử hóa được chỉ định.
Các loại lượng tử hóa bộ đệm K/V hiện có là:
f16- Độ chính xác cao và mức sử dụng bộ nhớ lớn (mặc định).q8_0- Lượng tử hóa 8-bit, sử dụng khoảng 1/2 bộ nhớ củaf16với mất mát độ chính xác rất nhỏ, thường không gây ảnh hưởng đáng kể đến chất lượng của mô hình (đề xuất nếu không sử dụng f16).q4_0- Lượng tử hóa 4-bit, sử dụng khoảng 1/4 bộ nhớ củaf16với mất mát độ chính xác từ nhỏ đến trung bình, có thể dễ nhận thấy hơn khi kích thước ngữ cảnh lớn.
Mức độ ảnh hưởng của việc lượng tử hóa bộ đệm đến chất lượng phản hồi của mô hình sẽ phụ thuộc vào mô hình và tác vụ cụ thể. Các mô hình có chỉ số GQA cao (ví dụ: Qwen2) có thể chịu ảnh hưởng lớn hơn về độ chính xác khi lượng tử hóa so với các mô hình có chỉ số GQA thấp.
Bạn có thể cần thử nghiệm với các loại lượng tử hóa khác nhau để tìm ra sự cân bằng tốt nhất giữa mức sử dụng bộ nhớ và chất lượng.
Tôi có thể tìm Khóa Công khai Ollama của mình ở đâu?
Khóa Công khai Ollama của bạn là phần công khai của cặp khóa cho phép phiên bản Ollama cục bộ của bạn giao tiếp với ollama.com.
Bạn sẽ cần khóa này để:
- Push các mô hình lên Ollama
- Pull các mô hình riêng tư từ Ollama về máy của bạn
- Chạy các mô hình được lưu trữ trên Ollama Cloud
Cách thêm khóa
Đăng nhập qua trang Cài đặt trong Ứng dụng Mac và Windows
Đăng nhập qua CLI
shell
ollama signin- Sao chép và dán thủ công khóa trên trang Ollama Keys: https://ollama.com/settings/keys
Vị trí lưu trữ Khóa Công khai Ollama
| Hệ điều hành | Đường dẫn đến tệp id_ed25519.pub |
|---|---|
| macOS | ~/.ollama/id_ed25519.pub |
| Linux | /usr/share/ollama/.ollama/id_ed25519.pub |
| Windows | C:\Users\<username>\.ollama\id_ed25519.pub |
Lưu ý
Thay thế <username> bằng tên người dùng Windows thực tế của bạn.
Làm thế nào để ngăn Ollama tự động khởi động khi tôi đăng nhập vào máy tính?
Ollama dành cho Windows và macOS sẽ được đăng ký làm mục đăng nhập trong quá trình cài đặt. Bạn có thể tắt tính năng này nếu không muốn Ollama tự động khởi động. Ollama sẽ giữ nguyên cài đặt này qua các lần nâng cấp, trừ khi bạn gỡ cài đặt ứng dụng.
Windows
- Trong
Task Manager, đi đến thẻStartup apps, tìmollamasau đó nhấp vàoDisable
MacOS
- Mở
Settings, tìm kiếm "Login Items", tìm mụcOllamatrong phầnAllow in the Background, sau đó nhấp vào thanh trượt để tắt.