Skip to content

System Instructions

Edward Dearden edited this page Nov 26, 2025 · 1 revision

You can provide system instructions to Gemini, which you can use to guide model behaviour. On this page, I'll just give a general overview of when and how to use system instructions.

Here's what the documentation has to say, and there's also a nice introduction.

These are Google's recommended use cases for system instructions:

  • Define a persona or role: For example, for a chatbot.
  • Define output format: For example, Markdown or YAML.
  • Define output style and tone: For example, verbosity, formality, and target reading level.
  • Define goals or rules for the task: For example, returning a code snippet without further explanations.
  • Provide additional context for the prompt: For example, a knowledge cutoff.
  • Specify a response language: Models can sometimes respond in your local language, even if the prompt is in another language. When you use a non-English language for your prompts, we recommend that you add the following to your system instructions: All questions should be answered comprehensively with details, unless the user requests a concise response specifically. Respond in the same language as the query.

So I suppose it's more about telling the model how to behave rather than exactly what to do. Although, personally, I feel like that's a very blurry line indeed.

Google does recommend not putting anything sensitive in the system instruction.

One key use of system instructions is to have consistent instructions and behaviours across many different prompts.

Ultimately, I still don't really know the reason why it's better to use a system instruction that just putting instructions in the prompt, but I don't think it does any harm, and may make it easier to separate the constant bits of the prompt, and the bits that change each time.

I haven't tried this, but I'd be interested to see what happens if everything in our current prompt is in the system instruction, and the prompt just becomes the user inputted data (e.g. an article).

Clone this wiki locally