vision_modules
vision_modules
¶
Discovery of camera-addressable visual targets for policy explanations.
get_policy_encoders
¶
Return encoders registered in the policy encoding pipeline.
Source code in src/versatil/explainability/vision_modules.py
get_vision_explainable_modules
¶
Return visual modules that can produce camera heatmaps.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
policy
|
Policy
|
Policy whose encoding pipeline and decoder should be inspected. |
required |
Returns:
| Type | Description |
|---|---|
list[VisionExplainableModule]
|
Visual modules from the encoding pipeline and decoder-owned VLM vision |
list[VisionExplainableModule]
|
towers. Each entry includes the camera keys that can be attributed |
list[VisionExplainableModule]
|
through that module and the hook routing mode needed to isolate a |
list[VisionExplainableModule]
|
camera when the same module is reused. |
Raises:
| Type | Description |
|---|---|
RuntimeError
|
If no camera-addressable visual target is exposed. |
Source code in src/versatil/explainability/vision_modules.py
get_encoding_pipeline_vision_modules
¶
Return explainable visual modules from the encoding pipeline.
Source code in src/versatil/explainability/vision_modules.py
get_decoder_vision_modules
¶
Return explainable visual modules owned by decoder VLM backbones.
Source code in src/versatil/explainability/vision_modules.py
resolve_camera_explanation_targets
¶
Resolve runner filters into concrete camera-level targets.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
policy
|
Policy
|
Policy whose visual modules should be explained. |
required |
target_camera
|
str | None
|
Optional camera key selected by the runner. |
None
|
target_vision_module_names
|
list[str] | None
|
Optional visual module allowlist. Names are
the values returned by |
None
|
Returns:
| Type | Description |
|---|---|
list[CameraExplanationTarget]
|
Concrete camera-target bindings for attribution methods. |
Raises:
| Type | Description |
|---|---|
ValueError
|
If a configured camera or module allowlist matches nothing. |
RuntimeError
|
If the policy exposes no visual explainability targets. |
Source code in src/versatil/explainability/vision_modules.py
select_explainability_target
¶
Select the single image-map target exposed by a visual module.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
targets
|
list[VisionExplanationTarget]
|
Target metadata exposed by a visual module. |
required |
module_name
|
str
|
Name used in error messages when target metadata is malformed. |
required |
Returns:
| Type | Description |
|---|---|
VisionExplanationTarget | None
|
The compatible target, or |
Raises:
| Type | Description |
|---|---|
RuntimeError
|
If targets are exposed but none are compatible with visual heatmap computation. |
RuntimeError
|
If more than one compatible target is exposed. The runner currently has no config field to disambiguate multiple target layers inside the same visual module. |