ChatHistoryMessage คลาส

แสดงข้อความเดียวในประวัติการแชท

แบบจําลองนี้ใช้เพื่อจับข้อความแต่ละรายการที่แลกเปลี่ยนระหว่างผู้ใช้และผู้ช่วย AI สําหรับการวิเคราะห์การป้องกันภัยคุกคามและการตรวจสอบการปฏิบัติตามกฎระเบียบ

คอนสตรักเตอร์

pydantic model ChatHistoryMessage

พารามิเตอร์ Keyword-Only

ชื่อ คำอธิบาย
id
Default value: None
role
จำเป็น
content
จำเป็น
timestamp
Default value: None

ตัวอย่าง


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

วิธีการ

__init__

สร้างแบบจําลองใหม่โดยการแยกวิเคราะห์และตรวจสอบความถูกต้องของข้อมูลป้อนเข้าจากอาร์กิวเมนต์คําสําคัญ

Raises [ValidationError][pydantic_core ValidationError] ถ้าไม่สามารถตรวจสอบความถูกต้องของข้อมูลป้อนเข้าเพื่อจัดรูปแบบแบบจําลองที่ถูกต้อง

ตนเอง เป็นตําแหน่งที่ชัดเจนเท่านั้นเพื่ออนุญาตให้ ตนเอง เป็นชื่อเขตข้อมูล

__new__
construct
content_not_empty

ตรวจสอบว่าเนื้อหาไม่ว่างเปล่าหรือเป็นช่องว่างเท่านั้น

copy

แสดงสําเนาของแบบจําลอง

!!! คําเตือน "ไม่สนับสนุน" วิธีนี้ในขณะนี้ไม่ได้รับการสนับสนุน ใช้ model_copy แทน

ถ้าคุณต้องการ รวม หรือไม่ รวม ให้ใช้:

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

dict
from_orm
json
model_construct

สร้างอินสแตนซ์ใหม่ของคลาส แบบจําลอง ด้วยข้อมูลที่มีการตรวจสอบความถูกต้อง

สร้างการตั้งค่าแบบจําลองใหม่ ตามคําบอก และ pydantic_fields_set จากข้อมูลที่เชื่อถือได้หรือตรวจสอบไว้ล่วงหน้า ค่าเริ่มต้นจะปฏิบัติตาม แต่ไม่มีการดําเนินการตรวจสอบความถูกต้องอื่น ๆ

!!! หมายเหตุ model_construct() โดยทั่วไปแล้วจะเป็นไปตามการตั้งค่า model_config.extra ในแบบจําลองที่ระบุ นั่นคือ ถ้า model_config พิเศษ == 'อนุญาต' ค่าที่ส่งผ่านเพิ่มเติมทั้งหมดจะถูกเพิ่มไปยังเขตข้อมูล ตามคําบอก และ pydantic_extra ของอินสแตนซ์แบบจําลอง ถ้า model_config.extra == 'ignore' (ค่าเริ่มต้น) ค่าที่ส่งผ่านพิเศษทั้งหมดจะถูกละเว้น เนื่องจากไม่มีการตรวจสอบความถูกต้องด้วยการเรียกใช้ ไปยัง model_construct() การ มี model_config.extra == 'forbid' จะไม่ส่งผลให้เกิดข้อผิดพลาดหากมีการส่งค่าพิเศษ แต่ค่าเหล่านั้นจะถูกละเว้น

model_copy

!!! model_copy "เอกสารการใช้งาน" ที่เป็นบทคัดย่อ

แสดงสําเนาของแบบจําลอง

!!! หมายเหตุ [dict][object ของอินสแตนซ์ต้นแบบแอตทริบิวต์ dict] ถูกคัดลอก ซึ่งอาจมีผลข้างเคียงที่ไม่คาดคิดหากคุณจัดเก็บสิ่งใดไว้ด้านบนของเขตข้อมูลแบบจําลอง (เช่น ค่าของ [คุณสมบัติที่แคช][functools.cached_property])

model_dump

!!! model_dump "เอกสารการใช้งาน" ที่เป็นนามธรรม

สร้างการแสดงพจนานุกรมของแบบจําลอง โดยอาจระบุเขตข้อมูลที่จะรวมหรือไม่รวม

model_dump_json

!!! model_dump_json "คู่มือการใช้งาน" ที่เป็นบทคัดย่อ

สร้างข้อมูลแสดง JSON ของแบบจําลองโดยใช้วิธีการ to_json ของ Pydantic

model_json_schema

สร้างสคีมา JSON สําหรับคลาสแบบจําลอง

model_parametrized_name

คํานวณชื่อคลาสสําหรับการกําหนดพารามิเตอร์ของคลาสทั่วไป

วิธีนี้อาจถูกแทนที่เพื่อให้ได้รูปแบบการตั้งชื่อแบบกําหนดเองสําหรับ BaseModels ทั่วไป

model_post_init

แทนที่วิธีการนี้เพื่อดําเนินการเตรียมใช้งานเพิ่มเติมหลังจาก init และ model_construct ซึ่งจะเป็นประโยชน์ถ้าคุณต้องการทําการตรวจสอบความถูกต้องบางอย่างที่จําเป็นต้องมีการเตรียมใช้งานแบบจําลองทั้งหมด

model_rebuild

ลองสร้าง Schema แบบ pydantic-core สําหรับแบบจําลองอีกครั้ง

ซึ่งอาจจําเป็นเมื่อคําอธิบายประกอบหนึ่งคือ ForwardRef ซึ่งไม่สามารถแก้ไขได้ระหว่างความพยายามเริ่มต้นในการสร้าง Schema และการสร้างใหม่โดยอัตโนมัติล้มเหลว

model_validate

ตรวจสอบความถูกต้องของอินสแตนซ์แบบจําลอง pydantic

model_validate_json

!!! บทคัดย่อของ "คู่มือการใช้งาน" การแยกวิเคราะห์ JSON

ตรวจสอบความถูกต้องของข้อมูล JSON ที่กําหนดกับแบบจําลอง Pydantic

model_validate_strings

ตรวจสอบวัตถุที่กําหนดด้วยข้อมูลสตริงกับแบบจําลอง Pydantic

parse_file
parse_obj
parse_raw
schema
schema_json
update_forward_refs
validate

__init__

สร้างแบบจําลองใหม่โดยการแยกวิเคราะห์และตรวจสอบความถูกต้องของข้อมูลป้อนเข้าจากอาร์กิวเมนต์คําสําคัญ

Raises [ValidationError][pydantic_core ValidationError] ถ้าไม่สามารถตรวจสอบความถูกต้องของข้อมูลป้อนเข้าเพื่อจัดรูปแบบแบบจําลองที่ถูกต้อง

ตนเอง เป็นตําแหน่งที่ชัดเจนเท่านั้นเพื่ออนุญาตให้ ตนเอง เป็นชื่อเขตข้อมูล

__init__(**data: Any) -> None

พารามิเตอร์

ชื่อ คำอธิบาย
data
จำเป็น
Any

การส่งคืน

พิมพ์ คำอธิบาย

__new__

__new__(**kwargs)

construct

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

พารามิเตอร์

ชื่อ คำอธิบาย
_fields_set
set[str] | None
Default value: None
values
จำเป็น
Any

การส่งคืน

พิมพ์ คำอธิบาย

content_not_empty

ตรวจสอบว่าเนื้อหาไม่ว่างเปล่าหรือเป็นช่องว่างเท่านั้น

validator content_not_empty  »  content

พารามิเตอร์

ชื่อ คำอธิบาย
v
จำเป็น
str

การส่งคืน

พิมพ์ คำอธิบาย
str

copy

แสดงสําเนาของแบบจําลอง

!!! คําเตือน "ไม่สนับสนุน" วิธีนี้ในขณะนี้ไม่ได้รับการสนับสนุน ใช้ model_copy แทน

ถ้าคุณต้องการ รวม หรือไม่ รวม ให้ใช้:

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

copy(*, include: AbstractSetIntStr | MappingIntStrAny | None = None, exclude: AbstractSetIntStr | MappingIntStrAny | None = None, update: Dict[str, Any] | None = None, deep: bool = False) -> Self

พารามิเตอร์

ชื่อ คำอธิบาย
include
จำเป็น
<xref:AbstractSetIntStr> | <xref:MappingIntStrAny> | None

ชุดที่เลือกได้หรือการแมปที่ระบุเขตข้อมูลที่จะรวมไว้ในแบบจําลองที่คัดลอก

exclude
จำเป็น
<xref:AbstractSetIntStr> | <xref:MappingIntStrAny> | None

ชุดที่เลือกได้หรือการแมปที่ระบุเขตข้อมูลที่จะแยกออกในแบบจําลองที่คัดลอก

update
จำเป็น

พจนานุกรมทางเลือกของคู่ค่าเขตข้อมูลเพื่อแทนที่ค่าเขตข้อมูลในแบบจําลองที่คัดลอก

deep
จำเป็น

ถ้าเป็นจริง ค่าของเขตข้อมูลที่เป็นแบบจําลอง Pydantic จะถูกคัดลอกลึก

พารามิเตอร์ Keyword-Only

ชื่อ คำอธิบาย
include
Default value: None
exclude
Default value: None
update
Default value: None
deep
Default value: False

การส่งคืน

พิมพ์ คำอธิบาย

สําเนาของแบบจําลองที่มีเขตข้อมูลที่รวมอยู่ ไม่รวม และอัปเดตตามที่ระบุ

dict

dict(*, include: set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | None = None, exclude: set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | None = None, by_alias: bool = False, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False) -> Dict[str, Any]

พารามิเตอร์

ชื่อ คำอธิบาย
include
จำเป็น
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None
exclude
จำเป็น
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None
by_alias
จำเป็น
exclude_unset
จำเป็น
exclude_defaults
จำเป็น
exclude_none
จำเป็น

พารามิเตอร์ Keyword-Only

ชื่อ คำอธิบาย
include
Default value: None
exclude
Default value: None
by_alias
Default value: False
exclude_unset
Default value: False
exclude_defaults
Default value: False
exclude_none
Default value: False

การส่งคืน

พิมพ์ คำอธิบาย

from_orm

from_orm(obj: Any) -> Self

พารามิเตอร์

ชื่อ คำอธิบาย
obj
จำเป็น
Any

การส่งคืน

พิมพ์ คำอธิบาย

json

json(*, include: set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | None = None, exclude: set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | None = None, by_alias: bool = False, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, encoder: Callable[[Any], Any] | None = PydanticUndefined, models_as_dict: bool = PydanticUndefined, **dumps_kwargs: Any) -> str

พารามิเตอร์

ชื่อ คำอธิบาย
include
จำเป็น
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None
exclude
จำเป็น
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None
by_alias
จำเป็น
exclude_unset
จำเป็น
exclude_defaults
จำเป็น
exclude_none
จำเป็น
encoder
จำเป็น
models_as_dict
จำเป็น
dumps_kwargs
จำเป็น
Any

พารามิเตอร์ Keyword-Only

ชื่อ คำอธิบาย
include
Default value: None
exclude
Default value: None
by_alias
Default value: False
exclude_unset
Default value: False
exclude_defaults
Default value: False
exclude_none
Default value: False
encoder
Default value: PydanticUndefined
models_as_dict
Default value: PydanticUndefined

การส่งคืน

พิมพ์ คำอธิบาย
str

model_construct

สร้างอินสแตนซ์ใหม่ของคลาส แบบจําลอง ด้วยข้อมูลที่มีการตรวจสอบความถูกต้อง

สร้างการตั้งค่าแบบจําลองใหม่ ตามคําบอก และ pydantic_fields_set จากข้อมูลที่เชื่อถือได้หรือตรวจสอบไว้ล่วงหน้า ค่าเริ่มต้นจะปฏิบัติตาม แต่ไม่มีการดําเนินการตรวจสอบความถูกต้องอื่น ๆ

!!! หมายเหตุ model_construct() โดยทั่วไปแล้วจะเป็นไปตามการตั้งค่า model_config.extra ในแบบจําลองที่ระบุ นั่นคือ ถ้า model_config พิเศษ == 'อนุญาต' ค่าที่ส่งผ่านเพิ่มเติมทั้งหมดจะถูกเพิ่มไปยังเขตข้อมูล ตามคําบอก และ pydantic_extra ของอินสแตนซ์แบบจําลอง ถ้า model_config.extra == 'ignore' (ค่าเริ่มต้น) ค่าที่ส่งผ่านพิเศษทั้งหมดจะถูกละเว้น เนื่องจากไม่มีการตรวจสอบความถูกต้องด้วยการเรียกใช้ ไปยัง model_construct() การ มี model_config.extra == 'forbid' จะไม่ส่งผลให้เกิดข้อผิดพลาดหากมีการส่งค่าพิเศษ แต่ค่าเหล่านั้นจะถูกละเว้น

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

พารามิเตอร์

ชื่อ คำอธิบาย
_fields_set
set[str] | None

ชุดของชื่อเขตข้อมูลที่ถูกตั้งค่าไว้อย่างชัดเจนในระหว่างการสร้างอินสแตนซ์ในตอนแรก ถ้ามีจะใช้โดยตรงสําหรับ [model_fields_set][pydantic BaseModel.model_fields_set] แอตทริบิวต์ มิฉะนั้น ชื่อเขตข้อมูลจากอาร์กิวเมนต์ ค่า จะถูกใช้

Default value: None
values
จำเป็น
Any

พจนานุกรมข้อมูลที่เชื่อถือได้หรือตรวจสอบไว้ล่วงหน้า

การส่งคืน

พิมพ์ คำอธิบาย

อินสแตนซ์ใหม่ของคลาส แบบจําลอง ที่มีข้อมูลที่ผ่านการตรวจสอบแล้ว

model_copy

!!! model_copy "เอกสารการใช้งาน" ที่เป็นบทคัดย่อ

แสดงสําเนาของแบบจําลอง

!!! หมายเหตุ [dict][object ของอินสแตนซ์ต้นแบบแอตทริบิวต์ dict] ถูกคัดลอก ซึ่งอาจมีผลข้างเคียงที่ไม่คาดคิดหากคุณจัดเก็บสิ่งใดไว้ด้านบนของเขตข้อมูลแบบจําลอง (เช่น ค่าของ [คุณสมบัติที่แคช][functools.cached_property])

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

พารามิเตอร์

ชื่อ คำอธิบาย
update
จำเป็น

ค่าที่จะเปลี่ยน/เพิ่มในแบบจําลองใหม่ หมายเหตุ: ข้อมูลไม่ผ่านการตรวจสอบความถูกต้องก่อนที่จะสร้างแบบจําลองใหม่ คุณควรเชื่อถือข้อมูลนี้

deep
จำเป็น

ตั้งค่าเป็น True เพื่อทําสําเนาลึกของแบบจําลอง

พารามิเตอร์ Keyword-Only

ชื่อ คำอธิบาย
update
Default value: None
deep
Default value: False

การส่งคืน

พิมพ์ คำอธิบาย

อินสแตนซ์แบบจําลองใหม่

model_dump

!!! model_dump "เอกสารการใช้งาน" ที่เป็นนามธรรม

สร้างการแสดงพจนานุกรมของแบบจําลอง โดยอาจระบุเขตข้อมูลที่จะรวมหรือไม่รวม

model_dump(*, mode: Literal['json', 'python'] | str = 'python', include: set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | None = None, exclude: set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | None = None, context: Any | None = None, by_alias: bool | None = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, exclude_computed_fields: bool = False, round_trip: bool = False, warnings: bool | Literal['none', 'warn', 'error'] = True, fallback: Callable[[Any], Any] | None = None, serialize_as_any: bool = False, polymorphic_serialization: bool | None = None) -> dict[str, Any]

พารามิเตอร์

ชื่อ คำอธิบาย
mode
จำเป็น
Literal['json', 'python'] | str

โหมดที่ to_python ควรทํางาน ถ้าโหมดเป็น 'json' ผลลัพธ์จะมีเฉพาะชนิดอนุกรม JSON เท่านั้น ถ้าโหมดเป็น 'python' ผลลัพธ์อาจมีวัตถุ Python ที่ไม่สามารถซีเรียลไลซ์ JSON ได้

include
จำเป็น
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None

ชุดของเขตข้อมูลที่จะรวมไว้ในผลลัพธ์

exclude
จำเป็น
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None

ชุดของเขตข้อมูลที่จะแยกออกจากผลลัพธ์

context
จำเป็น
Any | None

บริบทเพิ่มเติมเพื่อส่งผ่านไปยังซีเรียลไลเซอร์

by_alias
จำเป็น

จะใช้นามแฝงของฟิลด์ในคีย์พจนานุกรมถ้ากําหนดไว้หรือไม่

exclude_unset
จำเป็น

จะแยกเขตข้อมูลที่ไม่ได้ตั้งค่าอย่างชัดเจนหรือไม่

exclude_defaults
จำเป็น

จะแยกเขตข้อมูลที่ถูกตั้งค่าเป็นค่าเริ่มต้นหรือไม่

exclude_none
จำเป็น

จะแยกเขตข้อมูลที่มีค่าเป็น ไม่มี หรือไม่

exclude_computed_fields
จำเป็น

จะแยกเขตข้อมูลที่คํานวณออกหรือไม่ แม้ว่านี่จะเป็นประโยชน์สําหรับการเดินทางไปกลับ แต่ก็มักจะแนะนําให้ใช้พารามิเตอร์ round_trip เฉพาะแทน

round_trip
จำเป็น

ถ้าเป็นจริง ค่าที่ถ่ายโอนข้อมูลควรถูกต้องเป็นข้อมูลป้อนเข้าสําหรับชนิดที่ไม่ใช่ค่านิจพล เช่น Json[T]

warnings
จำเป็น
bool | Literal['none', 'warn', 'error']

วิธีการจัดการข้อผิดพลาดการซีเรียลไลซ์ False/"none" จะละเว้นข้อผิดพลาดไฟล์บันทึก True/"warn" "error" ทําให้เกิด [PydanticSerializationError][pydantic_core PydanticSerializationError]

fallback
จำเป็น

ฟังก์ชันที่จะเรียกใช้เมื่อพบค่าที่ไม่รู้จัก ถ้าไม่มี[PydanticSerializationError][pydantic_core ข้อผิดพลาด PydanticSerializationError] เกิดขึ้น

serialize_as_any
จำเป็น

จะเรียงชุดเขตข้อมูลด้วยลักษณะการทํางานการเรียงลําดับแบบพิมพ์เป็ดหรือไม่

polymorphic_serialization
จำเป็น

จะใช้แบบจําลองและ dataclass polymorphic serialization สําหรับการเรียกนี้หรือไม่

พารามิเตอร์ Keyword-Only

ชื่อ คำอธิบาย
mode
Default value: 'python'
include
Default value: None
exclude
Default value: None
context
Default value: None
by_alias
Default value: None
exclude_unset
Default value: False
exclude_defaults
Default value: False
exclude_none
Default value: False
exclude_computed_fields
Default value: False
round_trip
Default value: False
warnings
Default value: True
fallback
Default value: None
serialize_as_any
Default value: False
polymorphic_serialization
Default value: None

การส่งคืน

พิมพ์ คำอธิบาย

การแสดงพจนานุกรมของแบบจําลอง

model_dump_json

!!! model_dump_json "คู่มือการใช้งาน" ที่เป็นบทคัดย่อ

สร้างข้อมูลแสดง JSON ของแบบจําลองโดยใช้วิธีการ to_json ของ Pydantic

model_dump_json(*, indent: int | None = None, ensure_ascii: bool = False, include: set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | None = None, exclude: set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, IncEx | bool] | Mapping[str, IncEx | bool] | bool] | None = None, context: Any | None = None, by_alias: bool | None = None, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, exclude_computed_fields: bool = False, round_trip: bool = False, warnings: bool | Literal['none', 'warn', 'error'] = True, fallback: Callable[[Any], Any] | None = None, serialize_as_any: bool = False, polymorphic_serialization: bool | None = None) -> str

พารามิเตอร์

ชื่อ คำอธิบาย
indent
จำเป็น
int | None

การเยื้องเพื่อใช้ในผลลัพธ์ JSON หากไม่มีถูกส่งผ่าน เอาต์พุตจะมีขนาดกะทัดรัด

ensure_ascii
จำเป็น

ถ้า เป็นจริง ผลลัพธ์จะรับประกันว่าอักขระที่ไม่ใช่ ASCII ทั้งหมดจะหลีกได้ ถ้า เท็จ (ค่าเริ่มต้น) อักขระเหล่านี้จะถูกแสดง as-is

include
จำเป็น
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None

เขตข้อมูลที่จะรวมไว้ในเอาต์พุต JSON

exclude
จำเป็น
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None

เขตข้อมูลที่จะแยกออกจากผลลัพธ์ JSON

context
จำเป็น
Any | None

บริบทเพิ่มเติมเพื่อส่งผ่านไปยังซีเรียลไลเซอร์

by_alias
จำเป็น

จะซีเรียลด้วยการใช้นามแฝงของเขตข้อมูลหรือไม่

exclude_unset
จำเป็น

จะแยกเขตข้อมูลที่ไม่ได้ตั้งค่าอย่างชัดเจนหรือไม่

exclude_defaults
จำเป็น

จะแยกเขตข้อมูลที่ถูกตั้งค่าเป็นค่าเริ่มต้นหรือไม่

exclude_none
จำเป็น

จะแยกเขตข้อมูลที่มีค่าเป็น ไม่มี หรือไม่

exclude_computed_fields
จำเป็น

จะแยกเขตข้อมูลที่คํานวณออกหรือไม่ แม้ว่านี่จะเป็นประโยชน์สําหรับการเดินทางไปกลับ แต่ก็มักจะแนะนําให้ใช้พารามิเตอร์ round_trip เฉพาะแทน

round_trip
จำเป็น

ถ้าเป็นจริง ค่าที่ถ่ายโอนข้อมูลควรถูกต้องเป็นข้อมูลป้อนเข้าสําหรับชนิดที่ไม่ใช่ค่านิจพล เช่น Json[T]

warnings
จำเป็น
bool | Literal['none', 'warn', 'error']

วิธีการจัดการข้อผิดพลาดการซีเรียลไลซ์ False/"none" จะละเว้นข้อผิดพลาดไฟล์บันทึก True/"warn" "error" ทําให้เกิด [PydanticSerializationError][pydantic_core PydanticSerializationError]

fallback
จำเป็น

ฟังก์ชันที่จะเรียกใช้เมื่อพบค่าที่ไม่รู้จัก ถ้าไม่มี[PydanticSerializationError][pydantic_core ข้อผิดพลาด PydanticSerializationError] เกิดขึ้น

serialize_as_any
จำเป็น

จะเรียงชุดเขตข้อมูลด้วยลักษณะการทํางานการเรียงลําดับแบบพิมพ์เป็ดหรือไม่

polymorphic_serialization
จำเป็น

จะใช้แบบจําลองและ dataclass polymorphic serialization สําหรับการเรียกนี้หรือไม่

พารามิเตอร์ Keyword-Only

ชื่อ คำอธิบาย
indent
Default value: None
ensure_ascii
Default value: False
include
Default value: None
exclude
Default value: None
context
Default value: None
by_alias
Default value: None
exclude_unset
Default value: False
exclude_defaults
Default value: False
exclude_none
Default value: False
exclude_computed_fields
Default value: False
round_trip
Default value: False
warnings
Default value: True
fallback
Default value: None
serialize_as_any
Default value: False
polymorphic_serialization
Default value: None

การส่งคืน

พิมพ์ คำอธิบาย
str

การแสดงสตริง JSON ของแบบจําลอง

model_json_schema

สร้างสคีมา JSON สําหรับคลาสแบบจําลอง

model_json_schema(by_alias: bool = True, ref_template: str = DEFAULT_REF_TEMPLATE, schema_generator: type[GenerateJsonSchema] = GenerateJsonSchema, mode: Literal['validation', 'serialization'] = 'validation', *, union_format: Literal['any_of', 'primitive_type_array'] = 'any_of') -> dict[str, Any]

พารามิเตอร์

ชื่อ คำอธิบาย
by_alias

จะใช้นามแฝงของแอตทริบิวต์หรือไม่

Default value: True
ref_template
str

เทมเพลตการอ้างอิง

Default value: DEFAULT_REF_TEMPLATE
union_format
จำเป็น
Literal['any_of', 'primitive_type_array']

รูปแบบที่ใช้เมื่อรวม Schema จากยูเนียนเข้าด้วยกัน อาจเป็นหนึ่งใน:

  • 'any_of': ใช้ anyOf

คําสําคัญเพื่อรวม Schema (ค่าเริ่มต้น)

  • 'primitive_type_array': ใช้คําหลัก ประเภท เป็นอาร์เรย์ของสตริงที่ประกอบด้วยการรวมกันแต่ละประเภท ถ้า Schema ใด ๆ ไม่ใช่ชนิดแรกเริ่ม (สตริงบูลีนnullจํานวนเต็มหรือตัวเลข) หรือมีข้อจํากัด/เมตาดาต้า จะกลับไปเป็น any_of
schema_generator
type[<xref:pydantic.json_schema.GenerateJsonSchema>]

เพื่อแทนที่ตรรกะที่ใช้ในการสร้างสคีมา JSON เป็นคลาสย่อยของ GenerateJsonSchema ด้วยการปรับเปลี่ยนที่คุณต้องการ

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

โหมดที่ใช้ในการสร้าง schema

Default value: 'validation'

พารามิเตอร์ Keyword-Only

ชื่อ คำอธิบาย
union_format
Default value: 'any_of'

การส่งคืน

พิมพ์ คำอธิบาย

เค้าร่าง JSON สําหรับคลาสแบบจําลองที่กําหนด

model_parametrized_name

คํานวณชื่อคลาสสําหรับการกําหนดพารามิเตอร์ของคลาสทั่วไป

วิธีนี้อาจถูกแทนที่เพื่อให้ได้รูปแบบการตั้งชื่อแบบกําหนดเองสําหรับ BaseModels ทั่วไป

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

พารามิเตอร์

ชื่อ คำอธิบาย
params
จำเป็น
tuple[type[Any], ...]

ทูเพิลของชนิดของคลาส กําหนดคลาสแบบจําลองทั่วไปที่มีตัวแปรชนิด 2 ตัวและแบบจําลองคอนกรีต Model[str, int], ค่า (str, int) จะถูกส่งผ่านไปยังพารามิเตอร์

การส่งคืน

พิมพ์ คำอธิบาย
str

สตริงที่แทนคลาสใหม่ที่ พารามิเตอร์ จะถูกส่งผ่านไปยัง cls เป็นตัวแปรชนิด

ข้อยกเว้น

พิมพ์ คำอธิบาย

เกิดขึ้นเมื่อพยายามสร้างชื่อที่เป็นรูปธรรมสําหรับแบบจําลองที่ไม่ใช่แบบทั่วไป

model_post_init

แทนที่วิธีการนี้เพื่อดําเนินการเตรียมใช้งานเพิ่มเติมหลังจาก init และ model_construct ซึ่งจะเป็นประโยชน์ถ้าคุณต้องการทําการตรวจสอบความถูกต้องบางอย่างที่จําเป็นต้องมีการเตรียมใช้งานแบบจําลองทั้งหมด

model_post_init(context: Any, /) -> None

พารามิเตอร์ Positional-Only

ชื่อ คำอธิบาย
context
จำเป็น

พารามิเตอร์

ชื่อ คำอธิบาย
context
จำเป็น
Any

การส่งคืน

พิมพ์ คำอธิบาย

model_rebuild

ลองสร้าง Schema แบบ pydantic-core สําหรับแบบจําลองอีกครั้ง

ซึ่งอาจจําเป็นเมื่อคําอธิบายประกอบหนึ่งคือ ForwardRef ซึ่งไม่สามารถแก้ไขได้ระหว่างความพยายามเริ่มต้นในการสร้าง Schema และการสร้างใหม่โดยอัตโนมัติล้มเหลว

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

พารามิเตอร์

ชื่อ คำอธิบาย
force
จำเป็น

ไม่ว่าจะบังคับให้การสร้าง Schema แบบจําลองใหม่เป็นค่าเริ่มต้นเป็น เท็จหรือไม่

raise_errors
จำเป็น

ไม่ว่าจะทําให้เกิดข้อผิดพลาดค่าเริ่มต้นเป็น True หรือไม่

_parent_namespace_depth
จำเป็น
int

ระดับความลึกของ namespace หลัก จะใช้ค่าเริ่มต้นเป็น 2

_types_namespace
จำเป็น
<xref:MappingNamespace> | None

namespace ชนิดมีค่าเริ่มต้นเป็น ไม่มี

พารามิเตอร์ Keyword-Only

ชื่อ คำอธิบาย
force
Default value: False
raise_errors
Default value: True
_parent_namespace_depth
Default value: 2
_types_namespace
Default value: None

การส่งคืน

พิมพ์ คำอธิบาย

ส่งกลับ ไม่มี ถ้า schema เป็น "เสร็จสมบูรณ์" อยู่แล้ว และไม่จําเป็นต้องมีการสร้างใหม่ ถ้าจําเป็นต้องสร้างใหม่ ให้ส่งกลับค่า True ถ้าการสร้างใหม่สําเร็จ มิฉะนั้นจะส่งกลับค่า False

model_validate

ตรวจสอบความถูกต้องของอินสแตนซ์แบบจําลอง pydantic

model_validate(obj: Any, *, strict: bool | None = None, extra: Literal['allow', 'ignore', 'forbid'] | None = None, from_attributes: bool | None = None, context: Any | None = None, by_alias: bool | None = None, by_name: bool | None = None) -> Self

พารามิเตอร์

ชื่อ คำอธิบาย
obj
จำเป็น
Any

วัตถุที่จะตรวจสอบ

strict
จำเป็น

จะบังคับใช้ประเภทอย่างเคร่งครัดหรือไม่

extra
จำเป็น
Literal['allow', 'ignore', 'forbid'] | None

ไม่ว่าจะละเว้น อนุญาต หรือห้ามใช้งานข้อมูลพิเศษระหว่างการตรวจสอบแบบจําลอง ดู [ค่าการกําหนดค่าพิเศษ ][pydantic ConfigDict.extra] สําหรับรายละเอียด

from_attributes
จำเป็น

จะแยกข้อมูลจากแอตทริบิวต์วัตถุหรือไม่

context
จำเป็น
Any | None

บริบทเพิ่มเติมที่จะส่งผ่านไปยังตัวตรวจสอบ

by_alias
จำเป็น

จะใช้นามแฝงของเขตข้อมูลเมื่อตรวจสอบความถูกต้องกับข้อมูลป้อนเข้าที่ให้มาหรือไม่

by_name
จำเป็น

จะใช้ชื่อของเขตข้อมูลเมื่อตรวจสอบกับข้อมูลป้อนเข้าที่ให้มาหรือไม่

พารามิเตอร์ Keyword-Only

ชื่อ คำอธิบาย
strict
Default value: None
extra
Default value: None
from_attributes
Default value: None
context
Default value: None
by_alias
Default value: None
by_name
Default value: None

การส่งคืน

พิมพ์ คำอธิบาย

ตัวอย่างแบบจําลองที่ตรวจสอบความถูกต้องแล้ว

ข้อยกเว้น

พิมพ์ คำอธิบาย
ValidationError

ถ้าไม่สามารถตรวจสอบความถูกต้องของวัตถุได้

model_validate_json

!!! บทคัดย่อของ "คู่มือการใช้งาน" การแยกวิเคราะห์ JSON

ตรวจสอบความถูกต้องของข้อมูล JSON ที่กําหนดกับแบบจําลอง Pydantic

model_validate_json(json_data: str | bytes | bytearray, *, strict: bool | None = None, extra: Literal['allow', 'ignore', 'forbid'] | None = None, context: Any | None = None, by_alias: bool | None = None, by_name: bool | None = None) -> Self

พารามิเตอร์

ชื่อ คำอธิบาย
json_data
จำเป็น

ข้อมูล JSON ที่จะตรวจสอบ

strict
จำเป็น

จะบังคับใช้ประเภทอย่างเคร่งครัดหรือไม่

extra
จำเป็น
Literal['allow', 'ignore', 'forbid'] | None

ไม่ว่าจะละเว้น อนุญาต หรือห้ามใช้งานข้อมูลพิเศษระหว่างการตรวจสอบแบบจําลอง ดู [ค่าการกําหนดค่าพิเศษ ][pydantic ConfigDict.extra] สําหรับรายละเอียด

context
จำเป็น
Any | None

ตัวแปรเพิ่มเติมที่จะส่งผ่านไปยังตัวตรวจสอบ

by_alias
จำเป็น

จะใช้นามแฝงของเขตข้อมูลเมื่อตรวจสอบความถูกต้องกับข้อมูลป้อนเข้าที่ให้มาหรือไม่

by_name
จำเป็น

จะใช้ชื่อของเขตข้อมูลเมื่อตรวจสอบกับข้อมูลป้อนเข้าที่ให้มาหรือไม่

พารามิเตอร์ Keyword-Only

ชื่อ คำอธิบาย
strict
Default value: None
extra
Default value: None
context
Default value: None
by_alias
Default value: None
by_name
Default value: None

การส่งคืน

พิมพ์ คำอธิบาย

แบบจําลอง Pydantic ที่ตรวจสอบแล้ว

ข้อยกเว้น

พิมพ์ คำอธิบาย
ValidationError

ถ้า json_data ไม่ใช่สตริง JSON หรือไม่สามารถตรวจสอบความถูกต้องของวัตถุได้

model_validate_strings

ตรวจสอบวัตถุที่กําหนดด้วยข้อมูลสตริงกับแบบจําลอง Pydantic

model_validate_strings(obj: Any, *, strict: bool | None = None, extra: Literal['allow', 'ignore', 'forbid'] | None = None, context: Any | None = None, by_alias: bool | None = None, by_name: bool | None = None) -> Self

พารามิเตอร์

ชื่อ คำอธิบาย
obj
จำเป็น
Any

วัตถุที่ประกอบด้วยข้อมูลสตริงที่จะตรวจสอบ

strict
จำเป็น

จะบังคับใช้ประเภทอย่างเคร่งครัดหรือไม่

extra
จำเป็น
Literal['allow', 'ignore', 'forbid'] | None

ไม่ว่าจะละเว้น อนุญาต หรือห้ามใช้งานข้อมูลพิเศษระหว่างการตรวจสอบแบบจําลอง ดู [ค่าการกําหนดค่าพิเศษ ][pydantic ConfigDict.extra] สําหรับรายละเอียด

context
จำเป็น
Any | None

ตัวแปรเพิ่มเติมที่จะส่งผ่านไปยังตัวตรวจสอบ

by_alias
จำเป็น

จะใช้นามแฝงของเขตข้อมูลเมื่อตรวจสอบความถูกต้องกับข้อมูลป้อนเข้าที่ให้มาหรือไม่

by_name
จำเป็น

จะใช้ชื่อของเขตข้อมูลเมื่อตรวจสอบกับข้อมูลป้อนเข้าที่ให้มาหรือไม่

พารามิเตอร์ Keyword-Only

ชื่อ คำอธิบาย
strict
Default value: None
extra
Default value: None
context
Default value: None
by_alias
Default value: None
by_name
Default value: None

การส่งคืน

พิมพ์ คำอธิบาย

แบบจําลอง Pydantic ที่ตรวจสอบแล้ว

parse_file

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

พารามิเตอร์

ชื่อ คำอธิบาย
path
จำเป็น
str | <xref:Path>
content_type
จำเป็น
str | None
encoding
จำเป็น
str
proto
จำเป็น
<xref:DeprecatedParseProtocol> | None
allow_pickle
จำเป็น

พารามิเตอร์ Keyword-Only

ชื่อ คำอธิบาย
content_type
Default value: None
encoding
Default value: 'utf8'
proto
Default value: None
allow_pickle
Default value: False

การส่งคืน

พิมพ์ คำอธิบาย

parse_obj

parse_obj(obj: Any) -> Self

พารามิเตอร์

ชื่อ คำอธิบาย
obj
จำเป็น
Any

การส่งคืน

พิมพ์ คำอธิบาย

parse_raw

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

พารามิเตอร์

ชื่อ คำอธิบาย
b
จำเป็น
content_type
จำเป็น
str | None
encoding
จำเป็น
str
proto
จำเป็น
<xref:DeprecatedParseProtocol> | None
allow_pickle
จำเป็น

พารามิเตอร์ Keyword-Only

ชื่อ คำอธิบาย
content_type
Default value: None
encoding
Default value: 'utf8'
proto
Default value: None
allow_pickle
Default value: False

การส่งคืน

พิมพ์ คำอธิบาย

schema

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

พารามิเตอร์

ชื่อ คำอธิบาย
by_alias
Default value: True
ref_template
str
Default value: DEFAULT_REF_TEMPLATE

การส่งคืน

พิมพ์ คำอธิบาย

schema_json

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

พารามิเตอร์

ชื่อ คำอธิบาย
by_alias
จำเป็น
ref_template
จำเป็น
str
dumps_kwargs
จำเป็น
Any

พารามิเตอร์ Keyword-Only

ชื่อ คำอธิบาย
by_alias
Default value: True
ref_template
Default value: DEFAULT_REF_TEMPLATE

การส่งคืน

พิมพ์ คำอธิบาย
str

update_forward_refs

update_forward_refs(**localns: Any) -> None

พารามิเตอร์

ชื่อ คำอธิบาย
localns
จำเป็น
Any

การส่งคืน

พิมพ์ คำอธิบาย

validate

validate(value: Any) -> Self

พารามิเตอร์

ชื่อ คำอธิบาย
value
จำเป็น
Any

การส่งคืน

พิมพ์ คำอธิบาย

แอตทริบิวต์

model_extra

รับเขตข้อมูลที่ตั้งค่าเพิ่มเติมในระหว่างการตรวจสอบความถูกต้อง

การส่งคืน

พิมพ์ คำอธิบาย

พจนานุกรมของเขตข้อมูลเพิ่มเติม หรือ ไม่มี ถ้า config.extra ไม่ได้ถูกตั้งค่าเป็น "อนุญาต"

model_fields_set

แสดงชุดของเขตข้อมูลที่มีการตั้งค่าอย่างชัดเจนในอินสแตนซ์แบบจําลองนี้

การส่งคืน

พิมพ์ คำอธิบาย

ชุดของสตริงที่แสดงถึงเขตข้อมูลที่มีการตั้งค่า เช่น ไม่ได้กรอกข้อมูลจากค่าเริ่มต้น

id

ตัวระบุที่ไม่ซ้ําสําหรับข้อความ

field id: str | None = None

role

บทบาทของผู้ส่งข้อความ (ผู้ใช้ ผู้ช่วย หรือระบบ)

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

content

เนื้อหาข้อความของข้อความ

field content: str [Required]

timestamp

ประทับเวลาที่เลือกได้เมื่อข้อความถูกสร้างขึ้น

field timestamp: datetime | None = None