Các mô hình Gemma được tinh chỉnh theo hướng dẫn (IT) được thiết kế để xử lý các hoạt động tương tác đàm thoại, từ các lượt trao đổi câu hỏi và câu trả lời đơn lẻ đến các cuộc đối thoại nhiều lượt mở rộng. Hướng dẫn này giải thích cách định dạng câu lệnh để trò chuyện với Gemma và cách xây dựng cuộc trò chuyện nhiều lượt.
Định dạng câu lệnh
Các mô hình Gemma IT sử dụng mã thông báo kiểm soát đặc biệt để phân định các lượt trò chuyện. Bạn cần có các mã thông báo này khi gửi câu lệnh trực tiếp đến trình mã hoá từ, nhưng các khung có nhận biết cuộc trò chuyện thường tự động áp dụng các mã thông báo này.
Câu lệnh một lượt
Câu lệnh một lượt bao gồm một thông báo của người dùng và một dấu hiệu phản hồi của mô hình:
<start_of_turn>user
What is the speed of light?<end_of_turn>
<start_of_turn>model
Câu lệnh nhiều lượt
Cuộc trò chuyện nhiều lượt kết hợp nhiều lượt trao đổi. Mỗi lượt được bao bọc trong cùng một mã thông báo kiểm soát:
<start_of_turn>user
What is the speed of light?<end_of_turn>
<start_of_turn>model
The speed of light in a vacuum is approximately 299,792,458 meters per second.<end_of_turn>
<start_of_turn>user
How long does it take light to reach Earth from the Sun?<end_of_turn>
<start_of_turn>model
Mô hình này tạo ra một câu trả lời cho lượt <start_of_turn>model cuối cùng.
Hướng dẫn về hệ thống
Các mô hình được tinh chỉnh theo hướng dẫn của Gemma được thiết kế để chỉ hoạt động với 2 vai trò: user và model. Do đó, vai trò system hoặc lượt chuyển đổi hệ thống không được hỗ trợ.
Thay vì sử dụng một vai trò hệ thống riêng biệt, hãy cung cấp hướng dẫn ở cấp hệ thống ngay trong câu lệnh ban đầu của người dùng. Khả năng tuân theo chỉ dẫn của mô hình cho phép Gemma diễn giải chỉ dẫn một cách hiệu quả. Ví dụ:
Các mô hình Gemma 3 trở lên hỗ trợ chỉ dẫn hệ thống xác định hành vi, tính cách hoặc các ràng buộc của mô hình cho toàn bộ cuộc trò chuyện. Đặt chỉ dẫn của hệ thống trước lượt của người dùng đầu tiên:
<start_of_turn>user
Only reply like a pirate.
What is the answer to life the universe and everything?<end_of_turn>
<start_of_turn>model
Arrr, 'tis 42,<end_of_turn>
Để biết thêm chi tiết, hãy xem phần Câu lệnh và hướng dẫn cho hệ thống.
Hỗ trợ khung
Hầu hết các khung đều tự động xử lý việc định dạng cuộc trò chuyện thông qua mẫu trò chuyện hoặc API cuộc trò chuyện:
Hugging Face Transformers
from transformers import AutoTokenizer, AutoModelForCausalLM
tokenizer = AutoTokenizer.from_pretrained("google/gemma-3-1b-it")
model = AutoModelForCausalLM.from_pretrained("google/gemma-3-1b-it")
messages = [
{"role": "user", "content": "What is machine learning?"},
]
inputs = tokenizer.apply_chat_template(
messages,
return_tensors="pt",
add_generation_prompt=True,
)
outputs = model.generate(**inputs, max_new_tokens=256)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
Ollama
ollama run gemma3:1b "What is machine learning?"
Đối với cuộc trò chuyện nhiều lượt, hãy sử dụng chế độ tương tác:
ollama run gemma3:1b
>>> What is machine learning?
...
>>> How is it different from deep learning?
Các API tương thích với OpenAI
Khi sử dụng các khung hiển thị một API tương thích với OpenAI (chẳng hạn như vLLM, llama.cpp hoặc LM Studio), hãy truyền thông báo bằng định dạng messages tiêu chuẩn:
from openai import OpenAI
client = OpenAI(base_url="http://localhost:8000/v1", api_key="unused")
response = client.chat.completions.create(
model="google/gemma-3-1b-it",
messages=[
{"role": "user", "content": "What is machine learning?"},
],
)
print(response.choices[0].message.content)