ChatHistoryMessage Classe

Representa uma única mensagem no histórico de chat.

Esse modelo é usado para capturar mensagens individuais trocadas entre usuários e o assistente de IA para análise de proteção contra ameaças e monitoramento de conformidade.

Construtor

pydantic model ChatHistoryMessage

Parâmetros somente de palavra-chave

Nome Description
id
Valor padrão: None
role
Obrigatório
content
Obrigatório
timestamp
Valor padrão: None

Exemplos


>>> message = ChatHistoryMessage(role="user", content="Hello, how can you help?")
>>> print(message.role)
'user'
>>> print(message.content)
'Hello, how can you help?'

Métodos

__init__

Crie um novo modelo analisando e validando dados de entrada de argumentos de palavra-chave.

Raises [ValidationError][pydantic_core. ValidationError] se os dados de entrada não puderem ser validados para formar um modelo válido.

self é explicitamente posicional somente para permitir a si mesmo como um nome de campo.

__new__
construct
content_not_empty

Valide se o conteúdo não está vazio ou somente em espaço em branco.

copy

Retorna uma cópia do modelo.

!!! aviso "Preterido" Este método agora foi preterido; em vez disso , use model_copy .

Se você precisar incluir ou 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

Cria uma nova instância da classe Model com dados validados.

Cria um novo ditado de configuração de modelo e pydantic_fields_set de dados confiáveis ou pré-validados. Valores padrão são respeitados, mas nenhuma outra validação é executada.

!!! note model_construct() geralmente respeita a configuração model_config.extra no modelo fornecido. Ou seja, se model_config.extra == 'allow', todos os valores passados extras serão adicionados aos campos de ditado e pydantic_extra da instância do modelo. Se model_config.extra == 'ignore' (o padrão), todos os valores extras passados serão ignorados. Como nenhuma validação é executada com uma chamada para model_construct(), ter model_config.extra == 'forbid' não resultará em um erro se valores extras forem passados, mas eles serão ignorados.

model_copy

!!! abstrato "Documentação de Uso" model_copy

Retorna uma cópia do modelo.

!!! observe [dict][object] da instância subjacente.O atributo dict] é copiado. Isso poderá ter efeitos colaterais inesperados se você armazenar algo nele, sobre os campos de modelo (por exemplo, o valor de [propriedades armazenadas em cache][functools.cached_property]).

model_dump

!!! abstrato "Documentação de Uso" model_dump

Gere uma representação de dicionário do modelo, opcionalmente especificando quais campos incluir ou excluir.

model_dump_json

!!! abstrato "Documentação de Uso" model_dump_json

Gera uma representação JSON do modelo usando o método to_json Pydantic.

model_json_schema

Gera um esquema JSON para uma classe de modelo.

model_parametrized_name

Compute o nome da classe para parametrizações de classes genéricas.

Esse método pode ser substituído para obter um esquema de nomenclatura personalizado para BaseModels genéricos.

model_post_init

Substitua esse método para executar a inicialização adicional após a inicialização e model_construct. Isso é útil se você quiser fazer alguma validação que exija que todo o modelo seja inicializado.

model_rebuild

Tente recompilar o esquema de núcleo pedante para o modelo.

Isso pode ser necessário quando uma das anotações é um ForwardRef que não pôde ser resolvido durante a tentativa inicial de compilar o esquema e a recompilação automática falha.

model_validate

Valide uma instância de modelo pedante.

model_validate_json

!!! Análise JSON abstrata de "Documentação de Uso"

Valide os dados JSON especificados no modelo Pydantic.

model_validate_strings

Valide o objeto fornecido com dados de cadeia de caracteres no modelo Pydantic.

parse_file
parse_obj
parse_raw
schema
schema_json
update_forward_refs
validate

__init__

Crie um novo modelo analisando e validando dados de entrada de argumentos de palavra-chave.

Raises [ValidationError][pydantic_core. ValidationError] se os dados de entrada não puderem ser validados para formar um modelo válido.

self é explicitamente posicional somente para permitir a si mesmo como um nome de campo.

__init__(**data: Any) -> None

Parâmetros

Nome Description
data
Obrigatório
Any

Retornos

Tipo Description

__new__

__new__(**kwargs)

construct

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

Parâmetros

Nome Description
_fields_set
set[str] | None
Valor padrão: None
values
Obrigatório
Any

Retornos

Tipo Description

content_not_empty

Valide se o conteúdo não está vazio ou somente em espaço em branco.

validator content_not_empty  »  content

Parâmetros

Nome Description
v
Obrigatório
str

Retornos

Tipo Description
str

copy

Retorna uma cópia do modelo.

!!! aviso "Preterido" Este método agora foi preterido; em vez disso , use model_copy .

Se você precisar incluir ou 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

Nome Description
include
Obrigatório
<xref:AbstractSetIntStr> | <xref:MappingIntStrAny> | None

Conjunto opcional ou mapeamento especificando quais campos incluir no modelo copiado.

exclude
Obrigatório
<xref:AbstractSetIntStr> | <xref:MappingIntStrAny> | None

Conjunto opcional ou mapeamento especificando quais campos excluir no modelo copiado.

update
Obrigatório

Dicionário opcional de pares campo-valor para substituir valores de campo no modelo copiado.

deep
Obrigatório

Se True, os valores dos campos que são modelos pedantes serão copiados profundamente.

Parâmetros somente de palavra-chave

Nome Description
include
Valor padrão: None
exclude
Valor padrão: None
update
Valor padrão: None
deep
Valor padrão: False

Retornos

Tipo Description

Uma cópia do modelo com campos incluídos, excluídos e atualizados, conforme especificado.

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

Nome Description
include
Obrigatório
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
Obrigatório
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
Obrigatório
exclude_unset
Obrigatório
exclude_defaults
Obrigatório
exclude_none
Obrigatório

Parâmetros somente de palavra-chave

Nome Description
include
Valor padrão: None
exclude
Valor padrão: None
by_alias
Valor padrão: False
exclude_unset
Valor padrão: False
exclude_defaults
Valor padrão: False
exclude_none
Valor padrão: False

Retornos

Tipo Description

from_orm

from_orm(obj: Any) -> Self

Parâmetros

Nome Description
obj
Obrigatório
Any

Retornos

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

Nome Description
include
Obrigatório
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
Obrigatório
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
Obrigatório
exclude_unset
Obrigatório
exclude_defaults
Obrigatório
exclude_none
Obrigatório
encoder
Obrigatório
models_as_dict
Obrigatório
dumps_kwargs
Obrigatório
Any

Parâmetros somente de palavra-chave

Nome Description
include
Valor padrão: None
exclude
Valor padrão: None
by_alias
Valor padrão: False
exclude_unset
Valor padrão: False
exclude_defaults
Valor padrão: False
exclude_none
Valor padrão: False
encoder
Valor padrão: PydanticUndefined
models_as_dict
Valor padrão: PydanticUndefined

Retornos

Tipo Description
str

model_construct

Cria uma nova instância da classe Model com dados validados.

Cria um novo ditado de configuração de modelo e pydantic_fields_set de dados confiáveis ou pré-validados. Valores padrão são respeitados, mas nenhuma outra validação é executada.

!!! note model_construct() geralmente respeita a configuração model_config.extra no modelo fornecido. Ou seja, se model_config.extra == 'allow', todos os valores passados extras serão adicionados aos campos de ditado e pydantic_extra da instância do modelo. Se model_config.extra == 'ignore' (o padrão), todos os valores extras passados serão ignorados. Como nenhuma validação é executada com uma chamada para model_construct(), ter model_config.extra == 'forbid' não resultará em um erro se valores extras forem passados, mas eles serão ignorados.

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

Parâmetros

Nome Description
_fields_set
set[str] | None

Um conjunto de nomes de campo que foram originalmente definidos explicitamente durante a instanciação. Se fornecido, isso é usado diretamente para o [model_fields_set][pydantic. atributo BaseModel.model_fields_set]. Caso contrário, os nomes de campo do argumento de valores serão usados .

Valor padrão: None
values
Obrigatório
Any

Dicionário de dados confiável ou pré-validado.

Retornos

Tipo Description

Uma nova instância da classe Model com dados validados.

model_copy

!!! abstrato "Documentação de Uso" model_copy

Retorna uma cópia do modelo.

!!! observe [dict][object] da instância subjacente.O atributo dict] é copiado. Isso poderá ter efeitos colaterais inesperados se você armazenar algo nele, sobre os campos de modelo (por exemplo, o valor de [propriedades armazenadas em cache][functools.cached_property]).

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

Parâmetros

Nome Description
update
Obrigatório

Valores a serem alterados/adicionados ao novo modelo. Observação: os dados não são validados antes de criar o novo modelo. Você deve confiar nos dados.

deep
Obrigatório

Defina como True para fazer uma cópia profunda do modelo.

Parâmetros somente de palavra-chave

Nome Description
update
Valor padrão: None
deep
Valor padrão: False

Retornos

Tipo Description

Nova instância de modelo.

model_dump

!!! abstrato "Documentação de Uso" model_dump

Gere uma representação de dicionário do modelo, opcionalmente especificando quais campos incluir ou 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

Nome Description
mode
Obrigatório
Literal['json', 'python'] | str

O modo no qual to_python deve ser executado. Se o modo for 'json', a saída conterá apenas tipos serializáveis JSON. Se o modo for 'python', a saída poderá conter objetos Python não serializáveis JSON.

include
Obrigatório
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

Um conjunto de campos a serem incluídos na saída.

exclude
Obrigatório
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

Um conjunto de campos a serem excluídos da saída.

context
Obrigatório
Any | None

Contexto adicional a ser passado para o serializador.

by_alias
Obrigatório

Se o alias do campo deve ser usado na chave de dicionário, se definido.

exclude_unset
Obrigatório

Se os campos que não foram definidos explicitamente devem ser excluídos.

exclude_defaults
Obrigatório

Se os campos que são definidos como o valor padrão devem ser excluídos.

exclude_none
Obrigatório

Se os campos que têm um valor de None devem ser excluídos.

exclude_computed_fields
Obrigatório

Se os campos computados devem ser excluídos. Embora isso possa ser útil para o arredondamento, geralmente é recomendável usar o parâmetro de round_trip dedicado.

round_trip
Obrigatório

Se true, os valores despejados devem ser válidos como entrada para tipos não idempotentes, como Json[T].

warnings
Obrigatório
bool | Literal['none', 'warn', 'error']

Como lidar com erros de serialização. False/"none" os ignora, True/"warn" registra erros, "error" gera um [PydanticSerializationError][pydantic_core. PydanticSerializationError].

fallback
Obrigatório

Uma função a ser chamada quando um valor desconhecido é encontrado. Se não for fornecido, um [PydanticSerializationError][pydantic_core. O erro PydanticSerializationError] é gerado.

serialize_as_any
Obrigatório

Se os campos devem ser serializados com comportamento de serialização de digitação de pato.

polymorphic_serialization
Obrigatório

Se deve usar a serialização polimórfica de modelo e de dataclass para essa chamada.

Parâmetros somente de palavra-chave

Nome Description
mode
Valor padrão: 'python'
include
Valor padrão: None
exclude
Valor padrão: None
context
Valor padrão: None
by_alias
Valor padrão: None
exclude_unset
Valor padrão: False
exclude_defaults
Valor padrão: False
exclude_none
Valor padrão: False
exclude_computed_fields
Valor padrão: False
round_trip
Valor padrão: False
warnings
Valor padrão: True
fallback
Valor padrão: None
serialize_as_any
Valor padrão: False
polymorphic_serialization
Valor padrão: None

Retornos

Tipo Description

Uma representação de dicionário do modelo.

model_dump_json

!!! abstrato "Documentação de Uso" model_dump_json

Gera uma representação JSON do modelo usando o método 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

Parâmetros

Nome Description
indent
Obrigatório
int | None

Recuo a ser usado na saída JSON. Se Nenhum for passado, a saída será compacta.

ensure_ascii
Obrigatório

Se True, a saída terá todos os caracteres não ASCII de entrada escapados. Se False (o padrão), esses caracteres serão as-isde saída.

include
Obrigatório
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

Campo(s) a ser incluído na saída JSON.

exclude
Obrigatório
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

Campo(s) a ser excluído da saída JSON.

context
Obrigatório
Any | None

Contexto adicional a ser passado para o serializador.

by_alias
Obrigatório

Se deseja serializar usando aliases de campo.

exclude_unset
Obrigatório

Se os campos que não foram definidos explicitamente devem ser excluídos.

exclude_defaults
Obrigatório

Se os campos que são definidos como o valor padrão devem ser excluídos.

exclude_none
Obrigatório

Se os campos que têm um valor de None devem ser excluídos.

exclude_computed_fields
Obrigatório

Se os campos computados devem ser excluídos. Embora isso possa ser útil para o arredondamento, geralmente é recomendável usar o parâmetro de round_trip dedicado.

round_trip
Obrigatório

Se true, os valores despejados devem ser válidos como entrada para tipos não idempotentes, como Json[T].

warnings
Obrigatório
bool | Literal['none', 'warn', 'error']

Como lidar com erros de serialização. False/"none" os ignora, True/"warn" registra erros, "error" gera um [PydanticSerializationError][pydantic_core. PydanticSerializationError].

fallback
Obrigatório

Uma função a ser chamada quando um valor desconhecido é encontrado. Se não for fornecido, um [PydanticSerializationError][pydantic_core. O erro PydanticSerializationError] é gerado.

serialize_as_any
Obrigatório

Se os campos devem ser serializados com comportamento de serialização de digitação de pato.

polymorphic_serialization
Obrigatório

Se deve usar a serialização polimórfica de modelo e de dataclass para essa chamada.

Parâmetros somente de palavra-chave

Nome Description
indent
Valor padrão: None
ensure_ascii
Valor padrão: False
include
Valor padrão: None
exclude
Valor padrão: None
context
Valor padrão: None
by_alias
Valor padrão: None
exclude_unset
Valor padrão: False
exclude_defaults
Valor padrão: False
exclude_none
Valor padrão: False
exclude_computed_fields
Valor padrão: False
round_trip
Valor padrão: False
warnings
Valor padrão: True
fallback
Valor padrão: None
serialize_as_any
Valor padrão: False
polymorphic_serialization
Valor padrão: None

Retornos

Tipo Description
str

Uma representação de cadeia de caracteres JSON do modelo.

model_json_schema

Gera um esquema JSON para uma classe 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

Nome Description
by_alias

Quer use aliases de atributo ou não.

Valor padrão: True
ref_template
str

O modelo de referência.

Valor padrão: DEFAULT_REF_TEMPLATE
union_format
Obrigatório
Literal['any_of', 'primitive_type_array']

O formato a ser usado ao combinar esquemas de uniões. Pode ser uma das ações a seguir:

palavra-chave para combinar esquemas (o padrão).

  • 'primitive_type_array': use a palavra-chave type como uma matriz de cadeias de caracteres, contendo cada tipo da combinação. Se qualquer um dos esquemas não for um tipo primitivo (cadeia de caracteres, booliano, nulo, inteiro ou número) ou contiver restrições/metadados, retornará para any_of.
schema_generator
type[<xref:pydantic.json_schema.GenerateJsonSchema>]

Para substituir a lógica usada para gerar o esquema JSON, como uma subclasse de GenerateJsonSchema com as modificações desejadas

Valor padrão: GenerateJsonSchema
mode
Literal['validation', 'serialization']

O modo no qual gerar o esquema.

Valor padrão: 'validation'

Parâmetros somente de palavra-chave

Nome Description
union_format
Valor padrão: 'any_of'

Retornos

Tipo Description

O esquema JSON para a classe de modelo fornecida.

model_parametrized_name

Compute o nome da classe para parametrizações de classes genéricas.

Esse método pode ser substituído para obter um esquema de nomenclatura personalizado para BaseModels genéricos.

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

Parâmetros

Nome Description
params
Obrigatório
tuple[type[Any], ...]

Tupla de tipos da classe. Considerando um Modelo de classe genérica com 2 variáveis de tipo e um modelo de concreto Model[str, int], o valor (str, int) seria passado para parâmetros.

Retornos

Tipo Description
str

Cadeia de caracteres que representa a nova classe em que os parâmetros são passados para cls como variáveis de tipo.

Exceções

Tipo Description

Gerado ao tentar gerar nomes concretos para modelos não genéricos.

model_post_init

Substitua esse método para executar a inicialização adicional após a inicialização e model_construct. Isso é útil se você quiser fazer alguma validação que exija que todo o modelo seja inicializado.

model_post_init(context: Any, /) -> None

Parâmetros somente posicionais

Nome Description
context
Obrigatório

Parâmetros

Nome Description
context
Obrigatório
Any

Retornos

Tipo Description

model_rebuild

Tente recompilar o esquema de núcleo pedante para o modelo.

Isso pode ser necessário quando uma das anotações é um ForwardRef que não pôde ser resolvido durante a tentativa inicial de compilar o esquema e a recompilação automática falha.

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

Parâmetros

Nome Description
force
Obrigatório

Se deve forçar a recriação do esquema de modelo, o padrão é False.

raise_errors
Obrigatório

Se deve gerar erros, o padrão é True.

_parent_namespace_depth
Obrigatório
int

O nível de profundidade do namespace pai, o padrão é 2.

_types_namespace
Obrigatório
<xref:MappingNamespace> | None

O namespace de tipos, o padrão é None.

Parâmetros somente de palavra-chave

Nome Description
force
Valor padrão: False
raise_errors
Valor padrão: True
_parent_namespace_depth
Valor padrão: 2
_types_namespace
Valor padrão: None

Retornos

Tipo Description

Retorna Nenhum se o esquema já estiver "concluído" e a recompilação não for necessária. Se a recompilação for necessária, retornará True se a recompilação tiver sido bem-sucedida, caso contrário, False.

model_validate

Valide uma instância de modelo pedante.

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

Nome Description
obj
Obrigatório
Any

O objeto a ser validado.

strict
Obrigatório

Se os tipos devem ser aplicados estritamente.

extra
Obrigatório
Literal['allow', 'ignore', 'forbid'] | None

Se deve ignorar, permitir ou proibir dados extras durante a validação do modelo. Consulte o [valor de configuração extra ][pydantic. ConfigDict.extra] para obter detalhes.

from_attributes
Obrigatório

Se os dados devem ser extraídos de atributos de objeto.

context
Obrigatório
Any | None

Contexto adicional a ser passado para o validador.

by_alias
Obrigatório

Se deve usar o alias do campo ao validar em relação aos dados de entrada fornecidos.

by_name
Obrigatório

Se deve usar o nome do campo ao validar em relação aos dados de entrada fornecidos.

Parâmetros somente de palavra-chave

Nome Description
strict
Valor padrão: None
extra
Valor padrão: None
from_attributes
Valor padrão: None
context
Valor padrão: None
by_alias
Valor padrão: None
by_name
Valor padrão: None

Retornos

Tipo Description

A instância de modelo validada.

Exceções

Tipo Description
ValidationError

Se o objeto não puder ser validado.

model_validate_json

!!! Análise JSON abstrata de "Documentação de Uso"

Valide os dados JSON especificados no 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

Nome Description
json_data
Obrigatório

Os dados JSON a serem validados.

strict
Obrigatório

Se os tipos devem ser aplicados estritamente.

extra
Obrigatório
Literal['allow', 'ignore', 'forbid'] | None

Se deve ignorar, permitir ou proibir dados extras durante a validação do modelo. Consulte o [valor de configuração extra ][pydantic. ConfigDict.extra] para obter detalhes.

context
Obrigatório
Any | None

Variáveis extras a serem passadas para o validador.

by_alias
Obrigatório

Se deve usar o alias do campo ao validar em relação aos dados de entrada fornecidos.

by_name
Obrigatório

Se deve usar o nome do campo ao validar em relação aos dados de entrada fornecidos.

Parâmetros somente de palavra-chave

Nome Description
strict
Valor padrão: None
extra
Valor padrão: None
context
Valor padrão: None
by_alias
Valor padrão: None
by_name
Valor padrão: None

Retornos

Tipo Description

O modelo Pydantic validado.

Exceções

Tipo Description
ValidationError

Se json_data não for uma cadeia de caracteres JSON ou o objeto não puder ser validado.

model_validate_strings

Valide o objeto fornecido com dados de cadeia de caracteres no 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

Nome Description
obj
Obrigatório
Any

O objeto que contém dados de cadeia de caracteres a serem validados.

strict
Obrigatório

Se os tipos devem ser aplicados estritamente.

extra
Obrigatório
Literal['allow', 'ignore', 'forbid'] | None

Se deve ignorar, permitir ou proibir dados extras durante a validação do modelo. Consulte o [valor de configuração extra ][pydantic. ConfigDict.extra] para obter detalhes.

context
Obrigatório
Any | None

Variáveis extras a serem passadas para o validador.

by_alias
Obrigatório

Se deve usar o alias do campo ao validar em relação aos dados de entrada fornecidos.

by_name
Obrigatório

Se deve usar o nome do campo ao validar em relação aos dados de entrada fornecidos.

Parâmetros somente de palavra-chave

Nome Description
strict
Valor padrão: None
extra
Valor padrão: None
context
Valor padrão: None
by_alias
Valor padrão: None
by_name
Valor padrão: None

Retornos

Tipo Description

O modelo Pydantic validado.

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

Nome Description
path
Obrigatório
str | <xref:Path>
content_type
Obrigatório
str | None
encoding
Obrigatório
str
proto
Obrigatório
<xref:DeprecatedParseProtocol> | None
allow_pickle
Obrigatório

Parâmetros somente de palavra-chave

Nome Description
content_type
Valor padrão: None
encoding
Valor padrão: 'utf8'
proto
Valor padrão: None
allow_pickle
Valor padrão: False

Retornos

Tipo Description

parse_obj

parse_obj(obj: Any) -> Self

Parâmetros

Nome Description
obj
Obrigatório
Any

Retornos

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

Nome Description
b
Obrigatório
content_type
Obrigatório
str | None
encoding
Obrigatório
str
proto
Obrigatório
<xref:DeprecatedParseProtocol> | None
allow_pickle
Obrigatório

Parâmetros somente de palavra-chave

Nome Description
content_type
Valor padrão: None
encoding
Valor padrão: 'utf8'
proto
Valor padrão: None
allow_pickle
Valor padrão: False

Retornos

Tipo Description

schema

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

Parâmetros

Nome Description
by_alias
Valor padrão: True
ref_template
str
Valor padrão: DEFAULT_REF_TEMPLATE

Retornos

Tipo Description

schema_json

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

Parâmetros

Nome Description
by_alias
Obrigatório
ref_template
Obrigatório
str
dumps_kwargs
Obrigatório
Any

Parâmetros somente de palavra-chave

Nome Description
by_alias
Valor padrão: True
ref_template
Valor padrão: DEFAULT_REF_TEMPLATE

Retornos

Tipo Description
str

update_forward_refs

update_forward_refs(**localns: Any) -> None

Parâmetros

Nome Description
localns
Obrigatório
Any

Retornos

Tipo Description

validate

validate(value: Any) -> Self

Parâmetros

Nome Description
value
Obrigatório
Any

Retornos

Tipo Description

Atributos

model_extra

Obter campos extras definidos durante a validação.

Retornos

Tipo Description

Um dicionário de campos extras ou Nenhum se config.extra não estiver definido como "permitir".

model_fields_set

Retorna o conjunto de campos que foram definidos explicitamente nesta instância de modelo.

Retornos

Tipo Description

Um conjunto de cadeias de caracteres que representam os campos que foram definidos, ou seja, que não foram preenchidos por padrões.

id

Identificador exclusivo opcional para a mensagem.

field id: str | None = None

role

A função do remetente da mensagem (usuário, assistente ou sistema).

field role: Literal['user', 'assistant', 'system'] [Required]

content

O conteúdo de texto da mensagem.

field content: str [Required]

timestamp

Carimbo de data/hora opcional quando a mensagem foi criada.

field timestamp: datetime | None = None