AbstractVariableValue#
- class penzai.core.variables.AbstractVariableValue[source]#
-
Base class for all frozen variables.
Methods
get_slot
()Returns the slot that this variable is replaced with when unbound.
Returns a new mutable copy of this variable.
Inherited Methods
(expand to view inherited methods)
__init__
()attributes_dict
()Constructs a dictionary with all of the fields in the class.
from_attributes
(**field_values)Directly instantiates a struct given all of its fields.
key_for_field
(field_name)Generates a JAX PyTree key for a given field name.
select
()Wraps this struct in a selection, enabling functional-style mutations.
tree_flatten
()Flattens this tree node.
tree_flatten_with_keys
()Flattens this tree node with keys.
tree_unflatten
(aux_data, children)Unflattens this tree node.
treescope_color
()Computes a CSS color to display for this object in treescope.
- final __jax_pytree_state_to_new_variable__()[source]#
Mutable variable protocol method, for JAX ecosystem interoperability.
- abstract get_slot() AbstractVariableSlot [source]#
Returns the slot that this variable is replaced with when unbound.
The
get_slot
method of a frozen variable should always return the same slot as theget_slot
method of the variable it was created from (and also for the variables created byunfreeze_as_copy
).
- abstract unfreeze_as_copy() AbstractVariable [source]#
Returns a new mutable copy of this variable.