ChatHistoryMessage 클래스

채팅 기록의 단일 메시지를 나타냅니다.

이 모델은 위협 방지 분석 및 규정 준수 모니터링을 위해 사용자와 AI 도우미 간에 교환되는 개별 메시지를 캡처하는 데 사용됩니다.

생성자

pydantic model ChatHistoryMessage

키워드 전용 매개 변수

Name Description
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__

키워드 인수에서 입력 데이터를 구문 분석하고 유효성을 검사하여 새 모델을 만듭니다.

[ValidationError][pydantic_core 발생합니다. ValidationError]이면 입력 데이터의 유효성을 검사하여 유효한 모델을 만들 수 없습니다.

self 는 명시적으로 위치 전용이므로 자기 를 필드 이름으로 허용합니다.

__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

유효성이 검사된 데이터를 사용하여 Model 클래스의 새 인스턴스를 만듭니다.

새 모델 설정 받아쓰 기를 만들고 신뢰할 수 있거나 미리 검증된 데이터에서 pydantic_fields_set . 기본값은 적용되지만 다른 유효성 검사는 수행되지 않습니다.

!!! 참고 model_construct()는 일반적으로 제공된 모델의 model_config.extra 설정을 준수합니다. 즉, model_config.extra == 'allow'이면 전달된 모든 추가 값이 모델 인스턴스의 받아쓰 기 및 pydantic_extra 필드에 추가됩니다. model_config.extra == 'ignore'(기본값)이면 전달된 모든 추가 값이 무시됩니다. model_construct()를 호출하여 유효성 검사를 수행하지 않으므로 model_config.extra == 'forbid'가 있으면 추가 값이 전달되는 경우 오류가 발생하지 않지만 무시됩니다.

model_copy

!!! 추상 "사용 설명서" model_copy

모델의 복사본을 반환합니다.

!!! 참고 기본 인스턴스의 [dict][개체입니다.dict] 특성이 복사됩니다. 모델 필드 위에 아무것도 저장하면 예기치 않은 부작용이 발생할 수 있습니다(예: [캐시된 속성][functools.cached_property]의 값).

model_dump

!!! 추상 "사용 설명서" model_dump

선택적으로 포함하거나 제외할 필드를 지정하여 모델의 사전 표현을 생성합니다.

model_dump_json

!!! 추상 "사용 설명서" model_dump_json

Pydantic의 to_json 메서드를 사용하여 모델의 JSON 표현을 생성합니다.

model_json_schema

모델 클래스에 대한 JSON 스키마를 생성합니다.

model_parametrized_name

제네릭 클래스의 매개 변수화에 대한 클래스 이름을 계산합니다.

제네릭 BaseModels에 대한 사용자 지정 명명 체계를 달성하기 위해 이 메서드를 재정의할 수 있습니다.

model_post_init

initmodel_construct 후 추가 초기화를 수행하도록 이 메서드를 재정의합니다. 전체 모델을 초기화해야 하는 몇 가지 유효성 검사를 수행하려는 경우에 유용합니다.

model_rebuild

모델에 대한 pydantic-core 스키마를 다시 빌드해 봅니다.

주석 중 하나가 스키마를 처음 빌드하는 동안 확인할 수 없는 ForwardRef인 경우 이 작업이 필요할 수 있으며 자동 다시 작성이 실패합니다.

model_validate

pydantic 모델 인스턴스의 유효성을 검사합니다.

model_validate_json

!!! 추상 "사용 설명서" JSON 구문 분석

Pydantic 모델에 대해 지정된 JSON 데이터의 유효성을 검사합니다.

model_validate_strings

Pydantic 모델에 대해 문자열 데이터를 사용하여 지정된 개체의 유효성을 검사합니다.

parse_file
parse_obj
parse_raw
schema
schema_json
update_forward_refs
validate

__init__

키워드 인수에서 입력 데이터를 구문 분석하고 유효성을 검사하여 새 모델을 만듭니다.

[ValidationError][pydantic_core 발생합니다. ValidationError]이면 입력 데이터의 유효성을 검사하여 유효한 모델을 만들 수 없습니다.

self 는 명시적으로 위치 전용이므로 자기 를 필드 이름으로 허용합니다.

__init__(**data: Any) -> None

매개 변수

Name Description
data
필수
Any

반품

형식 Description

__new__

__new__(**kwargs)

construct

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

매개 변수

Name Description
_fields_set
set[str] | None
Default value: None
values
필수
Any

반품

형식 Description

content_not_empty

콘텐츠가 비어 있지 않거나 공백 전용인지 확인합니다.

validator content_not_empty  »  content

매개 변수

Name Description
v
필수
str

반품

형식 Description
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

매개 변수

Name Description
include
필수
<xref:AbstractSetIntStr> | <xref:MappingIntStrAny> | None

복사된 모델에 포함할 필드를 지정하는 선택적 집합 또는 매핑입니다.

exclude
필수
<xref:AbstractSetIntStr> | <xref:MappingIntStrAny> | None

복사한 모델에서 제외할 필드를 지정하는 선택적 집합 또는 매핑입니다.

update
필수

복사된 모델의 필드 값을 재정의하기 위한 필드 값 쌍의 선택적 사전입니다.

deep
필수

True이면 Pydantic 모델인 필드 값이 딥 복사됩니다.

키워드 전용 매개 변수

Name Description
include
Default value: None
exclude
Default value: None
update
Default value: None
deep
Default value: False

반품

형식 Description

지정된 대로 포함, 제외 및 업데이트된 필드가 있는 모델의 복사본입니다.

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]

매개 변수

Name Description
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
필수

키워드 전용 매개 변수

Name Description
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

반품

형식 Description

from_orm

from_orm(obj: Any) -> Self

매개 변수

Name Description
obj
필수
Any

반품

형식 Description

json

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

매개 변수

Name Description
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

키워드 전용 매개 변수

Name Description
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

반품

형식 Description
str

model_construct

유효성이 검사된 데이터를 사용하여 Model 클래스의 새 인스턴스를 만듭니다.

새 모델 설정 받아쓰 기를 만들고 신뢰할 수 있거나 미리 검증된 데이터에서 pydantic_fields_set . 기본값은 적용되지만 다른 유효성 검사는 수행되지 않습니다.

!!! 참고 model_construct()는 일반적으로 제공된 모델의 model_config.extra 설정을 준수합니다. 즉, model_config.extra == 'allow'이면 전달된 모든 추가 값이 모델 인스턴스의 받아쓰 기 및 pydantic_extra 필드에 추가됩니다. model_config.extra == 'ignore'(기본값)이면 전달된 모든 추가 값이 무시됩니다. model_construct()를 호출하여 유효성 검사를 수행하지 않으므로 model_config.extra == 'forbid'가 있으면 추가 값이 전달되는 경우 오류가 발생하지 않지만 무시됩니다.

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

매개 변수

Name Description
_fields_set
set[str] | None

인스턴스화 중에 원래 명시적으로 설정된 필드 이름 집합입니다. 제공된 경우 [model_fields_set][pydantic에 직접 사용됩니다. BaseModel.model_fields_set] 특성입니다. 그렇지 않으면 인수의 필드 이름이 사용됩니다.

Default value: None
values
필수
Any

신뢰할 수 있거나 미리 유효성이 검사된 데이터 사전입니다.

반품

형식 Description

유효성이 검사된 데이터가 있는 Model 클래스의 새 인스턴스입니다.

model_copy

!!! 추상 "사용 설명서" model_copy

모델의 복사본을 반환합니다.

!!! 참고 기본 인스턴스의 [dict][개체입니다.dict] 특성이 복사됩니다. 모델 필드 위에 아무것도 저장하면 예기치 않은 부작용이 발생할 수 있습니다(예: [캐시된 속성][functools.cached_property]의 값).

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

매개 변수

Name Description
update
필수

새 모델에서 변경/추가할 값입니다. 참고: 새 모델을 만들기 전에 데이터의 유효성이 검사되지 않습니다. 이 데이터를 신뢰해야 합니다.

deep
필수

모델의 전체 복사본을 만들려면 True 로 설정합니다.

키워드 전용 매개 변수

Name Description
update
Default value: None
deep
Default value: False

반품

형식 Description

새 모델 인스턴스입니다.

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]

매개 변수

Name Description
mode
필수
Literal['json', 'python'] | str

to_python 실행해야 하는 모드입니다. 모드가 'json'인 경우 출력에는 JSON 직렬화 가능 형식만 포함됩니다. 모드가 'python'인 경우 출력에 JSON 직렬화할 수 없는 Python 개체가 포함될 수 있습니다.

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

serializer에 전달할 추가 컨텍스트입니다.

by_alias
필수

정의된 경우 사전 키에서 필드의 별칭을 사용할지 여부입니다.

exclude_unset
필수

명시적으로 설정되지 않은 필드를 제외할지 여부입니다.

exclude_defaults
필수

기본값으로 설정된 필드를 제외할지 여부입니다.

exclude_none
필수

값이 None인 필드를 제외할지 여부입니다.

exclude_computed_fields
필수

계산된 필드를 제외할지 여부입니다. 라운드트립에 유용할 수 있지만 일반적으로 전용 round_trip 매개 변수를 대신 사용하는 것이 좋습니다.

round_trip
필수

True이면 덤프된 값은 Json[T]과 같은 비 idempotent 형식에 대한 입력으로 유효해야 합니다.

warnings
필수
bool | Literal['none', 'warn', 'error']

serialization 오류를 처리하는 방법입니다. False/"none"은 무시합니다. True/"warn"은 오류를 기록합니다. "error"는 [PydanticSerializationError][pydantic_core 발생합니다. PydanticSerializationError].

fallback
필수

알 수 없는 값이 발견되면 호출할 함수입니다. 제공되지 않으면 [PydanticSerializationError][pydantic_core. PydanticSerializationError] 오류가 발생합니다.

serialize_as_any
필수

덕 타이핑 serialization 동작으로 필드를 직렬화할지 여부입니다.

polymorphic_serialization
필수

이 호출에 모델 및 데이터 클래스 다형 직렬화를 사용할지 여부입니다.

키워드 전용 매개 변수

Name Description
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

반품

형식 Description

모델의 사전 표현입니다.

model_dump_json

!!! 추상 "사용 설명서" model_dump_json

Pydantic의 to_json 메서드를 사용하여 모델의 JSON 표현을 생성합니다.

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

매개 변수

Name Description
indent
필수
int | None

JSON 출력에 사용할 들여쓰기입니다. None이 전달되면 출력은 압축됩니다.

ensure_ascii
필수

True이면 들어오는 ASCII가 아닌 모든 문자를 이스케이프하도록 출력이 보장됩니다. False(기본값)이면 이러한 문자는 as-is출력됩니다.

include
필수
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None

JSON 출력에 포함할 필드입니다.

exclude
필수
set[int] | set[str] | Mapping[int, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | Mapping[str, set[int] | set[str] | Mapping[int, <xref:IncEx> | bool] | Mapping[str, <xref:IncEx> | bool] | bool] | None

JSON 출력에서 제외할 필드입니다.

context
필수
Any | None

serializer에 전달할 추가 컨텍스트입니다.

by_alias
필수

필드 별칭을 사용하여 직렬화할지 여부입니다.

exclude_unset
필수

명시적으로 설정되지 않은 필드를 제외할지 여부입니다.

exclude_defaults
필수

기본값으로 설정된 필드를 제외할지 여부입니다.

exclude_none
필수

값이 None인 필드를 제외할지 여부입니다.

exclude_computed_fields
필수

계산된 필드를 제외할지 여부입니다. 라운드트립에 유용할 수 있지만 일반적으로 전용 round_trip 매개 변수를 대신 사용하는 것이 좋습니다.

round_trip
필수

True이면 덤프된 값은 Json[T]과 같은 비 idempotent 형식에 대한 입력으로 유효해야 합니다.

warnings
필수
bool | Literal['none', 'warn', 'error']

serialization 오류를 처리하는 방법입니다. False/"none"은 무시합니다. True/"warn"은 오류를 기록합니다. "error"는 [PydanticSerializationError][pydantic_core 발생합니다. PydanticSerializationError].

fallback
필수

알 수 없는 값이 발견되면 호출할 함수입니다. 제공되지 않으면 [PydanticSerializationError][pydantic_core. PydanticSerializationError] 오류가 발생합니다.

serialize_as_any
필수

덕 타이핑 serialization 동작으로 필드를 직렬화할지 여부입니다.

polymorphic_serialization
필수

이 호출에 모델 및 데이터 클래스 다형 직렬화를 사용할지 여부입니다.

키워드 전용 매개 변수

Name Description
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

반품

형식 Description
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]

매개 변수

Name Description
by_alias

특성 별칭을 사용할지 여부입니다.

Default value: True
ref_template
str

참조 템플릿입니다.

Default value: DEFAULT_REF_TEMPLATE
union_format
필수
Literal['any_of', 'primitive_type_array']

공용 구조체의 스키마를 함께 결합할 때 사용할 형식입니다. 다음 중 하나일 수 있습니다.

스키마를 결합하는 키워드입니다(기본값).

  • 'primitive_type_array': 형식 키워드를 조합의 각 형식을 포함하는 문자열 배열로 사용합니다. 스키마가 기본 형식(문자열, 부울, null, 수 또는 숫자)이 아니거나 제약 조건/메타데이터를 포함하는 경우 any_of 대체합니다.
schema_generator
type[<xref:pydantic.json_schema.GenerateJsonSchema>]

원하는 수정을 사용하여 GenerateJsonSchema 의 하위 클래스로 JSON 스키마를 생성하는 데 사용되는 논리를 재정의하려면

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

스키마를 생성할 모드입니다.

Default value: 'validation'

키워드 전용 매개 변수

Name Description
union_format
Default value: 'any_of'

반품

형식 Description

지정된 모델 클래스에 대한 JSON 스키마입니다.

model_parametrized_name

제네릭 클래스의 매개 변수화에 대한 클래스 이름을 계산합니다.

제네릭 BaseModels에 대한 사용자 지정 명명 체계를 달성하기 위해 이 메서드를 재정의할 수 있습니다.

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

매개 변수

Name Description
params
필수
tuple[type[Any], ...]

클래스 형식의 튜플입니다. 형식 변수가 2개인 제네릭 클래스 모델 과 구체적인 모델 Model[str, int]이 있는 경우 값 (str, int)매개 변수에 전달됩니다.

반품

형식 Description
str

매개 변수가 cls에 형식 변수로 전달되는 새 클래스 나타내는 문자열입니다.

예외

형식 Description

제네릭이 아닌 모델에 대한 구체적인 이름을 생성하려고 할 때 발생합니다.

model_post_init

initmodel_construct 후 추가 초기화를 수행하도록 이 메서드를 재정의합니다. 전체 모델을 초기화해야 하는 몇 가지 유효성 검사를 수행하려는 경우에 유용합니다.

model_post_init(context: Any, /) -> None

위치 전용 매개 변수

Name Description
context
필수

매개 변수

Name Description
context
필수
Any

반품

형식 Description

model_rebuild

모델에 대한 pydantic-core 스키마를 다시 빌드해 봅니다.

주석 중 하나가 스키마를 처음 빌드하는 동안 확인할 수 없는 ForwardRef인 경우 이 작업이 필요할 수 있으며 자동 다시 작성이 실패합니다.

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

매개 변수

Name Description
force
필수

모델 스키마를 강제로 다시 빌드할지 여부는 기본적으로 False입니다.

raise_errors
필수

오류를 발생할지 여부는 기본적으로 True입니다.

_parent_namespace_depth
필수
int

부모 네임스페이스의 깊이 수준(기본값은 2)입니다.

_types_namespace
필수
<xref:MappingNamespace> | None

형식 네임스페이스는 기본적으로 None입니다.

키워드 전용 매개 변수

Name Description
force
Default value: False
raise_errors
Default value: True
_parent_namespace_depth
Default value: 2
_types_namespace
Default value: None

반품

형식 Description

스키마가 이미 "완료"되었으며 다시 작성이 필요하지 않은 경우 None 을 반환합니다. 다시 빌드 필요한 경우 다시 빌드에 성공하면 True 를 반환하고, 그렇지 않으면 False를 반환 합니다.

model_validate

pydantic 모델 인스턴스의 유효성을 검사합니다.

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

매개 변수

Name Description
obj
필수
Any

유효성을 검사할 개체입니다.

strict
필수

형식을 엄격하게 적용할지 여부입니다.

extra
필수
Literal['allow', 'ignore', 'forbid'] | None

모델 유효성 검사 중에 추가 데이터를 무시, 허용 또는 금지할지 여부입니다. [추가 구성 값][pydantic]을 참조하세요. 자세한 내용은 ConfigDict.extra]입니다.

from_attributes
필수

개체 특성에서 데이터를 추출할지 여부입니다.

context
필수
Any | None

유효성 검사기에 전달할 추가 컨텍스트입니다.

by_alias
필수

제공된 입력 데이터에 대해 유효성을 검사할 때 필드의 별칭을 사용할지 여부입니다.

by_name
필수

제공된 입력 데이터에 대해 유효성을 검사할 때 필드 이름을 사용할지 여부입니다.

키워드 전용 매개 변수

Name Description
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

반품

형식 Description

유효성이 검사된 모델 인스턴스입니다.

예외

형식 Description
ValidationError

개체의 유효성을 검사할 수 없는 경우

model_validate_json

!!! 추상 "사용 설명서" JSON 구문 분석

Pydantic 모델에 대해 지정된 JSON 데이터의 유효성을 검사합니다.

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

매개 변수

Name Description
json_data
필수

유효성을 검사할 JSON 데이터입니다.

strict
필수

형식을 엄격하게 적용할지 여부입니다.

extra
필수
Literal['allow', 'ignore', 'forbid'] | None

모델 유효성 검사 중에 추가 데이터를 무시, 허용 또는 금지할지 여부입니다. [추가 구성 값][pydantic]을 참조하세요. 자세한 내용은 ConfigDict.extra]입니다.

context
필수
Any | None

유효성 검사기에 전달할 추가 변수입니다.

by_alias
필수

제공된 입력 데이터에 대해 유효성을 검사할 때 필드의 별칭을 사용할지 여부입니다.

by_name
필수

제공된 입력 데이터에 대해 유효성을 검사할 때 필드 이름을 사용할지 여부입니다.

키워드 전용 매개 변수

Name Description
strict
Default value: None
extra
Default value: None
context
Default value: None
by_alias
Default value: None
by_name
Default value: None

반품

형식 Description

유효성이 검사된 Pydantic 모델입니다.

예외

형식 Description
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

매개 변수

Name Description
obj
필수
Any

유효성을 검사할 문자열 데이터가 포함된 개체입니다.

strict
필수

형식을 엄격하게 적용할지 여부입니다.

extra
필수
Literal['allow', 'ignore', 'forbid'] | None

모델 유효성 검사 중에 추가 데이터를 무시, 허용 또는 금지할지 여부입니다. [추가 구성 값][pydantic]을 참조하세요. 자세한 내용은 ConfigDict.extra]입니다.

context
필수
Any | None

유효성 검사기에 전달할 추가 변수입니다.

by_alias
필수

제공된 입력 데이터에 대해 유효성을 검사할 때 필드의 별칭을 사용할지 여부입니다.

by_name
필수

제공된 입력 데이터에 대해 유효성을 검사할 때 필드 이름을 사용할지 여부입니다.

키워드 전용 매개 변수

Name Description
strict
Default value: None
extra
Default value: None
context
Default value: None
by_alias
Default value: None
by_name
Default value: None

반품

형식 Description

유효성이 검사된 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

매개 변수

Name Description
path
필수
str | <xref:Path>
content_type
필수
str | None
encoding
필수
str
proto
필수
<xref:DeprecatedParseProtocol> | None
allow_pickle
필수

키워드 전용 매개 변수

Name Description
content_type
Default value: None
encoding
Default value: 'utf8'
proto
Default value: None
allow_pickle
Default value: False

반품

형식 Description

parse_obj

parse_obj(obj: Any) -> Self

매개 변수

Name Description
obj
필수
Any

반품

형식 Description

parse_raw

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

매개 변수

Name Description
b
필수
content_type
필수
str | None
encoding
필수
str
proto
필수
<xref:DeprecatedParseProtocol> | None
allow_pickle
필수

키워드 전용 매개 변수

Name Description
content_type
Default value: None
encoding
Default value: 'utf8'
proto
Default value: None
allow_pickle
Default value: False

반품

형식 Description

schema

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

매개 변수

Name Description
by_alias
Default value: True
ref_template
str
Default value: DEFAULT_REF_TEMPLATE

반품

형식 Description

schema_json

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

매개 변수

Name Description
by_alias
필수
ref_template
필수
str
dumps_kwargs
필수
Any

키워드 전용 매개 변수

Name Description
by_alias
Default value: True
ref_template
Default value: DEFAULT_REF_TEMPLATE

반품

형식 Description
str

update_forward_refs

update_forward_refs(**localns: Any) -> None

매개 변수

Name Description
localns
필수
Any

반품

형식 Description

validate

validate(value: Any) -> Self

매개 변수

Name Description
value
필수
Any

반품

형식 Description

특성

model_extra

유효성 검사 중에 추가 필드 집합을 가져옵니다.

반품

형식 Description

추가 필드의 사전이거나 config.extra"허용"으로 설정되지 않은 경우 None입니다.

model_fields_set

이 모델 인스턴스에 명시적으로 설정된 필드 집합을 반환합니다.

반품

형식 Description

설정된 필드( 즉, 기본값으로 채워지지 않은 필드를 나타내는 문자열 집합)입니다.

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