class_docstr: Structured state critic class designed to work with structured environments.
  (see :class:`~maze.core.env.structured_env.StructuredEnv`).
  
  It encapsulates state critic and queries them for values according to the provided policy ID.
docstr: Query a critic that corresponds to the given ID for the state value.
  
  :param critic_input: The critic input for predicting the values of all sub-steps of the env.
  :return: Critic output holding the values, detached values and actor_id
docstr_tok: ["Query","a","critic","that","corresponds","to","the","given","ID","for","the","state","value",".",":","param","critic_input",":","The","critic","input","for","predicting","the","values","of","all","sub-steps","of","the","env",".",":","return",":","Critic","output","holding","the","values",",","detached","values","and","actor_id"]
code: def predict_values(
      self, critic_input: StateCriticInput
  ) -> StateCriticOutput:
      """Query a critic that corresponds to the given ID for the state value.
  
      :param critic_input: The critic input for predicting the values of all sub-steps of the env.
      :return: Critic output holding the values, detached values and actor_id
      """
  
file_path: maze/maze/core/agent/state_critic.py
imports: from abc import ABC, abstractmethod
  from typing import Union
  from maze.core.agent.state_critic_input_output import StateCriticStepOutput, StateCriticOutput, StateCriticInput
  from maze.core.env.observation_conversion import ObservationType
label_desc: Use image node_id 1 for calling the StateCritic obj's underlying member method code with example usage: obj.predict_values(critic_input) without return types