Hyperparameters
Parameter management for optimization and automatic differentiation
Overview#
The Hyperparameters panel provides a centralized interface for managing parameters used in optimization workflows. It supports automatic differentiation marking, allowing parameters to be optimized through gradient-based methods.
Panel Location#
The Hyperparameters panel appears as a left sidebar in the Node Editor. It can be toggled on/off from the Node Editor toolbar.
Parameter Types#
| Type | Description | Example |
|---|---|---|
| Float | Single floating point value | 0.001, 1.5 |
| Vector2 | 2D vector | [0.0, 1.0] |
| Vector3 | 3D vector | [0.0, 1.0, 2.0] |
| Vector4 | 4D vector | [0.0, 1.0, 2.0, 1.0] |
| Color | RGBA color | [1.0, 0.0, 0.0, 1.0] |
| Bool | Boolean value | true, false |
Adding Parameters#
- Click [+ Add Parameter] button
- Select parameter type from dropdown
- Enter parameter name
- Set initial value
- Toggle differentiable if needed (∂ button)
Differentiable Toggle#
The ∂ button marks a parameter as differentiable:
- Enabled (blue): Parameter will be included in gradient computation
- Disabled (gray): Parameter is treated as constant
When a parameter is marked differentiable:
- Blue dashed animated border on the parameter
- Blue dashed animated edges in Node Editor
- Animation flows backward (indicating gradient direction)
Using Parameters in Node Editor#
Drag to Canvas#
Drag a parameter from the panel onto the Node Editor canvas:
- Parameter node appears at drop location
- Output port shows the parameter value
- Connect to other nodes for computation
Node Connection Example#
┌─────────────────┐
│ learning_rate │
│ Float: 0.001 │──→ [Multiply] ──→ [Update]
└─────────────────┘Editing Parameters#
Inline Editing#
- Double-click name to rename
- Click value to edit
- Press Enter to confirm, Escape to cancel
Deleting Parameters#
- Right-click → Delete
- Or select and press Delete key
- Connected nodes are updated automatically
Sync Behavior#
| Action | Sync Timing |
|---|---|
| Value change | 300ms debounce |
| Name change | Immediate |
| Differentiable toggle | Immediate |
| Add/Delete | Immediate |
Port Colors#
Parameter nodes follow the standard port color scheme:
| Type | Color |
|---|---|
| Float | Light gray |
| Vector2 | Green |
| Vector3 | Yellow |
| Vector4 | Pink |
| Bool | Purple |
| Color | Gradient |
Example: Optimization Setup#
Scene Optimization#
Hyperparameters:
├── tx_position (Vec3) [∂] → Transmitter position
├── tx_power (Float) [∂] → Transmitter power
├── frequency (Float) [ ] → Fixed frequency
└── target_snr (Float) [ ] → Target SNR (constant)
Node Graph:
tx_position → [Transmitter] → [Channel] → [SNR] → [Loss]
tx_power ──────────┘ ↑
target_snr ──────────────────────────────────────┘Material Optimization#
Hyperparameters:
├── roughness (Float) [∂]
├── metalness (Float) [∂]
└── color (Color) [∂]
Connect to Material component for real-time previewIntegration with Backend#
Parameters are synced with the backend for optimization:
# Backend receives parameter values and differentiable flags
# Gradient-based optimization can use marked parameters
# Parameters marked with ∂ are automatically tracked
# During optimization, gradients flow through connected nodes