1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
impl super::Client {
    /// Constructs a fluent builder for the [`CreateAgent`](crate::operation::create_agent::builders::CreateAgentFluentBuilder) operation.
    ///
    /// - The fluent builder is configurable:
    ///   - [`agent_name(impl Into<String>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::agent_name) / [`set_agent_name(Option<String>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::set_agent_name):<br>required: **true**<br><p>A name for the agent that you create.</p><br>
    ///   - [`client_token(impl Into<String>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::client_token) / [`set_client_token(Option<String>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::set_client_token):<br>required: **false**<br><p>A unique, case-sensitive identifier to ensure that the API request completes no more than one time. If this token matches a previous request, Amazon Bedrock ignores the request, but does not return an error. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensuring idempotency</a>.</p><br>
    ///   - [`instruction(impl Into<String>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::instruction) / [`set_instruction(Option<String>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::set_instruction):<br>required: **false**<br><p>Instructions that tell the agent what it should do and how it should interact with users.</p><br>
    ///   - [`foundation_model(impl Into<String>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::foundation_model) / [`set_foundation_model(Option<String>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::set_foundation_model):<br>required: **false**<br><p>The foundation model to be used for orchestration by the agent you create.</p><br>
    ///   - [`description(impl Into<String>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::description) / [`set_description(Option<String>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::set_description):<br>required: **false**<br><p>A description of the agent.</p><br>
    ///   - [`idle_session_ttl_in_seconds(i32)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::idle_session_ttl_in_seconds) / [`set_idle_session_ttl_in_seconds(Option<i32>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::set_idle_session_ttl_in_seconds):<br>required: **false**<br><p>The number of seconds for which Amazon Bedrock keeps information about a user's conversation with the agent.</p> <p>A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and Amazon Bedrock deletes any data provided before the timeout.</p><br>
    ///   - [`agent_resource_role_arn(impl Into<String>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::agent_resource_role_arn) / [`set_agent_resource_role_arn(Option<String>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::set_agent_resource_role_arn):<br>required: **false**<br><p>The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the agent.</p><br>
    ///   - [`customer_encryption_key_arn(impl Into<String>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::customer_encryption_key_arn) / [`set_customer_encryption_key_arn(Option<String>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::set_customer_encryption_key_arn):<br>required: **false**<br><p>The Amazon Resource Name (ARN) of the KMS key with which to encrypt the agent.</p><br>
    ///   - [`tags(impl Into<String>, impl Into<String>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::tags) / [`set_tags(Option<HashMap::<String, String>>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::set_tags):<br>required: **false**<br><p>Any tags that you want to attach to the agent.</p><br>
    ///   - [`prompt_override_configuration(PromptOverrideConfiguration)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::prompt_override_configuration) / [`set_prompt_override_configuration(Option<PromptOverrideConfiguration>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::set_prompt_override_configuration):<br>required: **false**<br><p>Contains configurations to override prompts in different parts of an agent sequence. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/advanced-prompts.html">Advanced prompts</a>.</p><br>
    ///   - [`guardrail_configuration(GuardrailConfiguration)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::guardrail_configuration) / [`set_guardrail_configuration(Option<GuardrailConfiguration>)`](crate::operation::create_agent::builders::CreateAgentFluentBuilder::set_guardrail_configuration):<br>required: **false**<br><p>The unique Guardrail configuration assigned to the agent when it is created.</p><br>
    /// - On success, responds with [`CreateAgentOutput`](crate::operation::create_agent::CreateAgentOutput) with field(s):
    ///   - [`agent(Option<Agent>)`](crate::operation::create_agent::CreateAgentOutput::agent): <p>Contains details about the agent created.</p>
    /// - On failure, responds with [`SdkError<CreateAgentError>`](crate::operation::create_agent::CreateAgentError)
    pub fn create_agent(&self) -> crate::operation::create_agent::builders::CreateAgentFluentBuilder {
        crate::operation::create_agent::builders::CreateAgentFluentBuilder::new(self.handle.clone())
    }
}