Concepts
Particles
A particle is a single, focused prompt component:| Category | Purpose | Example |
|---|---|---|
role | Who the AI is | ”You are a customer support agent” |
tone | Communication style | ”Be friendly and concise” |
guardrails | Restrictions | ”Never share PII” |
constraints | Operational limits | ”Keep responses under 500 words” |
format | Output structure | ”Respond in markdown” |
System Prompts
A system prompt combines particles into complete behavior. Each system prompt can include multiple particles, ordered by category (role → tone → guardrails → constraints → format).Create Particle
Create System Prompt
Compose particles into a complete prompt:Attach to Model
Versioning
Particles are automatically versioned. Updates create new versions:Pin Versions
Lock a system prompt to specific particle versions for stability:Composition Order
Particles are ordered by:- Category priority (fixed): role → tone → guardrails → constraints → format
- Order within category (customizable via
orderfield)
Best Practices
| Do | Avoid |
|---|---|
| Keep particles focused (one purpose) | Mixing concerns in one particle |
| Use consistent naming | Vague names like “Prompt 1” |
| Pin versions in production | Unpinned particles in live models |
| Test changes with new versions | Editing production particles directly |
FAQ
When should I use particles vs. a single prompt?
Use particles when you have multiple models sharing common behavior (same tone, same guardrails). For simple, one-off assistants, a single prompt via thesystemPrompt parameter in the Chat API is fine.
How do I roll back a particle change?
Pin the system prompt to the previous particle version. Particle versions are immutable—nothing is deleted.Can I override the system prompt at runtime?
Yes. PasssystemPrompt in the Chat API request to override the model’s attached prompt for that specific request.
What’s the max prompt length?
No hard limit, but keep total prompt + context under the model’s context window. Aim for under 2,000 tokens for system prompts.Related
Models API
Attach prompts to models
Chat API
Override prompts at runtime