docstr: Estimate the number of tokens given a request. We do not need to account for the number
  of tokens in the prompt itself (https://studio.ai21.com/docs/calculating-usage).
  
  Therefore, estimate using the following formula:
  
      num_completions * max_tokens
docstr_tok: ["Estimate","the","number","of","tokens","given","a","request",".","We","do","not","need","to","account","for","the","number","of","tokens","in","the","prompt","itself","(","https",":","\/\/studio.ai21.com\/docs\/calculating-usage",")",".","Therefore",",","estimate","using","the","following","formula",":","num_completions","*","max_tokens"]
code: def estimate_tokens(
      self, request: Request, metric_service: MetricService
  ) -> int:
      """
      Estimate the number of tokens given a request. We do not need to account for the number
      of tokens in the prompt itself (https://studio.ai21.com/docs/calculating-usage).
  
      Therefore, estimate using the following formula:
  
          num_completions * max_tokens
      """
      return request.num_completions * request.max_tokens
  
imports: from helm.benchmark.metrics.metric_service import MetricService
  from helm.common.request import Request
  from .token_cost_estimator import TokenCostEstimator
label_desc: Use image node_id 1 for calling the AI21TokenCostEstimator obj's underlying member method code with example usage: obj.estimate_tokens(request, metric_service) and returns: unknown