ChatMessageRequest Clase

Solicitar carga útil para enviar el historial de chat a la plataforma MCP.

Este modelo representa el cuerpo de solicitud completo enviado al punto de conexión del historial de chat de la plataforma MCP para el análisis de protección contra amenazas. Incluye el contexto de conversación actual y los mensajes históricos.

El modelo usa alias de campo para serializar en formato JSON camelCase según lo requiera la API de la plataforma MCP.

Constructor

pydantic model ChatMessageRequest

Parámetros de palabra clave únicamente

Nombre Description
conversationId
Requerido
messageId
Requerido
userMessage
Requerido
chatHistory
Requerido

Ejemplos


>>> from microsoft_agents_a365.tooling.models import ChatHistoryMessage
>>> request = ChatMessageRequest(
...     conversation_id="conv-123",
...     message_id="msg-456",
...     user_message="What is the weather today?",
...     chat_history=[
...         ChatHistoryMessage(role="user", content="Hello"),
...         ChatHistoryMessage(role="assistant", content="Hi there!"),
...     ]
... )
>>> # Serialize to camelCase JSON
>>> json_dict = request.model_dump(by_alias=True)
>>> print(json_dict["conversationId"])
'conv-123'

Métodos

__init__

Cree un nuevo modelo mediante el análisis y la validación de datos de entrada a partir de argumentos de palabra clave.

Genera [ValidationError][pydantic_core. ValidationError] si los datos de entrada no se pueden validar para formar un modelo válido.

self es explícitamente solo posicional para permitirse como un nombre de campo.

__new__
construct
copy

Devuelve una copia del modelo.

!!! advertencia "En desuso" Este método está en desuso; use model_copy en su lugar.

Si necesita incluir o excluir, use:

python {test="skip" lint="skip"} data = self.model_dump(include=include, exclude=exclude, round_trip=True) data = {**data, **(update or {})} copied = self.model_validate(data)

dict
from_orm
json
model_construct

Crea una nueva instancia de la clase Model con datos validados.

Crea un nuevo valor de configuración de modelo y pydantic_fields_set a partir de datos de confianza o validados previamente. Se respetan los valores predeterminados, pero no se realiza ninguna otra validación.

!!! nota model_construct() generalmente respeta la configuración model_config.extra en el modelo proporcionado. Es decir, si model_config.extra == 'allow', todos los valores pasados adicionales se agregan a los campos dict y pydantic_extra de la instancia del modelo. Si model_config.extra == 'ignore' (valor predeterminado), se omiten todos los valores pasados adicionales. Dado que no se realiza ninguna validación con una llamada a model_construct(), tener model_config.extra == 'prohibido' no produce un error si se pasan valores adicionales, pero se omitirán.

model_copy

!!! abstract "Usage Documentation" (Documentación de uso) model_copy

Devuelve una copia del modelo.

!!! nota El [dict][object) de la instancia subyacente.el atributo dict] se copia. Esto podría tener efectos secundarios inesperados si almacena algo en él, encima de los campos del modelo (por ejemplo, el valor de [propiedades almacenadas en caché][functools.cached_property]).

model_dump

!!! abstract "Usage Documentation" (Documentación de uso) model_dump

Genere una representación de diccionario del modelo, especificando opcionalmente los campos que se van a incluir o excluir.

model_dump_json

!!! resumen "Documentación de uso" model_dump_json

Genera una representación JSON del modelo mediante el método to_json de Pydantic.

model_json_schema

Genera un esquema JSON para una clase de modelo.

model_parametrized_name

Calcule el nombre de clase parametrizations de clases genéricas.

Este método se puede invalidar para lograr un esquema de nomenclatura personalizado para los modelos base genéricos.

model_post_init

Invalide este método para realizar una inicialización adicional después de init y model_construct. Esto es útil si desea realizar alguna validación que requiera que se inicialice todo el modelo.

model_rebuild

Intente recompilar el esquema pydantic-core para el modelo.

Esto puede ser necesario cuando una de las anotaciones es un ForwardRef que no se pudo resolver durante el intento inicial de compilar el esquema y se produce un error en la regeneración automática.

model_validate

Valide una instancia de modelo pydantic.

model_validate_json

!!! abstract "Usage Documentation" JSON Parsing

Valide los datos JSON especificados en el modelo Pydantic.

model_validate_strings

Valide el objeto especificado con datos de cadena en el modelo Pydantic.

not_empty

Compruebe que los campos de cadena no estén vacíos o solo espacios en blanco.

parse_file
parse_obj
parse_raw
schema
schema_json
update_forward_refs
validate

__init__

Cree un nuevo modelo mediante el análisis y la validación de datos de entrada a partir de argumentos de palabra clave.

Genera [ValidationError][pydantic_core. ValidationError] si los datos de entrada no se pueden validar para formar un modelo válido.

self es explícitamente solo posicional para permitirse como un nombre de campo.

__init__(**data: Any) -> None

Parámetros

Nombre Description
data
Requerido
Any

Devoluciones

Tipo Description

__new__

__new__(**kwargs)

construct

construct(_fields_set: set[str] | None = None, **values: Any) -> Self

Parámetros

Nombre Description
_fields_set
set[str] | None
Valor predeterminado: None
values
Requerido
Any

Devoluciones

Tipo Description

copy

Devuelve una copia del modelo.

!!! advertencia "En desuso" Este método está en desuso; use model_copy en su lugar.

Si necesita incluir o excluir, use:

python {test="skip" lint="skip"} data = self.model_dump(include=include, exclude=exclude, round_trip=True) data = {**data, **(update or {})} copied = self.model_validate(data)

copy(*, include: AbstractSetIntStr | MappingIntStrAny | None = None, exclude: AbstractSetIntStr | MappingIntStrAny | None = None, update: Dict[str, Any] | None = None, deep: bool = False) -> Self

Parámetros

Nombre Description
include
Requerido
<xref:AbstractSetIntStr> | <xref:MappingIntStrAny> | None

Conjunto opcional o asignación que especifica qué campos se van a incluir en el modelo copiado.

exclude
Requerido
<xref:AbstractSetIntStr> | <xref:MappingIntStrAny> | None

Conjunto opcional o asignación que especifica qué campos se van a excluir en el modelo copiado.

update
Requerido

Diccionario opcional de pares de valor de campo para invalidar los valores de campo en el modelo copiado.

deep
Requerido

Si es True, los valores de los campos que son modelos Pydantic se copiarán en profundidad.

Parámetros de palabra clave únicamente

Nombre Description
include
Valor predeterminado: None
exclude
Valor predeterminado: None
update
Valor predeterminado: None
deep
Valor predeterminado: False

Devoluciones

Tipo Description

Copia del modelo con campos incluidos, excluidos y actualizados según se especifica.

dict

dict(*, include: set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | None = None, exclude: set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | None = None, by_alias: bool = False, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) -> Dict[str, Any]

Parámetros

Nombre Description
include
Requerido
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None
exclude
Requerido
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None
by_alias
Requerido
exclude_unset
Requerido
exclude_defaults
Requerido
exclude_none
Requerido

Parámetros de palabra clave únicamente

Nombre Description
include
Valor predeterminado: None
exclude
Valor predeterminado: None
by_alias
Valor predeterminado: False
exclude_unset
Valor predeterminado: False
exclude_defaults
Valor predeterminado: False
exclude_none
Valor predeterminado: False

Devoluciones

Tipo Description

from_orm

from_orm(obj: Any) -> Self

Parámetros

Nombre Description
obj
Requerido
Any

Devoluciones

Tipo Description

json

json(*, include: set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | None = None, exclude: set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | None = None, by_alias: bool = False, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, encoder: Callable[[Any], Any] | None = PydanticUndefined, models_as_dict: bool = PydanticUndefined, **dumps_kwargs: Any) -> str

Parámetros

Nombre Description
include
Requerido
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None
exclude
Requerido
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None
by_alias
Requerido
exclude_unset
Requerido
exclude_defaults
Requerido
exclude_none
Requerido
encoder
Requerido
models_as_dict
Requerido
dumps_kwargs
Requerido
Any

Parámetros de palabra clave únicamente

Nombre Description
include
Valor predeterminado: None
exclude
Valor predeterminado: None
by_alias
Valor predeterminado: False
exclude_unset
Valor predeterminado: False
exclude_defaults
Valor predeterminado: False
exclude_none
Valor predeterminado: False
encoder
Valor predeterminado: PydanticUndefined
models_as_dict
Valor predeterminado: PydanticUndefined

Devoluciones

Tipo Description
str

model_construct

Crea una nueva instancia de la clase Model con datos validados.

Crea un nuevo valor de configuración de modelo y pydantic_fields_set a partir de datos de confianza o validados previamente. Se respetan los valores predeterminados, pero no se realiza ninguna otra validación.

!!! nota model_construct() generalmente respeta la configuración model_config.extra en el modelo proporcionado. Es decir, si model_config.extra == 'allow', todos los valores pasados adicionales se agregan a los campos dict y pydantic_extra de la instancia del modelo. Si model_config.extra == 'ignore' (valor predeterminado), se omiten todos los valores pasados adicionales. Dado que no se realiza ninguna validación con una llamada a model_construct(), tener model_config.extra == 'prohibido' no produce un error si se pasan valores adicionales, pero se omitirán.

model_construct(_fields_set: set[str] | None = None, **values: Any) -> Self

Parámetros

Nombre Description
_fields_set
set[str] | None

Conjunto de nombres de campo que se establecieron originalmente explícitamente durante la creación de instancias. Si se proporciona, se usa directamente para [model_fields_set][pydantic. atributo BaseModel.model_fields_set]. De lo contrario, se usarán los nombres de campo del argumento values .

Valor predeterminado: None
values
Requerido
Any

Diccionario de datos validado previamente o de confianza.

Devoluciones

Tipo Description

Nueva instancia de la clase Model con datos validados.

model_copy

!!! abstract "Usage Documentation" (Documentación de uso) model_copy

Devuelve una copia del modelo.

!!! nota El [dict][object) de la instancia subyacente.el atributo dict] se copia. Esto podría tener efectos secundarios inesperados si almacena algo en él, encima de los campos del modelo (por ejemplo, el valor de [propiedades almacenadas en caché][functools.cached_property]).

model_copy(*, update: Mapping[str, Any] | None = None, deep: bool = False) -> Self

Parámetros

Nombre Description
update
Requerido

Valores para cambiar o agregar en el nuevo modelo. Nota: los datos no se validan antes de crear el nuevo modelo. Debe confiar en estos datos.

deep
Requerido

Establézcalo en True para realizar una copia profunda del modelo.

Parámetros de palabra clave únicamente

Nombre Description
update
Valor predeterminado: None
deep
Valor predeterminado: False

Devoluciones

Tipo Description

Nueva instancia del modelo.

model_dump

!!! abstract "Usage Documentation" (Documentación de uso) model_dump

Genere una representación de diccionario del modelo, especificando opcionalmente los campos que se van a incluir o excluir.

model_dump(*, mode: Literal['json', 'python'] | str = 'python', include: set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | None = None, exclude: set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | None = None, context: Any | None = None, by_alias: bool | None = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, exclude_computed_fields: bool = False, round_trip: bool = False, warnings: bool | Literal['none', 'warn', 'error'] = True, fallback: Callable[[Any], Any] | None = None, serialize_as_any: bool = False, polymorphic_serialization: bool | None = None) -> dict[str, Any]

Parámetros

Nombre Description
mode
Requerido
Literal['json', 'python'] | str

Modo en el que se debe ejecutar to_python. Si el modo es "json", la salida solo contendrá tipos serializables JSON. Si el modo es "python", la salida puede contener objetos python no serializables json.

include
Requerido
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None

Conjunto de campos que se van a incluir en la salida.

exclude
Requerido
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None

Conjunto de campos que se excluirán de la salida.

context
Requerido
Any | None

Contexto adicional que se va a pasar al serializador.

by_alias
Requerido

Si se va a usar el alias del campo en la clave de diccionario si se define.

exclude_unset
Requerido

Si se van a excluir campos que no se han establecido explícitamente.

exclude_defaults
Requerido

Indica si se van a excluir los campos que se establecen en su valor predeterminado.

exclude_none
Requerido

Si se excluyen los campos que tienen un valor None.

exclude_computed_fields
Requerido

Si se excluyen los campos calculados. Aunque esto puede ser útil para el recorrido de ida y vuelta, normalmente se recomienda usar el parámetro round_trip dedicado en su lugar.

round_trip
Requerido

Si es True, los valores volcados deben ser válidos como entrada para tipos no idempotentes como Json[T].

warnings
Requerido
bool | Literal['none', 'warn', 'error']

Cómo controlar los errores de serialización. False/"none" omite los errores de registros True/"warn", "error" genera un [PydanticSerializationError][pydantic_core. PydanticSerializationError].

fallback
Requerido

Función a la que se llama cuando se encuentra un valor desconocido. Si no se proporciona, [PydanticSerializationError][pydantic_core. Se produce el error PydanticSerializationError].

serialize_as_any
Requerido

Si se van a serializar campos con comportamiento de serialización de escritura de pato.

polymorphic_serialization
Requerido

Si se va a usar la serialización polimórfica de modelo y de clase de datos para esta llamada.

Parámetros de palabra clave únicamente

Nombre Description
mode
Valor predeterminado: 'python'
include
Valor predeterminado: None
exclude
Valor predeterminado: None
context
Valor predeterminado: None
by_alias
Valor predeterminado: None
exclude_unset
Valor predeterminado: False
exclude_defaults
Valor predeterminado: False
exclude_none
Valor predeterminado: False
exclude_computed_fields
Valor predeterminado: False
round_trip
Valor predeterminado: False
warnings
Valor predeterminado: True
fallback
Valor predeterminado: None
serialize_as_any
Valor predeterminado: False
polymorphic_serialization
Valor predeterminado: None

Devoluciones

Tipo Description

Representación de diccionario del modelo.

model_dump_json

!!! resumen "Documentación de uso" model_dump_json

Genera una representación JSON del modelo mediante el método to_json de Pydantic.

model_dump_json(*, indent: int | None = None, ensure_ascii: bool = False, include: set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | None = None, exclude: set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | None = None, context: Any | None = None, by_alias: bool | None = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, exclude_computed_fields: bool = False, round_trip: bool = False, warnings: bool | Literal['none', 'warn', 'error'] = True, fallback: Callable[[Any], Any] | None = None, serialize_as_any: bool = False, polymorphic_serialization: bool | None = None) -> str

Parámetros

Nombre Description
indent
Requerido
int | None

Sangría que se va a usar en la salida JSON. Si se pasa Ninguno, la salida será compacta.

ensure_ascii
Requerido

Si es True, se garantiza que la salida tenga todos los caracteres no ASCII entrantes con escape. Si es False (valor predeterminado), estos caracteres se mostrarán as-is.

include
Requerido
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None

Campos que se van a incluir en la salida JSON.

exclude
Requerido
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None

Campos que se van a excluir de la salida JSON.

context
Requerido
Any | None

Contexto adicional que se va a pasar al serializador.

by_alias
Requerido

Si se va a serializar mediante alias de campo.

exclude_unset
Requerido

Si se van a excluir campos que no se han establecido explícitamente.

exclude_defaults
Requerido

Indica si se van a excluir los campos que se establecen en su valor predeterminado.

exclude_none
Requerido

Si se excluyen los campos que tienen un valor None.

exclude_computed_fields
Requerido

Si se excluyen los campos calculados. Aunque esto puede ser útil para el recorrido de ida y vuelta, normalmente se recomienda usar el parámetro round_trip dedicado en su lugar.

round_trip
Requerido

Si es True, los valores volcados deben ser válidos como entrada para tipos no idempotentes como Json[T].

warnings
Requerido
bool | Literal['none', 'warn', 'error']

Cómo controlar los errores de serialización. False/"none" omite los errores de registros True/"warn", "error" genera un [PydanticSerializationError][pydantic_core. PydanticSerializationError].

fallback
Requerido

Función a la que se llama cuando se encuentra un valor desconocido. Si no se proporciona, [PydanticSerializationError][pydantic_core. Se produce el error PydanticSerializationError].

serialize_as_any
Requerido

Si se van a serializar campos con comportamiento de serialización de escritura de pato.

polymorphic_serialization
Requerido

Si se va a usar la serialización polimórfica de modelo y de clase de datos para esta llamada.

Parámetros de palabra clave únicamente

Nombre Description
indent
Valor predeterminado: None
ensure_ascii
Valor predeterminado: False
include
Valor predeterminado: None
exclude
Valor predeterminado: None
context
Valor predeterminado: None
by_alias
Valor predeterminado: None
exclude_unset
Valor predeterminado: False
exclude_defaults
Valor predeterminado: False
exclude_none
Valor predeterminado: False
exclude_computed_fields
Valor predeterminado: False
round_trip
Valor predeterminado: False
warnings
Valor predeterminado: True
fallback
Valor predeterminado: None
serialize_as_any
Valor predeterminado: False
polymorphic_serialization
Valor predeterminado: None

Devoluciones

Tipo Description
str

Representación de cadena JSON del modelo.

model_json_schema

Genera un esquema JSON para una clase de modelo.

model_json_schema(by_alias: bool = True, ref_template: str = DEFAULT_REF_TEMPLATE, schema_generator: type[GenerateJsonSchema] = GenerateJsonSchema, mode: Literal['validation', 'serialization'] = 'validation', *, union_format: Literal['any_of', 'primitive_type_array'] = 'any_of') -> dict[str, Any]

Parámetros

Nombre Description
by_alias

Si se usan o no alias de atributo.

Valor predeterminado: True
ref_template
str

Plantilla de referencia.

Valor predeterminado: DEFAULT_REF_TEMPLATE
union_format
Requerido
Literal['any_of', 'primitive_type_array']

El formato que se va a usar al combinar esquemas de uniones. Puede ser una de las siguientes:

palabra clave para combinar esquemas (valor predeterminado).

  • 'primitive_type_array': use la palabra clave type como una matriz de cadenas, que contiene cada tipo de la combinación. Si alguno de los esquemas no es un tipo primitivo (cadena, booleano, null, entero o número) o contiene restricciones o metadatos, vuelve a any_of.
schema_generator
type[<xref:pydantic.json_schema.GenerateJsonSchema>]

Para invalidar la lógica usada para generar el esquema JSON, como una subclase de GenerateJsonSchema con las modificaciones deseadas

Valor predeterminado: GenerateJsonSchema
mode
Literal['validation', 'serialization']

Modo en el que se va a generar el esquema.

Valor predeterminado: 'validation'

Parámetros de palabra clave únicamente

Nombre Description
union_format
Valor predeterminado: 'any_of'

Devoluciones

Tipo Description

Esquema JSON de la clase de modelo especificada.

model_parametrized_name

Calcule el nombre de clase parametrizations de clases genéricas.

Este método se puede invalidar para lograr un esquema de nomenclatura personalizado para los modelos base genéricos.

model_parametrized_name(params: tuple[type[Any], ...]) -> str

Parámetros

Nombre Description
params
Requerido
tuple[type[Any], ...]

Tupla de tipos de la clase . Dada una clase genérica Model con 2 variables de tipo y un modelo concreto Model[str, int], el valor (str, int) se pasaría a los parámetros.

Devoluciones

Tipo Description
str

Cadena que representa la nueva clase donde se pasan los parámetros a cls como variables de tipo.

Excepciones

Tipo Description

Se genera al intentar generar nombres concretos para modelos no genéricos.

model_post_init

Invalide este método para realizar una inicialización adicional después de init y model_construct. Esto es útil si desea realizar alguna validación que requiera que se inicialice todo el modelo.

model_post_init(context: Any, /) -> None

Parámetros de posición únicamente

Nombre Description
context
Requerido

Parámetros

Nombre Description
context
Requerido
Any

Devoluciones

Tipo Description

model_rebuild

Intente recompilar el esquema pydantic-core para el modelo.

Esto puede ser necesario cuando una de las anotaciones es un ForwardRef que no se pudo resolver durante el intento inicial de compilar el esquema y se produce un error en la regeneración automática.

model_rebuild(*, force: bool = False, raise_errors: bool = True, _parent_namespace_depth: int = 2, _types_namespace: MappingNamespace | None = None) -> bool | None

Parámetros

Nombre Description
force
Requerido

Si se va a forzar la regeneración del esquema del modelo, el valor predeterminado es False.

raise_errors
Requerido

Si se producen errores, el valor predeterminado es True.

_parent_namespace_depth
Requerido
int

El nivel de profundidad del espacio de nombres primario, el valor predeterminado es 2.

_types_namespace
Requerido
<xref:MappingNamespace> | None

El espacio de nombres de tipos, el valor predeterminado es None.

Parámetros de palabra clave únicamente

Nombre Description
force
Valor predeterminado: False
raise_errors
Valor predeterminado: True
_parent_namespace_depth
Valor predeterminado: 2
_types_namespace
Valor predeterminado: None

Devoluciones

Tipo Description

Devuelve None si el esquema ya está "completo" y no se requiere volver a generar. Si se requiere la regeneración, devuelve True si la regeneración se realizó correctamente; de lo contrario, False.

model_validate

Valide una instancia de modelo pydantic.

model_validate(obj: Any, *, strict: bool | None = None, extra: Literal['allow', 'ignore', 'forbid'] | None = None, from_attributes: bool | None = None, context: Any | None = None, by_alias: bool | None = None, by_name: bool | None = None) -> Self

Parámetros

Nombre Description
obj
Requerido
Any

Objeto que se va a validar.

strict
Requerido

Si se aplican los tipos estrictamente.

extra
Requerido
Literal['allow', 'ignore', 'forbid'] | None

Si se deben omitir, permitir o prohibir datos adicionales durante la validación del modelo. Consulte el [valor de configuración adicional ][pydantic. ConfigDict.extra] para obtener más información.

from_attributes
Requerido

Si se van a extraer datos de atributos de objeto.

context
Requerido
Any | None

Contexto adicional que se va a pasar al validador.

by_alias
Requerido

Si se usa el alias del campo al validar los datos de entrada proporcionados.

by_name
Requerido

Indica si se debe usar el nombre del campo al validar con los datos de entrada proporcionados.

Parámetros de palabra clave únicamente

Nombre Description
strict
Valor predeterminado: None
extra
Valor predeterminado: None
from_attributes
Valor predeterminado: None
context
Valor predeterminado: None
by_alias
Valor predeterminado: None
by_name
Valor predeterminado: None

Devoluciones

Tipo Description

Instancia del modelo validado.

Excepciones

Tipo Description
ValidationError

Si no se pudo validar el objeto.

model_validate_json

!!! abstract "Usage Documentation" JSON Parsing

Valide los datos JSON especificados en el modelo Pydantic.

model_validate_json(json_data: str | bytes | bytearray, *, strict: bool | None = None, extra: Literal['allow', 'ignore', 'forbid'] | None = None, context: Any | None = None, by_alias: bool | None = None, by_name: bool | None = None) -> Self

Parámetros

Nombre Description
json_data
Requerido

Datos JSON que se van a validar.

strict
Requerido

Si se aplican los tipos estrictamente.

extra
Requerido
Literal['allow', 'ignore', 'forbid'] | None

Si se deben omitir, permitir o prohibir datos adicionales durante la validación del modelo. Consulte el [valor de configuración adicional ][pydantic. ConfigDict.extra] para obtener más información.

context
Requerido
Any | None

Variables adicionales para pasar al validador.

by_alias
Requerido

Si se usa el alias del campo al validar los datos de entrada proporcionados.

by_name
Requerido

Indica si se debe usar el nombre del campo al validar con los datos de entrada proporcionados.

Parámetros de palabra clave únicamente

Nombre Description
strict
Valor predeterminado: None
extra
Valor predeterminado: None
context
Valor predeterminado: None
by_alias
Valor predeterminado: None
by_name
Valor predeterminado: None

Devoluciones

Tipo Description

Modelo Pydantic validado.

Excepciones

Tipo Description
ValidationError

Si json_data no es una cadena JSON o no se pudo validar el objeto.

model_validate_strings

Valide el objeto especificado con datos de cadena en el modelo Pydantic.

model_validate_strings(obj: Any, *, strict: bool | None = None, extra: Literal['allow', 'ignore', 'forbid'] | None = None, context: Any | None = None, by_alias: bool | None = None, by_name: bool | None = None) -> Self

Parámetros

Nombre Description
obj
Requerido
Any

Objeto que contiene datos de cadena que se van a validar.

strict
Requerido

Si se aplican los tipos estrictamente.

extra
Requerido
Literal['allow', 'ignore', 'forbid'] | None

Si se deben omitir, permitir o prohibir datos adicionales durante la validación del modelo. Consulte el [valor de configuración adicional ][pydantic. ConfigDict.extra] para obtener más información.

context
Requerido
Any | None

Variables adicionales para pasar al validador.

by_alias
Requerido

Si se usa el alias del campo al validar los datos de entrada proporcionados.

by_name
Requerido

Indica si se debe usar el nombre del campo al validar con los datos de entrada proporcionados.

Parámetros de palabra clave únicamente

Nombre Description
strict
Valor predeterminado: None
extra
Valor predeterminado: None
context
Valor predeterminado: None
by_alias
Valor predeterminado: None
by_name
Valor predeterminado: None

Devoluciones

Tipo Description

Modelo Pydantic validado.

not_empty

Compruebe que los campos de cadena no estén vacíos o solo espacios en blanco.

validator not_empty  »  message_id, user_message, conversation_id

Parámetros

Nombre Description
v
Requerido
str

Devoluciones

Tipo Description
str

parse_file

parse_file(path: str | Path, *, content_type: str | None = None, encoding: str = 'utf8', proto: DeprecatedParseProtocol | None = None, allow_pickle: bool = False) -> Self

Parámetros

Nombre Description
path
Requerido
str | <xref:Path>
content_type
Requerido
str | None
encoding
Requerido
str
proto
Requerido
<xref:DeprecatedParseProtocol> | None
allow_pickle
Requerido

Parámetros de palabra clave únicamente

Nombre Description
content_type
Valor predeterminado: None
encoding
Valor predeterminado: 'utf8'
proto
Valor predeterminado: None
allow_pickle
Valor predeterminado: False

Devoluciones

Tipo Description

parse_obj

parse_obj(obj: Any) -> Self

Parámetros

Nombre Description
obj
Requerido
Any

Devoluciones

Tipo Description

parse_raw

parse_raw(b: str | bytes, *, content_type: str | None = None, encoding: str = 'utf8', proto: DeprecatedParseProtocol | None = None, allow_pickle: bool = False) -> Self

Parámetros

Nombre Description
b
Requerido
content_type
Requerido
str | None
encoding
Requerido
str
proto
Requerido
<xref:DeprecatedParseProtocol> | None
allow_pickle
Requerido

Parámetros de palabra clave únicamente

Nombre Description
content_type
Valor predeterminado: None
encoding
Valor predeterminado: 'utf8'
proto
Valor predeterminado: None
allow_pickle
Valor predeterminado: False

Devoluciones

Tipo Description

schema

schema(by_alias: bool = True, ref_template: str = DEFAULT_REF_TEMPLATE) -> Dict[str, Any]

Parámetros

Nombre Description
by_alias
Valor predeterminado: True
ref_template
str
Valor predeterminado: DEFAULT_REF_TEMPLATE

Devoluciones

Tipo Description

schema_json

schema_json(*, by_alias: bool = True, ref_template: str = DEFAULT_REF_TEMPLATE, **dumps_kwargs: Any) -> str

Parámetros

Nombre Description
by_alias
Requerido
ref_template
Requerido
str
dumps_kwargs
Requerido
Any

Parámetros de palabra clave únicamente

Nombre Description
by_alias
Valor predeterminado: True
ref_template
Valor predeterminado: DEFAULT_REF_TEMPLATE

Devoluciones

Tipo Description
str

update_forward_refs

update_forward_refs(**localns: Any) -> None

Parámetros

Nombre Description
localns
Requerido
Any

Devoluciones

Tipo Description

validate

validate(value: Any) -> Self

Parámetros

Nombre Description
value
Requerido
Any

Devoluciones

Tipo Description

Atributos

model_extra

Obtiene campos adicionales establecidos durante la validación.

Devoluciones

Tipo Description

Diccionario de campos adicionales o Ninguno si config.extra no está establecido en "permitir".

model_fields_set

Devuelve el conjunto de campos que se han establecido explícitamente en esta instancia de modelo.

Devoluciones

Tipo Description

Conjunto de cadenas que representan los campos que se han establecido, es decir, que no se rellenaron de los valores predeterminados.

conversation_id

Identificador único de la conversación.

field conversation_id: str [Required] (alias 'conversationId')

message_id

Identificador único del mensaje actual.

field message_id: str [Required] (alias 'messageId')

user_message

Mensaje de usuario actual que se está procesando.

field user_message: str [Required] (alias 'userMessage')

chat_history

Lista de mensajes anteriores en la conversación.

field chat_history: List[ChatHistoryMessage] [Required] (alias 'chatHistory')