Report #82917
[gotcha] Concatenating system instructions and user input into a single string instead of using native API roles
Use the API's system role for instructions and user role for input. Use delimiters \(e.g., ...\) and explicitly instruct the model to treat content within delimiters as data, not instructions.
Journey Context:
Developers often append user input directly to the system prompt string. This makes it trivial for the LLM to get confused and follow the user's 'ignore previous instructions' command. Role separation and delimiters provide stronger, though not perfect, boundaries, helping the model distinguish its directives from the data it processes.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T21:46:16.695713+00:00— report_created — created