ChatHistoryMessage Classe

Rappresenta un singolo messaggio nella cronologia delle chat.

Questo modello viene usato per acquisire singoli messaggi scambiati tra gli utenti e l'Assistente intelligenza artificiale per l'analisi della protezione dalle minacce e il monitoraggio della conformità.

Costruttore

pydantic model ChatHistoryMessage

Parametri di sole parole chiave

Nome Descrizione
id
Valore predefinito: None
role
Necessario
content
Necessario
timestamp
Valore predefinito: None

Esempio


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

Metodi

__init__

Creare un nuovo modello analizzando e convalidando i dati di input dagli argomenti delle parole chiave.

Genera [ValidationError][pydantic_core. ValidationError] se i dati di input non possono essere convalidati per formare un modello valido.

self è posizionale in modo esplicito per consentire l'auto come nome di campo.

__new__
construct
content_not_empty

Verificare che il contenuto non sia vuoto o solo spazi vuoti.

copy

Restituisce una copia del modello.

!!! avviso "Deprecato" Questo metodo è ora deprecato; usare invece model_copy .

Se è necessario includere o escludere, usare:

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

dict
from_orm
json
model_construct

Crea una nuova istanza della classe Model con dati convalidati.

Crea un nuovo set di impostazioni del modello epydantic_fields_set da dati attendibili o con convalida preliminare. I valori predefiniti vengono rispettati, ma non viene eseguita alcuna altra convalida.

!!! Nota model_construct() rispetta in genere l'impostazione model_config.extra nel modello fornito. Ovvero, se model_config.extra == 'allow', tutti i valori passati aggiuntivi vengono aggiunti ai campi dict e pydantic_extra dell'istanza del modello. Se model_config.extra == 'ignore' (impostazione predefinita), tutti i valori passati aggiuntivi vengono ignorati. Poiché non viene eseguita alcuna convalida con una chiamata a model_construct(), la presenza di model_config.extra == 'forbid' non genera un errore se vengono passati valori aggiuntivi, ma verranno ignorati.

model_copy

!!! model_copy "Documentazione sull'utilizzo" astratta

Restituisce una copia del modello.

!!! Nota Il [dict][oggetto dell'istanza sottostante.attributo dict] copiato. Questo potrebbe avere effetti collaterali imprevisti se si archivia qualcosa, sopra i campi del modello (ad esempio, il valore di [proprietà memorizzate nella cache][functools.cached_property]).

model_dump

!!! model_dump "Documentazione sull'utilizzo" astratta

Generare una rappresentazione del dizionario del modello, specificando facoltativamente i campi da includere o escludere.

model_dump_json

!!! model_dump_json "Documentazione sull'utilizzo" astratta

Genera una rappresentazione JSON del modello usando il metodo to_json di Pydantic.

model_json_schema

Genera uno schema JSON per una classe del modello.

model_parametrized_name

Calcolare il nome della classe per le parametrizzazioni delle classi generiche.

Questo metodo può essere sottoposto a override per ottenere uno schema di denominazione personalizzato per BaseModel generico.

model_post_init

Eseguire l'override di questo metodo per eseguire un'inizializzazione aggiuntiva dopo init e model_construct. Questa operazione è utile se si desidera eseguire una convalida che richiede l'inizializzazione dell'intero modello.

model_rebuild

Provare a ricompilare lo schema pydantic-core per il modello.

Ciò può essere necessario quando una delle annotazioni è un ForwardRef che non è stato possibile risolvere durante il tentativo iniziale di compilare lo schema e la ricompilazione automatica non riesce.

model_validate

Convalidare un'istanza del modello pydantic.

model_validate_json

!!! Analisi JSON astratta "Documentazione sull'utilizzo"

Convalidare i dati JSON specificati rispetto al modello Pydantic.

model_validate_strings

Convalidare l'oggetto specificato con dati stringa rispetto al modello Pydantic.

parse_file
parse_obj
parse_raw
schema
schema_json
update_forward_refs
validate

__init__

Creare un nuovo modello analizzando e convalidando i dati di input dagli argomenti delle parole chiave.

Genera [ValidationError][pydantic_core. ValidationError] se i dati di input non possono essere convalidati per formare un modello valido.

self è posizionale in modo esplicito per consentire l'auto come nome di campo.

__init__(**data: Any) -> None

Parametri

Nome Descrizione
data
Necessario
Any

Valori restituiti

Tipo Descrizione

__new__

__new__(**kwargs)

construct

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

Parametri

Nome Descrizione
_fields_set
set[str] | None
Valore predefinito: None
values
Necessario
Any

Valori restituiti

Tipo Descrizione

content_not_empty

Verificare che il contenuto non sia vuoto o solo spazi vuoti.

validator content_not_empty  »  content

Parametri

Nome Descrizione
v
Necessario
str

Valori restituiti

Tipo Descrizione
str

copy

Restituisce una copia del modello.

!!! avviso "Deprecato" Questo metodo è ora deprecato; usare invece model_copy .

Se è necessario includere o escludere, usare:

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

Parametri

Nome Descrizione
include
Necessario
<xref:AbstractSetIntStr> | <xref:MappingIntStrAny> | None

Set facoltativo o mapping che specifica i campi da includere nel modello copiato.

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

Set facoltativo o mapping che specifica i campi da escludere nel modello copiato.

update
Necessario

Dizionario facoltativo di coppie di valori di campo per sostituire i valori dei campi nel modello copiato.

deep
Necessario

Se True, i valori dei campi che sono modelli Pydantic verranno copiati in modo approfondito.

Parametri di sole parole chiave

Nome Descrizione
include
Valore predefinito: None
exclude
Valore predefinito: None
update
Valore predefinito: None
deep
Valore predefinito: False

Valori restituiti

Tipo Descrizione

Copia del modello con campi inclusi, esclusi e aggiornati come specificato.

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]

Parametri

Nome Descrizione
include
Necessario
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
Necessario
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
Necessario
exclude_unset
Necessario
exclude_defaults
Necessario
exclude_none
Necessario

Parametri di sole parole chiave

Nome Descrizione
include
Valore predefinito: None
exclude
Valore predefinito: None
by_alias
Valore predefinito: False
exclude_unset
Valore predefinito: False
exclude_defaults
Valore predefinito: False
exclude_none
Valore predefinito: False

Valori restituiti

Tipo Descrizione

from_orm

from_orm(obj: Any) -> Self

Parametri

Nome Descrizione
obj
Necessario
Any

Valori restituiti

Tipo Descrizione

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

Parametri

Nome Descrizione
include
Necessario
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
Necessario
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
Necessario
exclude_unset
Necessario
exclude_defaults
Necessario
exclude_none
Necessario
encoder
Necessario
models_as_dict
Necessario
dumps_kwargs
Necessario
Any

Parametri di sole parole chiave

Nome Descrizione
include
Valore predefinito: None
exclude
Valore predefinito: None
by_alias
Valore predefinito: False
exclude_unset
Valore predefinito: False
exclude_defaults
Valore predefinito: False
exclude_none
Valore predefinito: False
encoder
Valore predefinito: PydanticUndefined
models_as_dict
Valore predefinito: PydanticUndefined

Valori restituiti

Tipo Descrizione
str

model_construct

Crea una nuova istanza della classe Model con dati convalidati.

Crea un nuovo set di impostazioni del modello epydantic_fields_set da dati attendibili o con convalida preliminare. I valori predefiniti vengono rispettati, ma non viene eseguita alcuna altra convalida.

!!! Nota model_construct() rispetta in genere l'impostazione model_config.extra nel modello fornito. Ovvero, se model_config.extra == 'allow', tutti i valori passati aggiuntivi vengono aggiunti ai campi dict e pydantic_extra dell'istanza del modello. Se model_config.extra == 'ignore' (impostazione predefinita), tutti i valori passati aggiuntivi vengono ignorati. Poiché non viene eseguita alcuna convalida con una chiamata a model_construct(), la presenza di model_config.extra == 'forbid' non genera un errore se vengono passati valori aggiuntivi, ma verranno ignorati.

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

Parametri

Nome Descrizione
_fields_set
set[str] | None

Set di nomi di campo originariamente impostati in modo esplicito durante la creazione di istanze. Se specificato, viene usato direttamente per [model_fields_set][pydantic. attributo BaseModel.model_fields_set]. In caso contrario, verranno utilizzati i nomi dei campi dell'argomento valori .

Valore predefinito: None
values
Necessario
Any

Dizionario dati attendibile o con convalida preliminare.

Valori restituiti

Tipo Descrizione

Nuova istanza della classe Model con dati convalidati.

model_copy

!!! model_copy "Documentazione sull'utilizzo" astratta

Restituisce una copia del modello.

!!! Nota Il [dict][oggetto dell'istanza sottostante.attributo dict] copiato. Questo potrebbe avere effetti collaterali imprevisti se si archivia qualcosa, sopra i campi del modello (ad esempio, il valore di [proprietà memorizzate nella cache][functools.cached_property]).

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

Parametri

Nome Descrizione
update
Necessario

Valori da modificare/aggiungere nel nuovo modello. Nota: i dati non vengono convalidati prima di creare il nuovo modello. È consigliabile considerare attendibili questi dati.

deep
Necessario

Impostare su True per creare una copia completa del modello.

Parametri di sole parole chiave

Nome Descrizione
update
Valore predefinito: None
deep
Valore predefinito: False

Valori restituiti

Tipo Descrizione

Nuova istanza del modello.

model_dump

!!! model_dump "Documentazione sull'utilizzo" astratta

Generare una rappresentazione del dizionario del modello, specificando facoltativamente i campi da includere o escludere.

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]

Parametri

Nome Descrizione
mode
Necessario
Literal['json', 'python'] | str

Modalità in cui deve essere eseguita to_python . Se la modalità è "json", l'output conterrà solo tipi serializzabili JSON. Se la modalità è "python", l'output può contenere oggetti Python non serializzabili json.

include
Necessario
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

Set di campi da includere nell'output.

exclude
Necessario
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

Set di campi da escludere dall'output.

context
Necessario
Any | None

Contesto aggiuntivo da passare al serializzatore.

by_alias
Necessario

Indica se usare l'alias del campo nella chiave del dizionario, se definito.

exclude_unset
Necessario

Indica se escludere campi che non sono stati impostati in modo esplicito.

exclude_defaults
Necessario

Indica se escludere i campi impostati sul valore predefinito.

exclude_none
Necessario

Indica se escludere campi con valore None.

exclude_computed_fields
Necessario

Indica se escludere i campi calcolati. Anche se questo può essere utile per il round trip, è in genere consigliabile usare il parametro dedicato round_trip .

round_trip
Necessario

Se True, i valori di cui è stato eseguito il dump devono essere validi come input per i tipi non idempotenti, ad esempio Json[T].

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

Come gestire gli errori di serializzazione. False/"none" li ignora, True/"warn" registra gli errori, "error" genera un [PydanticSerializationError][pydantic_core. PydanticSerializationError].

fallback
Necessario

Funzione da chiamare quando viene rilevato un valore sconosciuto. Se non specificato, [PydanticSerializationError][pydantic_core. Viene generato l'errore PydanticSerializationError].

serialize_as_any
Necessario

Indica se serializzare i campi con il comportamento di serializzazione di tipizzazione anatra.

polymorphic_serialization
Necessario

Indica se usare la serializzazione polimorfica del modello e della classe di dati per questa chiamata.

Parametri di sole parole chiave

Nome Descrizione
mode
Valore predefinito: 'python'
include
Valore predefinito: None
exclude
Valore predefinito: None
context
Valore predefinito: None
by_alias
Valore predefinito: None
exclude_unset
Valore predefinito: False
exclude_defaults
Valore predefinito: False
exclude_none
Valore predefinito: False
exclude_computed_fields
Valore predefinito: False
round_trip
Valore predefinito: False
warnings
Valore predefinito: True
fallback
Valore predefinito: None
serialize_as_any
Valore predefinito: False
polymorphic_serialization
Valore predefinito: None

Valori restituiti

Tipo Descrizione

Rappresentazione del dizionario del modello.

model_dump_json

!!! model_dump_json "Documentazione sull'utilizzo" astratta

Genera una rappresentazione JSON del modello usando il metodo to_json di 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

Parametri

Nome Descrizione
indent
Necessario
int | None

Rientro da usare nell'output JSON. Se None viene passato, l'output sarà compatto.

ensure_ascii
Necessario

Se True, l'output garantisce che tutti i caratteri non ASCII in ingresso siano preceduti da un carattere di escape. Se False (impostazione predefinita), questi caratteri verranno restituiti as-is.

include
Necessario
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

Campi da includere nell'output JSON.

exclude
Necessario
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

Campi da escludere dall'output JSON.

context
Necessario
Any | None

Contesto aggiuntivo da passare al serializzatore.

by_alias
Necessario

Indica se serializzare utilizzando alias di campo.

exclude_unset
Necessario

Indica se escludere campi che non sono stati impostati in modo esplicito.

exclude_defaults
Necessario

Indica se escludere i campi impostati sul valore predefinito.

exclude_none
Necessario

Indica se escludere campi con valore None.

exclude_computed_fields
Necessario

Indica se escludere i campi calcolati. Anche se questo può essere utile per il round trip, è in genere consigliabile usare il parametro dedicato round_trip .

round_trip
Necessario

Se True, i valori di cui è stato eseguito il dump devono essere validi come input per i tipi non idempotenti, ad esempio Json[T].

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

Come gestire gli errori di serializzazione. False/"none" li ignora, True/"warn" registra gli errori, "error" genera un [PydanticSerializationError][pydantic_core. PydanticSerializationError].

fallback
Necessario

Funzione da chiamare quando viene rilevato un valore sconosciuto. Se non specificato, [PydanticSerializationError][pydantic_core. Viene generato l'errore PydanticSerializationError].

serialize_as_any
Necessario

Indica se serializzare i campi con il comportamento di serializzazione di tipizzazione anatra.

polymorphic_serialization
Necessario

Indica se usare la serializzazione polimorfica del modello e della classe di dati per questa chiamata.

Parametri di sole parole chiave

Nome Descrizione
indent
Valore predefinito: None
ensure_ascii
Valore predefinito: False
include
Valore predefinito: None
exclude
Valore predefinito: None
context
Valore predefinito: None
by_alias
Valore predefinito: None
exclude_unset
Valore predefinito: False
exclude_defaults
Valore predefinito: False
exclude_none
Valore predefinito: False
exclude_computed_fields
Valore predefinito: False
round_trip
Valore predefinito: False
warnings
Valore predefinito: True
fallback
Valore predefinito: None
serialize_as_any
Valore predefinito: False
polymorphic_serialization
Valore predefinito: None

Valori restituiti

Tipo Descrizione
str

Rappresentazione di stringa JSON del modello.

model_json_schema

Genera uno schema JSON per una classe del modello.

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]

Parametri

Nome Descrizione
by_alias

Indica se usare o meno alias di attributo.

Valore predefinito: True
ref_template
str

Modello di riferimento.

Valore predefinito: DEFAULT_REF_TEMPLATE
union_format
Necessario
Literal['any_of', 'primitive_type_array']

Formato da utilizzare quando si combinano schemi da unioni. Può essere uno dei seguenti:

parola chiave per combinare gli schemi (impostazione predefinita).

  • 'primitive_type_array': usare la parola chiave type come matrice di stringhe contenente ogni tipo della combinazione. Se uno degli schemi non è un tipo primitivo (string, boolean, null, integer o number) o contiene vincoli/metadati, esegue il fallback a any_of.
schema_generator
type[<xref:pydantic.json_schema.GenerateJsonSchema>]

Per eseguire l'override della logica usata per generare lo schema JSON, come sottoclasse di GenerateJsonSchema con le modifiche desiderate

Valore predefinito: GenerateJsonSchema
mode
Literal['validation', 'serialization']

Modalità in cui generare lo schema.

Valore predefinito: 'validation'

Parametri di sole parole chiave

Nome Descrizione
union_format
Valore predefinito: 'any_of'

Valori restituiti

Tipo Descrizione

Schema JSON per la classe del modello specificata.

model_parametrized_name

Calcolare il nome della classe per le parametrizzazioni delle classi generiche.

Questo metodo può essere sottoposto a override per ottenere uno schema di denominazione personalizzato per BaseModel generico.

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

Parametri

Nome Descrizione
params
Necessario
tuple[type[Any], ...]

Tupla di tipi della classe . Dato un modello di classe generico con 2 variabili di tipo e un modello concreto Model[str, int], il valore (str, int) verrebbe passato ai parametri.

Valori restituiti

Tipo Descrizione
str

Stringa che rappresenta la nuova classe in cui i parametri vengono passati a cls come variabili di tipo.

Eccezioni

Tipo Descrizione

Generato quando si tenta di generare nomi concreti per modelli non generici.

model_post_init

Eseguire l'override di questo metodo per eseguire un'inizializzazione aggiuntiva dopo init e model_construct. Questa operazione è utile se si desidera eseguire una convalida che richiede l'inizializzazione dell'intero modello.

model_post_init(context: Any, /) -> None

Parametri posizionali

Nome Descrizione
context
Necessario

Parametri

Nome Descrizione
context
Necessario
Any

Valori restituiti

Tipo Descrizione

model_rebuild

Provare a ricompilare lo schema pydantic-core per il modello.

Ciò può essere necessario quando una delle annotazioni è un ForwardRef che non è stato possibile risolvere durante il tentativo iniziale di compilare lo schema e la ricompilazione automatica non riesce.

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

Parametri

Nome Descrizione
force
Necessario

Indica se forzare la ricompilazione dello schema del modello, l'impostazione predefinita è False.

raise_errors
Necessario

Indica se generare errori, il valore predefinito è True.

_parent_namespace_depth
Necessario
int

Il livello di profondità dello spazio dei nomi padre, il valore predefinito è 2.

_types_namespace
Necessario
<xref:MappingNamespace> | None

Lo spazio dei nomi types, per impostazione predefinita, è Nessuno.

Parametri di sole parole chiave

Nome Descrizione
force
Valore predefinito: False
raise_errors
Valore predefinito: True
_parent_namespace_depth
Valore predefinito: 2
_types_namespace
Valore predefinito: None

Valori restituiti

Tipo Descrizione

Restituisce Nessuno se lo schema è già "completo" e la ricompilazione non è necessaria. Se la ricompilazione è necessaria , restituisce True se la ricompilazione è riuscita; in caso contrario, False.

model_validate

Convalidare un'istanza del modello 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

Parametri

Nome Descrizione
obj
Necessario
Any

Oggetto da convalidare.

strict
Necessario

Indica se applicare rigorosamente i tipi.

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

Se ignorare, consentire o impedire dati aggiuntivi durante la convalida del modello. Vedere [valore di configurazione aggiuntivo ][pydantic. ConfigDict.extra] per informazioni dettagliate.

from_attributes
Necessario

Indica se estrarre dati dagli attributi dell'oggetto.

context
Necessario
Any | None

Contesto aggiuntivo da passare al validator.

by_alias
Necessario

Indica se usare l'alias del campo durante la convalida rispetto ai dati di input specificati.

by_name
Necessario

Indica se usare il nome del campo durante la convalida rispetto ai dati di input specificati.

Parametri di sole parole chiave

Nome Descrizione
strict
Valore predefinito: None
extra
Valore predefinito: None
from_attributes
Valore predefinito: None
context
Valore predefinito: None
by_alias
Valore predefinito: None
by_name
Valore predefinito: None

Valori restituiti

Tipo Descrizione

Istanza del modello convalidata.

Eccezioni

Tipo Descrizione
ValidationError

Se non è stato possibile convalidare l'oggetto.

model_validate_json

!!! Analisi JSON astratta "Documentazione sull'utilizzo"

Convalidare i dati JSON specificati rispetto al modello 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

Parametri

Nome Descrizione
json_data
Necessario

Dati JSON da convalidare.

strict
Necessario

Indica se applicare rigorosamente i tipi.

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

Se ignorare, consentire o impedire dati aggiuntivi durante la convalida del modello. Vedere [valore di configurazione aggiuntivo ][pydantic. ConfigDict.extra] per informazioni dettagliate.

context
Necessario
Any | None

Variabili aggiuntive da passare al validator.

by_alias
Necessario

Indica se usare l'alias del campo durante la convalida rispetto ai dati di input specificati.

by_name
Necessario

Indica se usare il nome del campo durante la convalida rispetto ai dati di input specificati.

Parametri di sole parole chiave

Nome Descrizione
strict
Valore predefinito: None
extra
Valore predefinito: None
context
Valore predefinito: None
by_alias
Valore predefinito: None
by_name
Valore predefinito: None

Valori restituiti

Tipo Descrizione

Modello Pydantic convalidato.

Eccezioni

Tipo Descrizione
ValidationError

Se json_data non è una stringa JSON o non è stato possibile convalidare l'oggetto.

model_validate_strings

Convalidare l'oggetto specificato con dati stringa rispetto al modello 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

Parametri

Nome Descrizione
obj
Necessario
Any

Oggetto contenente dati stringa da convalidare.

strict
Necessario

Indica se applicare rigorosamente i tipi.

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

Se ignorare, consentire o impedire dati aggiuntivi durante la convalida del modello. Vedere [valore di configurazione aggiuntivo ][pydantic. ConfigDict.extra] per informazioni dettagliate.

context
Necessario
Any | None

Variabili aggiuntive da passare al validator.

by_alias
Necessario

Indica se usare l'alias del campo durante la convalida rispetto ai dati di input specificati.

by_name
Necessario

Indica se usare il nome del campo durante la convalida rispetto ai dati di input specificati.

Parametri di sole parole chiave

Nome Descrizione
strict
Valore predefinito: None
extra
Valore predefinito: None
context
Valore predefinito: None
by_alias
Valore predefinito: None
by_name
Valore predefinito: None

Valori restituiti

Tipo Descrizione

Modello Pydantic convalidato.

parse_file

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

Parametri

Nome Descrizione
path
Necessario
str | <xref:Path>
content_type
Necessario
str | None
encoding
Necessario
str
proto
Necessario
<xref:DeprecatedParseProtocol> | None
allow_pickle
Necessario

Parametri di sole parole chiave

Nome Descrizione
content_type
Valore predefinito: None
encoding
Valore predefinito: 'utf8'
proto
Valore predefinito: None
allow_pickle
Valore predefinito: False

Valori restituiti

Tipo Descrizione

parse_obj

parse_obj(obj: Any) -> Self

Parametri

Nome Descrizione
obj
Necessario
Any

Valori restituiti

Tipo Descrizione

parse_raw

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

Parametri

Nome Descrizione
b
Necessario
content_type
Necessario
str | None
encoding
Necessario
str
proto
Necessario
<xref:DeprecatedParseProtocol> | None
allow_pickle
Necessario

Parametri di sole parole chiave

Nome Descrizione
content_type
Valore predefinito: None
encoding
Valore predefinito: 'utf8'
proto
Valore predefinito: None
allow_pickle
Valore predefinito: False

Valori restituiti

Tipo Descrizione

schema

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

Parametri

Nome Descrizione
by_alias
Valore predefinito: True
ref_template
str
Valore predefinito: DEFAULT_REF_TEMPLATE

Valori restituiti

Tipo Descrizione

schema_json

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

Parametri

Nome Descrizione
by_alias
Necessario
ref_template
Necessario
str
dumps_kwargs
Necessario
Any

Parametri di sole parole chiave

Nome Descrizione
by_alias
Valore predefinito: True
ref_template
Valore predefinito: DEFAULT_REF_TEMPLATE

Valori restituiti

Tipo Descrizione
str

update_forward_refs

update_forward_refs(**localns: Any) -> None

Parametri

Nome Descrizione
localns
Necessario
Any

Valori restituiti

Tipo Descrizione

validate

validate(value: Any) -> Self

Parametri

Nome Descrizione
value
Necessario
Any

Valori restituiti

Tipo Descrizione

Attributi

model_extra

Ottiene campi aggiuntivi impostati durante la convalida.

Valori restituiti

Tipo Descrizione

Dizionario di campi aggiuntivi o Nessuno se config.extra non è impostato su "allow".

model_fields_set

Restituisce il set di campi impostati in modo esplicito in questa istanza del modello.

Valori restituiti

Tipo Descrizione

Set di stringhe che rappresentano i campi impostati, ovvero che non sono stati compilati da valori predefiniti.

id

Identificatore univoco facoltativo per il messaggio.

field id: str | None = None

role

Ruolo del mittente del messaggio (utente, assistente o sistema).

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

content

Contenuto di testo del messaggio.

field content: str [Required]

timestamp

Timestamp facoltativo al momento della creazione del messaggio.

field timestamp: datetime | None = None