Prompt Management
Store, version, preview, and A/B test prompt templates in NemoRouter
Last updated
The Prompts section lets you manage reusable prompt templates outside your codebase — version them, preview them with live variables, and A/B test variants against real traffic.
Managing templates
On the Prompts page (/prompts) you can:
- Create and delete prompt templates
- Organize them into folders
- Enable or disable a template
- Search and filter your library
Each template tracks an active version plus a count of total versions, so you always know which revision is live.
Live preview
Open a template's Preview to render it with sample values. NemoRouter uses Jinja2 templating and automatically extracts the custom variables your prompt references (built-ins like org_name, user_id, model, and timestamp are filled for you). Fill in the rest to see the fully rendered prompt before you ship it.
Versions & history
The History view (/prompts/history) lists versions across all your templates, sorted by most recently updated — showing the active version, total version count, and enabled status. Use the diff view to compare the prompt content of two versions line by line.
A/B testing model variants
The A/B Tests view (/prompts/ab-tests) splits traffic between model variants so you can measure which model performs better for your workload:
- Create a test and assign a traffic-split percentage per model variant
- Start, pause, and complete tests through their lifecycle
- Watch per-variant metrics in the results chart
A/B tests compare models, not prompt versions. To compare two prompt versions, activate one as the live version and confirm the switch in the Execution Logs — see Versions & history above.
This pairs with model-level experimentation — see A/B Testing for the broader experiment framework.
Assigning prompts to keys and teams
The Prompt → Keys and Prompt → Teams views let you bind a template to specific virtual keys or to a team, so requests on those keys automatically use the assigned prompt. The Execution Logs view records which prompt version and variables were injected at runtime.
Recommendations
The Recommendations view surfaces suggested improvements to your prompts, helping you tighten wording and structure over time.
Next steps
- A/B Testing — Split traffic across model variants
- Playground — Test a rendered prompt interactively
- Observability & Logs — Confirm which prompt version a request used
FAQ
What can I do in the Prompts section?
You can store reusable prompt templates outside your codebase, organize them into folders, enable or disable each one, and search your library — all from the Prompts page (/prompts). Every template tracks an active version plus a total version count, so you always know which revision is live.
Who on my team can create, edit, or delete prompt templates?
Creating, editing, and deleting templates (and their versions) is restricted to organization owners and admins. Any member can open a template and run the read-only Preview, but write actions require an admin or owner role.
How do I make my API traffic actually use a stored prompt?
Use the Prompt → Keys and Prompt → Teams views to bind a template to specific virtual keys or to a team — requests on those keys then automatically use the assigned prompt. You can also target a template per request through the documented nemo_prompt_template_id and nemo_prompt_variables fields in extra_body.
Does using a managed prompt add extra cost or count against my budget and rate limits?
There is no separate charge for storing or serving a prompt template. The rendered prompt is just part of the request content, so it counts toward normal token usage — a longer template means more input tokens — and that spend flows through your usual budgets, rate limits, and the x-nemo-request-cost header like any other request.
Can I preview a prompt before shipping it?
Yes. Open a template's Preview to render it with sample values before it goes live. Built-in variables like org_name, user_id, model, and timestamp are filled for you; you supply the rest and see the fully rendered prompt.
What variables can I reference in a template?
Templates use Jinja2 syntax, and NemoRouter automatically extracts the custom variables your prompt references. Built-ins (org_name, user_id, model, timestamp) are populated automatically — you provide values for any additional custom variables, either in Preview or at runtime via nemo_prompt_variables.
How do I A/B test different models for a prompt?
The A/B Tests view (/prompts/ab-tests) splits traffic between model variants by a traffic-split percentage you set per variant. You can start, pause, and complete a test through its lifecycle and watch per-variant metrics in the results chart. A/B tests vary the model, not the prompt version — to compare two prompt versions, activate one and confirm the switch via Execution Logs. This pairs with model-level experiments — see A/B Testing.
Can I roll back to an earlier version or see exactly what changed?
Every template keeps its full version history. The History view (/prompts/history) lists versions across all your templates sorted by most recently updated, and the diff view compares the prompt content of two versions line by line so you can see precisely what changed before switching the active version.
How do I confirm which prompt version and variables a live request used?
The Execution Logs view records which prompt version and which variables were injected at runtime. For end-to-end confirmation on a specific request, pair it with Observability & Logs.
What are Recommendations — are changes applied automatically?
The Recommendations view surfaces suggested improvements to help you tighten a prompt's wording and structure over time. They are suggestions only — nothing is applied automatically; you decide whether to create a new version from a recommendation.