ChatMessageRequest Classe
Richiedere il payload per l'invio della cronologia delle chat alla piattaforma MCP.
Questo modello rappresenta il corpo completo della richiesta inviato all'endpoint della cronologia delle chat della piattaforma MCP per l'analisi della protezione dalle minacce. Include il contesto della conversazione corrente e i messaggi cronologici.
Il modello usa alias di campo per serializzare in formato JSON camelCase come richiesto dall'API della piattaforma MCP.
Costruttore
pydantic model ChatMessageRequest
Parametri di sole parole chiave
| Nome | Descrizione |
|---|---|
|
conversationId
Necessario
|
|
|
messageId
Necessario
|
|
|
userMessage
Necessario
|
|
|
chatHistory
Necessario
|
|
Esempio
>>> 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'
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 | |
| copy |
Restituisce una copia del modello. !!! avviso "Deprecato" Questo metodo è ora deprecato; usare invece model_copy . Se è necessario includere o escludere, usare:
|
| 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. |
| not_empty |
Verificare che i campi stringa non siano vuoti o solo spazi vuoti. |
| 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
|
|
Valori restituiti
| Tipo | Descrizione |
|---|---|
__new__
__new__(**kwargs)
construct
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
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
|
|
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 |
|---|---|
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 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
|
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
|
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
|
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
|
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
|
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
|
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 |
|---|---|
|
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
|
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).
|
|
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
|
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 |
|---|---|
|
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
|
|
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
|
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
|
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
|
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
|
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
|
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
|
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. |
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
Parametri
| Nome | Descrizione |
|---|---|
|
path
Necessario
|
str | <xref:Path>
|
|
content_type
Necessario
|
|
|
encoding
Necessario
|
|
|
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_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
|
|
|
encoding
Necessario
|
|
|
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_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
|
|
|
dumps_kwargs
Necessario
|
|
Parametri di sole parole chiave
| Nome | Descrizione |
|---|---|
|
by_alias
|
Valore predefinito: True
|
|
ref_template
|
Valore predefinito: DEFAULT_REF_TEMPLATE
|
Valori restituiti
| Tipo | Descrizione |
|---|---|
update_forward_refs
validate
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. |
conversation_id
Identificatore univoco per la conversazione.
field conversation_id: str [Required] (alias 'conversationId')
message_id
Identificatore univoco per il messaggio corrente.
field message_id: str [Required] (alias 'messageId')
user_message
Messaggio utente corrente da elaborare.
field user_message: str [Required] (alias 'userMessage')
chat_history
Elenco dei messaggi precedenti nella conversazione.
field chat_history: List[ChatHistoryMessage] [Required] (alias 'chatHistory')