7#include <aws/bedrock-runtime/BedrockRuntime_EXPORTS.h>
8#include <aws/bedrock-runtime/model/AppliedGuardrailDetails.h>
9#include <aws/bedrock-runtime/model/GuardrailAutomatedReasoningPolicyAssessment.h>
10#include <aws/bedrock-runtime/model/GuardrailContentPolicyAssessment.h>
11#include <aws/bedrock-runtime/model/GuardrailContextualGroundingPolicyAssessment.h>
12#include <aws/bedrock-runtime/model/GuardrailInvocationMetrics.h>
13#include <aws/bedrock-runtime/model/GuardrailSensitiveInformationPolicyAssessment.h>
14#include <aws/bedrock-runtime/model/GuardrailTopicPolicyAssessment.h>
15#include <aws/bedrock-runtime/model/GuardrailWordPolicyAssessment.h>
26namespace BedrockRuntime {
48 template <
typename TopicPolicyT = GuardrailTopicPolicyAssessment>
50 m_topicPolicyHasBeenSet =
true;
51 m_topicPolicy = std::forward<TopicPolicyT>(value);
53 template <
typename TopicPolicyT = GuardrailTopicPolicyAssessment>
66 template <
typename ContentPolicyT = GuardrailContentPolicyAssessment>
68 m_contentPolicyHasBeenSet =
true;
69 m_contentPolicy = std::forward<ContentPolicyT>(value);
71 template <
typename ContentPolicyT = GuardrailContentPolicyAssessment>
84 template <
typename WordPolicyT = GuardrailWordPolicyAssessment>
86 m_wordPolicyHasBeenSet =
true;
87 m_wordPolicy = std::forward<WordPolicyT>(value);
89 template <
typename WordPolicyT = GuardrailWordPolicyAssessment>
102 template <
typename SensitiveInformationPolicyT = GuardrailSensitiveInformationPolicyAssessment>
104 m_sensitiveInformationPolicyHasBeenSet =
true;
105 m_sensitiveInformationPolicy = std::forward<SensitiveInformationPolicyT>(value);
107 template <
typename SensitiveInformationPolicyT = GuardrailSensitiveInformationPolicyAssessment>
120 template <
typename ContextualGroundingPolicyT = GuardrailContextualGroundingPolicyAssessment>
122 m_contextualGroundingPolicyHasBeenSet =
true;
123 m_contextualGroundingPolicy = std::forward<ContextualGroundingPolicyT>(value);
125 template <
typename ContextualGroundingPolicyT = GuardrailContextualGroundingPolicyAssessment>
139 template <
typename AutomatedReasoningPolicyT = GuardrailAutomatedReasoningPolicyAssessment>
141 m_automatedReasoningPolicyHasBeenSet =
true;
142 m_automatedReasoningPolicy = std::forward<AutomatedReasoningPolicyT>(value);
144 template <
typename AutomatedReasoningPolicyT = GuardrailAutomatedReasoningPolicyAssessment>
157 template <
typename InvocationMetricsT = GuardrailInvocationMetrics>
159 m_invocationMetricsHasBeenSet =
true;
160 m_invocationMetrics = std::forward<InvocationMetricsT>(value);
162 template <
typename InvocationMetricsT = GuardrailInvocationMetrics>
173 template <
typename AppliedGuardrailDetailsT = AppliedGuardrailDetails>
175 m_appliedGuardrailDetailsHasBeenSet =
true;
176 m_appliedGuardrailDetails = std::forward<AppliedGuardrailDetailsT>(value);
178 template <
typename AppliedGuardrailDetailsT = AppliedGuardrailDetails>
200 bool m_topicPolicyHasBeenSet =
false;
201 bool m_contentPolicyHasBeenSet =
false;
202 bool m_wordPolicyHasBeenSet =
false;
203 bool m_sensitiveInformationPolicyHasBeenSet =
false;
204 bool m_contextualGroundingPolicyHasBeenSet =
false;
205 bool m_automatedReasoningPolicyHasBeenSet =
false;
206 bool m_invocationMetricsHasBeenSet =
false;
207 bool m_appliedGuardrailDetailsHasBeenSet =
false;
const GuardrailInvocationMetrics & GetInvocationMetrics() const
bool SensitiveInformationPolicyHasBeenSet() const
void SetSensitiveInformationPolicy(SensitiveInformationPolicyT &&value)
bool AppliedGuardrailDetailsHasBeenSet() const
GuardrailAssessment & WithWordPolicy(WordPolicyT &&value)
const GuardrailAutomatedReasoningPolicyAssessment & GetAutomatedReasoningPolicy() const
AWS_BEDROCKRUNTIME_API Aws::Utils::Json::JsonValue Jsonize() const
bool AutomatedReasoningPolicyHasBeenSet() const
bool ContextualGroundingPolicyHasBeenSet() const
void SetTopicPolicy(TopicPolicyT &&value)
const GuardrailTopicPolicyAssessment & GetTopicPolicy() const
void SetContextualGroundingPolicy(ContextualGroundingPolicyT &&value)
const AppliedGuardrailDetails & GetAppliedGuardrailDetails() const
bool InvocationMetricsHasBeenSet() const
AWS_BEDROCKRUNTIME_API GuardrailAssessment & operator=(Aws::Utils::Json::JsonView jsonValue)
void SetContentPolicy(ContentPolicyT &&value)
GuardrailAssessment & WithContextualGroundingPolicy(ContextualGroundingPolicyT &&value)
void SetAppliedGuardrailDetails(AppliedGuardrailDetailsT &&value)
GuardrailAssessment & WithAutomatedReasoningPolicy(AutomatedReasoningPolicyT &&value)
bool TopicPolicyHasBeenSet() const
GuardrailAssessment & WithContentPolicy(ContentPolicyT &&value)
const GuardrailSensitiveInformationPolicyAssessment & GetSensitiveInformationPolicy() const
const GuardrailWordPolicyAssessment & GetWordPolicy() const
AWS_BEDROCKRUNTIME_API GuardrailAssessment(Aws::Utils::Json::JsonView jsonValue)
void SetInvocationMetrics(InvocationMetricsT &&value)
const GuardrailContextualGroundingPolicyAssessment & GetContextualGroundingPolicy() const
const GuardrailContentPolicyAssessment & GetContentPolicy() const
GuardrailAssessment & WithSensitiveInformationPolicy(SensitiveInformationPolicyT &&value)
void SetWordPolicy(WordPolicyT &&value)
GuardrailAssessment & WithTopicPolicy(TopicPolicyT &&value)
bool WordPolicyHasBeenSet() const
GuardrailAssessment & WithAppliedGuardrailDetails(AppliedGuardrailDetailsT &&value)
AWS_BEDROCKRUNTIME_API GuardrailAssessment()=default
void SetAutomatedReasoningPolicy(AutomatedReasoningPolicyT &&value)
GuardrailAssessment & WithInvocationMetrics(InvocationMetricsT &&value)
bool ContentPolicyHasBeenSet() const
std::shared_ptr< T > MakeShared(const char *allocationTag, ArgTypes &&... args)
Aws::Utils::Json::JsonValue JsonValue