ChatMessageRequest 类
请求将聊天历史记录发送到 MCP 平台的有效负载。
此模型表示发送到 MCP 平台聊天历史记录终结点进行威胁防护分析的完整请求正文。 它包括当前对话上下文和历史消息。
模型使用字段别名根据 MCP 平台 API 的要求序列化为 camelCase JSON 格式。
构造函数
pydantic model ChatMessageRequest
仅限关键字的参数
| 名称 | 说明 |
|---|---|
|
conversationId
必需
|
|
|
messageId
必需
|
|
|
userMessage
必需
|
|
|
chatHistory
必需
|
|
示例
>>> 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'
方法
| __init__ |
通过分析和验证关键字参数中的输入数据来创建新模型。 引发 [ValidationError][pydantic_core。如果无法验证输入数据以形成有效的模型,则 ValidationError]。 self 是显式位置仅允许 自己 作为字段名称。 |
| __new__ | |
| construct | |
| copy |
返回模型的副本。 !!! 警告“已弃用”此方法现已弃用;请改用 model_copy 。 如果需要 包括 或 排除,请使用:
|
| dict | |
| from_orm | |
| json | |
| model_construct |
使用已验证的数据创建 Model 类的新实例。 从受信任的或预先验证的数据创建一个新的模型设置 听写 和 pydantic_fields_set 。 遵循默认值,但不会执行其他验证。 !!! 请注意 ,model_construct() 通常遵循提供的模型的 model_config.extra 设置。 也就是说,如果 model_config.extra == “allow”,则将所有额外的传递值添加到模型实例的 听写 和 pydantic_extra 字段。 如果 model_config.extra == 'ignore' (默认值),则忽略所有额外的传递值。 由于对 model_construct() 的调用不执行验证,因此如果传递了额外的值,则 model_config.extra == 'forbid' 不会产生错误,但将被忽略。 |
| model_copy |
!!! 抽象的“使用情况文档” model_copy 返回模型的副本。 !!! 请注意基础实例的 [dict][object。复制 dict] 属性。 如果在模型字段中存储任何内容(例如[缓存属性][functools.cached_property]的值),则可能会产生意外的副作用。 |
| model_dump |
!!! 抽象的“使用情况文档” model_dump 生成模型的字典表示形式,可以选择指定要包含或排除的字段。 |
| model_dump_json |
!!! 抽象的“使用情况文档” model_dump_json 使用 Pydantic 的 to_json 方法生成模型的 JSON 表示形式。 |
| model_json_schema |
为模型类生成 JSON 架构。 |
| model_parametrized_name |
计算泛型类参数化的类名。 可以重写此方法以实现泛型 BaseModel 的自定义命名方案。 |
| model_post_init |
重写此方法以在 初始化 和 model_construct后执行其他初始化。 如果要进行一些需要初始化整个模型的验证,这非常有用。 |
| model_rebuild |
尝试为模型重新生成 pydantic-core 架构。 如果其中一个批注是 ForwardRef,在最初尝试生成架构时无法解析,并且自动重新生成失败,则可能是必需的。 |
| model_validate |
验证 pydantic 模型实例。 |
| model_validate_json |
!!! 抽象的“使用情况文档” JSON 分析 根据 Pydantic 模型验证给定的 JSON 数据。 |
| model_validate_strings |
使用针对 Pydantic 模型的字符串数据验证给定对象。 |
| not_empty |
验证字符串字段是否不为空或仅空格。 |
| parse_file | |
| parse_obj | |
| parse_raw | |
| schema | |
| schema_json | |
| update_forward_refs | |
| validate |
__init__
__new__
__new__(**kwargs)
construct
copy
返回模型的副本。
!!! 警告“已弃用”此方法现已弃用;请改用 model_copy 。
如果需要 包括 或 排除,请使用:
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
参数
| 名称 | 说明 |
|---|---|
|
include
必需
|
<xref:AbstractSetIntStr> | <xref:MappingIntStrAny> | None
可选设置或映射,指定要包含在复制模型中的字段。 |
|
exclude
必需
|
<xref:AbstractSetIntStr> | <xref:MappingIntStrAny> | None
可选设置或映射,指定要在复制的模型中排除的字段。 |
|
update
必需
|
可选字段值对字典,用于替代复制模型中的字段值。 |
|
deep
必需
|
如果为 True,则为 Pydantic 模型的字段值将进行深层复制。 |
仅限关键字的参数
| 名称 | 说明 |
|---|---|
|
include
|
默认值: None
|
|
exclude
|
默认值: None
|
|
update
|
默认值: None
|
|
deep
|
默认值: False
|
返回
| 类型 | 说明 |
|---|---|
|
包含、排除和更新字段的模型副本,如指定。 |
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]
参数
| 名称 | 说明 |
|---|---|
|
include
必需
|
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
必需
|
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
必需
|
|
|
exclude_unset
必需
|
|
|
exclude_defaults
必需
|
|
|
exclude_none
必需
|
|
仅限关键字的参数
| 名称 | 说明 |
|---|---|
|
include
|
默认值: None
|
|
exclude
|
默认值: None
|
|
by_alias
|
默认值: False
|
|
exclude_unset
|
默认值: False
|
|
exclude_defaults
|
默认值: False
|
|
exclude_none
|
默认值: False
|
返回
| 类型 | 说明 |
|---|---|
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
参数
| 名称 | 说明 |
|---|---|
|
include
必需
|
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
必需
|
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
必需
|
|
|
exclude_unset
必需
|
|
|
exclude_defaults
必需
|
|
|
exclude_none
必需
|
|
|
encoder
必需
|
|
|
models_as_dict
必需
|
|
|
dumps_kwargs
必需
|
|
仅限关键字的参数
| 名称 | 说明 |
|---|---|
|
include
|
默认值: None
|
|
exclude
|
默认值: None
|
|
by_alias
|
默认值: False
|
|
exclude_unset
|
默认值: False
|
|
exclude_defaults
|
默认值: False
|
|
exclude_none
|
默认值: False
|
|
encoder
|
默认值: PydanticUndefined
|
|
models_as_dict
|
默认值: PydanticUndefined
|
返回
| 类型 | 说明 |
|---|---|
model_construct
使用已验证的数据创建 Model 类的新实例。
从受信任的或预先验证的数据创建一个新的模型设置 听写 和 pydantic_fields_set 。 遵循默认值,但不会执行其他验证。
!!! 请注意 ,model_construct() 通常遵循提供的模型的 model_config.extra 设置。 也就是说,如果 model_config.extra == “allow”,则将所有额外的传递值添加到模型实例的 听写 和 pydantic_extra 字段。 如果 model_config.extra == 'ignore' (默认值),则忽略所有额外的传递值。 由于对 model_construct() 的调用不执行验证,因此如果传递了额外的值,则 model_config.extra == 'forbid' 不会产生错误,但将被忽略。
model_construct(_fields_set: set[str] | None = None, **values: Any) -> Self
参数
| 名称 | 说明 |
|---|---|
|
_fields_set
|
在实例化期间最初显式设置的一组字段名称。 如果提供,则直接用于 [model_fields_set][pydantic。BaseModel.model_fields_set] 属性。 否则,将使用 值 参数中的字段名称。 默认值: None
|
|
values
必需
|
受信任的或预先验证的数据字典。 |
返回
| 类型 | 说明 |
|---|---|
|
具有已验证数据的 Model 类的新实例。 |
model_copy
!!! 抽象的“使用情况文档” model_copy
返回模型的副本。
!!! 请注意基础实例的 [dict][object。复制 dict] 属性。 如果在模型字段中存储任何内容(例如[缓存属性][functools.cached_property]的值),则可能会产生意外的副作用。
model_copy(*, update: Mapping[str, Any] | None = None, deep: bool = False) -> Self
参数
| 名称 | 说明 |
|---|---|
|
update
必需
|
要更改/添加新模型中的值。 注意:创建新模型之前不会验证数据。 应信任此数据。 |
|
deep
必需
|
设置为 True 以创建模型的深层副本。 |
仅限关键字的参数
| 名称 | 说明 |
|---|---|
|
update
|
默认值: None
|
|
deep
|
默认值: False
|
返回
| 类型 | 说明 |
|---|---|
|
新的模型实例。 |
model_dump
!!! 抽象的“使用情况文档” model_dump
生成模型的字典表示形式,可以选择指定要包含或排除的字段。
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]
参数
| 名称 | 说明 |
|---|---|
|
mode
必需
|
Literal['json', 'python'] | str
运行to_python的模式。 如果模式为“json”,则输出将仅包含 JSON 可序列化类型。 如果模式为“python”,则输出可能包含不可 JSON 序列化的 Python 对象。 |
|
include
必需
|
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
必需
|
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
要从输出中排除的一组字段。 |
|
context
必需
|
要传递给序列化程序的其他上下文。 |
|
by_alias
必需
|
如果已定义,是否在字典键中使用字段的别名。 |
|
exclude_unset
必需
|
是否排除尚未显式设置的字段。 |
|
exclude_defaults
必需
|
是否排除设置为其默认值的字段。 |
|
exclude_none
必需
|
是否排除值为 None 的字段。 |
|
exclude_computed_fields
必需
|
是否排除计算字段。 虽然这可用于往返,但通常建议改用专用 round_trip 参数。 |
|
round_trip
必需
|
如果为 True,则转储的值应作为非幂等类型的输入有效,例如 Json[T]。 |
|
warnings
必需
|
如何处理序列化错误。 False/“none”忽略它们,True/“warn”日志错误,“error”将引发 [PydanticSerializationError][pydantic_core。PydanticSerializationError]。 |
|
fallback
必需
|
遇到未知值时要调用的函数。 如果未提供,则为 [PydanticSerializationError][pydantic_core。引发 PydanticSerializationError] 错误。 |
|
serialize_as_any
必需
|
是否使用鸭子键入序列化行为序列化字段。 |
|
polymorphic_serialization
必需
|
是否为此调用使用模型和数据类多态序列化。 |
仅限关键字的参数
| 名称 | 说明 |
|---|---|
|
mode
|
默认值: 'python'
|
|
include
|
默认值: None
|
|
exclude
|
默认值: None
|
|
context
|
默认值: None
|
|
by_alias
|
默认值: None
|
|
exclude_unset
|
默认值: False
|
|
exclude_defaults
|
默认值: False
|
|
exclude_none
|
默认值: False
|
|
exclude_computed_fields
|
默认值: False
|
|
round_trip
|
默认值: False
|
|
warnings
|
默认值: True
|
|
fallback
|
默认值: None
|
|
serialize_as_any
|
默认值: False
|
|
polymorphic_serialization
|
默认值: None
|
返回
| 类型 | 说明 |
|---|---|
|
模型的字典表示形式。 |
model_dump_json
!!! 抽象的“使用情况文档” model_dump_json
使用 Pydantic 的 to_json 方法生成模型的 JSON 表示形式。
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
参数
| 名称 | 说明 |
|---|---|
|
indent
必需
|
要在 JSON 输出中使用的缩进。 如果传递 None,输出将压缩。 |
|
ensure_ascii
必需
|
如果 为 True,则保证输出将转义所有传入的非 ASCII 字符。 如果 为 False (默认值),这些字符将输出 as-is。 |
|
include
必需
|
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
要包含在 JSON 输出中的 Field(s)。 |
|
exclude
必需
|
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
要从 JSON 输出中排除的字段(s)。 |
|
context
必需
|
要传递给序列化程序的其他上下文。 |
|
by_alias
必需
|
是否使用字段别名进行序列化。 |
|
exclude_unset
必需
|
是否排除尚未显式设置的字段。 |
|
exclude_defaults
必需
|
是否排除设置为其默认值的字段。 |
|
exclude_none
必需
|
是否排除值为 None 的字段。 |
|
exclude_computed_fields
必需
|
是否排除计算字段。 虽然这可用于往返,但通常建议改用专用 round_trip 参数。 |
|
round_trip
必需
|
如果为 True,则转储的值应作为非幂等类型的输入有效,例如 Json[T]。 |
|
warnings
必需
|
如何处理序列化错误。 False/“none”忽略它们,True/“warn”日志错误,“error”将引发 [PydanticSerializationError][pydantic_core。PydanticSerializationError]。 |
|
fallback
必需
|
遇到未知值时要调用的函数。 如果未提供,则为 [PydanticSerializationError][pydantic_core。引发 PydanticSerializationError] 错误。 |
|
serialize_as_any
必需
|
是否使用鸭子键入序列化行为序列化字段。 |
|
polymorphic_serialization
必需
|
是否为此调用使用模型和数据类多态序列化。 |
仅限关键字的参数
| 名称 | 说明 |
|---|---|
|
indent
|
默认值: None
|
|
ensure_ascii
|
默认值: False
|
|
include
|
默认值: None
|
|
exclude
|
默认值: None
|
|
context
|
默认值: None
|
|
by_alias
|
默认值: None
|
|
exclude_unset
|
默认值: False
|
|
exclude_defaults
|
默认值: False
|
|
exclude_none
|
默认值: False
|
|
exclude_computed_fields
|
默认值: False
|
|
round_trip
|
默认值: False
|
|
warnings
|
默认值: True
|
|
fallback
|
默认值: None
|
|
serialize_as_any
|
默认值: False
|
|
polymorphic_serialization
|
默认值: None
|
返回
| 类型 | 说明 |
|---|---|
|
模型的 JSON 字符串表示形式。 |
model_json_schema
为模型类生成 JSON 架构。
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]
参数
| 名称 | 说明 |
|---|---|
|
by_alias
|
是否使用属性别名。 默认值: True
|
|
ref_template
|
引用模板。 默认值: DEFAULT_REF_TEMPLATE
|
|
union_format
必需
|
Literal['any_of', 'primitive_type_array']
|
|
schema_generator
|
type[<xref:pydantic.json_schema.GenerateJsonSchema>]
若要重写用于生成 JSON 架构的逻辑,请使用所需的修改作为 GenerateJsonSchema 的子类 默认值: GenerateJsonSchema
|
|
mode
|
Literal['validation', 'serialization']
要在其中生成架构的模式。 默认值: 'validation'
|
仅限关键字的参数
| 名称 | 说明 |
|---|---|
|
union_format
|
默认值: 'any_of'
|
返回
| 类型 | 说明 |
|---|---|
|
给定模型类的 JSON 架构。 |
model_parametrized_name
model_post_init
model_rebuild
尝试为模型重新生成 pydantic-core 架构。
如果其中一个批注是 ForwardRef,在最初尝试生成架构时无法解析,并且自动重新生成失败,则可能是必需的。
model_rebuild(*, force: bool = False, raise_errors: bool = True, _parent_namespace_depth: int = 2, _types_namespace: MappingNamespace | None = None) -> bool | None
参数
| 名称 | 说明 |
|---|---|
|
force
必需
|
是否强制重新生成模型架构,默认为 False。 |
|
raise_errors
必需
|
是否引发错误,默认值为 True。 |
|
_parent_namespace_depth
必需
|
父命名空间的深度级别默认为 2。 |
|
_types_namespace
必需
|
<xref:MappingNamespace> | None
类型命名空间默认为 None。 |
仅限关键字的参数
| 名称 | 说明 |
|---|---|
|
force
|
默认值: False
|
|
raise_errors
|
默认值: True
|
|
_parent_namespace_depth
|
默认值: 2
|
|
_types_namespace
|
默认值: None
|
返回
| 类型 | 说明 |
|---|---|
|
如果架构已“完成”且不需要重新生成,则返回 None 。 如果需要 重新生成 ,则如果重新生成成功,则返回 True ,否则返回 False。 |
model_validate
验证 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
参数
| 名称 | 说明 |
|---|---|
|
obj
必需
|
要验证的对象。 |
|
strict
必需
|
是否严格强制实施类型。 |
|
extra
必需
|
Literal['allow', 'ignore', 'forbid'] | None
无论是在模型验证期间忽略、允许还是禁止额外数据。 请参阅 [额外 配置值][pydantic。ConfigDict.extra] 了解详细信息。 |
|
from_attributes
必需
|
是否从对象属性中提取数据。 |
|
context
必需
|
要传递给验证程序的其他上下文。 |
|
by_alias
必需
|
是否在针对提供的输入数据进行验证时使用字段的别名。 |
|
by_name
必需
|
在针对提供的输入数据进行验证时,是否使用字段的名称。 |
仅限关键字的参数
| 名称 | 说明 |
|---|---|
|
strict
|
默认值: None
|
|
extra
|
默认值: None
|
|
from_attributes
|
默认值: None
|
|
context
|
默认值: None
|
|
by_alias
|
默认值: None
|
|
by_name
|
默认值: None
|
返回
| 类型 | 说明 |
|---|---|
|
已验证的模型实例。 |
例外
| 类型 | 说明 |
|---|---|
|
ValidationError
|
如果无法验证对象。 |
model_validate_json
!!! 抽象的“使用情况文档” JSON 分析
根据 Pydantic 模型验证给定的 JSON 数据。
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
参数
| 名称 | 说明 |
|---|---|
|
json_data
必需
|
要验证的 JSON 数据。 |
|
strict
必需
|
是否严格强制实施类型。 |
|
extra
必需
|
Literal['allow', 'ignore', 'forbid'] | None
无论是在模型验证期间忽略、允许还是禁止额外数据。 请参阅 [额外 配置值][pydantic。ConfigDict.extra] 了解详细信息。 |
|
context
必需
|
要传递给验证程序的额外变量。 |
|
by_alias
必需
|
是否在针对提供的输入数据进行验证时使用字段的别名。 |
|
by_name
必需
|
在针对提供的输入数据进行验证时,是否使用字段的名称。 |
仅限关键字的参数
| 名称 | 说明 |
|---|---|
|
strict
|
默认值: None
|
|
extra
|
默认值: None
|
|
context
|
默认值: None
|
|
by_alias
|
默认值: None
|
|
by_name
|
默认值: None
|
返回
| 类型 | 说明 |
|---|---|
|
已验证的 Pydantic 模型。 |
例外
| 类型 | 说明 |
|---|---|
|
ValidationError
|
如果 json_data 不是 JSON 字符串,或者无法验证对象。 |
model_validate_strings
使用针对 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
参数
| 名称 | 说明 |
|---|---|
|
obj
必需
|
包含要验证的字符串数据的对象。 |
|
strict
必需
|
是否严格强制实施类型。 |
|
extra
必需
|
Literal['allow', 'ignore', 'forbid'] | None
无论是在模型验证期间忽略、允许还是禁止额外数据。 请参阅 [额外 配置值][pydantic。ConfigDict.extra] 了解详细信息。 |
|
context
必需
|
要传递给验证程序的额外变量。 |
|
by_alias
必需
|
是否在针对提供的输入数据进行验证时使用字段的别名。 |
|
by_name
必需
|
在针对提供的输入数据进行验证时,是否使用字段的名称。 |
仅限关键字的参数
| 名称 | 说明 |
|---|---|
|
strict
|
默认值: None
|
|
extra
|
默认值: None
|
|
context
|
默认值: None
|
|
by_alias
|
默认值: None
|
|
by_name
|
默认值: None
|
返回
| 类型 | 说明 |
|---|---|
|
已验证的 Pydantic 模型。 |
not_empty
parse_file
parse_file(path: str | Path, *, content_type: str | None = None, encoding: str = 'utf8', proto: DeprecatedParseProtocol | None = None, allow_pickle: bool = False) -> Self
参数
| 名称 | 说明 |
|---|---|
|
path
必需
|
str | <xref:Path>
|
|
content_type
必需
|
|
|
encoding
必需
|
|
|
proto
必需
|
<xref:DeprecatedParseProtocol> | None
|
|
allow_pickle
必需
|
|
仅限关键字的参数
| 名称 | 说明 |
|---|---|
|
content_type
|
默认值: None
|
|
encoding
|
默认值: 'utf8'
|
|
proto
|
默认值: None
|
|
allow_pickle
|
默认值: False
|
返回
| 类型 | 说明 |
|---|---|
parse_raw
parse_raw(b: str | bytes, *, content_type: str | None = None, encoding: str = 'utf8', proto: DeprecatedParseProtocol | None = None, allow_pickle: bool = False) -> Self
参数
| 名称 | 说明 |
|---|---|
|
b
必需
|
|
|
content_type
必需
|
|
|
encoding
必需
|
|
|
proto
必需
|
<xref:DeprecatedParseProtocol> | None
|
|
allow_pickle
必需
|
|
仅限关键字的参数
| 名称 | 说明 |
|---|---|
|
content_type
|
默认值: None
|
|
encoding
|
默认值: 'utf8'
|
|
proto
|
默认值: None
|
|
allow_pickle
|
默认值: False
|
返回
| 类型 | 说明 |
|---|---|
schema
schema_json
update_forward_refs
属性
model_extra
获取在验证期间设置的额外字段。
返回
| 类型 | 说明 |
|---|---|
|
额外字段的字典;如果未将 config.extra 设置为“allow”,则为 None。 |
model_fields_set
返回在此模型实例上显式设置的字段集。
返回
| 类型 | 说明 |
|---|---|
|
一组字符串,表示已设置的字段,即未从默认值填充的字段。 |
conversation_id
对话的唯一标识符。
field conversation_id: str [Required] (alias 'conversationId')
message_id
当前消息的唯一标识符。
field message_id: str [Required] (alias 'messageId')
user_message
正在处理的当前用户消息。
field user_message: str [Required] (alias 'userMessage')
chat_history
对话中上一条消息的列表。
field chat_history: List[ChatHistoryMessage] [Required] (alias 'chatHistory')