aws-sdk-bedrockagentruntime 1.126.0

AWS SDK for Agents for Amazon Bedrock Runtime
Documentation
// Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
#[allow(missing_docs)] // documentation missing in model
#[non_exhaustive]
#[derive(::std::clone::Clone, ::std::cmp::PartialEq)]
pub struct RetrieveInput {
    /// <p>The unique identifier of the knowledge base to query.</p>
    pub knowledge_base_id: ::std::option::Option<::std::string::String>,
    /// <p>Contains the query to send the knowledge base.</p>
    pub retrieval_query: ::std::option::Option<crate::types::KnowledgeBaseQuery>,
    /// <p>Contains configurations for the knowledge base query and retrieval process. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/kb-test-config.html">Query configurations</a>.</p>
    pub retrieval_configuration: ::std::option::Option<crate::types::KnowledgeBaseRetrievalConfiguration>,
    /// <p>Guardrail settings.</p>
    pub guardrail_configuration: ::std::option::Option<crate::types::GuardrailConfiguration>,
    /// <p>If there are more results than can fit in the response, the response returns a <code>nextToken</code>. Use this token in the <code>nextToken</code> field of another request to retrieve the next batch of results.</p>
    pub next_token: ::std::option::Option<::std::string::String>,
}
impl RetrieveInput {
    /// <p>The unique identifier of the knowledge base to query.</p>
    pub fn knowledge_base_id(&self) -> ::std::option::Option<&str> {
        self.knowledge_base_id.as_deref()
    }
    /// <p>Contains the query to send the knowledge base.</p>
    pub fn retrieval_query(&self) -> ::std::option::Option<&crate::types::KnowledgeBaseQuery> {
        self.retrieval_query.as_ref()
    }
    /// <p>Contains configurations for the knowledge base query and retrieval process. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/kb-test-config.html">Query configurations</a>.</p>
    pub fn retrieval_configuration(&self) -> ::std::option::Option<&crate::types::KnowledgeBaseRetrievalConfiguration> {
        self.retrieval_configuration.as_ref()
    }
    /// <p>Guardrail settings.</p>
    pub fn guardrail_configuration(&self) -> ::std::option::Option<&crate::types::GuardrailConfiguration> {
        self.guardrail_configuration.as_ref()
    }
    /// <p>If there are more results than can fit in the response, the response returns a <code>nextToken</code>. Use this token in the <code>nextToken</code> field of another request to retrieve the next batch of results.</p>
    pub fn next_token(&self) -> ::std::option::Option<&str> {
        self.next_token.as_deref()
    }
}
impl ::std::fmt::Debug for RetrieveInput {
    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
        let mut formatter = f.debug_struct("RetrieveInput");
        formatter.field("knowledge_base_id", &self.knowledge_base_id);
        formatter.field("retrieval_query", &"*** Sensitive Data Redacted ***");
        formatter.field("retrieval_configuration", &self.retrieval_configuration);
        formatter.field("guardrail_configuration", &self.guardrail_configuration);
        formatter.field("next_token", &self.next_token);
        formatter.finish()
    }
}
impl RetrieveInput {
    /// Creates a new builder-style object to manufacture [`RetrieveInput`](crate::operation::retrieve::RetrieveInput).
    pub fn builder() -> crate::operation::retrieve::builders::RetrieveInputBuilder {
        crate::operation::retrieve::builders::RetrieveInputBuilder::default()
    }
}

/// A builder for [`RetrieveInput`](crate::operation::retrieve::RetrieveInput).
#[derive(::std::clone::Clone, ::std::cmp::PartialEq, ::std::default::Default)]
#[non_exhaustive]
pub struct RetrieveInputBuilder {
    pub(crate) knowledge_base_id: ::std::option::Option<::std::string::String>,
    pub(crate) retrieval_query: ::std::option::Option<crate::types::KnowledgeBaseQuery>,
    pub(crate) retrieval_configuration: ::std::option::Option<crate::types::KnowledgeBaseRetrievalConfiguration>,
    pub(crate) guardrail_configuration: ::std::option::Option<crate::types::GuardrailConfiguration>,
    pub(crate) next_token: ::std::option::Option<::std::string::String>,
}
impl RetrieveInputBuilder {
    /// <p>The unique identifier of the knowledge base to query.</p>
    /// This field is required.
    pub fn knowledge_base_id(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.knowledge_base_id = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>The unique identifier of the knowledge base to query.</p>
    pub fn set_knowledge_base_id(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.knowledge_base_id = input;
        self
    }
    /// <p>The unique identifier of the knowledge base to query.</p>
    pub fn get_knowledge_base_id(&self) -> &::std::option::Option<::std::string::String> {
        &self.knowledge_base_id
    }
    /// <p>Contains the query to send the knowledge base.</p>
    /// This field is required.
    pub fn retrieval_query(mut self, input: crate::types::KnowledgeBaseQuery) -> Self {
        self.retrieval_query = ::std::option::Option::Some(input);
        self
    }
    /// <p>Contains the query to send the knowledge base.</p>
    pub fn set_retrieval_query(mut self, input: ::std::option::Option<crate::types::KnowledgeBaseQuery>) -> Self {
        self.retrieval_query = input;
        self
    }
    /// <p>Contains the query to send the knowledge base.</p>
    pub fn get_retrieval_query(&self) -> &::std::option::Option<crate::types::KnowledgeBaseQuery> {
        &self.retrieval_query
    }
    /// <p>Contains configurations for the knowledge base query and retrieval process. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/kb-test-config.html">Query configurations</a>.</p>
    pub fn retrieval_configuration(mut self, input: crate::types::KnowledgeBaseRetrievalConfiguration) -> Self {
        self.retrieval_configuration = ::std::option::Option::Some(input);
        self
    }
    /// <p>Contains configurations for the knowledge base query and retrieval process. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/kb-test-config.html">Query configurations</a>.</p>
    pub fn set_retrieval_configuration(mut self, input: ::std::option::Option<crate::types::KnowledgeBaseRetrievalConfiguration>) -> Self {
        self.retrieval_configuration = input;
        self
    }
    /// <p>Contains configurations for the knowledge base query and retrieval process. For more information, see <a href="https://docs.aws.amazon.com/bedrock/latest/userguide/kb-test-config.html">Query configurations</a>.</p>
    pub fn get_retrieval_configuration(&self) -> &::std::option::Option<crate::types::KnowledgeBaseRetrievalConfiguration> {
        &self.retrieval_configuration
    }
    /// <p>Guardrail settings.</p>
    pub fn guardrail_configuration(mut self, input: crate::types::GuardrailConfiguration) -> Self {
        self.guardrail_configuration = ::std::option::Option::Some(input);
        self
    }
    /// <p>Guardrail settings.</p>
    pub fn set_guardrail_configuration(mut self, input: ::std::option::Option<crate::types::GuardrailConfiguration>) -> Self {
        self.guardrail_configuration = input;
        self
    }
    /// <p>Guardrail settings.</p>
    pub fn get_guardrail_configuration(&self) -> &::std::option::Option<crate::types::GuardrailConfiguration> {
        &self.guardrail_configuration
    }
    /// <p>If there are more results than can fit in the response, the response returns a <code>nextToken</code>. Use this token in the <code>nextToken</code> field of another request to retrieve the next batch of results.</p>
    pub fn next_token(mut self, input: impl ::std::convert::Into<::std::string::String>) -> Self {
        self.next_token = ::std::option::Option::Some(input.into());
        self
    }
    /// <p>If there are more results than can fit in the response, the response returns a <code>nextToken</code>. Use this token in the <code>nextToken</code> field of another request to retrieve the next batch of results.</p>
    pub fn set_next_token(mut self, input: ::std::option::Option<::std::string::String>) -> Self {
        self.next_token = input;
        self
    }
    /// <p>If there are more results than can fit in the response, the response returns a <code>nextToken</code>. Use this token in the <code>nextToken</code> field of another request to retrieve the next batch of results.</p>
    pub fn get_next_token(&self) -> &::std::option::Option<::std::string::String> {
        &self.next_token
    }
    /// Consumes the builder and constructs a [`RetrieveInput`](crate::operation::retrieve::RetrieveInput).
    pub fn build(self) -> ::std::result::Result<crate::operation::retrieve::RetrieveInput, ::aws_smithy_types::error::operation::BuildError> {
        ::std::result::Result::Ok(crate::operation::retrieve::RetrieveInput {
            knowledge_base_id: self.knowledge_base_id,
            retrieval_query: self.retrieval_query,
            retrieval_configuration: self.retrieval_configuration,
            guardrail_configuration: self.guardrail_configuration,
            next_token: self.next_token,
        })
    }
}
impl ::std::fmt::Debug for RetrieveInputBuilder {
    fn fmt(&self, f: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
        let mut formatter = f.debug_struct("RetrieveInputBuilder");
        formatter.field("knowledge_base_id", &self.knowledge_base_id);
        formatter.field("retrieval_query", &"*** Sensitive Data Redacted ***");
        formatter.field("retrieval_configuration", &self.retrieval_configuration);
        formatter.field("guardrail_configuration", &self.guardrail_configuration);
        formatter.field("next_token", &self.next_token);
        formatter.finish()
    }
}