aws_sdk_bedrockagentruntime/client/
invoke_inline_agent.rs

1// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
2impl super::Client {
3    /// Constructs a fluent builder for the [`InvokeInlineAgent`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder) operation.
4    ///
5    /// - The fluent builder is configurable:
6    ///   - [`customer_encryption_key_arn(impl Into<String>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::customer_encryption_key_arn) / [`set_customer_encryption_key_arn(Option<String>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_customer_encryption_key_arn):<br>required: **false**<br><p>The Amazon Resource Name (ARN) of the Amazon Web Services KMS key to use to encrypt your inline agent.</p><br>
7    ///   - [`foundation_model(impl Into<String>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::foundation_model) / [`set_foundation_model(Option<String>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_foundation_model):<br>required: **true**<br><p>The <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/model-ids.html#model-ids-arns">model identifier (ID)</a> of the model to use for orchestration by the inline agent. For example, <code>meta.llama3-1-70b-instruct-v1:0</code>.</p><br>
8    ///   - [`instruction(impl Into<String>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::instruction) / [`set_instruction(Option<String>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_instruction):<br>required: **true**<br><p>The instructions that tell the inline agent what it should do and how it should interact with users.</p><br>
9    ///   - [`idle_session_ttl_in_seconds(i32)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::idle_session_ttl_in_seconds) / [`set_idle_session_ttl_in_seconds(Option<i32>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_idle_session_ttl_in_seconds):<br>required: **false**<br><p>The number of seconds for which the inline agent should maintain session information. After this time expires, the subsequent <code>InvokeInlineAgent</code> request begins a new session.</p> <p>A user interaction remains active for the amount of time specified. If no conversation occurs during this time, the session expires and the data provided before the timeout is deleted.</p><br>
10    ///   - [`action_groups(AgentActionGroup)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::action_groups) / [`set_action_groups(Option<Vec::<AgentActionGroup>>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_action_groups):<br>required: **false**<br><p>A list of action groups with each action group defining the action the inline agent needs to carry out.</p><br>
11    ///   - [`knowledge_bases(KnowledgeBase)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::knowledge_bases) / [`set_knowledge_bases(Option<Vec::<KnowledgeBase>>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_knowledge_bases):<br>required: **false**<br><p>Contains information of the knowledge bases to associate with.</p><br>
12    ///   - [`guardrail_configuration(GuardrailConfigurationWithArn)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::guardrail_configuration) / [`set_guardrail_configuration(Option<GuardrailConfigurationWithArn>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_guardrail_configuration):<br>required: **false**<br><p>The <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/guardrails.html">guardrails</a> to assign to the inline agent.</p><br>
13    ///   - [`prompt_override_configuration(PromptOverrideConfiguration)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::prompt_override_configuration) / [`set_prompt_override_configuration(Option<PromptOverrideConfiguration>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_prompt_override_configuration):<br>required: **false**<br><p>Configurations for advanced prompts used to override the default prompts to enhance the accuracy of the inline agent.</p><br>
14    ///   - [`agent_collaboration(AgentCollaboration)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::agent_collaboration) / [`set_agent_collaboration(Option<AgentCollaboration>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_agent_collaboration):<br>required: **false**<br><p>Defines how the inline collaborator agent handles information across multiple collaborator agents to coordinate a final response. The inline collaborator agent can also be the supervisor.</p><br>
15    ///   - [`collaborator_configurations(CollaboratorConfiguration)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::collaborator_configurations) / [`set_collaborator_configurations(Option<Vec::<CollaboratorConfiguration>>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_collaborator_configurations):<br>required: **false**<br><p>Settings for an inline agent collaborator called with <a href="https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent-runtime_InvokeInlineAgent.html">InvokeInlineAgent</a>.</p><br>
16    ///   - [`agent_name(impl Into<String>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::agent_name) / [`set_agent_name(Option<String>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_agent_name):<br>required: **false**<br><p>The name for the agent.</p><br>
17    ///   - [`session_id(impl Into<String>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::session_id) / [`set_session_id(Option<String>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_session_id):<br>required: **true**<br><p>The unique identifier of the session. Use the same value across requests to continue the same conversation.</p><br>
18    ///   - [`end_session(bool)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::end_session) / [`set_end_session(Option<bool>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_end_session):<br>required: **false**<br><p>Specifies whether to end the session with the inline agent or not.</p><br>
19    ///   - [`enable_trace(bool)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::enable_trace) / [`set_enable_trace(Option<bool>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_enable_trace):<br>required: **false**<br><p>Specifies whether to turn on the trace or not to track the agent's reasoning process. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/trace-events.html">Using trace</a>.</p><br>
20    ///   - [`input_text(impl Into<String>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::input_text) / [`set_input_text(Option<String>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_input_text):<br>required: **false**<br><p>The prompt text to send to the agent.</p><note>  <p>If you include <code>returnControlInvocationResults</code> in the <code>sessionState</code> field, the <code>inputText</code> field will be ignored.</p> </note><br>
21    ///   - [`streaming_configurations(StreamingConfigurations)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::streaming_configurations) / [`set_streaming_configurations(Option<StreamingConfigurations>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_streaming_configurations):<br>required: **false**<br><p>Specifies the configurations for streaming.</p><note>  <p>To use agent streaming, you need permissions to perform the <code>bedrock:InvokeModelWithResponseStream</code> action.</p> </note><br>
22    ///   - [`inline_session_state(InlineSessionState)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::inline_session_state) / [`set_inline_session_state(Option<InlineSessionState>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_inline_session_state):<br>required: **false**<br><p>Parameters that specify the various attributes of a sessions. You can include attributes for the session or prompt or, if you configured an action group to return control, results from invocation of the action group. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/agents-session-state.html">Control session context</a>.</p><note>  <p>If you include <code>returnControlInvocationResults</code> in the <code>sessionState</code> field, the <code>inputText</code> field will be ignored.</p> </note><br>
23    ///   - [`collaborators(Collaborator)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::collaborators) / [`set_collaborators(Option<Vec::<Collaborator>>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_collaborators):<br>required: **false**<br><p>List of collaborator inline agents.</p><br>
24    ///   - [`bedrock_model_configurations(InlineBedrockModelConfigurations)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::bedrock_model_configurations) / [`set_bedrock_model_configurations(Option<InlineBedrockModelConfigurations>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_bedrock_model_configurations):<br>required: **false**<br><p>Model settings for the request.</p><br>
25    ///   - [`orchestration_type(OrchestrationType)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::orchestration_type) / [`set_orchestration_type(Option<OrchestrationType>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_orchestration_type):<br>required: **false**<br><p>Specifies the type of orchestration strategy for the agent. This is set to DEFAULT orchestration type, by default.</p><br>
26    ///   - [`custom_orchestration(CustomOrchestration)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::custom_orchestration) / [`set_custom_orchestration(Option<CustomOrchestration>)`](crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::set_custom_orchestration):<br>required: **false**<br><p>Contains details of the custom orchestration configured for the agent.</p><br>
27    /// - On success, responds with [`InvokeInlineAgentOutput`](crate::operation::invoke_inline_agent::InvokeInlineAgentOutput) with field(s):
28    ///   - [`completion(EventReceiver<InlineAgentResponseStream, InlineAgentResponseStreamError>)`](crate::operation::invoke_inline_agent::InvokeInlineAgentOutput::completion): <p>The inline agent's response to the user prompt.</p>
29    ///   - [`content_type(String)`](crate::operation::invoke_inline_agent::InvokeInlineAgentOutput::content_type): <p>The MIME type of the input data in the request. The default value is application/json.</p>
30    ///   - [`session_id(String)`](crate::operation::invoke_inline_agent::InvokeInlineAgentOutput::session_id): <p>The unique identifier of the session with the agent.</p>
31    /// - On failure, responds with [`SdkError<InvokeInlineAgentError>`](crate::operation::invoke_inline_agent::InvokeInlineAgentError)
32    pub fn invoke_inline_agent(&self) -> crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder {
33        crate::operation::invoke_inline_agent::builders::InvokeInlineAgentFluentBuilder::new(self.handle.clone())
34    }
35}