Skip to content

35 min read

Three ways to see it

  1. If you have only ever used ChatGPT through the chat box, you have been using half of the prompt surface. There is another half, hidden from most users, called the system prompt. Inside the office where a bank or a tax firm is building a customer-facing AI tool, the system prompt is the actual product. It is the part where the engineer tells the model who it is, what rules it must follow, and what it must never do. The user message, by contrast, is just whatever the customer types in. The two are not the same. They are stored separately, they are weighted differently by the model, and they serve different purposes. A professional who only writes user messages will never build anything that survives an audit. A professional who understands the system message can build something that does.

  2. Way one: the system prompt is the persona. It tells the model who it is meant to be. "You are an Urdu-speaking customer service representative for Soneri Bank's branch network. You are polite, formal, and you address customers as Sir or Madam." That single sentence reshapes every reply the model produces. The same model, with no system prompt, will sometimes joke, sometimes use English, sometimes give generic banking advice. With the persona pinned, it stays in character. Persona is the cheapest control mechanism in prompt engineering. It costs you four lines of text and saves you a thousand corrections.

  3. Way two: the system prompt is the rule book. Beyond persona, it lays down the things the model must always do and the things it must never do. "Never quote interest rates. Never make up account numbers. If asked about a specific account, say you cannot access it and refer the customer to the branch. Always end with the bank's helpline number." These rules are not suggestions. They are the only protection the bank has against an AI that, in good faith, invents a markup rate and gets quoted on TV. Rules are not glamorous, but they are what separates a demo from a deployment.

Quick check

Quick check: what makes modern AI different from a rule-based program?

The why-tree

Why split system from user? Because the system prompt is fixed: you write it once and every customer of every branch sees the same one. The user message is variable: it is whatever the customer typed. Splitting them lets you control the constant part without rewriting it on every turn. It also lets the model weight the system prompt higher when there is a conflict between what the rules say and what the customer asks.

Sources

Sources. Anthropic's guide "Use system prompts" at docs.anthropic.com. OpenAI's "Instructing the model" section of the prompt engineering guide. The OpenAI chat completions API reference, which formalises the system, user, and assistant roles. Lilian Weng's blog post "Prompt Engineering" for the theoretical framing. LangChain's documentation on ChatPromptTemplate, which makes the split practical in code.