ChatMessageRequest Класс

Запрос полезных данных для отправки журнала чата на платформу MCP.

Эта модель представляет полный текст запроса, отправленный в конечную точку журнала чата платформы MCP для анализа защиты от угроз. Он включает в себя текущий контекст беседы и исторические сообщения.

Модель использует псевдонимы полей для сериализации формата JSON верблюжьего Регистра в соответствии с ТРЕБОВАНИЯМИ API платформы MCP.

Конструктор

pydantic model ChatMessageRequest

Параметры Keyword-Only

Имя Описание
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 .

Если требуется включить или исключить, используйте следующее:

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

Создает новый экземпляр класса Model с проверенными данными.

Создает дикт и pydantic_fields_set нового параметра модели из доверенных или предварительно проверенных данных. Значения по умолчанию учитываются, но никакие другие проверки не выполняются.

!!! Примечание model_construct() обычно учитывает параметр model_config.extra для предоставленной модели. То есть, если model_config.extra == allow, все дополнительные переданные значения добавляются в дикт и pydantic_extra поля экземпляра модели. Если model_config.extra == "игнорировать" (по умолчанию), все дополнительные переданные значения игнорируются. Так как проверка не выполняется при вызове model_construct(), наличие model_config.extra == "forbid" не приводит к ошибке при передаче дополнительных значений, но они будут игнорироваться.

model_copy

!!! абстрактная "Документация по использованию" model_copy

Возвращает копию модели.

!!! обратите внимание на [дикт][объект базового экземпляра][ объект.Атрибут dict] копируется. Это может иметь непредвиденные побочные эффекты, если вы храните в нем что-либо, в верхней части полей модели (например, значение [кэшированных свойств][functools.cached_property]).

model_dump

!!! абстрактная "Документация по использованию" model_dump

Создайте представление словаря модели, при необходимости указывая, какие поля следует включить или исключить.

model_dump_json

!!! абстрактная "Документация по использованию" model_dump_json

Создает представление JSON модели с помощью метода to_json Pydantic.

model_json_schema

Создает схему JSON для класса модели.

model_parametrized_name

Вычисляет имя класса для параметризации универсальных классов.

Этот метод можно переопределить для достижения пользовательской схемы именования для универсальных BaseModels.

model_post_init

Переопределите этот метод, чтобы выполнить дополнительную инициализацию после инициализации и model_construct. Это полезно, если требуется выполнить некоторую проверку, требующую инициализации всей модели.

model_rebuild

Попробуйте перестроить схему pydantic-core для модели.

Это может потребоваться, если одна из заметок является ForwardRef, которая не может быть разрешена во время первоначальной попытки сборки схемы, и автоматическое перестроение завершается сбоем.

model_validate

Проверьте экземпляр модели pydantic.

model_validate_json

!!! абстрактный анализ JSON "Документация по использованию"

Проверьте заданные данные JSON в модели Pydantic.

model_validate_strings

Проверьте заданный объект со строковыми данными в модели Pydantic.

not_empty

Убедитесь, что строковые поля не пусты или только пробелы.

parse_file
parse_obj
parse_raw
schema
schema_json
update_forward_refs
validate

__init__

Создайте новую модель, анализируя и проверяя входные данные из аргументов ключевых слов.

Вызывает [ValidationError][pydantic_core. ValidationError] если входные данные не могут быть проверены для формирования допустимой модели.

self явно позиционирует только для разрешения себя в качестве имени поля.

__init__(**data: Any) -> None

Параметры

Имя Описание
data
Обязательно
Any

Возвращаемое значение

Тип Описание

__new__

__new__(**kwargs)

construct

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

Параметры

Имя Описание
_fields_set
set[str] | None
Default value: None
values
Обязательно
Any

Возвращаемое значение

Тип Описание

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, будут скопированы глубоко.

Параметры Keyword-Only

Имя Описание
include
Default value: None
exclude
Default value: None
update
Default value: None
deep
Default value: 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
Обязательно

Параметры Keyword-Only

Имя Описание
include
Default value: None
exclude
Default value: None
by_alias
Default value: False
exclude_unset
Default value: False
exclude_defaults
Default value: False
exclude_none
Default value: False

Возвращаемое значение

Тип Описание

from_orm

from_orm(obj: Any) -> Self

Параметры

Имя Описание
obj
Обязательно
Any

Возвращаемое значение

Тип Описание

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
Обязательно
Any

Параметры Keyword-Only

Имя Описание
include
Default value: None
exclude
Default value: None
by_alias
Default value: False
exclude_unset
Default value: False
exclude_defaults
Default value: False
exclude_none
Default value: False
encoder
Default value: PydanticUndefined
models_as_dict
Default value: PydanticUndefined

Возвращаемое значение

Тип Описание
str

model_construct

Создает новый экземпляр класса Model с проверенными данными.

Создает дикт и pydantic_fields_set нового параметра модели из доверенных или предварительно проверенных данных. Значения по умолчанию учитываются, но никакие другие проверки не выполняются.

!!! Примечание model_construct() обычно учитывает параметр model_config.extra для предоставленной модели. То есть, если model_config.extra == allow, все дополнительные переданные значения добавляются в дикт и pydantic_extra поля экземпляра модели. Если model_config.extra == "игнорировать" (по умолчанию), все дополнительные переданные значения игнорируются. Так как проверка не выполняется при вызове model_construct(), наличие model_config.extra == "forbid" не приводит к ошибке при передаче дополнительных значений, но они будут игнорироваться.

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

Параметры

Имя Описание
_fields_set
set[str] | None

Набор имен полей, которые изначально были явно заданы во время создания экземпляра. Если это указано, оно используется непосредственно для [model_fields_set][pydantic. атрибут BaseModel.model_fields_set]. В противном случае будут использоваться имена полей из аргумента значений .

Default value: None
values
Обязательно
Any

Доверенный или предварительно проверенный словарь данных.

Возвращаемое значение

Тип Описание

Новый экземпляр класса Model с проверенными данными.

model_copy

!!! абстрактная "Документация по использованию" model_copy

Возвращает копию модели.

!!! обратите внимание на [дикт][объект базового экземпляра][ объект.Атрибут dict] копируется. Это может иметь непредвиденные побочные эффекты, если вы храните в нем что-либо, в верхней части полей модели (например, значение [кэшированных свойств][functools.cached_property]).

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

Параметры

Имя Описание
update
Обязательно

Значения для изменения и добавления в новой модели. Примечание. Данные не проверяются перед созданием новой модели. Эти данные следует доверять.

deep
Обязательно

Задайте значение True , чтобы создать глубокую копию модели.

Параметры Keyword-Only

Имя Описание
update
Default value: None
deep
Default value: 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, выходные данные могут содержать объекты Python, не являющиеся сериализуемыми в формате JSON.

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
Обязательно
Any | None

Дополнительный контекст для передачи сериализатору.

by_alias
Обязательно

Следует ли использовать псевдоним поля в ключе словаря, если определено.

exclude_unset
Обязательно

Следует ли исключить поля, которые не были явно заданы.

exclude_defaults
Обязательно

Следует ли исключить поля, заданные по умолчанию.

exclude_none
Обязательно

Следует ли исключить поля, имеющие значение None.

exclude_computed_fields
Обязательно

Следует ли исключить вычисляемые поля. Хотя это может быть полезно для круговой передачи, обычно рекомендуется использовать выделенный параметр round_trip .

round_trip
Обязательно

Если значение True, то дампированные значения должны быть допустимыми в качестве входных данных для типов, отличных от идемпотентных типов, таких как Json[T].

warnings
Обязательно
bool | Literal['none', 'warn', 'error']

Обработка ошибок сериализации. False/"none" игнорирует их, True/"warn" регистрирует ошибки, "error" вызывает [PydanticSerializationError][pydantic_core. PydanticSerializationError].

fallback
Обязательно

Функция, вызываемая при обнаружении неизвестного значения. Если это не указано, [PydanticSerializationError][pydantic_core. Возникает ошибка PydanticSerializationError] .

serialize_as_any
Обязательно

Следует ли сериализовать поля с поведением сериализации типа уток.

polymorphic_serialization
Обязательно

Следует ли использовать многоморфную сериализацию модели и класса данных для этого вызова.

Параметры Keyword-Only

Имя Описание
mode
Default value: 'python'
include
Default value: None
exclude
Default value: None
context
Default value: None
by_alias
Default value: None
exclude_unset
Default value: False
exclude_defaults
Default value: False
exclude_none
Default value: False
exclude_computed_fields
Default value: False
round_trip
Default value: False
warnings
Default value: True
fallback
Default value: None
serialize_as_any
Default value: False
polymorphic_serialization
Default value: None

Возвращаемое значение

Тип Описание

Представление словаря модели.

model_dump_json

!!! абстрактная "Документация по использованию" model_dump_json

Создает представление JSON модели с помощью метода to_json 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

Параметры

Имя Описание
indent
Обязательно
int | None

Отступ для использования в выходных данных 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.

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.

context
Обязательно
Any | None

Дополнительный контекст для передачи сериализатору.

by_alias
Обязательно

Следует ли сериализовать псевдонимы полей.

exclude_unset
Обязательно

Следует ли исключить поля, которые не были явно заданы.

exclude_defaults
Обязательно

Следует ли исключить поля, заданные по умолчанию.

exclude_none
Обязательно

Следует ли исключить поля, имеющие значение None.

exclude_computed_fields
Обязательно

Следует ли исключить вычисляемые поля. Хотя это может быть полезно для круговой передачи, обычно рекомендуется использовать выделенный параметр round_trip .

round_trip
Обязательно

Если значение True, то дампированные значения должны быть допустимыми в качестве входных данных для типов, отличных от идемпотентных типов, таких как Json[T].

warnings
Обязательно
bool | Literal['none', 'warn', 'error']

Обработка ошибок сериализации. False/"none" игнорирует их, True/"warn" регистрирует ошибки, "error" вызывает [PydanticSerializationError][pydantic_core. PydanticSerializationError].

fallback
Обязательно

Функция, вызываемая при обнаружении неизвестного значения. Если это не указано, [PydanticSerializationError][pydantic_core. Возникает ошибка PydanticSerializationError] .

serialize_as_any
Обязательно

Следует ли сериализовать поля с поведением сериализации типа уток.

polymorphic_serialization
Обязательно

Следует ли использовать многоморфную сериализацию модели и класса данных для этого вызова.

Параметры Keyword-Only

Имя Описание
indent
Default value: None
ensure_ascii
Default value: False
include
Default value: None
exclude
Default value: None
context
Default value: None
by_alias
Default value: None
exclude_unset
Default value: False
exclude_defaults
Default value: False
exclude_none
Default value: False
exclude_computed_fields
Default value: False
round_trip
Default value: False
warnings
Default value: True
fallback
Default value: None
serialize_as_any
Default value: False
polymorphic_serialization
Default value: None

Возвращаемое значение

Тип Описание
str

Строковое представление модели в формате 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

Следует ли использовать псевдонимы атрибутов или нет.

Default value: True
ref_template
str

Шаблон ссылки.

Default value: DEFAULT_REF_TEMPLATE
union_format
Обязательно
Literal['any_of', 'primitive_type_array']

Формат, используемый при объединении схем из профсоюзов вместе. Возможные значения:

  • "any_of": используйте anyOf

ключевое слово для объединения схем (по умолчанию).

  • "primitive_type_array": используйте ключевое слово типа как массив строк, содержащий каждый тип сочетания. Если какая-либо из схем не является примитивным типом (строка, логическое значение, null, целое число или число) или содержит ограничения или метаданные, возвращается к any_of.
schema_generator
type[<xref:pydantic.json_schema.GenerateJsonSchema>]

Чтобы переопределить логику, используемую для создания схемы JSON, в качестве подкласса GenerateJsonSchema с нужными изменениями

Default value: GenerateJsonSchema
mode
Literal['validation', 'serialization']

Режим создания схемы.

Default value: 'validation'

Параметры Keyword-Only

Имя Описание
union_format
Default value: 'any_of'

Возвращаемое значение

Тип Описание

Схема JSON для данного класса модели.

model_parametrized_name

Вычисляет имя класса для параметризации универсальных классов.

Этот метод можно переопределить для достижения пользовательской схемы именования для универсальных BaseModels.

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

Параметры

Имя Описание
params
Обязательно
tuple[type[Any], ...]

Кортеж типов класса. Учитывая модель универсального класса с 2 переменными типа и конкретной моделью [str, int], значение (str, int) будет передано парам.

Возвращаемое значение

Тип Описание
str

Строка, представляющая новый класс, в котором парамы передаются в cls в виде переменных типа.

Исключения

Тип Описание

Возникает при попытке создать конкретные имена для не универсальных моделей.

model_post_init

Переопределите этот метод, чтобы выполнить дополнительную инициализацию после инициализации и model_construct. Это полезно, если требуется выполнить некоторую проверку, требующую инициализации всей модели.

model_post_init(context: Any, /) -> None

Параметры Positional-Only

Имя Описание
context
Обязательно

Параметры

Имя Описание
context
Обязательно
Any

Возвращаемое значение

Тип Описание

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
Обязательно
int

Уровень глубины родительского пространства имен по умолчанию — 2.

_types_namespace
Обязательно
<xref:MappingNamespace> | None

Пространство имен типов по умолчанию — None.

Параметры Keyword-Only

Имя Описание
force
Default value: False
raise_errors
Default value: True
_parent_namespace_depth
Default value: 2
_types_namespace
Default value: 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
Обязательно
Any

Объект для проверки.

strict
Обязательно

Следует ли строго применять типы.

extra
Обязательно
Literal['allow', 'ignore', 'forbid'] | None

Следует ли игнорировать, разрешать или запрещать дополнительные данные во время проверки модели. См. [дополнительное значение конфигурации][pydantic). Дополнительные сведения см. в разделе ConfigDict.extra.

from_attributes
Обязательно

Следует ли извлекать данные из атрибутов объекта.

context
Обязательно
Any | None

Дополнительный контекст для передачи в проверяющий элемент.

by_alias
Обязательно

Следует ли использовать псевдоним поля при проверке предоставленных входных данных.

by_name
Обязательно

Следует ли использовать имя поля при проверке предоставленных входных данных.

Параметры Keyword-Only

Имя Описание
strict
Default value: None
extra
Default value: None
from_attributes
Default value: None
context
Default value: None
by_alias
Default value: None
by_name
Default value: None

Возвращаемое значение

Тип Описание

Проверенный экземпляр модели.

Исключения

Тип Описание
ValidationError

Если объект не удалось проверить.

model_validate_json

!!! абстрактный анализ JSON "Документация по использованию"

Проверьте заданные данные JSON в модели 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

Параметры

Имя Описание
json_data
Обязательно

Данные JSON для проверки.

strict
Обязательно

Следует ли строго применять типы.

extra
Обязательно
Literal['allow', 'ignore', 'forbid'] | None

Следует ли игнорировать, разрешать или запрещать дополнительные данные во время проверки модели. См. [дополнительное значение конфигурации][pydantic). Дополнительные сведения см. в разделе ConfigDict.extra.

context
Обязательно
Any | None

Дополнительные переменные для передачи в проверяющий элемент.

by_alias
Обязательно

Следует ли использовать псевдоним поля при проверке предоставленных входных данных.

by_name
Обязательно

Следует ли использовать имя поля при проверке предоставленных входных данных.

Параметры Keyword-Only

Имя Описание
strict
Default value: None
extra
Default value: None
context
Default value: None
by_alias
Default value: None
by_name
Default value: 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
Обязательно
Any

Объект, содержащий строковые данные для проверки.

strict
Обязательно

Следует ли строго применять типы.

extra
Обязательно
Literal['allow', 'ignore', 'forbid'] | None

Следует ли игнорировать, разрешать или запрещать дополнительные данные во время проверки модели. См. [дополнительное значение конфигурации][pydantic). Дополнительные сведения см. в разделе ConfigDict.extra.

context
Обязательно
Any | None

Дополнительные переменные для передачи в проверяющий элемент.

by_alias
Обязательно

Следует ли использовать псевдоним поля при проверке предоставленных входных данных.

by_name
Обязательно

Следует ли использовать имя поля при проверке предоставленных входных данных.

Параметры Keyword-Only

Имя Описание
strict
Default value: None
extra
Default value: None
context
Default value: None
by_alias
Default value: None
by_name
Default value: None

Возвращаемое значение

Тип Описание

Проверенная модель Pydantic.

not_empty

Убедитесь, что строковые поля не пусты или только пробелы.

validator not_empty  »  message_id, conversation_id, user_message

Параметры

Имя Описание
v
Обязательно
str

Возвращаемое значение

Тип Описание
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

Параметры

Имя Описание
path
Обязательно
str | <xref:Path>
content_type
Обязательно
str | None
encoding
Обязательно
str
proto
Обязательно
<xref:DeprecatedParseProtocol> | None
allow_pickle
Обязательно

Параметры Keyword-Only

Имя Описание
content_type
Default value: None
encoding
Default value: 'utf8'
proto
Default value: None
allow_pickle
Default value: False

Возвращаемое значение

Тип Описание

parse_obj

parse_obj(obj: Any) -> Self

Параметры

Имя Описание
obj
Обязательно
Any

Возвращаемое значение

Тип Описание

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
Обязательно
str | None
encoding
Обязательно
str
proto
Обязательно
<xref:DeprecatedParseProtocol> | None
allow_pickle
Обязательно

Параметры Keyword-Only

Имя Описание
content_type
Default value: None
encoding
Default value: 'utf8'
proto
Default value: None
allow_pickle
Default value: False

Возвращаемое значение

Тип Описание

schema

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

Параметры

Имя Описание
by_alias
Default value: True
ref_template
str
Default value: DEFAULT_REF_TEMPLATE

Возвращаемое значение

Тип Описание

schema_json

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

Параметры

Имя Описание
by_alias
Обязательно
ref_template
Обязательно
str
dumps_kwargs
Обязательно
Any

Параметры Keyword-Only

Имя Описание
by_alias
Default value: True
ref_template
Default value: DEFAULT_REF_TEMPLATE

Возвращаемое значение

Тип Описание
str

update_forward_refs

update_forward_refs(**localns: Any) -> None

Параметры

Имя Описание
localns
Обязательно
Any

Возвращаемое значение

Тип Описание

validate

validate(value: Any) -> Self

Параметры

Имя Описание
value
Обязательно
Any

Возвращаемое значение

Тип Описание

Атрибуты

model_extra

Получение дополнительных полей во время проверки.

Возвращаемое значение

Тип Описание

Словарь дополнительных полей или Нет , если config.extra не задано значение allow.

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')