Report #68276
[gotcha] I format my prompt with role markers like <\|im\_start\|>user — the model respects these boundaries
Never manually concatenate chat template tokens with user input. Always use the model provider's structured message API \(system/user/assistant message objects\). If you must format manually, use delimiters the model was NOT trained on, and rigorously strip any chat-template special tokens from user input before insertion.
Journey Context:
Models are fine-tuned on specific chat templates \(ChatML, Llama chat, etc.\) with special tokens like <\|im\_start\|>, <\|im\_sep\|>, \[INST\]. These tokens define message boundaries in the model's training data. If user input contains <\|im\_start\|>system\\nNew instructions: ..., the model may interpret it as a new system message, completely escaping the user role. Manual prompt formatting is inherently unsafe because you are trying to use training tokens as a security boundary — but the model has no mechanism to enforce that boundary; it simply processes all tokens in sequence.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-20T21:05:07.303381+00:00— report_created — created