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 . Если требуется включить или исключить, используйте следующее:
|
| 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
Обязательно
|
|
Возвращаемое значение
| Тип | Описание |
|---|---|
__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, будут скопированы глубоко. |
Параметры 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
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
Обязательно
|
|
Параметры 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
|
Возвращаемое значение
| Тип | Описание |
|---|---|
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
|
Набор имен полей, которые изначально были явно заданы во время создания экземпляра. Если это указано, оно используется непосредственно для [model_fields_set][pydantic. атрибут BaseModel.model_fields_set]. В противном случае будут использоваться имена полей из аргумента значений . Default value: None
|
|
values
Обязательно
|
Доверенный или предварительно проверенный словарь данных. |
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Новый экземпляр класса 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
Обязательно
|
Дополнительный контекст для передачи сериализатору. |
|
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
Обязательно
|
Следует ли использовать многоморфную сериализацию модели и класса данных для этого вызова. |
Параметры 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
Обязательно
|
Отступ для использования в выходных данных 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
Обязательно
|
Дополнительный контекст для передачи сериализатору. |
|
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
Обязательно
|
Следует ли использовать многоморфную сериализацию модели и класса данных для этого вызова. |
Параметры 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
|
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Строковое представление модели в формате 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
|
Шаблон ссылки. Default value: DEFAULT_REF_TEMPLATE
|
|
union_format
Обязательно
|
Literal['any_of', 'primitive_type_array']
Формат, используемый при объединении схем из профсоюзов вместе. Возможные значения:
ключевое слово для объединения схем (по умолчанию).
|
|
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
Обязательно
|
Кортеж типов класса. Учитывая модель универсального класса с 2 переменными типа и конкретной моделью [str, int], значение (str, int) будет передано парам. |
Возвращаемое значение
| Тип | Описание |
|---|---|
|
Строка, представляющая новый класс, в котором парамы передаются в cls в виде переменных типа. |
Исключения
| Тип | Описание |
|---|---|
|
Возникает при попытке создать конкретные имена для не универсальных моделей. |
model_post_init
Переопределите этот метод, чтобы выполнить дополнительную инициализацию после инициализации и model_construct. Это полезно, если требуется выполнить некоторую проверку, требующую инициализации всей модели.
model_post_init(context: Any, /) -> None
Параметры Positional-Only
| Имя | Описание |
|---|---|
|
context
Обязательно
|
|
Параметры
| Имя | Описание |
|---|---|
|
context
Обязательно
|
|
Возвращаемое значение
| Тип | Описание |
|---|---|
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. |
Параметры 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
Обязательно
|
Объект для проверки. |
|
strict
Обязательно
|
Следует ли строго применять типы. |
|
extra
Обязательно
|
Literal['allow', 'ignore', 'forbid'] | None
Следует ли игнорировать, разрешать или запрещать дополнительные данные во время проверки модели. См. [дополнительное значение конфигурации][pydantic). Дополнительные сведения см. в разделе ConfigDict.extra. |
|
from_attributes
Обязательно
|
Следует ли извлекать данные из атрибутов объекта. |
|
context
Обязательно
|
Дополнительный контекст для передачи в проверяющий элемент. |
|
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
Обязательно
|
Дополнительные переменные для передачи в проверяющий элемент. |
|
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
Обязательно
|
Объект, содержащий строковые данные для проверки. |
|
strict
Обязательно
|
Следует ли строго применять типы. |
|
extra
Обязательно
|
Literal['allow', 'ignore', 'forbid'] | None
Следует ли игнорировать, разрешать или запрещать дополнительные данные во время проверки модели. См. [дополнительное значение конфигурации][pydantic). Дополнительные сведения см. в разделе ConfigDict.extra. |
|
context
Обязательно
|
Дополнительные переменные для передачи в проверяющий элемент. |
|
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
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
Обязательно
|
|
Параметры Keyword-Only
| Имя | Описание |
|---|---|
|
content_type
|
Default value: None
|
|
encoding
|
Default value: 'utf8'
|
|
proto
|
Default value: None
|
|
allow_pickle
|
Default value: False
|
Возвращаемое значение
| Тип | Описание |
|---|---|
parse_obj
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
Обязательно
|
|
Параметры Keyword-Only
| Имя | Описание |
|---|---|
|
content_type
|
Default value: None
|
|
encoding
|
Default value: 'utf8'
|
|
proto
|
Default value: None
|
|
allow_pickle
|
Default value: False
|
Возвращаемое значение
| Тип | Описание |
|---|---|
schema
schema_json
schema_json(*, by_alias: bool = True, ref_template: str = DEFAULT_REF_TEMPLATE, **dumps_kwargs: Any) -> str
Параметры
| Имя | Описание |
|---|---|
|
by_alias
Обязательно
|
|
|
ref_template
Обязательно
|
|
|
dumps_kwargs
Обязательно
|
|
Параметры Keyword-Only
| Имя | Описание |
|---|---|
|
by_alias
|
Default value: True
|
|
ref_template
|
Default value: DEFAULT_REF_TEMPLATE
|
Возвращаемое значение
| Тип | Описание |
|---|---|
update_forward_refs
validate
Атрибуты
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')