~/tools / Tệp mô hình và mẫu chat / Ollama Modelfile Generator

Ollama Modelfile Generator — Tạo Ollama Modelfile: FROM, SYSTEM, PARAMETER, MESSAGE và hơn thế nữa

Tạo Modelfile cho Ollama từ một biểu mẫu: mô hình gốc, thông điệp hệ thống, các tham số như temperature và num_ctx, chuỗi dừng, thông điệp mẫu, template, phiên bản Ollama tối thiểu, các khả năng bổ sung và giấy phép. Các giá trị được kiểm tra theo tài liệu tham khảo Modelfile chính thức và được đặt trong dấu ngoặc kép để Ollama đọc lại đúng nguyên vẹn. Dữ liệu không rời khỏi trình duyệt của bạn.

Tham số (PARAMETER)

Các ô trống sẽ không được ghi ra. Các số màu xám là giá trị mặc định nêu trong tài liệu.

Thông điệp mẫu (MESSAGE)

Một đoạn hội thoại mẫu hướng dẫn cách mô hình trả lời. Các hàng trống sẽ bị bỏ qua.

Template, phiên bản tối thiểu, khả năng bổ sung và giấy phép
Khả năng bổ sung (CAPABILITY)

Mỗi giá trị được chọn sẽ được ghi thành một dòng CAPABILITY. Theo tài liệu tham khảo, CAPABILITY thêm một khả năng cho mô hình GGUF hoặc MLX mà không loại bỏ các khả năng được kế thừa hay được suy ra, và decision chỉ nên được khai báo cho những trọng số được huấn luyện theo các prompt decision của nó. Trong lần thử của chúng tôi với Ollama 0.40.11, mọi giá trị đều được thêm vào các khả năng được kế thừa, trừ decision: khi dùng decision, ollama show chỉ liệt kê các giá trị đã khai báo (completion và tools không còn được liệt kê).

Modelfile

FROM llama3.2

PARAMETER num_ctx 4096
PARAMETER temperature 1

SYSTEM """Answer in one short sentence."""

MESSAGE user Is Toronto in Canada?
MESSAGE assistant yes

Lệnh

Lưu đoạn văn bản ở trên thành một tệp tên là Modelfile trong thư mục hiện tại, rồi chạy:

ollama create short-answers -f ./Modelfile
ollama run short-answers

Các lệnh, tham số và giá trị mặc định theo tài liệu tham khảo Modelfile vào ngày 2026-11-09. Tài liệu tham khảo Ollama Modelfile

Mọi thứ được xử lý trong trình duyệt của bạn. Không có gì bạn nhập được gửi đi đâu cả.

Modelfile là bản thiết kế mà Ollama dùng để tạo một mô hình bằng ollama create. Nó nêu mô hình gốc bằng FROM, và có thể thêm thông điệp hệ thống, tham số, một đoạn hội thoại mẫu, template cho prompt, phiên bản Ollama tối thiểu, các khả năng bổ sung và giấy phép. Định dạng này đơn giản, nhưng có vài chi tiết gây lỗi: PARAMETER chỉ nhận các tên có trong tài liệu tham khảo và mỗi tham số đòi hỏi một số nguyên hoặc một số thập phân, chuỗi dừng được đặt mỗi dòng một chuỗi, và văn bản trải dài nhiều dòng phải được bao trong ba dấu ngoặc kép. Công cụ này viết tệp giúp bạn. Nó chỉ liệt kê các lệnh và tham số có trong tài liệu tham khảo Modelfile chính thức, hiển thị giá trị mặc định của từng tham số ngay cạnh ô nhập, báo cho bạn khi một giá trị sẽ bị từ chối, và đặt từng giá trị trong dấu ngoặc kép theo cách bộ phân tích cú pháp của chính Ollama đọc. Chúng tôi đã kiểm tra kết quả với Ollama 0.40.11: tạo mô hình từ các tệp được sinh ra và đọc lại bằng ollama show --modelfile. REQUIRES và CAPABILITY cũng được kiểm tra theo cách tương tự. Công cụ cũng đưa ra các lệnh ollama create và ollama run cho tên mô hình bạn chọn.

Phần xử lý chính của công cụ này là mã nguồn mở theo giấy phép MIT. github.com/seigo5555/toolkitbox-lib/src/modelfile.ts

Trường hợp dùng

  • Tạo bản sao của một mô hình trong thư viện với thông điệp hệ thống và temperature của riêng bạn, để chạy dưới một tên mới
  • Đặt cửa sổ ngữ cảnh lớn hơn (num_ctx) hoặc seed cố định cho mô hình bạn phục vụ từ một VPS
  • Thêm một đoạn hội thoại mẫu ngắn để chỉ cho mô hình cách trả lời

Cách dùng

  1. Nhập mô hình gốc vào FROM: một mô hình trong thư viện Ollama (ví dụ llama3.2), đường dẫn của tệp GGUF, hoặc một thư mục chứa trọng số Safetensors. Nhập tên bạn muốn đặt cho mô hình mới.
  2. Viết thông điệp hệ thống và chỉ điền những tham số bạn muốn thay đổi. Các ô trống sẽ bị bỏ qua, nên giá trị của mô hình gốc vẫn có hiệu lực. Thêm chuỗi dừng mỗi dòng một chuỗi và các thông điệp mẫu nếu cần.
  3. Sao chép Modelfile vào một tệp tên là Modelfile, rồi chạy hai lệnh hiển thị bên dưới: ollama create tạo mô hình, và ollama run khởi động nó.

Định dạng của Modelfile

Modelfile là một tệp văn bản, mỗi dòng gồm một lệnh và các đối số của nó. Những dòng bắt đầu bằng # là chú thích. Theo tài liệu tham khảo chính thức, các lệnh không phân biệt hoa thường và có thể đặt theo thứ tự bất kỳ. Chỉ FROM là bắt buộc.

Một giá trị thông thường kéo dài đến hết dòng. Giá trị trải dài nhiều dòng được bao trong ba dấu ngoặc kép ("""). Bộ phân tích cú pháp của Ollama (parser/parser.go) không có cơ chế thoát ký tự, nên nếu """ xuất hiện ở cuối một dòng bên trong văn bản của bạn, giá trị sẽ kết thúc ngay tại đó. Công cụ sẽ hiện lỗi trong trường hợp này.

Các lệnh

LệnhChức năngCông cụ này
FROMMô hình gốc: tên một mô hình trong thư viện, một tệp GGUF, hoặc một thư mục chứa trọng số SafetensorsCó hỗ trợ
PARAMETERCác tham số để chạy mô hìnhCó hỗ trợ (11 tham số trong bảng tham khảo)
TEMPLATETemplate của prompt được truyền cho mô hình, theo cú pháp template của GoCó hỗ trợ
SYSTEMThông điệp hệ thống được đặt trong templateCó hỗ trợ
LICENSEGiấy phép của mô hìnhCó hỗ trợ
MESSAGEMột đoạn hội thoại mẫu, với các vai system, user và assistantCó hỗ trợ
REQUIRESPhiên bản Ollama tối thiểu cần cóCó hỗ trợ
CAPABILITYThêm một khả năng cho mô hình GGUF hoặc MLXCó hỗ trợ

Với CAPABILITY, tài liệu tham khảo nói rằng chỉ khai báo decision cho những trọng số được huấn luyện theo các prompt của nó. Trong lần thử của chúng tôi với Ollama 0.40.11, các giá trị khác được thêm vào các khả năng sẵn có của mô hình, nhưng khi dùng decision thì chỉ các giá trị đã khai báo được liệt kê.

Tài liệu chính thức không thống nhất về giá trị mặc định của num_ctx

Các giá trị mặc định màu xám cạnh các ô nhập lấy từ bảng trong tài liệu tham khảo Modelfile. Bảng này ghi 2048 cho num_ctx (độ dài ngữ cảnh), nhưng các trang khác trong cùng bộ tài liệu chính thức lại nêu những giá trị khác.

TrangĐộ dài ngữ cảnh mặc định
Tài liệu tham khảo Modelfile2048
FAQ4096 token
Độ dài ngữ cảnhTùy theo VRAM: 4k dưới 24 GiB, 32k với 24–48 GiB, 256k với 48 GiB trở lên

Để xem giá trị thực sự đang dùng, hãy chạy ollama ps khi mô hình đang được tải và nhìn vào cột CONTEXT. Để cố định giá trị, hãy viết PARAMETER num_ctx.

Những gì chúng tôi đã kiểm tra với Ollama 0.40.11

Vào ngày 30 tháng 10 năm 2026, chúng tôi chạy ollama create trên các tệp do công cụ này tạo ra và đọc lại bằng ollama show --modelfile.

  • Một số thập phân như 1.5 trong tham số số nguyên (num_ctx và các tham số khác) làm ollama create thất bại với lỗi invalid int value.
  • Văn bản trong tham số số thập phân (temperature và các tham số khác) thất bại với lỗi invalid float value.
  • Các dạng như top_p 1e-1 và top_p .5 được chấp nhận, seed -1 cũng vậy.
  • Một giá trị SYSTEM được bao trong """ giữ nguyên các dấu ngoặc kép, dấu ngoặc kép ở cuối dòng và phần thụt lề.
  • Một chuỗi stop được đặt trong dấu ngoặc kép giữ nguyên các khoảng trắng ở đầu và cuối.
  • Nếu bạn bỏ SYSTEM, mô hình mới giữ thông điệp hệ thống của mô hình gốc.

Kiểm tra mô hình bạn đã tạo

  • Tạo mô hình bằng ollama create <tên> -f ./Modelfile.
  • Chạy ollama show --modelfile <tên> để xem Modelfile đúng như Ollama đã đọc. Lệnh này cũng cho biết các thiết lập bạn bỏ trống có lấy giá trị từ mô hình gốc hay không.
  • Khởi chạy mô hình bằng ollama run <tên>.

Nguồn (kiểm tra ngày 2026-11-09): Ollama: Modelfile Reference / Ollama: FAQ / Ollama: Context length / ollama/ollama: parser/parser.go

Hỏi đáp

Tôi có thể đặt những tham số nào?

Những tham số được liệt kê trong tài liệu tham khảo Modelfile chính thức: num_ctx, repeat_last_n, repeat_penalty, temperature, seed, stop, num_predict, draft_num_predict, top_k, top_p và min_p. Tài liệu đánh dấu mỗi tham số là số nguyên, số thập phân hoặc chuỗi. Khi kiểm tra với Ollama 0.40.11, số thập phân trong tham số số nguyên gây lỗi invalid int value, còn văn bản trong tham số số thập phân gây lỗi invalid float value. Công cụ hiển thị cùng vấn đề đó trước khi bạn chạy ollama create.

Tại sao một số giá trị được bao trong ba dấu ngoặc kép?

Trong Modelfile, một giá trị kết thúc ở cuối dòng nếu không được đặt trong dấu ngoặc kép. Bộ phân tích cú pháp của Ollama đọc một giá trị bắt đầu bằng ba dấu ngoặc kép cho đến khi gặp ba dấu ngoặc kép ở cuối một dòng, nên văn bản có nhiều dòng phải được bao theo cách đó. Công cụ luôn bao thông điệp hệ thống, template và giấy phép, và bao một thông điệp mẫu khi nó có nhiều dòng, bắt đầu bằng dấu ngoặc kép, hoặc bắt đầu hay kết thúc bằng khoảng trắng. Chuỗi dừng được đặt trong dấu ngoặc kép, nên khoảng trắng ở đầu hoặc cuối được giữ nguyên.

Văn bản của tôi có thể chứa ba dấu ngoặc kép liên tiếp không?

Không. Định dạng này không có ký tự thoát, nên ba dấu ngoặc kép ở cuối dòng sẽ đóng giá trị sớm, dòng tiếp theo sau đó bị đọc như một lệnh, khiến ollama create thất bại. Công cụ báo điều này là một lỗi. Hãy viết lại phần văn bản đó.

Điều gì xảy ra với những thiết lập tôi để trống?

Chúng không được ghi ra, và mô hình mới giữ những gì nó kế thừa từ mô hình gốc. Ví dụ, một mô hình tạo từ qwen2.5:7b mà không có SYSTEM sẽ giữ thông điệp hệ thống của qwen2.5:7b. Hãy chạy ollama show --modelfile với tên mô hình gốc để xem nó đã đặt những gì.

Công cụ có kiểm tra mô hình gốc có tồn tại không?

Không. Nó không kết nối tới Ollama hay thư viện. Nếu tên hoặc đường dẫn trong FROM sai, ollama create sẽ báo. Đường dẫn GGUF được đọc theo vị trí của Modelfile, trừ khi bạn đưa vào một đường dẫn tuyệt đối.

Có gì được gửi tới máy chủ không?

Không. Modelfile được ghép lại ngay trong trình duyệt của bạn.

Liên quan