opentau.policies.value.siglip_gemma
SigLip + Gemma Model for Value Function Estimation.
This module defines the configuration and model classes for a value function estimator that combines a SigLIP vision encoder and a Gemma language model.
Classes
|
Configuration class for SiglipGemmaValueModel. |
|
SigLIP + Gemma Model for Value Function Estimation. |
- class opentau.policies.value.siglip_gemma.SiglipGemmaValueConfig(siglip_config: dict | None = None, gemma_config: dict | None = None, num_value_bins: int = 201, response_max_length: int = 52, **kwargs)[source]
Bases:
PretrainedConfigConfiguration class for SiglipGemmaValueModel.
- Parameters:
siglip_config – Configuration for the SigLIP vision model.
gemma_config – Configuration for the Gemma language model.
num_value_bins – Number of bins for value discretization. Defaults to 201.
**kwargs – Additional keyword arguments passed to PretrainedConfig.
- __init__(siglip_config: dict | None = None, gemma_config: dict | None = None, num_value_bins: int = 201, response_max_length: int = 52, **kwargs)[source]
- model_type: str = 'SiglipGemmaValueModel'
- sub_configs: dict[str, type['PretrainedConfig']] = {'gemma_config': <class 'transformers.models.auto.configuration_auto.AutoConfig'>, 'siglip_config': <class 'transformers.models.auto.configuration_auto.AutoConfig'>}
- class opentau.policies.value.siglip_gemma.SiglipGemmaValueModel(config: SiglipGemmaValueConfig)[source]
Bases:
PreTrainedModelSigLIP + Gemma Model for Value Function Estimation.
This model combines a SigLIP vision encoder and a Gemma language model to estimate state values. It projects the final hidden state to a set of discretized value bins.
- Parameters:
config – Configuration object of type SiglipGemmaValueConfig.
- __init__(config: SiglipGemmaValueConfig)[source]
Initializes the SiglipGemmaValueModel.
- Parameters:
config – Configuration object of type SiglipGemmaValueConfig.
- config_class
alias of
SiglipGemmaValueConfig
- embed_image(image: Tensor) Tensor[source]
Embeds images using the SIGLIP vision encoder.
- Parameters:
image – Tensor containing image pixel values.
- Returns:
The embedded image features.
- Return type:
torch.Tensor
- embed_language_tokens(tokens: Tensor) Tensor[source]
Embeds language tokens using the Gemma embedding layer.
- Parameters:
tokens – Tensor containing language token IDs.
- Returns:
The embedded language tokens.
- Return type:
torch.Tensor
- forward(inputs_embeds: FloatTensor, attention_mask: Tensor, position_ids: LongTensor) Tensor[source]
Forward pass that processes vision and language inputs and outputs a value.
- Parameters:
inputs_embeds – Tensor of shape [batch_size, sequence_length, embedding_dim] containing the combined embeddings of images and text.
attention_mask – Attention mask for the sequence.
position_ids – Position IDs for RoPE.
- Returns:
Logits for discretized values of shape [batch_size, num_value_bins].
- Return type:
torch.Tensor
- get_value(inputs_embeds: FloatTensor, attention_mask: Tensor, position_ids: LongTensor) Tensor[source]
Forward pass that processes vision and language inputs and outputs a value.
- Parameters:
inputs_embeds – Tensor of shape [batch_size, sequence_length, embedding_dim] containing the combined embeddings of images and text.
attention_mask – Attention mask for the sequence.
position_ids – Position IDs for RoPE.
- Returns:
Logits for discretized values of shape [batch_size, num_value_bins].
- Return type:
torch.Tensor