class_docstr: Reference: https://us-west-2.console.aws.amazon.com/bedrock/home?region=us-west-2#/providers?model=j2-ultra
  
  Supported Params for the Amazon / AI21 models:
  
  - `maxTokens` (int32): The maximum number of tokens to generate per result. Optional, default is 16. If no `stopSequences` are given, generation stops after producing `maxTokens`.
  
  - `temperature` (float): Modifies the distribution from which tokens are sampled. Optional, default is 0.7. A value of 0 essentially disables sampling and results in greedy decoding.
  
  - `topP` (float): Used for sampling tokens from the corresponding top percentile of probability mass. Optional, default is 1. For instance, a value of 0.9 considers only tokens comprising the top 90% probability mass.
  
  - `stopSequences` (array of strings): Stops decoding if any of the input strings is generated. Optional.
  
  - `frequencyPenalty` (object): Placeholder for frequency penalty object.
  
  - `presencePenalty` (object): Placeholder for presence penalty object.
  
  - `countPenalty` (object): Placeholder for count penalty object.
class_docstr_tok: ["Reference",":","https",":","\/\/us-west-2.console.aws.amazon.com\/bedrock\/home","?","region=us-west-2","#","\/providers","?","model=j2-ultra","Supported","Params","for","the","Amazon","\/","AI21","models",":","-","`","maxTokens","`","(","int32",")",":","The","maximum","number","of","tokens","to","generate","per","result",".","Optional",",","default","is","16",".","If","no","`","stopSequences","`","are","given",",","generation","stops","after","producing","`","maxTokens","`",".","-","`","temperature","`","(","float",")",":","Modifies","the","distribution","from","which","tokens","are","sampled",".","Optional",",","default","is","0.7",".","A","value","of","0","essentially","disables","sampling","and","results","in","greedy","decoding",".","-","`","topP","`","(","float",")",":","Used","for","sampling","tokens","from","the","corresponding","top","percentile","of","probability","mass",".","Optional",",","default","is","1",".","For","instance",",","a","value","of","0.9","considers","only","tokens","comprising","the","top","90","%","probability","mass",".","-","`","stopSequences","`","(","array","of","strings",")",":","Stops","decoding","if","any","of","the","input","strings","is","generated",".","Optional",".","-","`","frequencyPenalty","`","(","object",")",":","Placeholder","for","frequency","penalty","object",".","-","`","presencePenalty","`","(","object",")",":","Placeholder","for","presence","penalty","object",".","-","`","countPenalty","`","(","object",")",":","Placeholder","for","count","penalty","object","."]
code: def __init__(
      self,
      maxTokens: Optional[int] = None,
      temperature: Optional[float] = None,
      topP: Optional[float] = None,
      stopSequences: Optional[list] = None,
      frequencePenalty: Optional[dict] = None,
      presencePenalty: Optional[dict] = None,
      countPenalty: Optional[dict] = None,
  ) -> None:
      locals_ = locals()
      for key, value in locals_.items():
          if key != "self" and value is not None:
              setattr(self.__class__, key, value)
  
imports: import json, copy, types
  import os
  from enum import Enum
  import time
  from typing import Callable, Optional, Any, Union
  import litellm
  from litellm.utils import ModelResponse, get_secret, Usage
  from .prompt_templates.factory import prompt_factory, custom_prompt
  import httpx
label_desc: Use image node_id 1 to create a new AmazonAI21Config object  with example: obj = AmazonAI21Config(maxTokens, temperature, topP, stopSequences, frequencePenalty, presencePenalty, countPenalty)