Skip to main content

Playground

The Playground is an interactive testing environment for LLM prompts. Compare outputs across models side by side, define tools for function calling, and iterate on prompts before deploying them.

Navigate to Agent Observability → Playground in the sidebar (ap1, us1).

Beta

The Playground is currently in Beta.

Prerequisites

The Playground requires at least one LLM Connection to be configured. If no connections exist, the model selector shows a link to Settings → LLM Connections.

Getting Started

  1. Select an LLM Connection and Model from the dropdowns at the top of the window
  2. Add messages using the + Message dropdown (User, Assistant, System, Developer, or Tool)
  3. Type your prompt content in the message editor
  4. Click Submit or press ⌘ Enter to run

The output appears at the bottom of the window with the model's response, including any tool calls or reasoning output.

Multi-Window Comparison

Click New split window to add up to four side-by-side windows. Each window has its own connection, model, messages, and output — useful for A/B testing prompts across different models or configurations.

  • Duplicate window — copies the window configuration
  • Remove window — removes a window (available when more than one is open)
  • Run All (⌘ Enter) — submits all windows that have a model selected, in parallel
  • Reset — replaces all windows with a single empty window

Messages

Messages support the following roles:

RolePurpose
SystemSystem instructions for the model
UserUser input / prompt
AssistantModel response (for few-shot examples)
DeveloperDeveloper instructions
ToolTool result linked to a tool call

Click the role badge on any message to cycle through roles. Drag the handle to reorder messages.

Prompt References

Type @@@ in a message to link to a saved prompt. Oodle resolves prompt references before sending the request to the model.

Template Variables

Use {{variable_name}} syntax in message content to create template variables. The Variables panel (badge shows count) lets you fill in values for each variable before running.

All variables must have values before submitting — the Playground warns if any are unfilled.

Tools (Function Calling)

Click Tools to define function tools the model can call. Each tool has:

  • Name — e.g. get_weather
  • Description — what the tool does
  • JSON Schema — parameter schema (visual builder or raw JSON)

When the model responds with tool calls, they appear as expandable blocks in the output.

caution

Tools and structured output cannot be used at the same time.

Structured Output

Click Schema to define a JSON schema that constrains the model's output format. Specify a name, description, and schema using the visual builder or raw JSON editor.

Model Parameters

Click the gear icon to configure optional parameters:

ParameterRangeDefault
Temperature0–21.0
Max Tokens1–655362048
Top P0–11.0
Additional optionsProvider-specific JSON{}

Each parameter has a toggle — enable it to override the model's default.

Seeding from Traces

From any trace detail page, click Open in Playground to load the trace's conversation into the Playground. This seeds:

  • All messages (system, user, assistant, tool)
  • The model name
  • Tool definitions (if present in the trace)

Use this to replay and iterate on real production conversations.

Seeding from Prompts

From any prompt detail page, click Test in Playground to load the prompt content into the Playground. Chat prompts load as multi-message conversations; text prompts load as a single system message.

Save as Prompt

Click Save as Prompt in the toolbar to save the current messages as a new prompt. This opens the prompt creation page with the messages pre-filled.

Streaming

The Stream checkbox (enabled by default) controls whether responses stream token by token or arrive as a complete response. Streaming shows a Stop button to end generation early.


Support

If you need assistance or have any questions, please reach out to us through: