Class: AWSCDK::BedrockAgentCore::CodeBasedOptions

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

Overview

Options for configuring a code-based custom evaluator using a Lambda function.

Uses a Lambda function to implement custom evaluation logic.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(lambda_function:, timeout: nil) ⇒ CodeBasedOptions

Returns a new instance of CodeBasedOptions.

Parameters:

  • lambda_function (AWSCDK::Lambda::IFunction)

    The Lambda function used for evaluation.

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

    The timeout for the Lambda function invocation during evaluation.



11
12
13
14
15
16
# File 'bedrock_agent_core/code_based_options.rb', line 11

def initialize(lambda_function:, timeout: nil)
  @lambda_function = lambda_function
  Jsii::Type.check_type(@lambda_function, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3NfbGFtYmRhLklGdW5jdGlvbiJ9")), "lambdaFunction")
  @timeout = timeout
  Jsii::Type.check_type(@timeout, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "timeout") unless @timeout.nil?
end

Instance Attribute Details

#lambda_functionAWSCDK::Lambda::IFunction (readonly)

The Lambda function used for evaluation.

The function will be granted invoke permissions for the bedrock-agentcore.amazonaws.com service principal, scoped to this specific evaluator resource.



25
26
27
# File 'bedrock_agent_core/code_based_options.rb', line 25

def lambda_function
  @lambda_function
end

#timeoutAWSCDK::Duration? (readonly)

Note:

Default: - The AgentCore evaluation service's default Lambda timeout is used

The timeout for the Lambda function invocation during evaluation.

When not specified, the AgentCore evaluation service uses its default timeout for Lambda-based evaluators.



34
35
36
# File 'bedrock_agent_core/code_based_options.rb', line 34

def timeout
  @timeout
end

Class Method Details

.jsii_propertiesObject



36
37
38
39
40
41
# File 'bedrock_agent_core/code_based_options.rb', line 36

def self.jsii_properties
  {
    :lambda_function => "lambdaFunction",
    :timeout => "timeout",
  }
end

Instance Method Details

#to_jsiiObject



43
44
45
46
47
48
49
50
# File 'bedrock_agent_core/code_based_options.rb', line 43

def to_jsii
  result = {}
  result.merge!({
    "lambdaFunction" => @lambda_function,
    "timeout" => @timeout,
  })
  result.compact
end