Class: AWSCDK::BedrockAgentCore::TriggerConditions

Inherits:
Jsii::Struct
  • Object
show all
Defined in:
bedrock_agent_core/trigger_conditions.rb

Overview

Trigger conditions for self managed memory strategy When first condition is met, batched payloads are sent to specified S3 bucket.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(message_based_trigger: nil, time_based_trigger: nil, token_based_trigger: nil) ⇒ TriggerConditions

Returns a new instance of TriggerConditions.

Parameters:

  • message_based_trigger (Numeric, nil) (defaults to: nil)

    Triggers memory processing when specified number of new messages is reached.

  • time_based_trigger (AWSCDK::Duration, nil) (defaults to: nil)

    Triggers memory processing when the session has been idle for the specified duration.

  • token_based_trigger (Numeric, nil) (defaults to: nil)

    Triggers memory processing when the token size reaches the specified threshold.



10
11
12
13
14
15
16
17
# File 'bedrock_agent_core/trigger_conditions.rb', line 10

def initialize(message_based_trigger: nil, time_based_trigger: nil, token_based_trigger: nil)
  @message_based_trigger = message_based_trigger
  Jsii::Type.check_type(@message_based_trigger, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "messageBasedTrigger") unless @message_based_trigger.nil?
  @time_based_trigger = time_based_trigger
  Jsii::Type.check_type(@time_based_trigger, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "timeBasedTrigger") unless @time_based_trigger.nil?
  @token_based_trigger = token_based_trigger
  Jsii::Type.check_type(@token_based_trigger, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJudW1iZXIifQ==")), "tokenBasedTrigger") unless @token_based_trigger.nil?
end

Instance Attribute Details

#message_based_triggerNumeric? (readonly)

Note:

Default: 1

Triggers memory processing when specified number of new messages is reached.

Returns:

  • (Numeric, nil)


23
24
25
# File 'bedrock_agent_core/trigger_conditions.rb', line 23

def message_based_trigger
  @message_based_trigger
end

#time_based_triggerAWSCDK::Duration? (readonly)

Note:

Default: - 10 seconds

Triggers memory processing when the session has been idle for the specified duration.

Value in seconds.

Returns:



30
31
32
# File 'bedrock_agent_core/trigger_conditions.rb', line 30

def time_based_trigger
  @time_based_trigger
end

#token_based_triggerNumeric? (readonly)

Note:

Default: 100

Triggers memory processing when the token size reaches the specified threshold.

Returns:

  • (Numeric, nil)


35
36
37
# File 'bedrock_agent_core/trigger_conditions.rb', line 35

def token_based_trigger
  @token_based_trigger
end

Class Method Details

.jsii_propertiesObject



37
38
39
40
41
42
43
# File 'bedrock_agent_core/trigger_conditions.rb', line 37

def self.jsii_properties
  {
    :message_based_trigger => "messageBasedTrigger",
    :time_based_trigger => "timeBasedTrigger",
    :token_based_trigger => "tokenBasedTrigger",
  }
end

Instance Method Details

#to_jsiiObject



45
46
47
48
49
50
51
52
53
# File 'bedrock_agent_core/trigger_conditions.rb', line 45

def to_jsii
  result = {}
  result.merge!({
    "messageBasedTrigger" => @message_based_trigger,
    "timeBasedTrigger" => @time_based_trigger,
    "tokenBasedTrigger" => @token_based_trigger,
  })
  result.compact
end