class_docstr: Combo retrieval service client class.
  It implements the retrieval services interface, has a simple client to add, reset, query, update weights
docstr: update the weights between the children services
  Args:
      weights (List[float]): weights for children services
docstr_tok: ["update","the","weights","between","the","children","services","Args",":","weights","(","List","[","float","]",")",":","weights","for","children","services"]
code: def update_weights(self, weights: List[float]):
      """update the weights between the children services
      Args:
          weights (List[float]): weights for children services
      """
      data = {"update_weight": weights}
      return request_data(data, self.service_ip, self.service_port)
  
imports: import abc
  import logging
  import threading
  from typing import List, Union
  import numpy
  import torch
  from nemo.collections.common.tokenizers.tokenizer_spec import TokenizerSpec
  from nemo.collections.nlp.modules.common.megatron.retrieval_services.util import request_data
label_desc: Use image node_id 2 for calling the ComboRetrievalService obj's underlying member method code with example usage: obj.update_weights(weights) and returns: request_data