Skip to content

PromptRouterTrace dataclass

A prompt router trace.

Source code in src/aws_sdk_bedrock_runtime/models.py
10009
10010
10011
10012
10013
10014
10015
10016
10017
10018
10019
10020
10021
10022
10023
10024
10025
10026
10027
10028
10029
10030
10031
10032
10033
10034
10035
10036
10037
10038
10039
10040
10041
10042
10043
10044
10045
@dataclass(kw_only=True)
class PromptRouterTrace:
    """A prompt router trace."""

    invoked_model_id: str | None = None
    """The ID of the invoked model."""

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

    def serialize_members(self, serializer: ShapeSerializer):
        if self.invoked_model_id is not None:
            serializer.write_string(
                _SCHEMA_PROMPT_ROUTER_TRACE.members["invokedModelId"],
                self.invoked_model_id,
            )

    @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["invoked_model_id"] = de.read_string(
                        _SCHEMA_PROMPT_ROUTER_TRACE.members["invokedModelId"]
                    )

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

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

Attributes

invoked_model_id class-attribute instance-attribute

invoked_model_id: str | None = None

The ID of the invoked model.