Skip to content

ConverseTrace dataclass

The trace object in a response from Converse.

Source code in src/aws_sdk_bedrock_runtime/models.py
10048
10049
10050
10051
10052
10053
10054
10055
10056
10057
10058
10059
10060
10061
10062
10063
10064
10065
10066
10067
10068
10069
10070
10071
10072
10073
10074
10075
10076
10077
10078
10079
10080
10081
10082
10083
10084
10085
10086
10087
10088
10089
10090
10091
10092
10093
10094
@dataclass(kw_only=True)
class ConverseTrace:
    """The trace object in a response from
    [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html).
    """

    guardrail: GuardrailTraceAssessment | None = None
    """The guardrail trace object."""

    prompt_router: PromptRouterTrace | None = None
    """The request's prompt router."""

    def serialize(self, serializer: ShapeSerializer):
        serializer.write_struct(_SCHEMA_CONVERSE_TRACE, self)

    def serialize_members(self, serializer: ShapeSerializer):
        if self.guardrail is not None:
            serializer.write_struct(
                _SCHEMA_CONVERSE_TRACE.members["guardrail"], self.guardrail
            )

        if self.prompt_router is not None:
            serializer.write_struct(
                _SCHEMA_CONVERSE_TRACE.members["promptRouter"], self.prompt_router
            )

    @classmethod
    def deserialize(cls, deserializer: ShapeDeserializer) -> Self:
        return cls(**cls.deserialize_kwargs(deserializer))

    @classmethod
    def deserialize_kwargs(cls, deserializer: ShapeDeserializer) -> dict[str, Any]:
        kwargs: dict[str, Any] = {}

        def _consumer(schema: Schema, de: ShapeDeserializer) -> None:
            match schema.expect_member_index():
                case 0:
                    kwargs["guardrail"] = GuardrailTraceAssessment.deserialize(de)

                case 1:
                    kwargs["prompt_router"] = PromptRouterTrace.deserialize(de)

                case _:
                    logger.debug("Unexpected member schema: %s", schema)

        deserializer.read_struct(_SCHEMA_CONVERSE_TRACE, consumer=_consumer)
        return kwargs

Attributes

guardrail class-attribute instance-attribute

guardrail: GuardrailTraceAssessment | None = None

The guardrail trace object.

prompt_router class-attribute instance-attribute

prompt_router: PromptRouterTrace | None = None

The request's prompt router.