Initiates an asynchronous analysis of your bot configuration using AI-powered analysis to identify potential issues and recommend improvements based on AWS best practices.
The analysis examines your bot's configuration, including intents, utterances, slots, and conversation flows, to provide actionable recommendations for optimization.
Parameters:
-
bot_id
(Id)
–
The unique identifier of the bot to analyze.
-
analysis_scope
(AnalysisScope)
–
The scope of analysis to perform. Currently only BotLocale scope is supported.
Valid Values: BotLocale
-
locale_id
(Optional[LocaleId], default:
None
)
–
The locale identifier for the bot locale to analyze. Required when analysisScope is BotLocale.
-
bot_version
(Optional[DraftBotVersion], default:
None
)
–
The version of the bot to analyze. Defaults to DRAFT if not specified.
Raises:
-
ConflictException
–
The action that you tried to perform couldn't be completed because the resource is in a conflicting state. For example, deleting a bot that is in the CREATING state. Try your request again.
-
InternalServerException
–
The service encountered an unexpected condition. Try your request again.
-
ResourceNotFoundException
–
You asked to describe a resource that doesn't exist. Check the resource that you are requesting and try again.
-
ThrottlingException
–
Your request rate is too high. Reduce the frequency of requests.
-
ValidationException
–
One of the input parameters in your request isn't valid. Check the parameters and try your request again.
-
UnknownServiceError
–
The service returned an error code this client does not model.
Source code in docs_src/capo_lex_models_v2/_services/async_lex_models_v2.py
| async def start_bot_analyzer(
self,
bot_id: "capo_lex_models_v2.types.id.Id",
analysis_scope: "capo_lex_models_v2.types.analysis_scope.AnalysisScope",
*,
config_overrides: Optional[AsyncLexModelsV2ClientConfig] = None,
locale_id: Optional["capo_lex_models_v2.types.locale_id.LocaleId"] = None,
bot_version: Optional[
"capo_lex_models_v2.types.draft_bot_version.DraftBotVersion"
] = None,
) -> (
"capo_lex_models_v2.types.start_bot_analyzer_response.StartBotAnalyzerResponse"
):
"""<p>Initiates an asynchronous analysis of your bot configuration using AI-powered analysis to identify potential issues and recommend improvements based on AWS best practices.</p> <p>The analysis examines your bot's configuration, including intents, utterances, slots, and conversation flows, to provide actionable recommendations for optimization.</p>
Args:
bot_id: <p>The unique identifier of the bot to analyze.</p>
analysis_scope: <p>The scope of analysis to perform. Currently only <code>BotLocale</code> scope is supported.</p> <p>Valid Values: <code>BotLocale</code> </p>
locale_id: <p>The locale identifier for the bot locale to analyze. Required when <code>analysisScope</code> is <code>BotLocale</code>.</p>
bot_version: <p>The version of the bot to analyze. Defaults to <code>DRAFT</code> if not specified.</p>
Raises:
capo_lex_models_v2.errors.conflict_exception.ConflictException: <p>The action that you tried to perform couldn't be completed because the resource is in a conflicting state. For example, deleting a bot that is in the CREATING state. Try your request again. </p>
capo_lex_models_v2.errors.internal_server_exception.InternalServerException: <p>The service encountered an unexpected condition. Try your request again.</p>
capo_lex_models_v2.errors.resource_not_found_exception.ResourceNotFoundException: <p>You asked to describe a resource that doesn't exist. Check the resource that you are requesting and try again.</p>
capo_lex_models_v2.errors.throttling_exception.ThrottlingException: <p>Your request rate is too high. Reduce the frequency of requests.</p>
capo_lex_models_v2.errors.validation_exception.ValidationException: <p>One of the input parameters in your request isn't valid. Check the parameters and try your request again.</p>
capo_lex_models_v2.errors.UnknownServiceError: The service returned an error code this client does not model.
"""
async def _handler(
req: "AsyncOperationRequest[capo_lex_models_v2.types.start_bot_analyzer_request.StartBotAnalyzerRequest]",
) -> AsyncOperationResponse[
"capo_lex_models_v2.types.start_bot_analyzer_response.StartBotAnalyzerResponse"
]:
import capo_lex_models_v2._operations.lex_model_building_service_v2.start_bot_analyzer
(
output,
http_response,
) = await capo_lex_models_v2._operations.lex_model_building_service_v2.start_bot_analyzer.async_start_bot_analyzer(
req.options, req.input
)
return AsyncOperationResponse(output=output, response=http_response)
interceptors_, options_ = self.operation_options(
config_overrides, OperationLogging("StartBotAnalyzer")
)
input_: capo_lex_models_v2.types.start_bot_analyzer_request.StartBotAnalyzerRequest = {
"bot_id": bot_id,
"analysis_scope": analysis_scope,
}
if locale_id is not None:
input_["locale_id"] = locale_id
if bot_version is not None:
input_["bot_version"] = bot_version
response = await aexecute_pipeline(
AsyncOperationRequest(input=input_, options=options_),
handler=_handler,
interceptors=list(interceptors_),
)
await response.response.aclose()
return response.output
|