Model yang di-tune untuk mengikuti petunjuk (IT) Gemma dirancang untuk menangani interaksi percakapan, mulai dari pertukaran tanya jawab tunggal hingga dialog multi-turn yang diperpanjang. Panduan ini menjelaskan cara memformat perintah untuk memulai percakapan dengan Gemma dan cara membangun percakapan multi-turn.
Format perintah
Model IT Gemma menggunakan token kontrol khusus untuk membatasi giliran percakapan. Token ini diperlukan saat mengirim perintah langsung ke tokenizer, tetapi biasanya diterapkan secara otomatis oleh framework yang mendukung chat.
Perintah satu giliran
Perintah satu giliran terdiri dari satu pesan pengguna dan penanda respons model:
<start_of_turn>user
What is the speed of light?<end_of_turn>
<start_of_turn>model
Prompt multi-giliran
Percakapan multi-giliran merangkai beberapa pertukaran. Setiap giliran dibungkus dengan token kontrol yang sama:
<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
Model menghasilkan respons untuk giliran <start_of_turn>model terakhir.
Petunjuk sistem
Model yang dioptimalkan untuk mengikuti perintah Gemma dirancang untuk bekerja dengan hanya dua peran:
user dan model. Oleh karena itu, peran system atau peralihan sistem tidak didukung.
Daripada menggunakan peran sistem terpisah, berikan petunjuk tingkat sistem langsung dalam perintah pengguna awal. Kemampuan mengikuti petunjuk model memungkinkan Gemma menafsirkan petunjuk secara efektif. Contoh:
Model Gemma 3 dan yang lebih baru mendukung petunjuk sistem yang menentukan perilaku, persona, atau batasan model untuk seluruh percakapan. Tempatkan instruksi sistem sebelum giliran pengguna pertama:
<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>
Untuk mengetahui detail selengkapnya, lihat Petunjuk perintah dan sistem.
Dukungan framework
Sebagian besar framework menangani pemformatan chat secara otomatis melalui template chat atau API percakapan:
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?"
Untuk percakapan multi-turn, gunakan mode interaktif:
ollama run gemma3:1b
>>> What is machine learning?
...
>>> How is it different from deep learning?
API yang kompatibel dengan OpenAI
Saat menggunakan framework yang mengekspos API yang kompatibel dengan OpenAI (seperti vLLM,
llama.cpp, atau LM Studio), teruskan pesan menggunakan format messages standar:
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)