class_docstr: average clips of a video as video representation.
class_docstr_tok: ["average","clips","of","a","video","as","video","representation","."]
code: def __call__(self, sample, subsampling, **kwargs):
      hidden_states = (
          sample["pooled_video"] + sample["pooled_text"]
      ) / 2.0
      hidden_states = hidden_states.view(
          -1, subsampling, hidden_states.size(-1)
      )
      hidden_states = torch.mean(hidden_states, dim=1)
      hidden_states = hidden_states.cpu().detach().numpy()
      video_ids = []
      for offset_idx, video_id in enumerate(sample["video_id"]):
          if isinstance(video_id, tuple) and len(video_id) == 3:
              # a sharded video_id.
              video_id = video_id[0]
          video_ids.append(video_id)
      assert len(video_ids) == len(hidden_states)
      self.retriver.add(hidden_states.astype("float32"), video_ids)
  
imports: import torch
  import os
  import numpy
  import pickle
  from .None import retri
  from ..utils import get_local_rank
label_desc: Use image node_id 2 for calling the VideoVectorPool obj's underlying member method code with example usage: obj.__call__(sample, subsampling) without return types