| | |
- builtins.int(builtins.object)
-
- gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureThreshold(builtins.int, enum.Enum)
- builtins.str(builtins.object)
-
- gen_ai_hub.orchestration_v2.models.content_filter.ContentFilterProvider(builtins.str, enum.Enum)
- gen_ai_hub.orchestration_v2.models.data_masking.DataMaskingProviderName(builtins.str, enum.Enum)
- gen_ai_hub.orchestration_v2.models.data_masking.MaskingMethod(builtins.str, enum.Enum)
- gen_ai_hub.orchestration_v2.models.data_masking.ProfileEntity(builtins.str, enum.Enum)
- gen_ai_hub.orchestration_v2.models.document_grounding.DataRepositoryType(builtins.str, enum.Enum)
- gen_ai_hub.orchestration_v2.models.document_grounding.GroundingType(builtins.str, enum.Enum)
- gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsEncodingFormat(builtins.str, enum.Enum)
- gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsInputType(builtins.str, enum.Enum)
- enum.Enum(builtins.object)
-
- gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureThreshold(builtins.int, enum.Enum)
- gen_ai_hub.orchestration_v2.models.content_filter.ContentFilterProvider(builtins.str, enum.Enum)
- gen_ai_hub.orchestration_v2.models.data_masking.DataMaskingProviderName(builtins.str, enum.Enum)
- gen_ai_hub.orchestration_v2.models.data_masking.MaskingMethod(builtins.str, enum.Enum)
- gen_ai_hub.orchestration_v2.models.data_masking.ProfileEntity(builtins.str, enum.Enum)
- gen_ai_hub.orchestration_v2.models.document_grounding.DataRepositoryType(builtins.str, enum.Enum)
- gen_ai_hub.orchestration_v2.models.document_grounding.GroundingType(builtins.str, enum.Enum)
- gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsEncodingFormat(builtins.str, enum.Enum)
- gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsInputType(builtins.str, enum.Enum)
- gen_ai_hub.orchestration_v2.models.multimodal_items.ImageDetailLevel
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel(pydantic.main.BaseModel, abc.ABC)
-
- gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureContentFilter
-
- gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureContentSafetyInput
- gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureContentSafetyOutput
- gen_ai_hub.orchestration_v2.models.config.CompletionRequestConfigurationReferenceByIdConfigRef
- gen_ai_hub.orchestration_v2.models.config.CompletionRequestConfigurationReferenceByNameScenarioVersionConfigRef
- gen_ai_hub.orchestration_v2.models.config.ModuleConfig
- gen_ai_hub.orchestration_v2.models.config.OrchestrationConfig
- gen_ai_hub.orchestration_v2.models.content_filter.ContentFilter
-
- gen_ai_hub.orchestration_v2.models.content_filter.AzureContentSafetyInputFilterConfig
- gen_ai_hub.orchestration_v2.models.content_filter.AzureContentSafetyOutputFilterConfig
- gen_ai_hub.orchestration_v2.models.content_filter.LlamaGuard38bFilterConfig
- gen_ai_hub.orchestration_v2.models.content_filter.FilteringStreamOptions
- gen_ai_hub.orchestration_v2.models.content_filtering.FilteringModuleConfig
- gen_ai_hub.orchestration_v2.models.content_filtering.InputFiltering
- gen_ai_hub.orchestration_v2.models.content_filtering.OutputFiltering
- gen_ai_hub.orchestration_v2.models.data_masking.DPICustomEntity
- gen_ai_hub.orchestration_v2.models.data_masking.DPIMethodConstant
- gen_ai_hub.orchestration_v2.models.data_masking.DPIMethodFabricatedData
- gen_ai_hub.orchestration_v2.models.data_masking.DPIStandardEntity
- gen_ai_hub.orchestration_v2.models.data_masking.MaskGroundingInput
- gen_ai_hub.orchestration_v2.models.data_masking.MaskingModuleConfig
- gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig
- gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingConfig
- gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingFilter
- gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingPlaceholders
- gen_ai_hub.orchestration_v2.models.document_grounding.GroundingModuleConfig
- gen_ai_hub.orchestration_v2.models.document_grounding.GroundingSearchConfig
- gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair
-
- gen_ai_hub.orchestration_v2.models.document_grounding.DocumentMetadataKeyValueListPairs
- gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingResult
- gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsInput
- gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelConfig
- gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelDetails
- gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelParams
- gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModuleConfigs
- gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsOrchestrationConfig
- gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsPostResponse
- gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsRequest
- gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsResponse
- gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsUsage
- gen_ai_hub.orchestration_v2.models.llama_guard_3_filter.LlamaGuard38bFilter
- gen_ai_hub.orchestration_v2.models.llm_model_details.LLMModelDetails
- gen_ai_hub.orchestration_v2.models.message.AssistantMessage
- gen_ai_hub.orchestration_v2.models.message.DeveloperChatMessage
- gen_ai_hub.orchestration_v2.models.message.FunctionCall
-
- gen_ai_hub.orchestration_v2.models.response.StreamFunctionObject
- gen_ai_hub.orchestration_v2.models.message.MessageToolCall
- gen_ai_hub.orchestration_v2.models.message.ResponseChatMessage
- gen_ai_hub.orchestration_v2.models.message.SystemMessage
- gen_ai_hub.orchestration_v2.models.message.ToolChatMessage
- gen_ai_hub.orchestration_v2.models.message.UserMessage
- gen_ai_hub.orchestration_v2.models.multimodal_items.ImageItem
- gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart
- gen_ai_hub.orchestration_v2.models.multimodal_items.ImageUrl
- gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart
- gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob
- gen_ai_hub.orchestration_v2.models.response.ChoiceLogprobs
- gen_ai_hub.orchestration_v2.models.response.Citation
- gen_ai_hub.orchestration_v2.models.response.CompletionPostResponse
-
- gen_ai_hub.orchestration_v2.models.response.OrchestrationResponseWithRetries
- gen_ai_hub.orchestration_v2.models.response.CompletionTokensDetails
- gen_ai_hub.orchestration_v2.models.response.ErrorResponse
- gen_ai_hub.orchestration_v2.models.response.ErrorResponseStreaming
- gen_ai_hub.orchestration_v2.models.response.GenericModuleResult
- gen_ai_hub.orchestration_v2.models.response.LLMChoice
- gen_ai_hub.orchestration_v2.models.response.LLMModuleResult
-
- gen_ai_hub.orchestration_v2.models.response.StreamLLMModuleResult
- gen_ai_hub.orchestration_v2.models.response.ModuleResults
-
- gen_ai_hub.orchestration_v2.models.response.StreamModuleResults
- gen_ai_hub.orchestration_v2.models.response.PromptTokensDetails
- gen_ai_hub.orchestration_v2.models.response.SAPAPIError
- gen_ai_hub.orchestration_v2.models.response.SAPAPIErrorStreaming
- gen_ai_hub.orchestration_v2.models.response.StreamCompletionPostResponse
- gen_ai_hub.orchestration_v2.models.response.StreamDelta
- gen_ai_hub.orchestration_v2.models.response.StreamLLMChoice
- gen_ai_hub.orchestration_v2.models.response.StreamToolCall
- gen_ai_hub.orchestration_v2.models.response.TokenUsage
- gen_ai_hub.orchestration_v2.models.response.TopLogprob
- gen_ai_hub.orchestration_v2.models.response_format.JSONResponseSchema
- gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatJsonObject
- gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatJsonSchema
- gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatText
- gen_ai_hub.orchestration_v2.models.streaming.GlobalStreamOptions
- gen_ai_hub.orchestration_v2.models.template.PromptTemplatingModuleConfig
- gen_ai_hub.orchestration_v2.models.template.Template
- gen_ai_hub.orchestration_v2.models.template_ref.TemplateRef
- gen_ai_hub.orchestration_v2.models.template_ref.TemplateRefByID
- gen_ai_hub.orchestration_v2.models.template_ref.TemplateRefByScenarioNameVersion
- gen_ai_hub.orchestration_v2.models.tools.ChatCompletionTool
-
- gen_ai_hub.orchestration_v2.models.tools.FunctionTool
- gen_ai_hub.orchestration_v2.models.tools.FunctionObject
- gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslation
-
- gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslationInput
- gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslationOutput
- gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslationApplyToSelector
- gen_ai_hub.orchestration_v2.models.translation.TranslationConfig
-
- gen_ai_hub.orchestration_v2.models.translation.InputTranslationConfig
- gen_ai_hub.orchestration_v2.models.translation.OutputTranslationConfig
- gen_ai_hub.orchestration_v2.models.translation.TranslationModuleConfig
class AssistantMessage(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
AssistantMessage(*, role: gen_ai_hub.orchestration_v2.models.message.Role = <Role.ASSISTANT: 'assistant'>, content: Union[str, List[gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart], NoneType] = None, refusal: Optional[str] = None, tool_calls: Optional[List[gen_ai_hub.orchestration_v2.models.message.MessageToolCall]] = None) -> None
Represents an assistant message in a prompt or conversation template.
Assistant messages typically contain responses or outputs from the AI model.
Args:
role: The role of the entity sending the message.
content: The text content of the assistant message.
refusal: A string indicating refusal reason.
tool_calls: A list of tool call objects. |
| |
- Method resolution order:
- AssistantMessage
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'content': typing.Union[str, typing.List[gen_ai_hub.orchest...n_v2.models.multimodal_items.TextPart], NoneType], 'refusal': typing.Optional[str], 'role': <enum 'Role'>, 'tool_calls': typing.Optional[typing.List[gen_ai_hub.orchestration_v2.models.message.MessageToolCall]]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.message.AssistantMessage'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'AssistantMessage'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...chestration_v2.models.message.AssistantMessage'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.message.AssistantMessage:140540952624880', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'content': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'refusal': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'role': {'metadata': {}, 'schema': {'default': <Role.ASSISTANT: 'assistant'>, 'schema': {'cls': <enum 'Role'>, 'members': [...], 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.message.Role:140540952622880', 'sub_type': 'str', 'type': 'enum'}, 'type': 'default'}, 'type': 'model-field'}, 'tool_calls': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'AssistantMessage', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'content': FieldInfo(annotation=Union[str, List[TextPart], NoneType], required=False, default=None), 'refusal': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'role': FieldInfo(annotation=Role, required=False, default=<Role.ASSISTANT: 'assistant'>), 'tool_calls': FieldInfo(annotation=Union[List[MessageToolCall], NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="AssistantMessage", valida...e",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, role: gen_ai_hub.orchestration_v2...models.message.MessageToolCall]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'content': FieldInfo(annotation=Union[str, List[TextPart], NoneType], required=False, default=None), 'refusal': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'role': FieldInfo(annotation=Role, required=False, default=<Role.ASSISTANT: 'assistant'>), 'tool_calls': FieldInfo(annotation=Union[List[MessageToolCall], NoneType], required=False, default=None)}
|
class AzureContentFilter(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
AzureContentFilter(*, hate: Union[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureThreshold, Literal[0, 2, 4, 6], NoneType] = None, sexual: Union[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureThreshold, Literal[0, 2, 4, 6], NoneType] = None, violence: Union[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureThreshold, Literal[0, 2, 4, 6], NoneType] = None, self_harm: Union[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureThreshold, Literal[0, 2, 4, 6], NoneType] = None) -> None
Specific filter configuration for Azure Content Safety.
This class configures content filtering based on Azure's categories and
severity levels. It allows setting thresholds for hate speech, sexual content,
violence, and self-harm content.
Args:
hate: Threshold for hate speech content.
sexual: Threshold for sexual content.
violence: Threshold for violent content.
self_harm: Threshold for self-harm content.
prompt_shield: A flag to use prompt shield |
| |
- Method resolution order:
- AzureContentFilter
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'hate': typing.Union[gen_ai_hub.orchestration_v2.models....eThreshold, typing.Literal[0, 2, 4, 6], NoneType], 'self_harm': typing.Union[gen_ai_hub.orchestration_v2.models....eThreshold, typing.Literal[0, 2, 4, 6], NoneType], 'sexual': typing.Union[gen_ai_hub.orchestration_v2.models....eThreshold, typing.Literal[0, 2, 4, 6], NoneType], 'violence': typing.Union[gen_ai_hub.orchestration_v2.models....eThreshold, typing.Literal[0, 2, 4, 6], NoneType]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureContentFilter'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'AzureContentFilter'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...models.azure_content_filter.AzureContentFilter'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureContentFilter:140540952485936', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'hate': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'self_harm': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'sexual': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'violence': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'AzureContentFilter', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'hate': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'self_harm': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'sexual': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'violence': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="AzureContentFilter", vali...r",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, hate: Union[gen_ai_hub.orchestrat..., Literal[0, 2, 4, 6], NoneType] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'hate': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'self_harm': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'sexual': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'violence': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None)}
|
class AzureContentSafetyInput(AzureContentFilter) |
| |
AzureContentSafetyInput(*, hate: Union[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureThreshold, Literal[0, 2, 4, 6], NoneType] = None, sexual: Union[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureThreshold, Literal[0, 2, 4, 6], NoneType] = None, violence: Union[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureThreshold, Literal[0, 2, 4, 6], NoneType] = None, self_harm: Union[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureThreshold, Literal[0, 2, 4, 6], NoneType] = None, prompt_shield: Optional[bool] = False) -> None
Filter configuration for Azure Content Safety Input
Args:
hate: Threshold for hate speech content.
sexual: Threshold for sexual content.
violence: Threshold for violent content.
self_harm: Threshold for self-harm content.
prompt_shield: A flag to use prompt shield |
| |
- Method resolution order:
- AzureContentSafetyInput
- AzureContentFilter
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'prompt_shield': typing.Optional[bool]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureContentSafetyInput'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'AzureContentSafetyInput'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...s.azure_content_filter.AzureContentSafetyInput'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureContentSafetyInput:140540952492000', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'hate': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'prompt_shield': {'metadata': {}, 'schema': {'default': False, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'self_harm': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'sexual': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'violence': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'AzureContentSafetyInput', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'hate': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'prompt_shield': FieldInfo(annotation=Union[bool, NoneType], required=False, default=False), 'self_harm': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'sexual': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'violence': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="AzureContentSafetyInput",...t",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, hate: Union[gen_ai_hub.orchestrat..., prompt_shield: Optional[bool] = False) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'hate': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'prompt_shield': FieldInfo(annotation=Union[bool, NoneType], required=False, default=False), 'self_harm': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'sexual': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'violence': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None)}
|
class AzureContentSafetyInputFilterConfig(ContentFilter) |
| |
AzureContentSafetyInputFilterConfig(*, type: gen_ai_hub.orchestration_v2.models.content_filter.ContentFilterProvider = <ContentFilterProvider.AZURE: 'azure_content_safety'>, config: Optional[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureContentSafetyInput] = None) -> None
|
| |
- Method resolution order:
- AzureContentSafetyInputFilterConfig
- ContentFilter
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'config': typing.Optional[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureContentSafetyInput], 'type_': <enum 'ContentFilterProvider'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.content_filter.AzureContentSafetyInputFilterConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'AzureContentSafetyInputFilterConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ent_filter.AzureContentSafetyInputFilterConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.content_filte...ureContentSafetyInputFilterConfig:140540954122288', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'config': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {'default': <ContentFilterProvider.AZURE: 'azure_content_safety'>, 'schema': {'cls': <enum 'ContentFilterProvider'>, 'members': [...], 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.content_filter.ContentFilterProvider:140540954147472', 'sub_type': 'str', 'type': 'enum'}, 'type': 'default'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'AzureContentSafetyInputFilterConfig', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'config': FieldInfo(annotation=Union[AzureContentSafetyInput, NoneType], required=False, default=None), 'type_': FieldInfo(annotation=ContentFilterProvider, requ...content_safety'>, alias='type', alias_priority=2)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="AzureContentSafetyInputFi...g",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, type: gen_ai_hub.orchestration_v2..._filter.AzureContentSafetyInput] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'config': FieldInfo(annotation=Union[AzureContentSafetyInput, NoneType], required=False, default=None), 'type_': FieldInfo(annotation=ContentFilterProvider, requ...content_safety'>, alias='type', alias_priority=2)}
|
class AzureContentSafetyOutput(AzureContentFilter) |
| |
AzureContentSafetyOutput(*, hate: Union[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureThreshold, Literal[0, 2, 4, 6], NoneType] = None, sexual: Union[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureThreshold, Literal[0, 2, 4, 6], NoneType] = None, violence: Union[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureThreshold, Literal[0, 2, 4, 6], NoneType] = None, self_harm: Union[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureThreshold, Literal[0, 2, 4, 6], NoneType] = None, protected_material_code: Optional[bool] = False) -> None
Filter configuration for Azure Content Safety Output
Args:
hate: Threshold for hate speech content.
sexual: Threshold for sexual content.
violence: Threshold for violent content.
self_harm: Threshold for self-harm content.
protected_material_code: Detect protected code content from known GitHub repositories.
The scan includes software libraries, source code, algorithms,
and other proprietary programming content. |
| |
- Method resolution order:
- AzureContentSafetyOutput
- AzureContentFilter
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'protected_material_code': typing.Optional[bool]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureContentSafetyOutput'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'AzureContentSafetyOutput'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche....azure_content_filter.AzureContentSafetyOutput'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureContentSafetyOutput:140540954121264', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'hate': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'protected_material_code': {'metadata': {}, 'schema': {'default': False, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'self_harm': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'sexual': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'violence': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'AzureContentSafetyOutput', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'hate': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'protected_material_code': FieldInfo(annotation=Union[bool, NoneType], required=False, default=False), 'self_harm': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'sexual': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'violence': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="AzureContentSafetyOutput"...t",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, hate: Union[gen_ai_hub.orchestrat...d_material_code: Optional[bool] = False) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'hate': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'protected_material_code': FieldInfo(annotation=Union[bool, NoneType], required=False, default=False), 'self_harm': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'sexual': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None), 'violence': FieldInfo(annotation=Union[AzureThreshold, Liter..., 4, 6], NoneType], required=False, default=None)}
|
class AzureContentSafetyOutputFilterConfig(ContentFilter) |
| |
AzureContentSafetyOutputFilterConfig(*, type: gen_ai_hub.orchestration_v2.models.content_filter.ContentFilterProvider = <ContentFilterProvider.AZURE: 'azure_content_safety'>, config: Optional[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureContentSafetyOutput] = None) -> None
|
| |
- Method resolution order:
- AzureContentSafetyOutputFilterConfig
- ContentFilter
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'config': typing.Optional[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureContentSafetyOutput], 'type_': <enum 'ContentFilterProvider'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.content_filter.AzureContentSafetyOutputFilterConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'AzureContentSafetyOutputFilterConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...nt_filter.AzureContentSafetyOutputFilterConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.content_filte...reContentSafetyOutputFilterConfig:140540954134352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'config': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {'default': <ContentFilterProvider.AZURE: 'azure_content_safety'>, 'schema': {'cls': <enum 'ContentFilterProvider'>, 'members': [...], 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.content_filter.ContentFilterProvider:140540954147472', 'sub_type': 'str', 'type': 'enum'}, 'type': 'default'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'AzureContentSafetyOutputFilterConfig', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'config': FieldInfo(annotation=Union[AzureContentSafetyOutput, NoneType], required=False, default=None), 'type_': FieldInfo(annotation=ContentFilterProvider, requ...content_safety'>, alias='type', alias_priority=2)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="AzureContentSafetyOutputF...g",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, type: gen_ai_hub.orchestration_v2...filter.AzureContentSafetyOutput] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'config': FieldInfo(annotation=Union[AzureContentSafetyOutput, NoneType], required=False, default=None), 'type_': FieldInfo(annotation=ContentFilterProvider, requ...content_safety'>, alias='type', alias_priority=2)}
|
class AzureThreshold(builtins.int, enum.Enum) |
| |
AzureThreshold(value, names=None, *, module=None, qualname=None, type=None, start=1)
Enumerates the threshold levels for the Azure Content Safety service.
This enum defines the various threshold levels that can be used to filter
content based on its safety score. Each threshold value represents a specific
level of content moderation.
Values:
ALLOW_SAFE: Allows only Safe content.
ALLOW_SAFE_LOW: Allows Safe and Low content.
ALLOW_SAFE_LOW_MEDIUM: Allows Safe, Low, and Medium content.
ALLOW_ALL: Allows all content (Safe, Low, Medium, and High). |
| |
- Method resolution order:
- AzureThreshold
- builtins.int
- enum.Enum
- builtins.object
Data and other attributes defined here:
- ALLOW_ALL = <AzureThreshold.ALLOW_ALL: 6>
- ALLOW_SAFE = <AzureThreshold.ALLOW_SAFE: 0>
- ALLOW_SAFE_LOW = <AzureThreshold.ALLOW_SAFE_LOW: 2>
- ALLOW_SAFE_LOW_MEDIUM = <AzureThreshold.ALLOW_SAFE_LOW_MEDIUM: 4>
Data descriptors inherited from enum.Enum:
- name
- The name of the Enum member.
- value
- The value of the Enum member.
Readonly properties inherited from enum.EnumMeta:
- __members__
- Returns a mapping of member name->value.
This mapping lists all enum members, including aliases. Note that this
is a read-only view of the internal mapping.
|
class ChatCompletionTokenLogprob(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
ChatCompletionTokenLogprob(*, token: str, logprob: float, bytes: Optional[List[int]] = None, top_logprobs: Optional[List[gen_ai_hub.orchestration_v2.models.response.TopLogprob]] = None) -> None
Represents a token in the message content along with its
log probability and alternative top log probabilities.
Attributes:
token: The token.
logprob: The log probability of this token.
bytes: UTF-8 bytes of the token, if applicable.
top_logprobs: List of most likely tokens and their log probabilities
at this token position. |
| |
- Method resolution order:
- ChatCompletionTokenLogprob
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'bytes': typing.Optional[typing.List[int]], 'logprob': <class 'float'>, 'token': <class 'str'>, 'top_logprobs': typing.Optional[typing.List[gen_ai_hub.orchestration_v2.models.response.TopLogprob]]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChatCompletionTokenLogprob'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.response.ChatCompletionTokenLogprob'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob:140540951628352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'bytes': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'logprob': {'metadata': {}, 'schema': {'type': 'float'}, 'type': 'model-field'}, 'token': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'top_logprobs': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'ChatCompletionTokenLogprob', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'bytes': FieldInfo(annotation=Union[List[int], NoneType], required=False, default=None), 'logprob': FieldInfo(annotation=float, required=True), 'token': FieldInfo(annotation=str, required=True), 'top_logprobs': FieldInfo(annotation=Union[List[TopLogprob], NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="ChatCompletionTokenLogpro...b",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, token: str, logprob: float, bytes..._v2.models.response.TopLogprob]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'bytes': FieldInfo(annotation=Union[List[int], NoneType], required=False, default=None), 'logprob': FieldInfo(annotation=float, required=True), 'token': FieldInfo(annotation=str, required=True), 'top_logprobs': FieldInfo(annotation=Union[List[TopLogprob], NoneType], required=False, default=None)}
|
class ChatCompletionTool(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
ChatCompletionTool(*, type: Literal['function'] = 'function') -> None
Base class for all chat completion tools.
Args:
type (Literal["function"]): The type of the tool. Currently, only function is supported. |
| |
- Method resolution order:
- ChatCompletionTool
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'type_': typing.Literal['function']}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.tools.ChatCompletionTool'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChatCompletionTool'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...chestration_v2.models.tools.ChatCompletionTool'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.tools.ChatCompletionTool:140540952279968', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'type_': {'metadata': {'pydantic_js_updates': {'description': 'The type of the tool. Currently, only function is supported.'}}, 'schema': {'default': 'function', 'schema': {'expected': [...], 'type': 'literal'}, 'type': 'default'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ChatCompletionTool', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'type_': FieldInfo(annotation=Literal['function'], requir...he tool. Currently, only function is supported.')}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="ChatCompletionTool", vali...l",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, type: Literal['function'] = 'function') -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'type_': FieldInfo(annotation=Literal['function'], requir...he tool. Currently, only function is supported.')}
|
class ChoiceLogprobs(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
ChoiceLogprobs(*, content: Optional[List[gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob]] = None, refusal: Optional[List[gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob]] = None) -> None
Log probabilities for the choice. |
| |
- Method resolution order:
- ChoiceLogprobs
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'content': typing.Optional[typing.List[gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob]], 'refusal': typing.Optional[typing.List[gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob]]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChatCompletionTokenLogprob'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.response.ChatCompletionTokenLogprob'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob:140540951628352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'bytes': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'logprob': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'token': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'top_logprobs': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'ChatCompletionTokenLogprob', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ChoiceLogprobs'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChoiceLogprobs'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...rchestration_v2.models.response.ChoiceLogprobs'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ChoiceLogprobs:140540951502880', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'content': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'refusal': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'ChoiceLogprobs', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'content': FieldInfo(annotation=Union[List[ChatCompletionTo...ogprob], NoneType], required=False, default=None), 'refusal': FieldInfo(annotation=Union[List[ChatCompletionTo...ogprob], NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d4edc60) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="ChoiceLogprobs", validato...ator: Py(0x7fd23d4edbd0) })], cache_strings=True)
- __signature__ = <Signature (*, content: Optional[List[gen_ai_hub...nse.ChatCompletionTokenLogprob]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'content': FieldInfo(annotation=Union[List[ChatCompletionTo...ogprob], NoneType], required=False, default=None), 'refusal': FieldInfo(annotation=Union[List[ChatCompletionTo...ogprob], NoneType], required=False, default=None)}
|
class Citation(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
Citation(*, ref_id: Optional[int] = None, title: str, url: str, start_index: Optional[int] = None, end_index: Optional[int] = None) -> None
Represents a citation with related metadata.
Attributes:
ref_id (Optional[int]): Unique identifier for inline citation
title (str): The title of the citation.
url (str): The URL of the citation.
start_index (Optional[int]): The starting index position of the citation
in a referenced text.
end_index (Optional[int]): The ending index position of the citation in
a referenced text. |
| |
- Method resolution order:
- Citation
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'end_index': typing.Optional[int], 'ref_id': typing.Optional[int], 'start_index': typing.Optional[int], 'title': <class 'str'>, 'url': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.Citation'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'Citation'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._hub.orchestration_v2.models.response.Citation'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.Citation:140540951510960', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'end_index': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'ref_id': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'start_index': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'title': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'url': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'Citation', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'end_index': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'ref_id': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'start_index': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'title': FieldInfo(annotation=str, required=True), 'url': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="Citation", validator=Mode...n",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, ref_id: Optional[int] = None, tit...= None, end_index: Optional[int] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'end_index': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'ref_id': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'start_index': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'title': FieldInfo(annotation=str, required=True), 'url': FieldInfo(annotation=str, required=True)}
|
class CompletionPostResponse(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
CompletionPostResponse(*, request_id: str, intermediate_results: gen_ai_hub.orchestration_v2.models.response.ModuleResults, final_result: gen_ai_hub.orchestration_v2.models.response.LLMModuleResult, intermediate_failures: Optional[List[gen_ai_hub.orchestration_v2.models.response.SAPAPIError]] = None) -> None
Represents the response for a completion post request.
Attributes:
request_id (str): Unique identifier for the completion request.
intermediate_results (ModuleResults): Results from various modules executed during the processing.
final_result (LLMModuleResult): Output from LLM. Follows the OpenAI spec. |
| |
- Method resolution order:
- CompletionPostResponse
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'final_result': <class 'gen_ai_hub.orchestration_v2.models.response.LLMModuleResult'>, 'intermediate_failures': typing.Optional[typing.List[gen_ai_hub.orchestration_v2.models.response.SAPAPIError]], 'intermediate_results': <class 'gen_ai_hub.orchestration_v2.models.response.ModuleResults'>, 'request_id': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.response.GenericModuleResult'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'GenericModuleResult'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tration_v2.models.response.GenericModuleResult'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.GenericModuleResult:140540951626320', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'message': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'GenericModuleResult', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TextPart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...hestration_v2.models.multimodal_items.TextPart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart:140540952612800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'text': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'TextPart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ImagePart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.multimodal_items.ImagePart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart:140540952617824', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'image_url': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ImagePart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChatCompletionTokenLogprob'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.response.ChatCompletionTokenLogprob'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob:140540951628352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'bytes': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'logprob': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'token': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'top_logprobs': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'ChatCompletionTokenLogprob', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.CompletionPostResponse'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'CompletionPostResponse'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tion_v2.models.response.CompletionPostResponse'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.CompletionPostResponse:140540951531120', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'final_result': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.LLMModuleResult'>, 'config': {...}, 'custom_init': False, 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.LLMModuleResult:140540951511984', 'root_model': False, 'schema': {...}, 'type': 'model'}, 'type': 'model-field'}, 'intermediate_failures': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'intermediate_results': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ModuleResults'>, 'config': {...}, 'custom_init': False, 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ModuleResults:140540951514976', 'root_model': False, 'schema': {...}, 'type': 'model'}, 'type': 'model-field'}, 'request_id': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'CompletionPostResponse', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'final_result': FieldInfo(annotation=LLMModuleResult, required=True), 'intermediate_failures': FieldInfo(annotation=Union[List[SAPAPIError], NoneType], required=False, default=None), 'intermediate_results': FieldInfo(annotation=ModuleResults, required=True), 'request_id': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d95bf40) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="CompletionPostResponse", ...ator: Py(0x7fd23d9a0160) })], cache_strings=True)
- __signature__ = <Signature (*, request_id: str, intermediate_res...v2.models.response.SAPAPIError]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'final_result': FieldInfo(annotation=LLMModuleResult, required=True), 'intermediate_failures': FieldInfo(annotation=Union[List[SAPAPIError], NoneType], required=False, default=None), 'intermediate_results': FieldInfo(annotation=ModuleResults, required=True), 'request_id': FieldInfo(annotation=str, required=True)}
|
class CompletionRequestConfigurationReferenceByIdConfigRef(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
CompletionRequestConfigurationReferenceByIdConfigRef(*, id: str) -> None
Represents a reference to an orchestration config identified by a unique ID.
Args:
id (str): The unique identifier for the configuration. |
| |
- Method resolution order:
- CompletionRequestConfigurationReferenceByIdConfigRef
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'id': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.confi...etionRequestConfigurationReferenceByIdConfigRef'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'CompletionRequestConfigurationReferenceByIdConfigRef'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tionRequestConfigurationReferenceByIdConfigRef'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.config.Comple...nfigurationReferenceByIdConfigRef:140540951720928', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'id': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'CompletionRequestConfigurationReferenceByIdConfigRef', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'id': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="CompletionRequestConfigur...f",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, id: str) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'id': FieldInfo(annotation=str, required=True)}
|
class CompletionRequestConfigurationReferenceByNameScenarioVersionConfigRef(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
CompletionRequestConfigurationReferenceByNameScenarioVersionConfigRef(*, scenario: str, name: str, version: str) -> None
Represents a reference to aan orchestration config identified by name, scenario, and version.
Args:
scenario(str): Scenario name
name(str): Name of config
version(str): Version of config |
| |
- Method resolution order:
- CompletionRequestConfigurationReferenceByNameScenarioVersionConfigRef
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'name': <class 'str'>, 'scenario': <class 'str'>, 'version': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.confi...gurationReferenceByNameScenarioVersionConfigRef'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'CompletionRequestConfigurationReferenceByNameScenarioVersionConfigRef'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...urationReferenceByNameScenarioVersionConfigRef'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.config.Comple...nceByNameScenarioVersionConfigRef:140540951722944', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'name': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'scenario': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'version': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'CompletionRequestConfigurationReferenceByNameScenarioVersionConfigRef', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'name': FieldInfo(annotation=str, required=True), 'scenario': FieldInfo(annotation=str, required=True), 'version': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="CompletionRequestConfigur...f",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, scenario: str, name: str, version: str) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'name': FieldInfo(annotation=str, required=True), 'scenario': FieldInfo(annotation=str, required=True), 'version': FieldInfo(annotation=str, required=True)}
|
class CompletionTokensDetails(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
CompletionTokensDetails(*, accepted_prediction_tokens: Optional[int] = None, audio_tokens: Optional[int] = None, reasoning_tokens: Optional[int] = None, rejected_prediction_tokens: Optional[int] = None) -> None
Breakdown of tokens used in a completion.
Attributes:
accepted_prediction_tokens (Optional[int]): When using Predicted Outputs, the number of tokens in the
prediction that appeared in the completion.
audio_tokens (Optional[int]): Audio input tokens generated by the model.
reasoning_tokens (Optional[int]): Tokens generated by the model for reasoning.
rejected_prediction_tokens (Optional[int]): When using Predicted Outputs, the number of tokens in the
prediction that did not appear in the completion. However, like reasoning tokens, these tokens
are still counted in the total completion tokens for purposes of billing, output, and context
window limits. |
| |
- Method resolution order:
- CompletionTokensDetails
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'accepted_prediction_tokens': typing.Optional[int], 'audio_tokens': typing.Optional[int], 'reasoning_tokens': typing.Optional[int], 'rejected_prediction_tokens': typing.Optional[int]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.CompletionTokensDetails'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'CompletionTokensDetails'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ion_v2.models.response.CompletionTokensDetails'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.CompletionTokensDetails:140540951621312', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'accepted_prediction_tokens': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'audio_tokens': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'reasoning_tokens': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'rejected_prediction_tokens': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'CompletionTokensDetails', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'accepted_prediction_tokens': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'audio_tokens': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'reasoning_tokens': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'rejected_prediction_tokens': FieldInfo(annotation=Union[int, NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="CompletionTokensDetails",...s",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, accepted_prediction_tokens: Optio...prediction_tokens: Optional[int] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'accepted_prediction_tokens': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'audio_tokens': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'reasoning_tokens': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'rejected_prediction_tokens': FieldInfo(annotation=Union[int, NoneType], required=False, default=None)}
|
class ContentFilter(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
ContentFilter(*, type: gen_ai_hub.orchestration_v2.models.content_filter.ContentFilterProvider, config: Union[gen_ai_hub.orchestration_v2.models.azure_content_filter.AzureContentFilter, gen_ai_hub.orchestration_v2.models.llama_guard_3_filter.LlamaGuard38bFilter, NoneType] = None) -> None
Base class for content filtering configurations.
This class provides a generic structure for defining content filters
from various providers. It allows for specifying the provider and
associated configuration parameters.
Args:
type: The name of the content filter provider.
config: A dictionary containing the configuration parameters for the content filter. |
| |
- Method resolution order:
- ContentFilter
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'config': typing.Union[gen_ai_hub.orchestration_v2.models....ama_guard_3_filter.LlamaGuard38bFilter, NoneType], 'type_': <enum 'ContentFilterProvider'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.content_filter.ContentFilter'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ContentFilter'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tration_v2.models.content_filter.ContentFilter'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.content_filter.ContentFilter:140540954148496', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'config': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {'cls': <enum 'ContentFilterProvider'>, 'members': [<ContentFilterProvider.AZURE: 'azure_content_safety'>, <ContentFilterProvider.LLAMA_GUARD_3_8B: 'llama_guard_3_8b'>], 'metadata': {'pydantic_js_functions': [...]}, 'ref': 'gen_ai_hub.orchestration_v2.models.content_filter.ContentFilterProvider:140540954147472', 'sub_type': 'str', 'type': 'enum'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ContentFilter', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'config': FieldInfo(annotation=Union[AzureContentFilter, L...bFilter, NoneType], required=False, default=None), 'type_': FieldInfo(annotation=ContentFilterProvider, required=True, alias='type', alias_priority=2)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="ContentFilter", validator...r",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, type: gen_ai_hub.orchestration_v2...r.LlamaGuard38bFilter, NoneType] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'config': FieldInfo(annotation=Union[AzureContentFilter, L...bFilter, NoneType], required=False, default=None), 'type_': FieldInfo(annotation=ContentFilterProvider, required=True, alias='type', alias_priority=2)}
|
class ContentFilterProvider(builtins.str, enum.Enum) |
| |
ContentFilterProvider(value, names=None, *, module=None, qualname=None, type=None, start=1)
Enumerates supported content filter providers.
This enum defines the available content filtering services that can be used
for content moderation tasks. Each enum value represents a specific provider.
Values:
AZURE: Represents the Azure Content Safety service.
LLAMA_GUARD_3_8B: Represents the Llama Guard 3 based on Llama-3.1-8B pretrained model. |
| |
- Method resolution order:
- ContentFilterProvider
- builtins.str
- enum.Enum
- builtins.object
Data and other attributes defined here:
- AZURE = <ContentFilterProvider.AZURE: 'azure_content_safety'>
- LLAMA_GUARD_3_8B = <ContentFilterProvider.LLAMA_GUARD_3_8B: 'llama_guard_3_8b'>
Data descriptors inherited from enum.Enum:
- name
- The name of the Enum member.
- value
- The value of the Enum member.
Readonly properties inherited from enum.EnumMeta:
- __members__
- Returns a mapping of member name->value.
This mapping lists all enum members, including aliases. Note that this
is a read-only view of the internal mapping.
|
class DPICustomEntity(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
DPICustomEntity(*, regex: str, replacement_strategy: gen_ai_hub.orchestration_v2.models.data_masking.DPIMethodConstant) -> None
regex: Regular expression to match the entity
replacement_strategy: Replacement strategy to be used for the entity |
| |
- Method resolution order:
- DPICustomEntity
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'regex': <class 'str'>, 'replacement_strategy': <class 'gen_ai_hub.orchestration_v2.models.data_masking.DPIMethodConstant'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.data_masking.DPICustomEntity'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'DPICustomEntity'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tration_v2.models.data_masking.DPICustomEntity'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.DPICustomEntity:140540954316432', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'regex': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'replacement_strategy': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.data_masking.DPIMethodConstant'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'DPIMethodConstant'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [...]}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.DPIMethodConstant:140540952504112', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {...}, 'model_name': 'DPIMethodConstant', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}}, 'model_name': 'DPICustomEntity', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'regex': FieldInfo(annotation=str, required=True), 'replacement_strategy': FieldInfo(annotation=DPIMethodConstant, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="DPICustomEntity", validat...y",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, regex: str, replacement_strategy:...2.models.data_masking.DPIMethodConstant) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'regex': FieldInfo(annotation=str, required=True), 'replacement_strategy': FieldInfo(annotation=DPIMethodConstant, required=True)}
|
class DPIMethodConstant(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
DPIMethodConstant(*, method: str = 'constant', value: str) -> None
Replaces the entity with the specified value followed by an incrementing number |
| |
- Method resolution order:
- DPIMethodConstant
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'method': <class 'str'>, 'value': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.data_masking.DPIMethodConstant'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'DPIMethodConstant'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ation_v2.models.data_masking.DPIMethodConstant'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.DPIMethodConstant:140540952504112', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'method': {'metadata': {}, 'schema': {'default': 'constant', 'schema': {'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}, 'value': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'DPIMethodConstant', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'method': FieldInfo(annotation=str, required=False, default='constant'), 'value': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="DPIMethodConstant", valid...t",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, method: str = 'constant', value: str) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'method': FieldInfo(annotation=str, required=False, default='constant'), 'value': FieldInfo(annotation=str, required=True)}
|
class DPIMethodFabricatedData(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
DPIMethodFabricatedData(*, method: str = 'fabricated_data') -> None
Replaces the entity with a randomly generated value appropriate to its type. |
| |
- Method resolution order:
- DPIMethodFabricatedData
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'method': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.data_masking.DPIMethodFabricatedData'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'DPIMethodFabricatedData'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...v2.models.data_masking.DPIMethodFabricatedData'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.DPIMethodFabricatedData:140540952506128', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'method': {'metadata': {}, 'schema': {'default': 'fabricated_data', 'schema': {'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'DPIMethodFabricatedData', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'method': FieldInfo(annotation=str, required=False, default='fabricated_data')}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="DPIMethodFabricatedData",...a",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, method: str = 'fabricated_data') -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'method': FieldInfo(annotation=str, required=False, default='fabricated_data')}
|
class DPIStandardEntity(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
DPIStandardEntity(*, type: gen_ai_hub.orchestration_v2.models.data_masking.ProfileEntity, replacement_strategy: Union[gen_ai_hub.orchestration_v2.models.data_masking.DPIMethodConstant, gen_ai_hub.orchestration_v2.models.data_masking.DPIMethodFabricatedData, NoneType] = None) -> None
type: Standard entity type to be masked
replacement_strategy: Replacement strategy to be used for the entity |
| |
- Method resolution order:
- DPIStandardEntity
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'replacement_strategy': typing.Union[gen_ai_hub.orchestration_v2.models....s.data_masking.DPIMethodFabricatedData, NoneType], 'type_': <enum 'ProfileEntity'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.data_masking.DPIStandardEntity'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'DPIStandardEntity'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ation_v2.models.data_masking.DPIStandardEntity'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.DPIStandardEntity:140540954318448', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'replacement_strategy': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {'cls': <enum 'ProfileEntity'>, 'members': [<ProfileEntity.PERSON: 'profile-person'>, <ProfileEntity.ORG: 'profile-org'>, <ProfileEntity.UNIVERSITY: 'profile-university'>, <ProfileEntity.LOCATION: 'profile-location'>, <ProfileEntity.EMAIL: 'profile-email'>, <ProfileEntity.PHONE: 'profile-phone'>, <ProfileEntity.ADDRESS: 'profile-address'>, <ProfileEntity.SAP_IDS_INTERNAL: 'profile-sapids-internal'>, <ProfileEntity.SAP_IDS_PUBLIC: 'profile-sapids-public'>, <ProfileEntity.URL: 'profile-url'>, <ProfileEntity.USERNAME_PASSWORD: 'profile-username-password'>, <ProfileEntity.NATIONAL_ID: 'profile-nationalid'>, <ProfileEntity.IBAN: 'profile-iban'>, <ProfileEntity.SSN: 'profile-ssn'>, <ProfileEntity.CREDIT_CARD_NUMBER: 'profile-credit-card-number'>, <ProfileEntity.PASSPORT: 'profile-passport'>, <ProfileEntity.DRIVING_LICENSE: 'profile-driverlicense'>, <ProfileEntity.NATIONALITY: 'profile-nationality'>, <ProfileEntity.RELIGIOUS_GROUP: 'profile-religious-group'>, <ProfileEntity.POLITICAL_GROUP: 'profile-political-group'>, ...], 'metadata': {'pydantic_js_functions': [...]}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.ProfileEntity:140540952501072', 'sub_type': 'str', 'type': 'enum'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'DPIStandardEntity', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'replacement_strategy': FieldInfo(annotation=Union[DPIMethodConstant, DP...tedData, NoneType], required=False, default=None), 'type_': FieldInfo(annotation=ProfileEntity, required=True, alias='type', alias_priority=2)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="DPIStandardEntity", valid...y",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, type: gen_ai_hub.orchestration_v2...IMethodFabricatedData, NoneType] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'replacement_strategy': FieldInfo(annotation=Union[DPIMethodConstant, DP...tedData, NoneType], required=False, default=None), 'type_': FieldInfo(annotation=ProfileEntity, required=True, alias='type', alias_priority=2)}
|
class DataMaskingProviderName(builtins.str, enum.Enum) |
| |
DataMaskingProviderName(value, names=None, *, module=None, qualname=None, type=None, start=1)
Enumerates the available data masking providers.
This enum defines the supported providers for masking sensitive data in the LLM module.
Values: SAP_DATA_PRIVACY_INTEGRATION: Refers to the SAP Data Privacy Integration service, which offers
anonymization and pseudonymization capabilities for sensitive data. |
| |
- Method resolution order:
- DataMaskingProviderName
- builtins.str
- enum.Enum
- builtins.object
Data and other attributes defined here:
- SAP_DATA_PRIVACY_INTEGRATION = <DataMaskingProviderName.SAP_DATA_PRIVACY_INTEGRATION: 'sap_data_privacy_integration'>
Data descriptors inherited from enum.Enum:
- name
- The name of the Enum member.
- value
- The value of the Enum member.
Readonly properties inherited from enum.EnumMeta:
- __members__
- Returns a mapping of member name->value.
This mapping lists all enum members, including aliases. Note that this
is a read-only view of the internal mapping.
|
class DataRepositoryType(builtins.str, enum.Enum) |
| |
DataRepositoryType(value, names=None, *, module=None, qualname=None, type=None, start=1)
Enumerates data repository types. |
| |
- Method resolution order:
- DataRepositoryType
- builtins.str
- enum.Enum
- builtins.object
Data and other attributes defined here:
- URL = <DataRepositoryType.URL: 'help.sap.com'>
- VECTOR = <DataRepositoryType.VECTOR: 'vector'>
Data descriptors inherited from enum.Enum:
- name
- The name of the Enum member.
- value
- The value of the Enum member.
Readonly properties inherited from enum.EnumMeta:
- __members__
- Returns a mapping of member name->value.
This mapping lists all enum members, including aliases. Note that this
is a read-only view of the internal mapping.
|
class DeveloperChatMessage(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
DeveloperChatMessage(*, role: gen_ai_hub.orchestration_v2.models.message.Role = <Role.DEVELOPER: 'developer'>, content: Union[str, List[gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart]]) -> None
|
| |
- Method resolution order:
- DeveloperChatMessage
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'content': typing.Union[str, typing.List[gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart]], 'role': <enum 'Role'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.message.DeveloperChatMessage'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'DeveloperChatMessage'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tration_v2.models.message.DeveloperChatMessage'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.message.DeveloperChatMessage:140540952628912', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'content': {'metadata': {}, 'schema': {'choices': [{...}, {...}], 'type': 'union'}, 'type': 'model-field'}, 'role': {'metadata': {}, 'schema': {'default': <Role.DEVELOPER: 'developer'>, 'schema': {'cls': <enum 'Role'>, 'members': [...], 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.message.Role:140540952622880', 'sub_type': 'str', 'type': 'enum'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'DeveloperChatMessage', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'content': FieldInfo(annotation=Union[str, List[TextPart]], required=True), 'role': FieldInfo(annotation=Role, required=False, default=<Role.DEVELOPER: 'developer'>)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="DeveloperChatMessage", va...e",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, role: gen_ai_hub.orchestration_v2...n_v2.models.multimodal_items.TextPart]]) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'content': FieldInfo(annotation=Union[str, List[TextPart]], required=True), 'role': FieldInfo(annotation=Role, required=False, default=<Role.DEVELOPER: 'developer'>)}
|
class DocumentGroundingConfig(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
DocumentGroundingConfig(*, filters: Optional[List[gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingFilter]] = None, placeholders: gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingPlaceholders, metadata_params: Optional[list[str]] = None) -> None
defines the detailed configuration for the Grounding module.
Args:
filters: List of DocumentGroundingFilter objects.
placeholders: Placeholders to be used for grounding input questions and output.
metadata_params: Parameter name used for specifying metadata parameters. |
| |
- Method resolution order:
- DocumentGroundingConfig
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'filters': typing.Optional[typing.List[gen_ai_hub.orchestra...dels.document_grounding.DocumentGroundingFilter]], 'metadata_params': typing.Optional[list[str]], 'placeholders': <class 'gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingPlaceholders'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'KeyValueListPair'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.document_grounding.KeyValueListPair'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair:140540952511168', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'key': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'value': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'KeyValueListPair', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'DocumentGroundingConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...els.document_grounding.DocumentGroundingConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingConfig:140540952608768', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'filters': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'metadata_params': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'placeholders': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingPlaceholders'>, 'config': {...}, 'custom_init': False, 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingPlaceholders:140540952607760', 'root_model': False, 'schema': {...}, 'type': 'model'}, 'type': 'model-field'}}, 'model_name': 'DocumentGroundingConfig', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'filters': FieldInfo(annotation=Union[List[DocumentGroundingFilter], NoneType], required=False, default=None), 'metadata_params': FieldInfo(annotation=Union[list[str], NoneType], required=False, default=None), 'placeholders': FieldInfo(annotation=DocumentGroundingPlaceholders, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d95aa70) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="DocumentGroundingConfig",...ator: Py(0x7fd23d95a950) })], cache_strings=True)
- __signature__ = <Signature (*, filters: Optional[List[gen_ai_hub...data_params: Optional[list[str]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'filters': FieldInfo(annotation=Union[List[DocumentGroundingFilter], NoneType], required=False, default=None), 'metadata_params': FieldInfo(annotation=Union[list[str], NoneType], required=False, default=None), 'placeholders': FieldInfo(annotation=DocumentGroundingPlaceholders, required=True)}
|
class DocumentGroundingFilter(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
DocumentGroundingFilter(*, id: Optional[str] = None, data_repository_type: Union[gen_ai_hub.orchestration_v2.models.document_grounding.DataRepositoryType, Literal['vector', 'help.sap.com']], search_config: Optional[gen_ai_hub.orchestration_v2.models.document_grounding.GroundingSearchConfig] = None, data_repositories: Optional[List[str]] = None, data_repository_metadata: Optional[List[gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair]] = None, document_metadata: Optional[List[gen_ai_hub.orchestration_v2.models.document_grounding.DocumentMetadataKeyValueListPairs]] = None, chunk_metadata: Optional[List[gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair]] = None) -> None
Module for configuring document grounding filters.
Args:
id: The unique identifier for the grounding filter.
search_config: GroundingSearchConfig object.
data_repository_type: Only include DataRepositories with the given type:
vector, help.sap.com.
data_repositories: list of data repositories to search.
Specify ['*'] to search across all DataRepositories or
give a specific list of DataRepository ids.
data_repository_metadata: The metadata for the data repository.
Restrict DataRepositories considered during search to those annotated with the given
metadata. Useful when combined with dataRepositories=['*']
document_metadata: DocumentMetadata object.
chunk_metadata: Restrict chunks considered during search to those with the given metadata. |
| |
- Method resolution order:
- DocumentGroundingFilter
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'chunk_metadata': typing.Optional[typing.List[gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair]], 'data_repositories': typing.Optional[typing.List[str]], 'data_repository_metadata': typing.Optional[typing.List[gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair]], 'data_repository_type': typing.Union[gen_ai_hub.orchestration_v2.models....ryType, typing.Literal['vector', 'help.sap.com']], 'document_metadata': typing.Optional[typing.List[gen_ai_hub.orchestra...ent_grounding.DocumentMetadataKeyValueListPairs]], 'id': typing.Optional[str], 'search_config': typing.Optional[gen_ai_hub.orchestration_v2.models.document_grounding.GroundingSearchConfig]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'KeyValueListPair'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.document_grounding.KeyValueListPair'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair:140540952511168', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'key': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'value': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'KeyValueListPair', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingFilter'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'DocumentGroundingFilter'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...els.document_grounding.DocumentGroundingFilter'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingFilter:140540952517168', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'chunk_metadata': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'data_repositories': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'data_repository_metadata': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'data_repository_type': {'metadata': {}, 'schema': {'choices': [...], 'type': 'union'}, 'type': 'model-field'}, 'document_metadata': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'id': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'search_config': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'DocumentGroundingFilter', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'chunk_metadata': FieldInfo(annotation=Union[List[KeyValueListPair], NoneType], required=False, default=None), 'data_repositories': FieldInfo(annotation=Union[List[str], NoneType], required=False, default=None), 'data_repository_metadata': FieldInfo(annotation=Union[List[KeyValueListPair], NoneType], required=False, default=None), 'data_repository_type': FieldInfo(annotation=Union[DataRepositoryType, Literal['vector', 'help.sap.com']], required=True), 'document_metadata': FieldInfo(annotation=Union[List[DocumentMetadata...tPairs], NoneType], required=False, default=None), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'search_config': FieldInfo(annotation=Union[GroundingSearchConfig, NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d95aa70) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="DocumentGroundingFilter",...ator: Py(0x7fd23d95a950) })], cache_strings=True)
- __signature__ = <Signature (*, id: Optional[str] = None, data_re...ent_grounding.KeyValueListPair]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'chunk_metadata': FieldInfo(annotation=Union[List[KeyValueListPair], NoneType], required=False, default=None), 'data_repositories': FieldInfo(annotation=Union[List[str], NoneType], required=False, default=None), 'data_repository_metadata': FieldInfo(annotation=Union[List[KeyValueListPair], NoneType], required=False, default=None), 'data_repository_type': FieldInfo(annotation=Union[DataRepositoryType, Literal['vector', 'help.sap.com']], required=True), 'document_metadata': FieldInfo(annotation=Union[List[DocumentMetadata...tPairs], NoneType], required=False, default=None), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'search_config': FieldInfo(annotation=Union[GroundingSearchConfig, NoneType], required=False, default=None)}
|
class DocumentGroundingPlaceholders(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
DocumentGroundingPlaceholders(*, input: Annotated[List[str], MinLen(min_length=1)], output: str) -> None
input: The list of input parameters used for grounding input questions (minItems: 1).
output: Parameter name used for grounding output. |
| |
- Method resolution order:
- DocumentGroundingPlaceholders
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'input': typing.List[str], 'output': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingPlaceholders'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'DocumentGroundingPlaceholders'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...cument_grounding.DocumentGroundingPlaceholders'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingPlaceholders:140540952607760', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'input': {'metadata': {}, 'schema': {'items_schema': {'type': 'str'}, 'min_length': 1, 'type': 'list'}, 'type': 'model-field'}, 'output': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'DocumentGroundingPlaceholders', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'input': FieldInfo(annotation=List[str], required=True, metadata=[MinLen(min_length=1)]), 'output': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="DocumentGroundingPlacehol...s",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, input: Annotated[List[str], MinLen(min_length=1)], output: str) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'input': FieldInfo(annotation=List[str], required=True, metadata=[MinLen(min_length=1)]), 'output': FieldInfo(annotation=str, required=True)}
|
class DocumentMetadataKeyValueListPairs(KeyValueListPair) |
| |
DocumentMetadataKeyValueListPairs(*, key: str, value: List[str], select_mode: Optional[List[Literal['ignoreIfKeyAbsent']]] = None) -> None
Restrict documents considered during search to those annotated with the given metadata.
Args:
key: The key for the metadata.
value: The list of values for the metadata.
select_mode: Select mode for search filters. |
| |
- Method resolution order:
- DocumentMetadataKeyValueListPairs
- KeyValueListPair
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'select_mode': typing.Optional[typing.List[typing.Literal['ignoreIfKeyAbsent']]]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.document_grounding.DocumentMetadataKeyValueListPairs'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'DocumentMetadataKeyValueListPairs'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...nt_grounding.DocumentMetadataKeyValueListPairs'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.document_grou...DocumentMetadataKeyValueListPairs:140540952513184', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'key': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'select_mode': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'value': {'metadata': {}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'DocumentMetadataKeyValueListPairs', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'key': FieldInfo(annotation=str, required=True), 'select_mode': FieldInfo(annotation=Union[List[Literal['ignoreI...sent']], NoneType], required=False, default=None), 'value': FieldInfo(annotation=List[str], required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="DocumentMetadataKeyValueL...s",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, key: str, value: List[str], selec...t[Literal['ignoreIfKeyAbsent']]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'key': FieldInfo(annotation=str, required=True), 'select_mode': FieldInfo(annotation=Union[List[Literal['ignoreI...sent']], NoneType], required=False, default=None), 'value': FieldInfo(annotation=List[str], required=True)}
|
class EmbeddingResult(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
EmbeddingResult(*, object: str = 'embedding', embedding: Union[List[float], str], index: int) -> None
A single embedding result.
Args:
object: The object type, always "embedding".
embedding: The embedding vector (array of floats) or base64 string.
index: The index of this embedding in the list. |
| |
- Method resolution order:
- EmbeddingResult
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'embedding': typing.Union[typing.List[float], str], 'index': <class 'int'>, 'object': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingResult'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'EmbeddingResult'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.embeddings.EmbeddingResult'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingResult:140540951736080', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'embedding': {'metadata': {}, 'schema': {'choices': [{...}, {...}], 'type': 'union'}, 'type': 'model-field'}, 'index': {'metadata': {}, 'schema': {'type': 'int'}, 'type': 'model-field'}, 'object': {'metadata': {}, 'schema': {'default': 'embedding', 'schema': {'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'EmbeddingResult', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'embedding': FieldInfo(annotation=Union[List[float], str], required=True), 'index': FieldInfo(annotation=int, required=True), 'object': FieldInfo(annotation=str, required=False, default='embedding')}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="EmbeddingResult", validat...t",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, object: str = 'embedding', embedding: Union[List[float], str], index: int) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'embedding': FieldInfo(annotation=Union[List[float], str], required=True), 'index': FieldInfo(annotation=int, required=True), 'object': FieldInfo(annotation=str, required=False, default='embedding')}
|
class EmbeddingsEncodingFormat(builtins.str, enum.Enum) |
| |
EmbeddingsEncodingFormat(value, names=None, *, module=None, qualname=None, type=None, start=1)
Encoding format for the embeddings output.
Values:
FLOAT: Returns embeddings as an array of floats.
BASE64: Returns embeddings as a base64 encoded string.
BINARY: Returns embeddings in binary format. |
| |
- Method resolution order:
- EmbeddingsEncodingFormat
- builtins.str
- enum.Enum
- builtins.object
Data and other attributes defined here:
- BASE64 = <EmbeddingsEncodingFormat.BASE64: 'base64'>
- BINARY = <EmbeddingsEncodingFormat.BINARY: 'binary'>
- FLOAT = <EmbeddingsEncodingFormat.FLOAT: 'float'>
Data descriptors inherited from enum.Enum:
- name
- The name of the Enum member.
- value
- The value of the Enum member.
Readonly properties inherited from enum.EnumMeta:
- __members__
- Returns a mapping of member name->value.
This mapping lists all enum members, including aliases. Note that this
is a read-only view of the internal mapping.
|
class EmbeddingsInput(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
EmbeddingsInput(*, text: Union[str, List[str]], type: Optional[gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsInputType] = None) -> None
Input for the embeddings endpoint.
Args:
text: The text to embed. Can be a single string or a list of strings.
type: Optional type hint for the embedding model (text, document, or query). |
| |
- Method resolution order:
- EmbeddingsInput
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'text': typing.Union[str, typing.List[str]], 'type_': typing.Optional[gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsInputType]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsInput'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'EmbeddingsInput'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.embeddings.EmbeddingsInput'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsInput:140540951732016', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'text': {'metadata': {}, 'schema': {'choices': [{...}, {...}], 'type': 'union'}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'EmbeddingsInput', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'text': FieldInfo(annotation=Union[str, List[str]], required=True), 'type_': FieldInfo(annotation=Union[EmbeddingsInputType, ...se, default=None, alias='type', alias_priority=2)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="EmbeddingsInput", validat...t",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, text: Union[str, List[str]], type....embeddings.EmbeddingsInputType] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'text': FieldInfo(annotation=Union[str, List[str]], required=True), 'type_': FieldInfo(annotation=Union[EmbeddingsInputType, ...se, default=None, alias='type', alias_priority=2)}
|
class EmbeddingsInputType(builtins.str, enum.Enum) |
| |
EmbeddingsInputType(value, names=None, *, module=None, qualname=None, type=None, start=1)
Type hint for the embedding model about the purpose of the text.
Some models use asymmetric embeddings for better search performance.
Values:
TEXT: General purpose text (default).
DOCUMENT: Content to be searched/retrieved.
QUERY: Short search queries. |
| |
- Method resolution order:
- EmbeddingsInputType
- builtins.str
- enum.Enum
- builtins.object
Data and other attributes defined here:
- DOCUMENT = <EmbeddingsInputType.DOCUMENT: 'document'>
- QUERY = <EmbeddingsInputType.QUERY: 'query'>
- TEXT = <EmbeddingsInputType.TEXT: 'text'>
Data descriptors inherited from enum.Enum:
- name
- The name of the Enum member.
- value
- The value of the Enum member.
Readonly properties inherited from enum.EnumMeta:
- __members__
- Returns a mapping of member name->value.
This mapping lists all enum members, including aliases. Note that this
is a read-only view of the internal mapping.
|
class EmbeddingsModelConfig(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
EmbeddingsModelConfig(*, model: gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelDetails) -> None
Configuration for the embeddings model.
Args:
model: The embedding model details. |
| |
- Method resolution order:
- EmbeddingsModelConfig
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'model': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelDetails'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'EmbeddingsModelConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ion_v2.models.embeddings.EmbeddingsModelConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelConfig:140540951724944', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'model': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelDetails'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'EmbeddingsModelDetails'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [...]}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelDetails:140540951726992', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {...}, 'model_name': 'EmbeddingsModelDetails', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}}, 'model_name': 'EmbeddingsModelConfig', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'model': FieldInfo(annotation=EmbeddingsModelDetails, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="EmbeddingsModelConfig", v...g",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, model: gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelDetails) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'model': FieldInfo(annotation=EmbeddingsModelDetails, required=True)}
|
class EmbeddingsModelDetails(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
EmbeddingsModelDetails(*, name: str, version: Optional[str] = 'latest', params: Optional[gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelParams] = None, timeout: Annotated[Optional[int], Ge(ge=1), Le(le=600)] = 600, max_retries: Annotated[Optional[int], Ge(ge=0), Le(le=5)] = 2) -> None
The model and parameters to be used for generating embeddings.
Args:
name: Name of the embedding model.
version: Version of the model to be used. Defaults to "latest".
params: Additional parameters for the model (dimensions, encoding_format, normalize).
timeout: Timeout for the embeddings request in seconds. Ignored for Vertex AI models.
max_retries: Maximum number of retries. Ignored for Vertex AI models. |
| |
- Method resolution order:
- EmbeddingsModelDetails
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'max_retries': typing.Optional[int], 'name': <class 'str'>, 'params': typing.Optional[gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelParams], 'timeout': typing.Optional[int], 'version': typing.Optional[str]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelDetails'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'EmbeddingsModelDetails'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...on_v2.models.embeddings.EmbeddingsModelDetails'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelDetails:140540951726992', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'max_retries': {'metadata': {}, 'schema': {'default': 2, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'name': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'params': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'timeout': {'metadata': {}, 'schema': {'default': 600, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'version': {'metadata': {}, 'schema': {'default': 'latest', 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'EmbeddingsModelDetails', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'max_retries': FieldInfo(annotation=Union[int, NoneType], required=False, default=2, metadata=[Ge(ge=0), Le(le=5)]), 'name': FieldInfo(annotation=str, required=True), 'params': FieldInfo(annotation=Union[EmbeddingsModelParams, NoneType], required=False, default=None), 'timeout': FieldInfo(annotation=Union[int, NoneType], requi...se, default=600, metadata=[Ge(ge=1), Le(le=600)]), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='latest')}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="EmbeddingsModelDetails", ...s",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, name: str, version: Optional[str]...[Optional[int], Ge(ge=0), Le(le=5)] = 2) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'max_retries': FieldInfo(annotation=Union[int, NoneType], required=False, default=2, metadata=[Ge(ge=0), Le(le=5)]), 'name': FieldInfo(annotation=str, required=True), 'params': FieldInfo(annotation=Union[EmbeddingsModelParams, NoneType], required=False, default=None), 'timeout': FieldInfo(annotation=Union[int, NoneType], requi...se, default=600, metadata=[Ge(ge=1), Le(le=600)]), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='latest')}
|
class EmbeddingsModelParams(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
EmbeddingsModelParams(*, dimensions: Optional[int] = None, encoding_format: Optional[gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsEncodingFormat] = None, normalize: Optional[bool] = None) -> None
Additional parameters for generating embeddings.
Args:
dimensions: The number of dimensions for the output embeddings.
encoding_format: The format for the embeddings output (float, base64, or binary).
normalize: Whether to normalize the embeddings. |
| |
- Method resolution order:
- EmbeddingsModelParams
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'dimensions': typing.Optional[int], 'encoding_format': typing.Optional[gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsEncodingFormat], 'normalize': typing.Optional[bool]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelParams'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'EmbeddingsModelParams'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ion_v2.models.embeddings.EmbeddingsModelParams'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelParams:140540951723936', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'dimensions': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'encoding_format': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'normalize': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'EmbeddingsModelParams', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'dimensions': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'encoding_format': FieldInfo(annotation=Union[EmbeddingsEncodingFormat, NoneType], required=False, default=None), 'normalize': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="EmbeddingsModelParams", v...s",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, dimensions: Optional[int] = None,... None, normalize: Optional[bool] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'dimensions': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'encoding_format': FieldInfo(annotation=Union[EmbeddingsEncodingFormat, NoneType], required=False, default=None), 'normalize': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None)}
|
class EmbeddingsModuleConfigs(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
EmbeddingsModuleConfigs(*, embeddings: gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelConfig, masking: Optional[gen_ai_hub.orchestration_v2.models.data_masking.MaskingModuleConfig] = None) -> None
Module configurations for the embeddings endpoint.
Args:
embeddings: Required configuration for the embeddings model.
masking: Optional configuration for data masking before embedding. |
| |
- Method resolution order:
- EmbeddingsModuleConfigs
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'embeddings': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelConfig'>, 'masking': typing.Optional[gen_ai_hub.orchestration_v2.models.data_masking.MaskingModuleConfig]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'MaskingProviderConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...n_v2.models.data_masking.MaskingProviderConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig:140540954149488', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'allowlist': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'entities': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'mask_grounding_input': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'method': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'MaskingProviderConfig', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModuleConfigs'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'EmbeddingsModuleConfigs'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...n_v2.models.embeddings.EmbeddingsModuleConfigs'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModuleConfigs:140540951728016', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'embeddings': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelConfig'>, 'config': {...}, 'custom_init': False, 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModelConfig:140540951724944', 'root_model': False, 'schema': {...}, 'type': 'model'}, 'type': 'model-field'}, 'masking': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'EmbeddingsModuleConfigs', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'embeddings': FieldInfo(annotation=EmbeddingsModelConfig, required=True), 'masking': FieldInfo(annotation=Union[MaskingModuleConfig, NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d95a3b0) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="EmbeddingsModuleConfigs",...ator: Py(0x7fd23d95a320) })], cache_strings=True)
- __signature__ = <Signature (*, embeddings: gen_ai_hub.orchestrat...ata_masking.MaskingModuleConfig] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'embeddings': FieldInfo(annotation=EmbeddingsModelConfig, required=True), 'masking': FieldInfo(annotation=Union[MaskingModuleConfig, NoneType], required=False, default=None)}
|
class EmbeddingsOrchestrationConfig(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
EmbeddingsOrchestrationConfig(*, modules: gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModuleConfigs) -> None
Configuration for the Embeddings Orchestration endpoint.
Args:
modules: The module configurations including embeddings model and optional masking. |
| |
- Method resolution order:
- EmbeddingsOrchestrationConfig
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'modules': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModuleConfigs'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'MaskingProviderConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...n_v2.models.data_masking.MaskingProviderConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig:140540954149488', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'allowlist': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'entities': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'mask_grounding_input': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'method': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'MaskingProviderConfig', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsOrchestrationConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'EmbeddingsOrchestrationConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...odels.embeddings.EmbeddingsOrchestrationConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsOrchestrationConfig:140540951729984', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'modules': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModuleConfigs'>, 'config': {...}, 'custom_init': False, 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsModuleConfigs:140540951728016', 'root_model': False, 'schema': {...}, 'type': 'model'}, 'type': 'model-field'}}, 'model_name': 'EmbeddingsOrchestrationConfig', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'modules': FieldInfo(annotation=EmbeddingsModuleConfigs, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d95a3b0) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="EmbeddingsOrchestrationCo...ator: Py(0x7fd23d95a320) })], cache_strings=True)
- __signature__ = <Signature (*, modules: gen_ai_hub.orchestration...dels.embeddings.EmbeddingsModuleConfigs) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'modules': FieldInfo(annotation=EmbeddingsModuleConfigs, required=True)}
|
class EmbeddingsPostResponse(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
EmbeddingsPostResponse(*, request_id: str, intermediate_results: Optional[Dict] = None, final_result: gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsResponse) -> None
Response for an embeddings POST request.
Args:
request_id: Unique identifier for the request.
intermediate_results: Optional results from intermediate modules (e.g., masking).
final_result: The embeddings response from the model. |
| |
- Method resolution order:
- EmbeddingsPostResponse
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'final_result': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsResponse'>, 'intermediate_results': typing.Optional[typing.Dict], 'request_id': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsPostResponse'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'EmbeddingsPostResponse'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...on_v2.models.embeddings.EmbeddingsPostResponse'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsPostResponse:140540951738048', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'final_result': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsResponse'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'EmbeddingsResponse'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [...]}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsResponse:140540951737088', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {...}, 'model_name': 'EmbeddingsResponse', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'intermediate_results': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'request_id': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'EmbeddingsPostResponse', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'final_result': FieldInfo(annotation=EmbeddingsResponse, required=True), 'intermediate_results': FieldInfo(annotation=Union[Dict, NoneType], required=False, default=None), 'request_id': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="EmbeddingsPostResponse", ...e",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, request_id: str, intermediate_res...v2.models.embeddings.EmbeddingsResponse) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'final_result': FieldInfo(annotation=EmbeddingsResponse, required=True), 'intermediate_results': FieldInfo(annotation=Union[Dict, NoneType], required=False, default=None), 'request_id': FieldInfo(annotation=str, required=True)}
|
class EmbeddingsRequest(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
EmbeddingsRequest(*, config: gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsOrchestrationConfig, input: gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsInput) -> None
Request body for the embeddings endpoint.
Args:
config: The embeddings orchestration configuration.
input: The input text to embed. |
| |
- Method resolution order:
- EmbeddingsRequest
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'config': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsOrchestrationConfig'>, 'input': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsInput'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'MaskingProviderConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...n_v2.models.data_masking.MaskingProviderConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig:140540954149488', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'allowlist': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'entities': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'mask_grounding_input': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'method': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'MaskingProviderConfig', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsRequest'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'EmbeddingsRequest'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tration_v2.models.embeddings.EmbeddingsRequest'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsRequest:140540951739056', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'config': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsOrchestrationConfig'>, 'config': {...}, 'custom_init': False, 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsOrchestrationConfig:140540951729984', 'root_model': False, 'schema': {...}, 'type': 'model'}, 'type': 'model-field'}, 'input': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsInput'>, 'config': {...}, 'custom_init': False, 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsInput:140540951732016', 'root_model': False, 'schema': {...}, 'type': 'model'}, 'type': 'model-field'}}, 'model_name': 'EmbeddingsRequest', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'config': FieldInfo(annotation=EmbeddingsOrchestrationConfig, required=True), 'input': FieldInfo(annotation=EmbeddingsInput, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d95a3b0) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="EmbeddingsRequest", valid...ator: Py(0x7fd23d95a320) })], cache_strings=True)
- __signature__ = <Signature (*, config: gen_ai_hub.orchestration_...on_v2.models.embeddings.EmbeddingsInput) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'config': FieldInfo(annotation=EmbeddingsOrchestrationConfig, required=True), 'input': FieldInfo(annotation=EmbeddingsInput, required=True)}
|
class EmbeddingsResponse(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
EmbeddingsResponse(*, object: str = 'list', data: List[gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingResult], model: str, usage: gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsUsage) -> None
The response from the embedding model, following OpenAI specification.
Args:
object: The object type, always "list".
data: The list of embeddings generated by the model.
model: The name of the model used to generate the embeddings.
usage: Token usage information. |
| |
- Method resolution order:
- EmbeddingsResponse
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'data': typing.List[gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingResult], 'model': <class 'str'>, 'object': <class 'str'>, 'usage': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsUsage'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsResponse'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'EmbeddingsResponse'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ration_v2.models.embeddings.EmbeddingsResponse'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsResponse:140540951737088', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {}, 'schema': {'items_schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingResult'>, 'config': {...}, 'custom_init': False, 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingResult:140540951736080', 'root_model': False, 'schema': {...}, 'type': 'model'}, 'type': 'list'}, 'type': 'model-field'}, 'model': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'object': {'metadata': {}, 'schema': {'default': 'list', 'schema': {'type': 'str'}, 'type': 'default'}, 'type': 'model-field'}, 'usage': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsUsage'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'EmbeddingsUsage'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [...]}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsUsage:140540951734064', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {...}, 'model_name': 'EmbeddingsUsage', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}}, 'model_name': 'EmbeddingsResponse', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'data': FieldInfo(annotation=List[EmbeddingResult], required=True), 'model': FieldInfo(annotation=str, required=True), 'object': FieldInfo(annotation=str, required=False, default='list'), 'usage': FieldInfo(annotation=EmbeddingsUsage, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="EmbeddingsResponse", vali...e",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, object: str = 'list', data: List[...on_v2.models.embeddings.EmbeddingsUsage) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'data': FieldInfo(annotation=List[EmbeddingResult], required=True), 'model': FieldInfo(annotation=str, required=True), 'object': FieldInfo(annotation=str, required=False, default='list'), 'usage': FieldInfo(annotation=EmbeddingsUsage, required=True)}
|
class EmbeddingsUsage(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
EmbeddingsUsage(*, prompt_tokens: int, total_tokens: int) -> None
Token usage information for the embeddings request.
Args:
prompt_tokens: The number of tokens used by the prompt.
total_tokens: The total number of tokens used by the request. |
| |
- Method resolution order:
- EmbeddingsUsage
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'prompt_tokens': <class 'int'>, 'total_tokens': <class 'int'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsUsage'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'EmbeddingsUsage'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.embeddings.EmbeddingsUsage'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.embeddings.EmbeddingsUsage:140540951734064', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'prompt_tokens': {'metadata': {}, 'schema': {'type': 'int'}, 'type': 'model-field'}, 'total_tokens': {'metadata': {}, 'schema': {'type': 'int'}, 'type': 'model-field'}}, 'model_name': 'EmbeddingsUsage', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'prompt_tokens': FieldInfo(annotation=int, required=True), 'total_tokens': FieldInfo(annotation=int, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="EmbeddingsUsage", validat...e",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, prompt_tokens: int, total_tokens: int) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'prompt_tokens': FieldInfo(annotation=int, required=True), 'total_tokens': FieldInfo(annotation=int, required=True)}
|
class ErrorResponse(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
ErrorResponse(*, error: Union[gen_ai_hub.orchestration_v2.models.response.SAPAPIError, list[gen_ai_hub.orchestration_v2.models.response.SAPAPIError]]) -> None
|
| |
- Method resolution order:
- ErrorResponse
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'error': typing.Union[gen_ai_hub.orchestration_v2.models....ub.orchestration_v2.models.response.SAPAPIError]]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.response.SAPAPIError'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'SAPAPIError'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...b.orchestration_v2.models.response.SAPAPIError'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.SAPAPIError:140540951522080', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'code': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'headers': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'intermediate_results': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'location': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'message': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'request_id': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'SAPAPIError', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.GenericModuleResult'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'GenericModuleResult'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tration_v2.models.response.GenericModuleResult'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.GenericModuleResult:140540951626320', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'message': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'GenericModuleResult', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TextPart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...hestration_v2.models.multimodal_items.TextPart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart:140540952612800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'text': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'TextPart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ImagePart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.multimodal_items.ImagePart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart:140540952617824', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'image_url': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ImagePart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChatCompletionTokenLogprob'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.response.ChatCompletionTokenLogprob'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob:140540951628352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'bytes': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'logprob': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'token': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'top_logprobs': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'ChatCompletionTokenLogprob', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ErrorResponse'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ErrorResponse'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...orchestration_v2.models.response.ErrorResponse'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ErrorResponse:140540951165936', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'error': {'metadata': {}, 'schema': {'choices': [...], 'type': 'union'}, 'type': 'model-field'}}, 'model_name': 'ErrorResponse', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'error': FieldInfo(annotation=Union[SAPAPIError, list[SAPAPIError]], required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d4ed990) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="ErrorResponse", validator...ator: Py(0x7fd23d9a0160) })], cache_strings=True)
- __signature__ = <Signature (*, error: Union[gen_ai_hub.orchestra...ration_v2.models.response.SAPAPIError]]) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'error': FieldInfo(annotation=Union[SAPAPIError, list[SAPAPIError]], required=True)}
|
class ErrorResponseStreaming(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
ErrorResponseStreaming(*, error: Union[gen_ai_hub.orchestration_v2.models.response.SAPAPIErrorStreaming, list[gen_ai_hub.orchestration_v2.models.response.SAPAPIErrorStreaming]]) -> None
|
| |
- Method resolution order:
- ErrorResponseStreaming
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'error': typing.Union[gen_ai_hub.orchestration_v2.models....tration_v2.models.response.SAPAPIErrorStreaming]]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.response.SAPAPIErrorStreaming'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'SAPAPIErrorStreaming'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ration_v2.models.response.SAPAPIErrorStreaming'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.SAPAPIErrorStreaming:140540951524064', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'code': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'headers': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'intermediate_results': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'location': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'message': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'request_id': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'SAPAPIErrorStreaming', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration.models.response.GenericModuleResult'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'GenericModuleResult'}, 'fields': ['message', 'data'], 'frozen': False, 'post_init': False, 'ref': 'gen_ai_hub.orchestration.models.response.GenericModuleResult:140540951613248', 'schema': {'collect_init_only': False, 'computed_fields': [], 'dataclass_name': 'GenericModuleResult', 'fields': [{'init': True, 'kw_only': False, 'metadata': {}, 'name': 'message', 'schema': {...}, 'type': 'dataclass-field'}, {'init': True, 'kw_only': False, 'metadata': {}, 'name': 'data', 'schema': {...}, 'type': 'dataclass-field'}], 'type': 'dataclass-args'}, 'slots': False, 'type': 'dataclass'}, {'cls': <class 'gen_ai_hub.orchestration.models.response.LLMChoiceStreaming'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'LLMChoiceStreaming'}, 'fields': ['index', 'delta', 'finish_reason', 'logprobs'], 'frozen': False, 'post_init': False, 'ref': 'gen_ai_hub.orchestration.models.response.LLMChoiceStreaming:140540951612224', 'schema': {'collect_init_only': False, 'computed_fields': [], 'dataclass_name': 'LLMChoiceStreaming', 'fields': [{'init': True, 'kw_only': False, 'metadata': {}, 'name': 'index', 'schema': {...}, 'type': 'dataclass-field'}, {'init': True, 'kw_only': False, 'metadata': {}, 'name': 'delta', 'schema': {...}, 'type': 'dataclass-field'}, {'init': True, 'kw_only': False, 'metadata': {}, 'name': 'finish_reason', 'schema': {...}, 'type': 'dataclass-field'}, {'init': True, 'kw_only': False, 'metadata': {}, 'name': 'logprobs', 'schema': {...}, 'type': 'dataclass-field'}], 'type': 'dataclass-args'}, 'slots': False, 'type': 'dataclass'}, {'cls': <class 'gen_ai_hub.orchestration.models.response.ChatDelta'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChatDelta'}, 'fields': ['content', 'role', 'refusal', 'tool_calls'], 'frozen': False, 'post_init': False, 'ref': 'gen_ai_hub.orchestration.models.response.ChatDelta:140540951608192', 'schema': {'collect_init_only': False, 'computed_fields': [], 'dataclass_name': 'ChatDelta', 'fields': [{'init': True, 'kw_only': False, 'metadata': {}, 'name': 'content', 'schema': {...}, 'type': 'dataclass-field'}, {'init': True, 'kw_only': False, 'metadata': {}, 'name': 'role', 'schema': {...}, 'type': 'dataclass-field'}, {'init': True, 'kw_only': False, 'metadata': {}, 'name': 'refusal', 'schema': {...}, 'type': 'dataclass-field'}, {'init': True, 'kw_only': False, 'metadata': {}, 'name': 'tool_calls', 'schema': {...}, 'type': 'dataclass-field'}], 'type': 'dataclass-args'}, 'slots': False, 'type': 'dataclass'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ErrorResponseStreaming'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ErrorResponseStreaming'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tion_v2.models.response.ErrorResponseStreaming'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ErrorResponseStreaming:140540951167968', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'error': {'metadata': {}, 'schema': {'choices': [...], 'type': 'union'}, 'type': 'model-field'}}, 'model_name': 'ErrorResponseStreaming', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'error': FieldInfo(annotation=Union[SAPAPIErrorStreaming, list[SAPAPIErrorStreaming]], required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...config: false }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="ErrorResponseStreaming", ...ator: Py(0x7fd23d4eecb0) })], cache_strings=True)
- __signature__ = <Signature (*, error: Union[gen_ai_hub.orchestra....models.response.SAPAPIErrorStreaming]]) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'error': FieldInfo(annotation=Union[SAPAPIErrorStreaming, list[SAPAPIErrorStreaming]], required=True)}
|
class FilteringModuleConfig(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
FilteringModuleConfig(*, input: Optional[gen_ai_hub.orchestration_v2.models.content_filtering.InputFiltering] = None, output: Optional[gen_ai_hub.orchestration_v2.models.content_filtering.OutputFiltering] = None) -> None
Module for managing and applying content filters.
Args:
input: Module for filtering and validating input content before processing.
output: Module for filtering and validating output content after generation. |
| |
- Method resolution order:
- FilteringModuleConfig
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Class methods defined here:
- enforce_min_properties(values) from pydantic._internal._model_construction.ModelMetaclass
- Ensure at least one of input or output filtering is provided.
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'input': typing.Optional[gen_ai_hub.orchestration_v2.models.content_filtering.InputFiltering], 'output': typing.Optional[gen_ai_hub.orchestration_v2.models.content_filtering.OutputFiltering]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'function': {'function': <bound method FilteringModuleConfig.enforce_min_...models.content_filtering.FilteringModuleConfig'>>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...models.content_filtering.FilteringModuleConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.content_filtering.FilteringModuleConfig:140540952494000', 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.content_filtering.FilteringModuleConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'FilteringModuleConfig'}, 'custom_init': False, 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'input': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'output': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'FilteringModuleConfig', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'function-after'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...ecoratorInfo(mode='after'))}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'input': FieldInfo(annotation=Union[InputFiltering, NoneType], required=False, default=None), 'output': FieldInfo(annotation=Union[OutputFiltering, NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="FilteringModuleConfig", v...se,
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, input: Optional[gen_ai_hub.orches...ntent_filtering.OutputFiltering] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'input': FieldInfo(annotation=Union[InputFiltering, NoneType], required=False, default=None), 'output': FieldInfo(annotation=Union[OutputFiltering, NoneType], required=False, default=None)}
|
class FilteringStreamOptions(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
FilteringStreamOptions(*, overlap: Annotated[Optional[int], Ge(ge=0), Le(le=10000)] = 0) -> None
overlap: Number of characters that should be additionally sent to content filtering services
from previous chunks as additional context. |
| |
- Method resolution order:
- FilteringStreamOptions
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'overlap': typing.Optional[int]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.content_filter.FilteringStreamOptions'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'FilteringStreamOptions'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...2.models.content_filter.FilteringStreamOptions'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.content_filter.FilteringStreamOptions:140540954137392', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'overlap': {'metadata': {}, 'schema': {'default': 0, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'FilteringStreamOptions', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'overlap': FieldInfo(annotation=Union[int, NoneType], requi...se, default=0, metadata=[Ge(ge=0), Le(le=10000)])}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="FilteringStreamOptions", ...s",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, overlap: Annotated[Optional[int], Ge(ge=0), Le(le=10000)] = 0) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'overlap': FieldInfo(annotation=Union[int, NoneType], requi...se, default=0, metadata=[Ge(ge=0), Le(le=10000)])}
|
class FunctionCall(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
FunctionCall(*, name: str, arguments: str) -> None
Represents a function call with its name and arguments.
Attributes:
name: str
The name of the function to call.
arguments: str
The arguments to call the function with, as generated by the model in JSON
format. Note that the model does not always generate valid JSON, and may
hallucinate parameters not defined by your function schema. Validate the
arguments in your code before calling your function. |
| |
- Method resolution order:
- FunctionCall
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Methods defined here:
- parse_arguments(self) -> dict
- Parses the arguments string as JSON.
:return: A dictionary representing the parsed arguments.
:rtype: dict
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'arguments': <class 'str'>, 'name': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.message.FunctionCall'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'FunctionCall'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...b.orchestration_v2.models.message.FunctionCall'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.message.FunctionCall:140540952620848', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'arguments': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'name': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'FunctionCall', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'arguments': FieldInfo(annotation=str, required=True), 'name': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="FunctionCall", validator=...l",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, name: str, arguments: str) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'arguments': FieldInfo(annotation=str, required=True), 'name': FieldInfo(annotation=str, required=True)}
|
class FunctionObject(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
FunctionObject(*, description: Optional[str] = None, name: str, parameters: Optional[dict], strict: bool = False, function: Optional[Callable] = None) -> None
Represents a function.
Args:
name (str): The name of the function to be called. Must be a-z, A-Z, 0-9,
or contain underscores and dashes, with a maximum length of 64.
description (str): A description of what the function does, used by the model
to choose when and how to call the function.
parameters (dict): The parameters the functions accepts, described as a JSON Schema object.
Omitting parameters defines a function with an empty parameter list.
strict (bool, optional): Whether to enable strict schema adherence when generating the function call.
If set to true, the model will follow the exact schema defined in the parameters field.
Only a subset of JSON Schema is supported when strict is true. Defaults to False. |
| |
- Method resolution order:
- FunctionObject
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'description': typing.Optional[str], 'function': typing.Optional[typing.Callable], 'name': <class 'str'>, 'parameters': typing.Optional[dict], 'strict': <class 'bool'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.tools.FunctionObject'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'FunctionObject'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...b.orchestration_v2.models.tools.FunctionObject'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.tools.FunctionObject:140540952276944', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'description': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'function': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'serialization_exclude': True, 'type': 'model-field'}, 'name': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'parameters': {'metadata': {}, 'schema': {'schema': {'keys_schema': {...}, 'type': 'dict', 'values_schema': {...}}, 'type': 'nullable'}, 'type': 'model-field'}, 'strict': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'FunctionObject', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'description': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'function': FieldInfo(annotation=Union[Callable, NoneType], required=False, default=None, exclude=True), 'name': FieldInfo(annotation=str, required=True), 'parameters': FieldInfo(annotation=Union[dict, NoneType], required=True), 'strict': FieldInfo(annotation=bool, required=False, default=False)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="FunctionObject", validato...t",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, description: Optional[str] = None...se, function: Optional[Callable] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'description': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'function': FieldInfo(annotation=Union[Callable, NoneType], required=False, default=None, exclude=True), 'name': FieldInfo(annotation=str, required=True), 'parameters': FieldInfo(annotation=Union[dict, NoneType], required=True), 'strict': FieldInfo(annotation=bool, required=False, default=False)}
|
class FunctionTool(ChatCompletionTool) |
| |
FunctionTool(*, type: Literal['function'] = 'function', function: gen_ai_hub.orchestration_v2.models.tools.FunctionObject) -> None
Represents a function tool for OpenAI-like function calling.
Args:
type (Literal["function"]): The type of the tool. Currently, only function is supported.
function (FunctionObject): The function to be called. |
| |
- Method resolution order:
- FunctionTool
- ChatCompletionTool
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Methods defined here:
- async aexecute(self, **kwargs: Any) -> Any
- Asynchronously execute the function with the provided arguments.
- execute(self, **kwargs: Any) -> Any
- Execute the function with the provided arguments.
Static methods defined here:
- from_function(func: Callable, *, description: Optional[str] = None, strict: bool = False) -> 'FunctionTool'
- Create a FunctionTool from a Python function.
Args:
func (Callable): The function to be converted to a FunctionTool.
description (Optional[str]): A description of the function. Defaults to the docstring of the function.
strict (bool): Whether to enable strict schema adherence when generating the function call.
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'function': <class 'gen_ai_hub.orchestration_v2.models.tools.FunctionObject'>, 'type_': typing.Literal['function']}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.tools.FunctionTool'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'FunctionTool'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...hub.orchestration_v2.models.tools.FunctionTool'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.tools.FunctionTool:140540952280944', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'function': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.tools.FunctionObject'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'FunctionObject'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [...]}, 'ref': 'gen_ai_hub.orchestration_v2.models.tools.FunctionObject:140540952276944', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {...}, 'model_name': 'FunctionObject', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {'default': 'function', 'schema': {'expected': [...], 'type': 'literal'}, 'type': 'default'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'FunctionTool', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'function': FieldInfo(annotation=FunctionObject, required=True), 'type_': FieldInfo(annotation=Literal['function'], requir...fault='function', alias='type', alias_priority=2)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="FunctionTool", validator=...l",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, type: Literal['function'] = 'func...stration_v2.models.tools.FunctionObject) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'function': FieldInfo(annotation=FunctionObject, required=True), 'type_': FieldInfo(annotation=Literal['function'], requir...fault='function', alias='type', alias_priority=2)}
|
class GenericModuleResult(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
GenericModuleResult(*, message: str, data: Optional[Any] = None) -> None
Generic module result
Args:
message: Some message created from the module. Example: Input to LLM is masked successfully.
data: Additional data object from the module |
| |
- Method resolution order:
- GenericModuleResult
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'data': typing.Optional[typing.Any], 'message': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.GenericModuleResult'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'GenericModuleResult'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tration_v2.models.response.GenericModuleResult'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.GenericModuleResult:140540951626320', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'message': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'GenericModuleResult', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'data': FieldInfo(annotation=Union[Any, NoneType], required=False, default=None), 'message': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="GenericModuleResult", val...t",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, message: str, data: Optional[Any] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'data': FieldInfo(annotation=Union[Any, NoneType], required=False, default=None), 'message': FieldInfo(annotation=str, required=True)}
|
class GlobalStreamOptions(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
GlobalStreamOptions(*, enabled: Optional[bool] = False, chunk_size: Optional[int] = 100, delimiters: Optional[List[str]] = None) -> None
Represents options for streaming content generation.
Args:
enabled(bool, optional): If true, the response will be streamed back to the client.
chunk_size(int, optional): Minimum number of characters per chunk that post-LLM modules operate on.
delimiters(list(str), optional): List of delimiters to split the input text into chunks.Please note,
this is a required parameter when input_translation_module_config or
output_translation_module_config are configured. |
| |
- Method resolution order:
- GlobalStreamOptions
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Methods defined here:
- model_dump(self, **kwargs)
- Override model_dump to exclude chunk_size and delimiters when enabled is False.
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'chunk_size': typing.Optional[int], 'delimiters': typing.Optional[typing.List[str]], 'enabled': typing.Optional[bool]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.streaming.GlobalStreamOptions'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'GlobalStreamOptions'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ration_v2.models.streaming.GlobalStreamOptions'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.streaming.GlobalStreamOptions:140540952611760', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'chunk_size': {'metadata': {}, 'schema': {'default': 100, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'delimiters': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'enabled': {'metadata': {}, 'schema': {'default': False, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'GlobalStreamOptions', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'chunk_size': FieldInfo(annotation=Union[int, NoneType], required=False, default=100), 'delimiters': FieldInfo(annotation=Union[List[str], NoneType], required=False, default=None), 'enabled': FieldInfo(annotation=Union[bool, NoneType], required=False, default=False)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="GlobalStreamOptions", val...s",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, enabled: Optional[bool] = False, ... delimiters: Optional[List[str]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'chunk_size': FieldInfo(annotation=Union[int, NoneType], required=False, default=100), 'delimiters': FieldInfo(annotation=Union[List[str], NoneType], required=False, default=None), 'enabled': FieldInfo(annotation=Union[bool, NoneType], required=False, default=False)}
|
class GroundingModuleConfig(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
GroundingModuleConfig(*, type: gen_ai_hub.orchestration_v2.models.document_grounding.GroundingType = <GroundingType.DOCUMENT_GROUNDING_SERVICE: 'document_grounding_service'>, config: gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingConfig) -> None
Module for managing and applying grounding aka RAG configurations.
Args:
type: The type of the grounding module.
config: Configuration dictionary for the grounding module. |
| |
- Method resolution order:
- GroundingModuleConfig
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'config': <class 'gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingConfig'>, 'type': <enum 'GroundingType'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'KeyValueListPair'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.document_grounding.KeyValueListPair'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair:140540952511168', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'key': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'value': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'KeyValueListPair', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.document_grounding.GroundingModuleConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'GroundingModuleConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...odels.document_grounding.GroundingModuleConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.document_grounding.GroundingModuleConfig:140540952609792', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'config': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingConfig'>, 'config': {...}, 'custom_init': False, 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.document_grounding.DocumentGroundingConfig:140540952608768', 'root_model': False, 'schema': {...}, 'type': 'model'}, 'type': 'model-field'}, 'type': {'metadata': {}, 'schema': {'default': <GroundingType.DOCUMENT_GROUNDING_SERVICE: 'document_grounding_service'>, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'GroundingModuleConfig', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'config': FieldInfo(annotation=DocumentGroundingConfig, required=True), 'type': FieldInfo(annotation=GroundingType, required=Fal...GROUNDING_SERVICE: 'document_grounding_service'>)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d95aa70) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="GroundingModuleConfig", v...ator: Py(0x7fd23d95a950) })], cache_strings=True)
- __signature__ = <Signature (*, type: gen_ai_hub.orchestration_v2...ument_grounding.DocumentGroundingConfig) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'config': FieldInfo(annotation=DocumentGroundingConfig, required=True), 'type': FieldInfo(annotation=GroundingType, required=Fal...GROUNDING_SERVICE: 'document_grounding_service'>)}
|
class GroundingSearchConfig(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
GroundingSearchConfig(*, max_chunk_count: Annotated[Optional[int], Gt(gt=0)] = None, max_document_count: Annotated[Optional[int], Gt(gt=0)] = None) -> None
Search configuration for the data repository.
Args:
max_chunk_count(int, minimum: 0, exclusiveMinimum: true): Maximum number of chunks to be returned.
Cannot be used with 'maxDocumentCount'.
max_document_count(int, minimum: 0, exclusiveMinimum: true): [Only supports 'vector' dataRepositoryType]
- Maximum number of documents to be returned. Cannot be used with 'maxChunkCount'.
If maxDocumentCount is given, then only one chunk per document is returned. |
| |
- Method resolution order:
- GroundingSearchConfig
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Methods defined here:
- validate_max_chunk_count_and_max_document_count(self)
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'max_chunk_count': typing.Optional[int], 'max_document_count': typing.Optional[int]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'function': {'function': <function GroundingSearchConfig.validate_max_chunk_count_and_max_document_count>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...odels.document_grounding.GroundingSearchConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.document_grounding.GroundingSearchConfig:140540952516208', 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.document_grounding.GroundingSearchConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'GroundingSearchConfig'}, 'custom_init': False, 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'max_chunk_count': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'max_document_count': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'GroundingSearchConfig', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'function-after'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...ecoratorInfo(mode='after'))}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'max_chunk_count': FieldInfo(annotation=Union[int, NoneType], required=False, default=None, metadata=[Gt(gt=0)]), 'max_document_count': FieldInfo(annotation=Union[int, NoneType], required=False, default=None, metadata=[Gt(gt=0)])}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="GroundingSearchConfig", v...se,
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, max_chunk_count: Annotated[Option...notated[Optional[int], Gt(gt=0)] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'max_chunk_count': FieldInfo(annotation=Union[int, NoneType], required=False, default=None, metadata=[Gt(gt=0)]), 'max_document_count': FieldInfo(annotation=Union[int, NoneType], required=False, default=None, metadata=[Gt(gt=0)])}
|
class GroundingType(builtins.str, enum.Enum) |
| |
GroundingType(value, names=None, *, module=None, qualname=None, type=None, start=1)
Enumerates supported grounding types. |
| |
- Method resolution order:
- GroundingType
- builtins.str
- enum.Enum
- builtins.object
Data and other attributes defined here:
- DOCUMENT_GROUNDING_SERVICE = <GroundingType.DOCUMENT_GROUNDING_SERVICE: 'document_grounding_service'>
Data descriptors inherited from enum.Enum:
- name
- The name of the Enum member.
- value
- The value of the Enum member.
Readonly properties inherited from enum.EnumMeta:
- __members__
- Returns a mapping of member name->value.
This mapping lists all enum members, including aliases. Note that this
is a read-only view of the internal mapping.
|
class ImageDetailLevel(enum.Enum) |
| |
ImageDetailLevel(value, names=None, *, module=None, qualname=None, type=None, start=1)
Controls the resolution and detail level for image analysis.
Attributes:
AUTO: The model determines the detail level automatically.
LOW: The model uses a low-fidelity, faster version of the image.
HIGH: The model uses a high-fidelity version of the image. |
| |
- Method resolution order:
- ImageDetailLevel
- enum.Enum
- builtins.object
Data and other attributes defined here:
- AUTO = <ImageDetailLevel.AUTO: 'auto'>
- HIGH = <ImageDetailLevel.HIGH: 'high'>
- LOW = <ImageDetailLevel.LOW: 'low'>
Data descriptors inherited from enum.Enum:
- name
- The name of the Enum member.
- value
- The value of the Enum member.
Readonly properties inherited from enum.EnumMeta:
- __members__
- Returns a mapping of member name->value.
This mapping lists all enum members, including aliases. Note that this
is a read-only view of the internal mapping.
|
class ImageItem(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
ImageItem(*, url: Optional[str] = None, detail: Optional[gen_ai_hub.orchestration_v2.models.multimodal_items.ImageDetailLevel] = None) -> None
Represents an image for use in multimodal messages.
Args:
url: The image location, specified as either a standard URL or a data URL.
- Standard URL example: 'https://example.com/image.png'
- Data URL example: 'data:image/png;base64,...'
detail: The image detail level for model processing.
Example:
# Using a standard URL
img1 = ImageItem(url="https://example.com/image.png", detail=ImageDetailLevel.HIGH)
# Using a data URL
img2 = ImageItem(url="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...") |
| |
- Method resolution order:
- ImageItem
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Methods defined here:
- model_dump(self, *, mode: Union[Literal['json', 'python'], str] = 'python', include: Union[set[int], set[str], collections.abc.Mapping[int, Union[ForwardRef('IncEx'), bool]], collections.abc.Mapping[str, Union[ForwardRef('IncEx'), bool]], NoneType] = None, exclude: Union[set[int], set[str], collections.abc.Mapping[int, Union[ForwardRef('IncEx'), bool]], collections.abc.Mapping[str, Union[ForwardRef('IncEx'), bool]], NoneType] = None, context: Optional[Any] = None, by_alias: bool = True, exclude_unset: bool = False, exclude_defaults: bool = False, exclude_none: bool = False, round_trip: bool = False, warnings: Union[bool, Literal['none', 'warn', 'error']] = True, fallback: Optional[Callable[[Any], Any]] = None, serialize_as_any: bool = False) -> dict[str, typing.Any]
- Dumps the model to a dictionary with default settings.
Static methods defined here:
- from_file(file_path: str, mime_type: Optional[str] = None, detail: Optional[gen_ai_hub.orchestration_v2.models.multimodal_items.ImageDetailLevel] = None) -> 'ImageItem'
- Create an ImageItem from a local image file.
:param file_path: Path to the image file.
:type file_path: str
:param mime_type: Explicit MIME type (e.g., 'image/png').
If not provided, the MIME type will be guessed from the file extension.
:type mime_type: Optional[str], optional
:param detail: The image detail level for model processing.
:type detail: Optional[ImageDetailLevel], optional
:raises ValueError: If the MIME type cannot be determined and is not provided.
:return: An ImageItem instance with the image data as a data URL.
:rtype: ImageItem
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'detail': typing.Optional[gen_ai_hub.orchestration_v2.models.multimodal_items.ImageDetailLevel], 'url': typing.Optional[str]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImageItem'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ImageItem'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.multimodal_items.ImageItem'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImageItem:140540952619840', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'detail': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'url': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'ImageItem', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'detail': FieldInfo(annotation=Union[ImageDetailLevel, NoneType], required=False, default=None), 'url': FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="ImageItem", validator=Mod...m",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, url: Optional[str] = None, detail...ltimodal_items.ImageDetailLevel] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'detail': FieldInfo(annotation=Union[ImageDetailLevel, NoneType], required=False, default=None), 'url': FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}
|
class ImagePart(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
ImagePart(*, image_url: gen_ai_hub.orchestration_v2.models.multimodal_items.ImageUrl, type: Literal['image_url'] = 'image_url') -> None
Represents an image segment within a multimodal content block.
Args:
image_url: An `ImageUrl` object containing the image's location and detail level.
type: The type identifier, defaulting to "image_url". |
| |
- Method resolution order:
- ImagePart
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'image_url': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImageUrl'>, 'type_': typing.Literal['image_url']}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ImagePart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.multimodal_items.ImagePart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart:140540952617824', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'image_url': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImageUrl'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ImageUrl'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [...]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImageUrl:140540952616800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {...}, 'model_name': 'ImageUrl', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {'default': 'image_url', 'schema': {'expected': [...], 'type': 'literal'}, 'type': 'default'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ImagePart', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'image_url': FieldInfo(annotation=ImageUrl, required=True), 'type_': FieldInfo(annotation=Literal['image_url'], requi...ault='image_url', alias='type', alias_priority=2)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="ImagePart", validator=Mod...t",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, image_url: gen_ai_hub.orchestrati...ype: Literal['image_url'] = 'image_url') -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'image_url': FieldInfo(annotation=ImageUrl, required=True), 'type_': FieldInfo(annotation=Literal['image_url'], requi...ault='image_url', alias='type', alias_priority=2)}
|
class ImageUrl(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
ImageUrl(*, url: str, detail: Optional[gen_ai_hub.orchestration_v2.models.multimodal_items.ImageDetailLevel] = None) -> None
A data structure holding the URL and detail level for an image.
Args:
url: The location of the image, as a standard or data URL.
detail: The processing detail level for the image. |
| |
- Method resolution order:
- ImageUrl
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'detail': typing.Optional[gen_ai_hub.orchestration_v2.models.multimodal_items.ImageDetailLevel], 'url': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImageUrl'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ImageUrl'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...hestration_v2.models.multimodal_items.ImageUrl'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImageUrl:140540952616800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'detail': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'url': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'ImageUrl', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'detail': FieldInfo(annotation=Union[ImageDetailLevel, NoneType], required=False, default=None), 'url': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="ImageUrl", validator=Mode...l",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, url: str, detail: Optional[gen_ai...ltimodal_items.ImageDetailLevel] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'detail': FieldInfo(annotation=Union[ImageDetailLevel, NoneType], required=False, default=None), 'url': FieldInfo(annotation=str, required=True)}
|
class InputFiltering(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
InputFiltering(*, filters: Annotated[List[Union[gen_ai_hub.orchestration_v2.models.content_filter.AzureContentSafetyInputFilterConfig, gen_ai_hub.orchestration_v2.models.content_filter.LlamaGuard38bFilterConfig, gen_ai_hub.orchestration_v2.models.content_filter.ContentFilter]], MinLen(min_length=1)]) -> None
Module for managing and applying input content filters.
Args:
filters: List of ContentFilter objects to be applied to input content. |
| |
- Method resolution order:
- InputFiltering
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'filters': typing.List[typing.Union[gen_ai_hub.orchestratio...stration_v2.models.content_filter.ContentFilter]]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.content_filtering.InputFiltering'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'InputFiltering'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ion_v2.models.content_filtering.InputFiltering'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.content_filtering.InputFiltering:140540954142416', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'filters': {'metadata': {}, 'schema': {'items_schema': {'choices': [...], 'type': 'union'}, 'min_length': 1, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'InputFiltering', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'filters': FieldInfo(annotation=List[Union[AzureContentSafe..., required=True, metadata=[MinLen(min_length=1)])}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="InputFiltering", validato...g",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, filters: Annotated[List[Union[gen....ContentFilter]], MinLen(min_length=1)]) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'filters': FieldInfo(annotation=List[Union[AzureContentSafe..., required=True, metadata=[MinLen(min_length=1)])}
|
class InputTranslationConfig(TranslationConfig) |
| |
InputTranslationConfig(*, source_language: Optional[str] = None, target_language: str, apply_to: Optional[list[gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslationApplyToSelector]] = None) -> None
Configuration for input translation.
Args:
source_language: Language of the text to be translated. Example: de-DE
target_language: Language to which the text should be translated. Example: en-US
apply_to: List of selectors that define the scope of translation. |
| |
- Method resolution order:
- InputTranslationConfig
- TranslationConfig
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'apply_to': typing.Optional[list[gen_ai_hub.orchestration_v2...anslation.SAPDocumentTranslationApplyToSelector]]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.translation.InputTranslationConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'InputTranslationConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...n_v2.models.translation.InputTranslationConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.translation.InputTranslationConfig:140540952292016', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'apply_to': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'source_language': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'target_language': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'InputTranslationConfig', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'apply_to': FieldInfo(annotation=Union[list[SAPDocumentTrans...lector], NoneType], required=False, default=None), 'source_language': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'target_language': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="InputTranslationConfig", ...g",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, source_language: Optional[str] = ...mentTranslationApplyToSelector]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'apply_to': FieldInfo(annotation=Union[list[SAPDocumentTrans...lector], NoneType], required=False, default=None), 'source_language': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'target_language': FieldInfo(annotation=str, required=True)}
|
class JSONResponseSchema(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
JSONResponseSchema(*, name: str, description: Optional[str] = None, schema: dict = <factory>, strict: bool = False) -> None
Response format JSON Schema that the model output should adhere to.
Args:
name: The name of the response format.
description: A description of what the response format is for.
schema: A schema for the response format described as a JSON Schema object.
strict: Whether to enable strict schema adherence when generating the output. |
| |
- Method resolution order:
- JSONResponseSchema
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Class methods defined here:
- validate_name(name) from pydantic._internal._model_construction.ModelMetaclass
- validates the name of the response format.
:param name: the name to validate
:type name: str
:raises ValueError: if the name does not match the required pattern or exceeds the maximum length
:return: the validated name
:rtype: str
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'description': typing.Optional[str], 'name': <class 'str'>, 'schema_': <class 'dict'>, 'strict': <class 'bool'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.response_format.JSONResponseSchema'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'JSONResponseSchema'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...n_v2.models.response_format.JSONResponseSchema'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response_format.JSONResponseSchema:140540952268832', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'description': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'name': {'metadata': {}, 'schema': {'function': {'function': <bound method JSONResponseSchema.validate_name o...n_v2.models.response_format.JSONResponseSchema'>>, 'type': 'no-info'}, 'schema': {'type': 'str'}, 'type': 'function-before'}, 'type': 'model-field'}, 'schema_': {'metadata': {'pydantic_js_updates': {'description': 'The schema for the response format, described as a JSON Schema object.'}}, 'schema': {'default_factory': <class 'dict'>, 'default_factory_takes_data': False, 'schema': {'keys_schema': {...}, 'type': 'dict', 'values_schema': {...}}, 'type': 'default'}, 'serialization_alias': 'schema', 'type': 'model-field', 'validation_alias': 'schema'}, 'strict': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'JSONResponseSchema', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'description': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'name': FieldInfo(annotation=str, required=True), 'schema_': FieldInfo(annotation=dict, required=False, defau...onse format, described as a JSON Schema object.'), 'strict': FieldInfo(annotation=bool, required=False, default=False)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="JSONResponseSchema", vali...a",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, name: str, description: Optional[... dict = <factory>, strict: bool = False) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'description': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'name': FieldInfo(annotation=str, required=True), 'schema_': FieldInfo(annotation=dict, required=False, defau...onse format, described as a JSON Schema object.'), 'strict': FieldInfo(annotation=bool, required=False, default=False)}
|
class KeyValueListPair(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
KeyValueListPair(*, key: str, value: List[str]) -> None
|
| |
- Method resolution order:
- KeyValueListPair
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'key': <class 'str'>, 'value': typing.List[str]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'KeyValueListPair'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.document_grounding.KeyValueListPair'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair:140540952511168', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'key': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'value': {'metadata': {}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}}, 'model_name': 'KeyValueListPair', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'key': FieldInfo(annotation=str, required=True), 'value': FieldInfo(annotation=List[str], required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="KeyValueListPair", valida...r",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, key: str, value: List[str]) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'key': FieldInfo(annotation=str, required=True), 'value': FieldInfo(annotation=List[str], required=True)}
|
class LLMChoice(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
LLMChoice(*, index: int, message: gen_ai_hub.orchestration_v2.models.message.ResponseChatMessage, logprobs: Optional[gen_ai_hub.orchestration_v2.models.response.ChoiceLogprobs] = None, finish_reason: str) -> None
Args:
index: Index of the choice
message: Message from the LLM
logprobs: Log probabilities for the choice
finish_reason: Reason the model stopped generating tokens.
- 'stop' if the model hit a natural stop point or a provided stop sequence,
- 'length' if the maximum token number was reached,
- 'content_filter' if content was omitted due to a filter enforced by the LLM model provider
or the content filtering module |
| |
- Method resolution order:
- LLMChoice
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'finish_reason': <class 'str'>, 'index': <class 'int'>, 'logprobs': typing.Optional[gen_ai_hub.orchestration_v2.models.response.ChoiceLogprobs], 'message': <class 'gen_ai_hub.orchestration_v2.models.message.ResponseChatMessage'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChatCompletionTokenLogprob'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.response.ChatCompletionTokenLogprob'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob:140540951628352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'bytes': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'logprob': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'token': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'top_logprobs': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'ChatCompletionTokenLogprob', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.LLMChoice'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'LLMChoice'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...hub.orchestration_v2.models.response.LLMChoice'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.LLMChoice:140540951503888', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'finish_reason': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'index': {'metadata': {}, 'schema': {'type': 'int'}, 'type': 'model-field'}, 'logprobs': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'message': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.message.ResponseChatMessage'>, 'config': {...}, 'custom_init': False, 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.message.ResponseChatMessage:140540952629904', 'root_model': False, 'schema': {...}, 'type': 'model'}, 'type': 'model-field'}}, 'model_name': 'LLMChoice', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'finish_reason': FieldInfo(annotation=str, required=True), 'index': FieldInfo(annotation=int, required=True), 'logprobs': FieldInfo(annotation=Union[ChoiceLogprobs, NoneType], required=False, default=None), 'message': FieldInfo(annotation=ResponseChatMessage, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d4edc60) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="LLMChoice", validator=Mod...ator: Py(0x7fd23d4edbd0) })], cache_strings=True)
- __signature__ = <Signature (*, index: int, message: gen_ai_hub.o...iceLogprobs] = None, finish_reason: str) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'finish_reason': FieldInfo(annotation=str, required=True), 'index': FieldInfo(annotation=int, required=True), 'logprobs': FieldInfo(annotation=Union[ChoiceLogprobs, NoneType], required=False, default=None), 'message': FieldInfo(annotation=ResponseChatMessage, required=True)}
|
class LLMModelDetails(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
LLMModelDetails(*, name: str, version: Optional[str] = 'latest', params: Optional[Dict] = None, timeout: Annotated[Optional[int], Ge(ge=1), Le(le=600)] = 600, max_retries: Annotated[Optional[int], Ge(ge=0), Le(le=5)] = 2) -> None
The model and parameters to be used for the prompt templating.
This is the model that will be used to generate the response.
Args:
name: Name of the model as in LLM Access configuration.
version: Version of the model to be used. Defaults to "latest".
params: Additional parameters for the model. Default values are used for mandatory parameters.
timeout: Timeout for the LLM request in seconds. This parameter is currently ignored for Vertex AI models.
max_retries: Maximum number of retries for the LLM request. This parameter is currently ignored for Vertex AI models. |
| |
- Method resolution order:
- LLMModelDetails
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'max_retries': typing.Optional[int], 'name': <class 'str'>, 'params': typing.Optional[typing.Dict], 'timeout': typing.Optional[int], 'version': typing.Optional[str]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.llm_model_details.LLMModelDetails'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'LLMModelDetails'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...on_v2.models.llm_model_details.LLMModelDetails'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.llm_model_details.LLMModelDetails:140540952613776', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'max_retries': {'metadata': {}, 'schema': {'default': 2, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'name': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'params': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'timeout': {'metadata': {}, 'schema': {'default': 600, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'version': {'metadata': {}, 'schema': {'default': 'latest', 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'LLMModelDetails', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'max_retries': FieldInfo(annotation=Union[int, NoneType], required=False, default=2, metadata=[Ge(ge=0), Le(le=5)]), 'name': FieldInfo(annotation=str, required=True), 'params': FieldInfo(annotation=Union[Dict, NoneType], required=False, default=None), 'timeout': FieldInfo(annotation=Union[int, NoneType], requi...se, default=600, metadata=[Ge(ge=1), Le(le=600)]), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='latest')}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="LLMModelDetails", validat...s",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, name: str, version: Optional[str]...[Optional[int], Ge(ge=0), Le(le=5)] = 2) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'max_retries': FieldInfo(annotation=Union[int, NoneType], required=False, default=2, metadata=[Ge(ge=0), Le(le=5)]), 'name': FieldInfo(annotation=str, required=True), 'params': FieldInfo(annotation=Union[Dict, NoneType], required=False, default=None), 'timeout': FieldInfo(annotation=Union[int, NoneType], requi...se, default=600, metadata=[Ge(ge=1), Le(le=600)]), 'version': FieldInfo(annotation=Union[str, NoneType], required=False, default='latest')}
|
class LLMModuleResult(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
LLMModuleResult(*, id: str, object: str, created: int, model: str, system_fingerprint: Optional[str] = None, choices: List[gen_ai_hub.orchestration_v2.models.response.LLMChoice], usage: gen_ai_hub.orchestration_v2.models.response.TokenUsage, citations: Optional[list[gen_ai_hub.orchestration_v2.models.response.Citation]] = None) -> None
Output from LLM. Follows the OpenAI spec.
Attributes:
id: Unique identifier for the response.
object: Type of object returned (e.g., "chat.completion").
created: Unix timestamp of when the result was created.
model: The model name (e.g., "gpt-4o-mini").
system_fingerprint: Optional system fingerprint associated with the result.
choices: List of LLMChoice objects representing the output choices.
usage: TokenUsage object representing the token usage statistics.
citations: Optional list of citations associated with the response. |
| |
- Method resolution order:
- LLMModuleResult
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'choices': typing.List[gen_ai_hub.orchestration_v2.models.response.LLMChoice], 'citations': typing.Optional[list[gen_ai_hub.orchestration_v2.models.response.Citation]], 'created': <class 'int'>, 'id': <class 'str'>, 'model': <class 'str'>, 'object': <class 'str'>, 'system_fingerprint': typing.Optional[str], 'usage': <class 'gen_ai_hub.orchestration_v2.models.response.TokenUsage'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChatCompletionTokenLogprob'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.response.ChatCompletionTokenLogprob'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob:140540951628352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'bytes': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'logprob': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'token': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'top_logprobs': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'ChatCompletionTokenLogprob', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.LLMModuleResult'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'LLMModuleResult'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...chestration_v2.models.response.LLMModuleResult'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.LLMModuleResult:140540951511984', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'choices': {'metadata': {}, 'schema': {'items_schema': {...}, 'type': 'list'}, 'type': 'model-field'}, 'citations': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'created': {'metadata': {}, 'schema': {'type': 'int'}, 'type': 'model-field'}, 'id': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'model': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'object': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'system_fingerprint': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'usage': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.TokenUsage'>, 'config': {...}, 'custom_init': False, 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.TokenUsage:140540951625360', 'root_model': False, 'schema': {...}, 'type': 'model'}, 'type': 'model-field'}}, 'model_name': 'LLMModuleResult', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'choices': FieldInfo(annotation=List[LLMChoice], required=True), 'citations': FieldInfo(annotation=Union[list[Citation], NoneType], required=False, default=None), 'created': FieldInfo(annotation=int, required=True), 'id': FieldInfo(annotation=str, required=True), 'model': FieldInfo(annotation=str, required=True), 'object': FieldInfo(annotation=str, required=True), 'system_fingerprint': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'usage': FieldInfo(annotation=TokenUsage, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d4edc60) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="LLMModuleResult", validat...ator: Py(0x7fd23d4edbd0) })], cache_strings=True)
- __signature__ = <Signature (*, id: str, object: str, created: in...on_v2.models.response.Citation]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'choices': FieldInfo(annotation=List[LLMChoice], required=True), 'citations': FieldInfo(annotation=Union[list[Citation], NoneType], required=False, default=None), 'created': FieldInfo(annotation=int, required=True), 'id': FieldInfo(annotation=str, required=True), 'model': FieldInfo(annotation=str, required=True), 'object': FieldInfo(annotation=str, required=True), 'system_fingerprint': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'usage': FieldInfo(annotation=TokenUsage, required=True)}
|
class LlamaGuard38bFilter(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
LlamaGuard38bFilter(*, violent_crimes: bool = False, non_violent_crimes: bool = False, sex_crimes: bool = False, child_exploitation: bool = False, defamation: bool = False, specialized_advice: bool = False, privacy: bool = False, intellectual_property: bool = False, indiscriminate_weapons: bool = False, hate: bool = False, self_harm: bool = False, sexual_content: bool = False, elections: bool = False, code_interpreter_abuse: bool = False) -> None
Specific implementation of ContentFilter for Llama Guard 3. Llama Guard 3 is a
Llama-3.1-8B pretrained model, fine-tuned for content safety classification.
Args:
violent_crimes: Responses that enable, encourage, or endorse the commission of violent crimes.
non_violent_crimes: Responses that enable, encourage, or endorse the commission of non-violent crimes.
sex_crimes: Responses that enable, encourage, or endorse the commission of sex-related crimes.
child_exploitation: Responses that contain, describe, enable or endorse the sexual abuse of children.
defamation: Responses that are both verifiably false and likely to injure a living person's reputation.
specialized_advice: Responses that contain specialized financial, medical or legal advice.
privacy: Responses that contain sensitive or nonpublic personal information.
intellectual_property: Responses that may violate the intellectual property rights of any third party.
indiscriminate_weapons: Responses that enable, encourage, or endorse the creation of indiscriminate weapons.
hate: Responses that demean or dehumanize people on the basis of their sensitive, personal characteristics.
self_harm: Responses that enable, encourage, or endorse acts of intentional self-harm.
sexual_content: Responses that contain erotica.
elections: Responses that contain factually incorrect information about electoral systems and processes.
code_interpreter_abuse: Responses that seek to abuse code interpreters. |
| |
- Method resolution order:
- LlamaGuard38bFilter
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'child_exploitation': <class 'bool'>, 'code_interpreter_abuse': <class 'bool'>, 'defamation': <class 'bool'>, 'elections': <class 'bool'>, 'hate': <class 'bool'>, 'indiscriminate_weapons': <class 'bool'>, 'intellectual_property': <class 'bool'>, 'non_violent_crimes': <class 'bool'>, 'privacy': <class 'bool'>, 'self_harm': <class 'bool'>, ...}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.llama_guard_3_filter.LlamaGuard38bFilter'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'LlamaGuard38bFilter'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...odels.llama_guard_3_filter.LlamaGuard38bFilter'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.llama_guard_3_filter.LlamaGuard38bFilter:140540954144432', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'child_exploitation': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'code_interpreter_abuse': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'defamation': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'elections': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'hate': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'indiscriminate_weapons': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'intellectual_property': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'non_violent_crimes': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'privacy': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, 'self_harm': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}, ...}, 'model_name': 'LlamaGuard38bFilter', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'child_exploitation': FieldInfo(annotation=bool, required=False, default=False), 'code_interpreter_abuse': FieldInfo(annotation=bool, required=False, default=False), 'defamation': FieldInfo(annotation=bool, required=False, default=False), 'elections': FieldInfo(annotation=bool, required=False, default=False), 'hate': FieldInfo(annotation=bool, required=False, default=False), 'indiscriminate_weapons': FieldInfo(annotation=bool, required=False, default=False), 'intellectual_property': FieldInfo(annotation=bool, required=False, default=False), 'non_violent_crimes': FieldInfo(annotation=bool, required=False, default=False), 'privacy': FieldInfo(annotation=bool, required=False, default=False), 'self_harm': FieldInfo(annotation=bool, required=False, default=False), ...}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="LlamaGuard38bFilter", val...r",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, violent_crimes: bool = False, non...e, code_interpreter_abuse: bool = False) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'child_exploitation': FieldInfo(annotation=bool, required=False, default=False), 'code_interpreter_abuse': FieldInfo(annotation=bool, required=False, default=False), 'defamation': FieldInfo(annotation=bool, required=False, default=False), 'elections': FieldInfo(annotation=bool, required=False, default=False), 'hate': FieldInfo(annotation=bool, required=False, default=False), 'indiscriminate_weapons': FieldInfo(annotation=bool, required=False, default=False), 'intellectual_property': FieldInfo(annotation=bool, required=False, default=False), 'non_violent_crimes': FieldInfo(annotation=bool, required=False, default=False), 'privacy': FieldInfo(annotation=bool, required=False, default=False), 'self_harm': FieldInfo(annotation=bool, required=False, default=False), ...}
|
class LlamaGuard38bFilterConfig(ContentFilter) |
| |
LlamaGuard38bFilterConfig(*, type: gen_ai_hub.orchestration_v2.models.content_filter.ContentFilterProvider = <ContentFilterProvider.LLAMA_GUARD_3_8B: 'llama_guard_3_8b'>, config: gen_ai_hub.orchestration_v2.models.llama_guard_3_filter.LlamaGuard38bFilter) -> None
|
| |
- Method resolution order:
- LlamaGuard38bFilterConfig
- ContentFilter
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'config': <class 'gen_ai_hub.orchestration_v2.models.llama_guard_3_filter.LlamaGuard38bFilter'>, 'type_': <enum 'ContentFilterProvider'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.content_filter.LlamaGuard38bFilterConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'LlamaGuard38bFilterConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...odels.content_filter.LlamaGuard38bFilterConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.content_filter.LlamaGuard38bFilterConfig:140540952489968', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'config': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.llama_guard_3_filter.LlamaGuard38bFilter'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'LlamaGuard38bFilter'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [...]}, 'ref': 'gen_ai_hub.orchestration_v2.models.llama_guard_3_filter.LlamaGuard38bFilter:140540954144432', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {...}, 'model_name': 'LlamaGuard38bFilter', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {'default': <ContentFilterProvider.LLAMA_GUARD_3_8B: 'llama_guard_3_8b'>, 'schema': {'cls': <enum 'ContentFilterProvider'>, 'members': [...], 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.content_filter.ContentFilterProvider:140540954147472', 'sub_type': 'str', 'type': 'enum'}, 'type': 'default'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'LlamaGuard38bFilterConfig', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'config': FieldInfo(annotation=LlamaGuard38bFilter, required=True), 'type_': FieldInfo(annotation=ContentFilterProvider, requ...ama_guard_3_8b'>, alias='type', alias_priority=2)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="LlamaGuard38bFilterConfig...g",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, type: gen_ai_hub.orchestration_v2...lama_guard_3_filter.LlamaGuard38bFilter) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'config': FieldInfo(annotation=LlamaGuard38bFilter, required=True), 'type_': FieldInfo(annotation=ContentFilterProvider, requ...ama_guard_3_8b'>, alias='type', alias_priority=2)}
|
class MaskGroundingInput(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
MaskGroundingInput(*, enabled: bool = False) -> None
Controls whether the input to the grounding module will be masked with the configuration
supplied in the masking module |
| |
- Method resolution order:
- MaskGroundingInput
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'enabled': <class 'bool'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.data_masking.MaskGroundingInput'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'MaskGroundingInput'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tion_v2.models.data_masking.MaskGroundingInput'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.MaskGroundingInput:140540954136352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'enabled': {'metadata': {}, 'schema': {'default': False, 'schema': {'type': 'bool'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'MaskGroundingInput', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'enabled': FieldInfo(annotation=bool, required=False, default=False)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="MaskGroundingInput", vali...t",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, enabled: bool = False) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'enabled': FieldInfo(annotation=bool, required=False, default=False)}
|
class MaskingMethod(builtins.str, enum.Enum) |
| |
MaskingMethod(value, names=None, *, module=None, qualname=None, type=None, start=1)
Enumerates the supported masking methods.
This enum defines the two main methods for masking sensitive information: anonymization and pseudonymization.
Anonymization irreversibly removes sensitive data, while pseudonymization allows the original data to be recovered.
Values:
ANONYMIZATION: Irreversibly replaces sensitive data with placeholders (e.g., MASKED_ENTITY).
PSEUDONYMIZATION: Replaces sensitive data with reversible placeholders (e.g., MASKED_ENTITY_ID). |
| |
- Method resolution order:
- MaskingMethod
- builtins.str
- enum.Enum
- builtins.object
Data and other attributes defined here:
- ANONYMIZATION = <MaskingMethod.ANONYMIZATION: 'anonymization'>
- PSEUDONYMIZATION = <MaskingMethod.PSEUDONYMIZATION: 'pseudonymization'>
Data descriptors inherited from enum.Enum:
- name
- The name of the Enum member.
- value
- The value of the Enum member.
Readonly properties inherited from enum.EnumMeta:
- __members__
- Returns a mapping of member name->value.
This mapping lists all enum members, including aliases. Note that this
is a read-only view of the internal mapping.
|
class MaskingModuleConfig(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
MaskingModuleConfig(*, providers: Annotated[Optional[List[gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig]], MinLen(min_length=1)] = None, masking_providers: Annotated[Optional[List[gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig]], MinLen(min_length=1)] = None) -> None
Configuration for the data masking module.
Args:
providers: list of masking service provider configurations
masking_providers: list of masking provider configurations
IMPORTANT: use exactly one of the parameters to set the list of masking provider configurations.
DEPRECATED: parameter 'masking_providers' will be removed Sept 15, 2026. Use 'providers' instead. |
| |
- Method resolution order:
- MaskingModuleConfig
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Methods defined here:
- enforce_exactly_one_provider_list(self)
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'masking_providers': typing.Optional[typing.List[gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig]], 'providers': typing.Optional[typing.List[gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig]]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'MaskingProviderConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...n_v2.models.data_masking.MaskingProviderConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig:140540954149488', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'allowlist': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'entities': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'mask_grounding_input': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'method': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'MaskingProviderConfig', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'function': {'function': <function MaskingModuleConfig.enforce_exactly_one_provider_list>, 'type': 'no-info'}, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ion_v2.models.data_masking.MaskingModuleConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingModuleConfig:140540954124272', 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingModuleConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'MaskingModuleConfig'}, 'custom_init': False, 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'masking_providers': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'providers': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'MaskingModuleConfig', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'function-after'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...ecoratorInfo(mode='after'))}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'masking_providers': FieldInfo(annotation=Union[List[MaskingProviderC...e, default=None, metadata=[MinLen(min_length=1)]), 'providers': FieldInfo(annotation=Union[List[MaskingProviderC...e, default=None, metadata=[MinLen(min_length=1)])}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d95a3b0) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="MaskingModuleConfig", val...ator: Py(0x7fd23d95a320) })], cache_strings=True)
- __signature__ = <Signature (*, providers: Annotated[Optional[Lis...rConfig]], MinLen(min_length=1)] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'masking_providers': FieldInfo(annotation=Union[List[MaskingProviderC...e, default=None, metadata=[MinLen(min_length=1)]), 'providers': FieldInfo(annotation=Union[List[MaskingProviderC...e, default=None, metadata=[MinLen(min_length=1)])}
|
class MaskingProviderConfig(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
MaskingProviderConfig(*, type: gen_ai_hub.orchestration_v2.models.data_masking.DataMaskingProviderName = <DataMaskingProviderName.SAP_DATA_PRIVACY_INTEGRATION: 'sap_data_privacy_integration'>, method: gen_ai_hub.orchestration_v2.models.data_masking.MaskingMethod, entities: List[Union[gen_ai_hub.orchestration_v2.models.data_masking.DPIStandardEntity, gen_ai_hub.orchestration_v2.models.data_masking.DPICustomEntity]], allowlist: Optional[List[str]] = None, mask_grounding_input: Optional[gen_ai_hub.orchestration_v2.models.data_masking.MaskGroundingInput] = None) -> None
SAP Data Privacy Integration provider for data masking.
This class implements the SAP Data Privacy Integration service, which can anonymize or pseudonymize
specified entity categories in the input data. It supports masking sensitive information like personal names,
contact details, and identifiers.
Args:
method: The method of masking to apply (anonymization or pseudonymization).
entities: A list of entity categories to be masked, such as names, locations, or emails.
allowlist: A list of strings that should not be masked.
mask_grounding_input: A flag indicating whether to mask input to the grounding module. |
| |
- Method resolution order:
- MaskingProviderConfig
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'allowlist': typing.Optional[typing.List[str]], 'entities': typing.List[typing.Union[gen_ai_hub.orchestratio...stration_v2.models.data_masking.DPICustomEntity]], 'mask_grounding_input': typing.Optional[gen_ai_hub.orchestration_v2.models.data_masking.MaskGroundingInput], 'method': <enum 'MaskingMethod'>, 'type_': <enum 'DataMaskingProviderName'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'MaskingProviderConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...n_v2.models.data_masking.MaskingProviderConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig:140540954149488', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'allowlist': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'entities': {'metadata': {}, 'schema': {'items_schema': {'choices': [...], 'type': 'union'}, 'type': 'list'}, 'type': 'model-field'}, 'mask_grounding_input': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'method': {'metadata': {}, 'schema': {'cls': <enum 'MaskingMethod'>, 'members': [<MaskingMethod.ANONYMIZATION: 'anonymization'>, <MaskingMethod.PSEUDONYMIZATION: 'pseudonymization'>], 'metadata': {'pydantic_js_functions': [...]}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingMethod:140540952498064', 'sub_type': 'str', 'type': 'enum'}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {'default': <DataMaskingProviderName.SAP_DATA_PRIVACY_INTEGRATION: 'sap_data_privacy_integration'>, 'schema': {'cls': <enum 'DataMaskingProviderName'>, 'members': [...], 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.DataMaskingProviderName:140540952497024', 'sub_type': 'str', 'type': 'enum'}, 'type': 'default'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'MaskingProviderConfig', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'allowlist': FieldInfo(annotation=Union[List[str], NoneType], required=False, default=None), 'entities': FieldInfo(annotation=List[Union[DPIStandardEntity, DPICustomEntity]], required=True), 'mask_grounding_input': FieldInfo(annotation=Union[MaskGroundingInput, NoneType], required=False, default=None), 'method': FieldInfo(annotation=MaskingMethod, required=True), 'type_': FieldInfo(annotation=DataMaskingProviderName, re...cy_integration'>, alias='type', alias_priority=2)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="MaskingProviderConfig", v...g",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, type: gen_ai_hub.orchestration_v2...data_masking.MaskGroundingInput] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'allowlist': FieldInfo(annotation=Union[List[str], NoneType], required=False, default=None), 'entities': FieldInfo(annotation=List[Union[DPIStandardEntity, DPICustomEntity]], required=True), 'mask_grounding_input': FieldInfo(annotation=Union[MaskGroundingInput, NoneType], required=False, default=None), 'method': FieldInfo(annotation=MaskingMethod, required=True), 'type_': FieldInfo(annotation=DataMaskingProviderName, re...cy_integration'>, alias='type', alias_priority=2)}
|
class MessageToolCall(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
MessageToolCall(*, id: str, type: Literal['function'] = 'function', function: gen_ai_hub.orchestration_v2.models.message.FunctionCall) -> None
The tool calls generated by the model, such as function calls.
Attributes:
id: The ID of the tool call.
type: The type of the tool. Currently, only `function` is supported.
function: The function that the model called. |
| |
- Method resolution order:
- MessageToolCall
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'function': <class 'gen_ai_hub.orchestration_v2.models.message.FunctionCall'>, 'id': <class 'str'>, 'type': typing.Literal['function']}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.message.MessageToolCall'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'MessageToolCall'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...rchestration_v2.models.message.MessageToolCall'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.message.MessageToolCall:140540952621856', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'function': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.message.FunctionCall'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'FunctionCall'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [...]}, 'ref': 'gen_ai_hub.orchestration_v2.models.message.FunctionCall:140540952620848', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {...}, 'model_name': 'FunctionCall', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'id': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'type': {'metadata': {}, 'schema': {'default': 'function', 'schema': {'expected': [...], 'type': 'literal'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'MessageToolCall', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'function': FieldInfo(annotation=FunctionCall, required=True), 'id': FieldInfo(annotation=str, required=True), 'type': FieldInfo(annotation=Literal['function'], required=False, default='function')}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="MessageToolCall", validat...l",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, id: str, type: Literal['function'...stration_v2.models.message.FunctionCall) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'function': FieldInfo(annotation=FunctionCall, required=True), 'id': FieldInfo(annotation=str, required=True), 'type': FieldInfo(annotation=Literal['function'], required=False, default='function')}
|
class ModuleConfig(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
ModuleConfig(*, prompt_templating: gen_ai_hub.orchestration_v2.models.template.PromptTemplatingModuleConfig, filtering: Optional[gen_ai_hub.orchestration_v2.models.content_filtering.FilteringModuleConfig] = None, masking: Optional[gen_ai_hub.orchestration_v2.models.data_masking.MaskingModuleConfig] = None, grounding: Optional[gen_ai_hub.orchestration_v2.models.document_grounding.GroundingModuleConfig] = None, translation: Optional[gen_ai_hub.orchestration_v2.models.translation.TranslationModuleConfig] = None) -> None
Configuration for the Orchestration Service's content generation process.
Defines modules for a harmonized API that combines LLM-based content generation
with additional processing functionalities.
The orchestration service allows for advanced content generation by processing inputs through a series of steps:
template rendering, text generation via LLMs, and optional input/output transformations such as data masking
or filtering.
Args:
prompt_templating: Template object for rendering input prompts and language model for text generation.
filtering: Module for filtering and validating input/output content.
masking: Module for anonymizing or pseudonymizing sensitive information.
grounding: Module for document grounding.
translation: Module for translating input and output content. |
| |
- Method resolution order:
- ModuleConfig
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'filtering': typing.Optional[gen_ai_hub.orchestration_v2.models.content_filtering.FilteringModuleConfig], 'grounding': typing.Optional[gen_ai_hub.orchestration_v2.models.document_grounding.GroundingModuleConfig], 'masking': typing.Optional[gen_ai_hub.orchestration_v2.models.data_masking.MaskingModuleConfig], 'prompt_templating': <class 'gen_ai_hub.orchestration_v2.models.template.PromptTemplatingModuleConfig'>, 'translation': typing.Optional[gen_ai_hub.orchestration_v2.models.translation.TranslationModuleConfig]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TextPart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...hestration_v2.models.multimodal_items.TextPart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart:140540952612800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'text': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'TextPart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ImagePart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.multimodal_items.ImagePart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart:140540952617824', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'image_url': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ImagePart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'MaskingProviderConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...n_v2.models.data_masking.MaskingProviderConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig:140540954149488', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'allowlist': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'entities': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'mask_grounding_input': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'method': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'MaskingProviderConfig', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'KeyValueListPair'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.document_grounding.KeyValueListPair'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair:140540952511168', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'key': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'value': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'KeyValueListPair', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslation'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'SAPDocumentTranslation'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...n_v2.models.translation.SAPDocumentTranslation'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslation:140540952286992', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'config': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'SAPDocumentTranslation', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.config.ModuleConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ModuleConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ub.orchestration_v2.models.config.ModuleConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.config.ModuleConfig:140540952300112', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'filtering': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'grounding': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'masking': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'prompt_templating': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.template.PromptTemplatingModuleConfig'>, 'config': {...}, 'custom_init': False, 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.template.PromptTemplatingModuleConfig:140540952285968', 'root_model': False, 'schema': {...}, 'type': 'model'}, 'type': 'model-field'}, 'translation': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'ModuleConfig', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'filtering': FieldInfo(annotation=Union[FilteringModuleConfig, NoneType], required=False, default=None), 'grounding': FieldInfo(annotation=Union[GroundingModuleConfig, NoneType], required=False, default=None), 'masking': FieldInfo(annotation=Union[MaskingModuleConfig, NoneType], required=False, default=None), 'prompt_templating': FieldInfo(annotation=PromptTemplatingModuleConfig, required=True), 'translation': FieldInfo(annotation=Union[TranslationModuleConfig, NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d9a0280) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="ModuleConfig", validator=...ator: Py(0x7fd23d9a2d40) })], cache_strings=True)
- __signature__ = <Signature (*, prompt_templating: gen_ai_hub.orc...slation.TranslationModuleConfig] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'filtering': FieldInfo(annotation=Union[FilteringModuleConfig, NoneType], required=False, default=None), 'grounding': FieldInfo(annotation=Union[GroundingModuleConfig, NoneType], required=False, default=None), 'masking': FieldInfo(annotation=Union[MaskingModuleConfig, NoneType], required=False, default=None), 'prompt_templating': FieldInfo(annotation=PromptTemplatingModuleConfig, required=True), 'translation': FieldInfo(annotation=Union[TranslationModuleConfig, NoneType], required=False, default=None)}
|
class ModuleResults(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
ModuleResults(*, grounding: Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult] = None, templating: Optional[List[Union[gen_ai_hub.orchestration_v2.models.message.SystemMessage, gen_ai_hub.orchestration_v2.models.message.UserMessage, gen_ai_hub.orchestration_v2.models.message.AssistantMessage, gen_ai_hub.orchestration_v2.models.message.ToolChatMessage, gen_ai_hub.orchestration_v2.models.message.DeveloperChatMessage, gen_ai_hub.orchestration_v2.models.message.ResponseChatMessage]]] = None, input_translation: Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult] = None, input_masking: Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult] = None, input_filtering: Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult] = None, output_filtering: Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult] = None, output_translation: Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult] = None, llm: Optional[gen_ai_hub.orchestration_v2.models.response.LLMModuleResult] = None, output_unmasking: Optional[List[gen_ai_hub.orchestration_v2.models.response.LLMChoice]] = None) -> None
Represents the results of each module used in a processing pipeline.
Attributes:
grounding: Optional result from the grounding module.
templating: Optional list of chat messages resulting from the templating
module.
input_translation: Optional result from the input translation module.
input_masking: Optional result from the input masking module.
input_filtering: Optional result from the input filtering module.
output_filtering: Optional result from the output filtering module.
output_translation: Optional result from the output translation module.
llm: Optional result from an LLM-specific module.
output_unmasking: Optional list of choices from the output unmasking
module. |
| |
- Method resolution order:
- ModuleResults
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'grounding': typing.Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult], 'input_filtering': typing.Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult], 'input_masking': typing.Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult], 'input_translation': typing.Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult], 'llm': typing.Optional[gen_ai_hub.orchestration_v2.models.response.LLMModuleResult], 'output_filtering': typing.Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult], 'output_translation': typing.Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult], 'output_unmasking': typing.Optional[typing.List[gen_ai_hub.orchestration_v2.models.response.LLMChoice]], 'templating': typing.Optional[typing.List[typing.Union[gen_ai_...stration_v2.models.message.ResponseChatMessage]]]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.response.GenericModuleResult'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'GenericModuleResult'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tration_v2.models.response.GenericModuleResult'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.GenericModuleResult:140540951626320', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'message': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'GenericModuleResult', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TextPart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...hestration_v2.models.multimodal_items.TextPart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart:140540952612800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'text': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'TextPart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ImagePart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.multimodal_items.ImagePart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart:140540952617824', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'image_url': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ImagePart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChatCompletionTokenLogprob'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.response.ChatCompletionTokenLogprob'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob:140540951628352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'bytes': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'logprob': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'token': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'top_logprobs': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'ChatCompletionTokenLogprob', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ModuleResults'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ModuleResults'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...orchestration_v2.models.response.ModuleResults'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ModuleResults:140540951514976', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'grounding': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'input_filtering': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'input_masking': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'input_translation': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'llm': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'output_filtering': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'output_translation': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'output_unmasking': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'templating': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'ModuleResults', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'grounding': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'input_filtering': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'input_masking': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'input_translation': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'llm': FieldInfo(annotation=Union[LLMModuleResult, NoneType], required=False, default=None), 'output_filtering': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'output_translation': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'output_unmasking': FieldInfo(annotation=Union[List[LLMChoice], NoneType], required=False, default=None), 'templating': FieldInfo(annotation=Union[List[Union[SystemMess...ssage]], NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d9a0280) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="ModuleResults", validator...ator: Py(0x7fd23d4edbd0) })], cache_strings=True)
- __signature__ = <Signature (*, grounding: Optional[gen_ai_hub.or...n_v2.models.response.LLMChoice]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'grounding': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'input_filtering': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'input_masking': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'input_translation': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'llm': FieldInfo(annotation=Union[LLMModuleResult, NoneType], required=False, default=None), 'output_filtering': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'output_translation': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'output_unmasking': FieldInfo(annotation=Union[List[LLMChoice], NoneType], required=False, default=None), 'templating': FieldInfo(annotation=Union[List[Union[SystemMess...ssage]], NoneType], required=False, default=None)}
|
class OrchestrationConfig(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
OrchestrationConfig(*, modules: Union[gen_ai_hub.orchestration_v2.models.config.ModuleConfig, Annotated[List[gen_ai_hub.orchestration_v2.models.config.ModuleConfig], FieldInfo(annotation=NoneType, required=True, metadata=[MinLen(min_length=1)])]], stream: Optional[gen_ai_hub.orchestration_v2.models.streaming.GlobalStreamOptions] = None) -> None
Configuration for the Orchestration Service's content generation process.
Args:
modules: Either a single ModuleConfig or a list of ModuleConfigs. When a list is provided,
the orchestration service will try each configuration in order until one succeeds.
stream: Optional streaming configuration. |
| |
- Method resolution order:
- OrchestrationConfig
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'modules': typing.Union[gen_ai_hub.orchestration_v2.models....required=True, metadata=[MinLen(min_length=1)])]], 'stream': typing.Optional[gen_ai_hub.orchestration_v2.models.streaming.GlobalStreamOptions]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.config.ModuleConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ModuleConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ub.orchestration_v2.models.config.ModuleConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.config.ModuleConfig:140540952300112', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'filtering': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'grounding': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'masking': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'prompt_templating': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'translation': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'ModuleConfig', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TextPart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...hestration_v2.models.multimodal_items.TextPart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart:140540952612800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'text': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'TextPart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ImagePart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.multimodal_items.ImagePart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart:140540952617824', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'image_url': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ImagePart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'MaskingProviderConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...n_v2.models.data_masking.MaskingProviderConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.data_masking.MaskingProviderConfig:140540954149488', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'allowlist': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'entities': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'mask_grounding_input': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'method': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'MaskingProviderConfig', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'KeyValueListPair'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.document_grounding.KeyValueListPair'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.document_grounding.KeyValueListPair:140540952511168', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'key': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'value': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'KeyValueListPair', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslation'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'SAPDocumentTranslation'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...n_v2.models.translation.SAPDocumentTranslation'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslation:140540952286992', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'config': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'SAPDocumentTranslation', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.config.OrchestrationConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'OrchestrationConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.config.OrchestrationConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.config.OrchestrationConfig:140540951717936', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'modules': {'metadata': {}, 'schema': {'choices': [...], 'type': 'union'}, 'type': 'model-field'}, 'stream': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OrchestrationConfig', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'modules': FieldInfo(annotation=Union[ModuleConfig, Annotat...etadata=[MinLen(min_length=1)])]], required=True), 'stream': FieldInfo(annotation=Union[GlobalStreamOptions, NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d95a3b0) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="OrchestrationConfig", val...ator: Py(0x7fd23d95a320) })], cache_strings=True)
- __signature__ = <Signature (*, modules: Union[gen_ai_hub.orchest...s.streaming.GlobalStreamOptions] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'modules': FieldInfo(annotation=Union[ModuleConfig, Annotat...etadata=[MinLen(min_length=1)])]], required=True), 'stream': FieldInfo(annotation=Union[GlobalStreamOptions, NoneType], required=False, default=None)}
|
class OrchestrationResponseWithRetries(CompletionPostResponse) |
| |
OrchestrationResponseWithRetries(*, request_id: str, intermediate_results: gen_ai_hub.orchestration_v2.models.response.ModuleResults, final_result: gen_ai_hub.orchestration_v2.models.response.LLMModuleResult, intermediate_failures: Optional[List[gen_ai_hub.orchestration_v2.models.response.SAPAPIError]] = None, retries: int = 0) -> None
Extended CompletionPostResponse that includes retry count information.
This is returned when using retry-enabled methods like run_with_retries().
Attributes:
retries: Number of retry attempts that were made to successfully complete this request. |
| |
- Method resolution order:
- OrchestrationResponseWithRetries
- CompletionPostResponse
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'retries': <class 'int'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.response.GenericModuleResult'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'GenericModuleResult'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tration_v2.models.response.GenericModuleResult'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.GenericModuleResult:140540951626320', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'message': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'GenericModuleResult', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TextPart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...hestration_v2.models.multimodal_items.TextPart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart:140540952612800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'text': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'TextPart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ImagePart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.multimodal_items.ImagePart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart:140540952617824', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'image_url': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ImagePart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChatCompletionTokenLogprob'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.response.ChatCompletionTokenLogprob'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob:140540951628352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'bytes': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'logprob': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'token': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'top_logprobs': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'ChatCompletionTokenLogprob', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.OrchestrationResponseWithRetries'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'OrchestrationResponseWithRetries'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...dels.response.OrchestrationResponseWithRetries'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.OrchestrationResponseWithRetries:140540951170992', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'final_result': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.LLMModuleResult'>, 'config': {...}, 'custom_init': False, 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.LLMModuleResult:140540951511984', 'root_model': False, 'schema': {...}, 'type': 'model'}, 'type': 'model-field'}, 'intermediate_failures': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'intermediate_results': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ModuleResults'>, 'config': {...}, 'custom_init': False, 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ModuleResults:140540951514976', 'root_model': False, 'schema': {...}, 'type': 'model'}, 'type': 'model-field'}, 'request_id': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'retries': {'metadata': {}, 'schema': {'default': 0, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OrchestrationResponseWithRetries', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'final_result': FieldInfo(annotation=LLMModuleResult, required=True), 'intermediate_failures': FieldInfo(annotation=Union[List[SAPAPIError], NoneType], required=False, default=None), 'intermediate_results': FieldInfo(annotation=ModuleResults, required=True), 'request_id': FieldInfo(annotation=str, required=True), 'retries': FieldInfo(annotation=int, required=False, default=0)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d9a0280) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="OrchestrationResponseWith...ator: Py(0x7fd23d4ed900) })], cache_strings=True)
- __signature__ = <Signature (*, request_id: str, intermediate_res....SAPAPIError]] = None, retries: int = 0) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'final_result': FieldInfo(annotation=LLMModuleResult, required=True), 'intermediate_failures': FieldInfo(annotation=Union[List[SAPAPIError], NoneType], required=False, default=None), 'intermediate_results': FieldInfo(annotation=ModuleResults, required=True), 'request_id': FieldInfo(annotation=str, required=True), 'retries': FieldInfo(annotation=int, required=False, default=0)}
|
class OutputFiltering(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
OutputFiltering(*, filters: Annotated[List[Union[gen_ai_hub.orchestration_v2.models.content_filter.AzureContentSafetyOutputFilterConfig, gen_ai_hub.orchestration_v2.models.content_filter.LlamaGuard38bFilterConfig, gen_ai_hub.orchestration_v2.models.content_filter.ContentFilter]], MinLen(min_length=1)], stream_options: Optional[gen_ai_hub.orchestration_v2.models.content_filter.FilteringStreamOptions] = None) -> None
Module for managing and applying output content filters.
Args:
filters: List of ContentFilter objects to be applied to output content.
stream_options: Module-specific streaming options. |
| |
- Method resolution order:
- OutputFiltering
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'filters': typing.List[typing.Union[gen_ai_hub.orchestratio...stration_v2.models.content_filter.ContentFilter]], 'stream_options': typing.Optional[gen_ai_hub.orchestration_v2.models.content_filter.FilteringStreamOptions]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.content_filtering.OutputFiltering'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'OutputFiltering'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...on_v2.models.content_filtering.OutputFiltering'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.content_filtering.OutputFiltering:140540954143440', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'filters': {'metadata': {}, 'schema': {'items_schema': {'choices': [...], 'type': 'union'}, 'min_length': 1, 'type': 'list'}, 'type': 'model-field'}, 'stream_options': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'OutputFiltering', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'filters': FieldInfo(annotation=List[Union[AzureContentSafe..., required=True, metadata=[MinLen(min_length=1)]), 'stream_options': FieldInfo(annotation=Union[FilteringStreamOptions, NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="OutputFiltering", validat...g",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, filters: Annotated[List[Union[gen...t_filter.FilteringStreamOptions] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'filters': FieldInfo(annotation=List[Union[AzureContentSafe..., required=True, metadata=[MinLen(min_length=1)]), 'stream_options': FieldInfo(annotation=Union[FilteringStreamOptions, NoneType], required=False, default=None)}
|
class OutputTranslationConfig(TranslationConfig) |
| |
OutputTranslationConfig(*, source_language: Optional[str] = None, target_language: Union[str, gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslationApplyToSelector]) -> None
|
| |
- Method resolution order:
- OutputTranslationConfig
- TranslationConfig
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'target_language': typing.Union[str, gen_ai_hub.orchestration_v2.mo...ranslation.SAPDocumentTranslationApplyToSelector]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.translation.OutputTranslationConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'OutputTranslationConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.translation.OutputTranslationConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.translation.OutputTranslationConfig:140540952293024', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'source_language': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'target_language': {'metadata': {}, 'schema': {'choices': [{...}, {...}], 'type': 'union'}, 'type': 'model-field'}}, 'model_name': 'OutputTranslationConfig', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'source_language': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'target_language': FieldInfo(annotation=Union[str, SAPDocumentTranslationApplyToSelector], required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="OutputTranslationConfig",...g",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, source_language: Optional[str] = ....SAPDocumentTranslationApplyToSelector]) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'source_language': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'target_language': FieldInfo(annotation=Union[str, SAPDocumentTranslationApplyToSelector], required=True)}
|
class ProfileEntity(builtins.str, enum.Enum) |
| |
ProfileEntity(value, names=None, *, module=None, qualname=None, type=None, start=1)
Enumerates the entity categories that can be masked by the SAP Data Privacy Integration service.
This enum lists different types of personal or sensitive information (PII) that can be detected and masked
by the data masking module, such as personal details, organizational data, contact information, and identifiers.
Values:
PERSON: Represents personal names.
ORG: Represents organizational names.
UNIVERSITY: Represents educational institutions.
LOCATION: Represents geographical locations.
EMAIL: Represents email addresses.
PHONE: Represents phone numbers.
ADDRESS: Represents physical addresses.
SAP_IDS_INTERNAL: Represents internal SAP identifiers.
SAP_IDS_PUBLIC: Represents public SAP identifiers.
URL: Represents URLs.
USERNAME_PASSWORD: Represents usernames and passwords.
NATIONAL_ID: Represents national identification numbers.
IBAN: Represents International Bank Account Numbers.
SSN: Represents Social Security Numbers.
CREDIT_CARD_NUMBER: Represents credit card numbers.
PASSPORT: Represents passport numbers.
DRIVING_LICENSE: Represents driving license numbers.
NATIONALITY: Represents nationality information.
RELIGIOUS_GROUP: Represents religious group affiliation.
POLITICAL_GROUP: Represents political group affiliation.
PRONOUNS_GENDER: Represents pronouns and gender identity.
GENDER: Represents gender information.
SEXUAL_ORIENTATION: Represents sexual orientation.
TRADE_UNION: Represents trade union membership.
SENSITIVE_DATA: Represents any other sensitive information. |
| |
- Method resolution order:
- ProfileEntity
- builtins.str
- enum.Enum
- builtins.object
Data and other attributes defined here:
- ADDRESS = <ProfileEntity.ADDRESS: 'profile-address'>
- CREDIT_CARD_NUMBER = <ProfileEntity.CREDIT_CARD_NUMBER: 'profile-credit-card-number'>
- DRIVING_LICENSE = <ProfileEntity.DRIVING_LICENSE: 'profile-driverlicense'>
- EMAIL = <ProfileEntity.EMAIL: 'profile-email'>
- ETHNICITY = <ProfileEntity.ETHNICITY: 'profile-ethnicity'>
- GENDER = <ProfileEntity.GENDER: 'profile-gender'>
- IBAN = <ProfileEntity.IBAN: 'profile-iban'>
- LOCATION = <ProfileEntity.LOCATION: 'profile-location'>
- NATIONALITY = <ProfileEntity.NATIONALITY: 'profile-nationality'>
- NATIONAL_ID = <ProfileEntity.NATIONAL_ID: 'profile-nationalid'>
- ORG = <ProfileEntity.ORG: 'profile-org'>
- PASSPORT = <ProfileEntity.PASSPORT: 'profile-passport'>
- PERSON = <ProfileEntity.PERSON: 'profile-person'>
- PHONE = <ProfileEntity.PHONE: 'profile-phone'>
- POLITICAL_GROUP = <ProfileEntity.POLITICAL_GROUP: 'profile-political-group'>
- PRONOUNS_GENDER = <ProfileEntity.PRONOUNS_GENDER: 'profile-pronouns-gender'>
- RELIGIOUS_GROUP = <ProfileEntity.RELIGIOUS_GROUP: 'profile-religious-group'>
- SAP_IDS_INTERNAL = <ProfileEntity.SAP_IDS_INTERNAL: 'profile-sapids-internal'>
- SAP_IDS_PUBLIC = <ProfileEntity.SAP_IDS_PUBLIC: 'profile-sapids-public'>
- SENSITIVE_DATA = <ProfileEntity.SENSITIVE_DATA: 'profile-sensitive-data'>
- SEXUAL_ORIENTATION = <ProfileEntity.SEXUAL_ORIENTATION: 'profile-sexual-orientation'>
- SSN = <ProfileEntity.SSN: 'profile-ssn'>
- TRADE_UNION = <ProfileEntity.TRADE_UNION: 'profile-trade-union'>
- UNIVERSITY = <ProfileEntity.UNIVERSITY: 'profile-university'>
- URL = <ProfileEntity.URL: 'profile-url'>
- USERNAME_PASSWORD = <ProfileEntity.USERNAME_PASSWORD: 'profile-username-password'>
Data descriptors inherited from enum.Enum:
- name
- The name of the Enum member.
- value
- The value of the Enum member.
Readonly properties inherited from enum.EnumMeta:
- __members__
- Returns a mapping of member name->value.
This mapping lists all enum members, including aliases. Note that this
is a read-only view of the internal mapping.
|
class PromptTemplatingModuleConfig(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
PromptTemplatingModuleConfig(*, prompt: gen_ai_hub.orchestration_v2.models.template.Template | gen_ai_hub.orchestration_v2.models.template_ref.TemplateRef, model: gen_ai_hub.orchestration_v2.models.llm_model_details.LLMModelDetails) -> None
|
| |
- Method resolution order:
- PromptTemplatingModuleConfig
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'model': <class 'gen_ai_hub.orchestration_v2.models.llm_model_details.LLMModelDetails'>, 'prompt': gen_ai_hub.orchestration_v2.models.template.Temp....orchestration_v2.models.template_ref.TemplateRef}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TextPart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...hestration_v2.models.multimodal_items.TextPart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart:140540952612800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'text': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'TextPart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ImagePart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.multimodal_items.ImagePart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart:140540952617824', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'image_url': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ImagePart', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.template.PromptTemplatingModuleConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'PromptTemplatingModuleConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...2.models.template.PromptTemplatingModuleConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.template.PromptTemplatingModuleConfig:140540952285968', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'model': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.llm_model_details.LLMModelDetails'>, 'config': {...}, 'custom_init': False, 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.llm_model_details.LLMModelDetails:140540952613776', 'root_model': False, 'schema': {...}, 'type': 'model'}, 'type': 'model-field'}, 'prompt': {'metadata': {}, 'schema': {'choices': [...], 'type': 'union'}, 'type': 'model-field'}}, 'model_name': 'PromptTemplatingModuleConfig', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'model': FieldInfo(annotation=LLMModelDetails, required=True), 'prompt': FieldInfo(annotation=Union[Template, TemplateRef], required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d9a0280) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="PromptTemplatingModuleCon...ator: Py(0x7fd23d95beb0) })], cache_strings=True)
- __signature__ = <Signature (*, prompt: gen_ai_hub.orchestration_...odels.llm_model_details.LLMModelDetails) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'model': FieldInfo(annotation=LLMModelDetails, required=True), 'prompt': FieldInfo(annotation=Union[Template, TemplateRef], required=True)}
|
class PromptTokensDetails(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
PromptTokensDetails(*, audio_tokens: Optional[int] = None, cached_tokens: Optional[int] = None) -> None
Represents the details of prompt tokens used in a specific operation.
Attributes:
audio_tokens (Optional[int]): Audio input tokens present in the prompt.
cached_tokens (Optional[int]): Cached tokens present in the prompt. |
| |
- Method resolution order:
- PromptTokensDetails
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'audio_tokens': typing.Optional[int], 'cached_tokens': typing.Optional[int]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.PromptTokensDetails'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'PromptTokensDetails'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tration_v2.models.response.PromptTokensDetails'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.PromptTokensDetails:140540951624320', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'audio_tokens': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'cached_tokens': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'PromptTokensDetails', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'audio_tokens': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'cached_tokens': FieldInfo(annotation=Union[int, NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="PromptTokensDetails", val...s",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, audio_tokens: Optional[int] = None, cached_tokens: Optional[int] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'audio_tokens': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'cached_tokens': FieldInfo(annotation=Union[int, NoneType], required=False, default=None)}
|
class ResponseChatMessage(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
ResponseChatMessage(*, role: gen_ai_hub.orchestration_v2.models.message.Role = <Role.ASSISTANT: 'assistant'>, content: str, refusal: Optional[str] = None, tool_calls: Optional[List[gen_ai_hub.orchestration_v2.models.message.MessageToolCall]] = None) -> None
Represents a response message in a conversation.
Args:
role: The role of the entity sending the message.
content: The text content of the assistant message.
refusal: A string indicating refusal reason.
tool_calls: A list of tool call objects. |
| |
- Method resolution order:
- ResponseChatMessage
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'content': <class 'str'>, 'refusal': typing.Optional[str], 'role': <enum 'Role'>, 'tool_calls': typing.Optional[typing.List[gen_ai_hub.orchestration_v2.models.message.MessageToolCall]]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.message.ResponseChatMessage'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ResponseChatMessage'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...stration_v2.models.message.ResponseChatMessage'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.message.ResponseChatMessage:140540952629904', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'content': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'refusal': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'role': {'metadata': {}, 'schema': {'default': <Role.ASSISTANT: 'assistant'>, 'schema': {'cls': <enum 'Role'>, 'members': [...], 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.message.Role:140540952622880', 'sub_type': 'str', 'type': 'enum'}, 'type': 'default'}, 'type': 'model-field'}, 'tool_calls': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'ResponseChatMessage', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'content': FieldInfo(annotation=str, required=True), 'refusal': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'role': FieldInfo(annotation=Role, required=False, default=<Role.ASSISTANT: 'assistant'>), 'tool_calls': FieldInfo(annotation=Union[List[MessageToolCall], NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="ResponseChatMessage", val...e",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, role: gen_ai_hub.orchestration_v2...models.message.MessageToolCall]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'content': FieldInfo(annotation=str, required=True), 'refusal': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'role': FieldInfo(annotation=Role, required=False, default=<Role.ASSISTANT: 'assistant'>), 'tool_calls': FieldInfo(annotation=Union[List[MessageToolCall], NoneType], required=False, default=None)}
|
class ResponseFormatJsonObject(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
ResponseFormatJsonObject(*, type: gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatType = <ResponseFormatType.JSON_OBJECT: 'json_object'>) -> None
Response format JSON Object that the model output should adhere to. |
| |
- Method resolution order:
- ResponseFormatJsonObject
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'type_': <enum 'ResponseFormatType'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatJsonObject'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ResponseFormatJsonObject'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...odels.response_format.ResponseFormatJsonObject'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatJsonObject:140540952634992', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'type_': {'metadata': {}, 'schema': {'default': <ResponseFormatType.JSON_OBJECT: 'json_object'>, 'schema': {'cls': <enum 'ResponseFormatType'>, 'members': [...], 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatType:140540952636000', 'sub_type': 'str', 'type': 'enum'}, 'type': 'default'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ResponseFormatJsonObject', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'type_': FieldInfo(annotation=ResponseFormatType, require...: 'json_object'>, alias='type', alias_priority=2)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="ResponseFormatJsonObject"...t",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, type: gen_ai_hub.orchestration_v2...eFormatType.JSON_OBJECT: 'json_object'>) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'type_': FieldInfo(annotation=ResponseFormatType, require...: 'json_object'>, alias='type', alias_priority=2)}
|
class ResponseFormatJsonSchema(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
ResponseFormatJsonSchema(*, type: gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatType = <ResponseFormatType.JSON_SCHEMA: 'json_schema'>, json_schema: gen_ai_hub.orchestration_v2.models.response_format.JSONResponseSchema) -> None
|
| |
- Method resolution order:
- ResponseFormatJsonSchema
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'json_schema': <class 'gen_ai_hub.orchestration_v2.models.response_format.JSONResponseSchema'>, 'type_': <enum 'ResponseFormatType'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatJsonSchema'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ResponseFormatJsonSchema'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...odels.response_format.ResponseFormatJsonSchema'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatJsonSchema:140540952270880', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'json_schema': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response_format.JSONResponseSchema'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'JSONResponseSchema'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [...]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response_format.JSONResponseSchema:140540952268832', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {...}, 'model_name': 'JSONResponseSchema', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {'default': <ResponseFormatType.JSON_SCHEMA: 'json_schema'>, 'schema': {'cls': <enum 'ResponseFormatType'>, 'members': [...], 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatType:140540952636000', 'sub_type': 'str', 'type': 'enum'}, 'type': 'default'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ResponseFormatJsonSchema', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'json_schema': FieldInfo(annotation=JSONResponseSchema, required=True), 'type_': FieldInfo(annotation=ResponseFormatType, require...: 'json_schema'>, alias='type', alias_priority=2)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="ResponseFormatJsonSchema"...a",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, type: gen_ai_hub.orchestration_v2...dels.response_format.JSONResponseSchema) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'json_schema': FieldInfo(annotation=JSONResponseSchema, required=True), 'type_': FieldInfo(annotation=ResponseFormatType, require...: 'json_schema'>, alias='type', alias_priority=2)}
|
class ResponseFormatText(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
ResponseFormatText(*, type: gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatType = <ResponseFormatType.TEXT: 'text'>) -> None
Response format that the model output should adhere to. |
| |
- Method resolution order:
- ResponseFormatText
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'type_': <enum 'ResponseFormatType'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatText'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ResponseFormatText'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...n_v2.models.response_format.ResponseFormatText'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatText:140540952632944', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'type_': {'metadata': {}, 'schema': {'default': <ResponseFormatType.TEXT: 'text'>, 'schema': {'cls': <enum 'ResponseFormatType'>, 'members': [...], 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatType:140540952636000', 'sub_type': 'str', 'type': 'enum'}, 'type': 'default'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ResponseFormatText', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'type_': FieldInfo(annotation=ResponseFormatType, require...pe.TEXT: 'text'>, alias='type', alias_priority=2)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="ResponseFormatText", vali...t",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, type: gen_ai_hub.orchestration_v2...ype = <ResponseFormatType.TEXT: 'text'>) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'type_': FieldInfo(annotation=ResponseFormatType, require...pe.TEXT: 'text'>, alias='type', alias_priority=2)}
|
class SAPAPIError(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
SAPAPIError(*, request_id: str, code: int, message: str, location: str, intermediate_results: Optional[gen_ai_hub.orchestration_v2.models.response.ModuleResults] = None, headers: Optional[dict[str, str]] = None) -> None
Represents an error returned from an SAP API.
Attributes:
request_id (str): The unique identifier of the request associated
with the error.
code (int): The http error code.
message (str): A detailed message describing the error.
location (str): The location where the error occurred
intermediate_results (Optional[ModuleResults]): Optional attribute
to store any
processing results
if available or
applicable. |
| |
- Method resolution order:
- SAPAPIError
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'code': <class 'int'>, 'headers': typing.Optional[dict[str, str]], 'intermediate_results': typing.Optional[gen_ai_hub.orchestration_v2.models.response.ModuleResults], 'location': <class 'str'>, 'message': <class 'str'>, 'request_id': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.response.GenericModuleResult'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'GenericModuleResult'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tration_v2.models.response.GenericModuleResult'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.GenericModuleResult:140540951626320', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'message': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'GenericModuleResult', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TextPart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...hestration_v2.models.multimodal_items.TextPart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart:140540952612800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'text': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'TextPart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ImagePart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.multimodal_items.ImagePart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart:140540952617824', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'image_url': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ImagePart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChatCompletionTokenLogprob'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.response.ChatCompletionTokenLogprob'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob:140540951628352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'bytes': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'logprob': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'token': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'top_logprobs': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'ChatCompletionTokenLogprob', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.SAPAPIError'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'SAPAPIError'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...b.orchestration_v2.models.response.SAPAPIError'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.SAPAPIError:140540951522080', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'code': {'metadata': {}, 'schema': {'type': 'int'}, 'type': 'model-field'}, 'headers': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'intermediate_results': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'location': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'message': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'request_id': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'SAPAPIError', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'code': FieldInfo(annotation=int, required=True), 'headers': FieldInfo(annotation=Union[dict[str, str], NoneType], required=False, default=None), 'intermediate_results': FieldInfo(annotation=Union[ModuleResults, NoneType], required=False, default=None), 'location': FieldInfo(annotation=str, required=True), 'message': FieldInfo(annotation=str, required=True), 'request_id': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d9a0280) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="SAPAPIError", validator=M...ator: Py(0x7fd23d95beb0) })], cache_strings=True)
- __signature__ = <Signature (*, request_id: str, code: int, messa...eaders: Optional[dict[str, str]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'code': FieldInfo(annotation=int, required=True), 'headers': FieldInfo(annotation=Union[dict[str, str], NoneType], required=False, default=None), 'intermediate_results': FieldInfo(annotation=Union[ModuleResults, NoneType], required=False, default=None), 'location': FieldInfo(annotation=str, required=True), 'message': FieldInfo(annotation=str, required=True), 'request_id': FieldInfo(annotation=str, required=True)}
|
class SAPAPIErrorStreaming(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
SAPAPIErrorStreaming(*, request_id: str, code: int, message: str, location: str, intermediate_results: Optional[gen_ai_hub.orchestration.models.response.ModuleResultsStreaming] = None, headers: Optional[dict[str, str]] = None) -> None
Represents an error returned from an SAP API.
Attributes:
request_id (str): The unique identifier of the request associated
with the error.
code (int): The http error code.
message (str): A detailed message describing the error.
location (str): The location where the error occurred
intermediate_results (Optional[ModuleResults]): Optional attribute
to store any
processing results
if available or
applicable. |
| |
- Method resolution order:
- SAPAPIErrorStreaming
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'code': <class 'int'>, 'headers': typing.Optional[dict[str, str]], 'intermediate_results': typing.Optional[gen_ai_hub.orchestration.models.response.ModuleResultsStreaming], 'location': <class 'str'>, 'message': <class 'str'>, 'request_id': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration.models.response.GenericModuleResult'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'GenericModuleResult'}, 'fields': ['message', 'data'], 'frozen': False, 'post_init': False, 'ref': 'gen_ai_hub.orchestration.models.response.GenericModuleResult:140540951613248', 'schema': {'collect_init_only': False, 'computed_fields': [], 'dataclass_name': 'GenericModuleResult', 'fields': [{'init': True, 'kw_only': False, 'metadata': {}, 'name': 'message', 'schema': {...}, 'type': 'dataclass-field'}, {'init': True, 'kw_only': False, 'metadata': {}, 'name': 'data', 'schema': {...}, 'type': 'dataclass-field'}], 'type': 'dataclass-args'}, 'slots': False, 'type': 'dataclass'}, {'cls': <class 'gen_ai_hub.orchestration.models.response.LLMChoiceStreaming'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'LLMChoiceStreaming'}, 'fields': ['index', 'delta', 'finish_reason', 'logprobs'], 'frozen': False, 'post_init': False, 'ref': 'gen_ai_hub.orchestration.models.response.LLMChoiceStreaming:140540951612224', 'schema': {'collect_init_only': False, 'computed_fields': [], 'dataclass_name': 'LLMChoiceStreaming', 'fields': [{'init': True, 'kw_only': False, 'metadata': {}, 'name': 'index', 'schema': {...}, 'type': 'dataclass-field'}, {'init': True, 'kw_only': False, 'metadata': {}, 'name': 'delta', 'schema': {...}, 'type': 'dataclass-field'}, {'init': True, 'kw_only': False, 'metadata': {}, 'name': 'finish_reason', 'schema': {...}, 'type': 'dataclass-field'}, {'init': True, 'kw_only': False, 'metadata': {}, 'name': 'logprobs', 'schema': {...}, 'type': 'dataclass-field'}], 'type': 'dataclass-args'}, 'slots': False, 'type': 'dataclass'}, {'cls': <class 'gen_ai_hub.orchestration.models.response.ChatDelta'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChatDelta'}, 'fields': ['content', 'role', 'refusal', 'tool_calls'], 'frozen': False, 'post_init': False, 'ref': 'gen_ai_hub.orchestration.models.response.ChatDelta:140540951608192', 'schema': {'collect_init_only': False, 'computed_fields': [], 'dataclass_name': 'ChatDelta', 'fields': [{'init': True, 'kw_only': False, 'metadata': {}, 'name': 'content', 'schema': {...}, 'type': 'dataclass-field'}, {'init': True, 'kw_only': False, 'metadata': {}, 'name': 'role', 'schema': {...}, 'type': 'dataclass-field'}, {'init': True, 'kw_only': False, 'metadata': {}, 'name': 'refusal', 'schema': {...}, 'type': 'dataclass-field'}, {'init': True, 'kw_only': False, 'metadata': {}, 'name': 'tool_calls', 'schema': {...}, 'type': 'dataclass-field'}], 'type': 'dataclass-args'}, 'slots': False, 'type': 'dataclass'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.SAPAPIErrorStreaming'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'SAPAPIErrorStreaming'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ration_v2.models.response.SAPAPIErrorStreaming'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.SAPAPIErrorStreaming:140540951524064', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'code': {'metadata': {}, 'schema': {'type': 'int'}, 'type': 'model-field'}, 'headers': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'intermediate_results': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'location': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'message': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'request_id': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'SAPAPIErrorStreaming', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'code': FieldInfo(annotation=int, required=True), 'headers': FieldInfo(annotation=Union[dict[str, str], NoneType], required=False, default=None), 'intermediate_results': FieldInfo(annotation=Union[ModuleResultsStreaming, NoneType], required=False, default=None), 'location': FieldInfo(annotation=str, required=True), 'message': FieldInfo(annotation=str, required=True), 'request_id': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...config: false }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="SAPAPIErrorStreaming", va...zen: false, slots: false })], cache_strings=True)
- __signature__ = <Signature (*, request_id: str, code: int, messa...eaders: Optional[dict[str, str]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'code': FieldInfo(annotation=int, required=True), 'headers': FieldInfo(annotation=Union[dict[str, str], NoneType], required=False, default=None), 'intermediate_results': FieldInfo(annotation=Union[ModuleResultsStreaming, NoneType], required=False, default=None), 'location': FieldInfo(annotation=str, required=True), 'message': FieldInfo(annotation=str, required=True), 'request_id': FieldInfo(annotation=str, required=True)}
|
class SAPDocumentTranslation(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
SAPDocumentTranslation(*, type: gen_ai_hub.orchestration_v2.models.translation.TranslationType = <TranslationType.SAP_DOCUMENT_TRANSLATION: 'sap_document_translation'>, config: gen_ai_hub.orchestration_v2.models.translation.TranslationConfig) -> None
Configuration for translation module.
Args:
type: The type of translation module (e.g., 'sap_document_translation').
config: Configuration object for the translation module. |
| |
- Method resolution order:
- SAPDocumentTranslation
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'config': <class 'gen_ai_hub.orchestration_v2.models.translation.TranslationConfig'>, 'type_': <enum 'TranslationType'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslation'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'SAPDocumentTranslation'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...n_v2.models.translation.SAPDocumentTranslation'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslation:140540952286992', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'config': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.translation.TranslationConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TranslationConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [...]}, 'ref': 'gen_ai_hub.orchestration_v2.models.translation.TranslationConfig:140540952284976', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {...}, 'model_name': 'TranslationConfig', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {'default': <TranslationType.SAP_DOCUMENT_TRANSLATION: 'sap_document_translation'>, 'schema': {'cls': <enum 'TranslationType'>, 'members': [...], 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.translation.TranslationType:140540952288000', 'sub_type': 'str', 'type': 'enum'}, 'type': 'default'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'SAPDocumentTranslation', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'config': FieldInfo(annotation=TranslationConfig, required=True), 'type_': FieldInfo(annotation=TranslationType, required=F...nt_translation'>, alias='type', alias_priority=2)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="SAPDocumentTranslation", ...n",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, type: gen_ai_hub.orchestration_v2...v2.models.translation.TranslationConfig) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'config': FieldInfo(annotation=TranslationConfig, required=True), 'type_': FieldInfo(annotation=TranslationType, required=F...nt_translation'>, alias='type', alias_priority=2)}
|
class SAPDocumentTranslationApplyToSelector(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
SAPDocumentTranslationApplyToSelector(*, category: Literal['placeholders', 'template_roles'], items: list[str], source_language: str) -> None
This selector allows you to define the scope of translation, such as specific placeholders or
messages with specific roles.
For example, {"category": "placeholders",
"items": ["user_input"],
"source_language": "de-DE"}
targets the value of "user_input" in placeholder_values specified in the request payload;
and considers the value to be in German. |
| |
- Method resolution order:
- SAPDocumentTranslationApplyToSelector
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'category': typing.Literal['placeholders', 'template_roles'], 'items': list[str], 'source_language': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslationApplyToSelector'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'SAPDocumentTranslationApplyToSelector'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...nslation.SAPDocumentTranslationApplyToSelector'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslationApplyToSelector:140540952290016', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'category': {'metadata': {}, 'schema': {'expected': ['placeholders', 'template_roles'], 'type': 'literal'}, 'type': 'model-field'}, 'items': {'metadata': {}, 'schema': {'items_schema': {'type': 'str'}, 'type': 'list'}, 'type': 'model-field'}, 'source_language': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'SAPDocumentTranslationApplyToSelector', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'category': FieldInfo(annotation=Literal['placeholders', 'template_roles'], required=True), 'items': FieldInfo(annotation=list[str], required=True), 'source_language': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="SAPDocumentTranslationApp...r",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, category: Literal['placeholders',... items: list[str], source_language: str) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'category': FieldInfo(annotation=Literal['placeholders', 'template_roles'], required=True), 'items': FieldInfo(annotation=list[str], required=True), 'source_language': FieldInfo(annotation=str, required=True)}
|
class SAPDocumentTranslationInput(SAPDocumentTranslation) |
| |
SAPDocumentTranslationInput(*, type: gen_ai_hub.orchestration_v2.models.translation.TranslationType = <TranslationType.SAP_DOCUMENT_TRANSLATION: 'sap_document_translation'>, config: Union[gen_ai_hub.orchestration_v2.models.translation.InputTranslationConfig, gen_ai_hub.orchestration_v2.models.translation.TranslationConfig], translate_messages_history: Optional[bool] = None) -> None
Configuration for input translation
Args:
type: The type of translation module (e.g., 'sap_document_translation').
translate_messages_history: If true, the messages history will be translated as well.
config: Configuration object for the translation module. |
| |
- Method resolution order:
- SAPDocumentTranslationInput
- SAPDocumentTranslation
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'config': typing.Union[gen_ai_hub.orchestration_v2.models....stration_v2.models.translation.TranslationConfig], 'translate_messages_history': typing.Optional[bool]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslationInput'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'SAPDocumentTranslationInput'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...models.translation.SAPDocumentTranslationInput'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslationInput:140540952295040', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'config': {'metadata': {}, 'schema': {'choices': [{...}, {...}], 'type': 'union'}, 'type': 'model-field'}, 'translate_messages_history': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {'default': <TranslationType.SAP_DOCUMENT_TRANSLATION: 'sap_document_translation'>, 'schema': {'cls': <enum 'TranslationType'>, 'members': [...], 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.translation.TranslationType:140540952288000', 'sub_type': 'str', 'type': 'enum'}, 'type': 'default'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'SAPDocumentTranslationInput', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'config': FieldInfo(annotation=Union[InputTranslationConfig, TranslationConfig], required=True), 'translate_messages_history': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None), 'type_': FieldInfo(annotation=TranslationType, required=F...nt_translation'>, alias='type', alias_priority=2)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="SAPDocumentTranslationInp...t",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, type: gen_ai_hub.orchestration_v2...messages_history: Optional[bool] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'config': FieldInfo(annotation=Union[InputTranslationConfig, TranslationConfig], required=True), 'translate_messages_history': FieldInfo(annotation=Union[bool, NoneType], required=False, default=None), 'type_': FieldInfo(annotation=TranslationType, required=F...nt_translation'>, alias='type', alias_priority=2)}
|
class SAPDocumentTranslationOutput(SAPDocumentTranslation) |
| |
SAPDocumentTranslationOutput(*, type: gen_ai_hub.orchestration_v2.models.translation.TranslationType = <TranslationType.SAP_DOCUMENT_TRANSLATION: 'sap_document_translation'>, config: Union[gen_ai_hub.orchestration_v2.models.translation.OutputTranslationConfig, gen_ai_hub.orchestration_v2.models.translation.TranslationConfig]) -> None
Configuration for output translation
Args:
type: The type of translation module (e.g., 'sap_document_translation').
config: Configuration object for the translation module. |
| |
- Method resolution order:
- SAPDocumentTranslationOutput
- SAPDocumentTranslation
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'config': typing.Union[gen_ai_hub.orchestration_v2.models....stration_v2.models.translation.TranslationConfig]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslationOutput'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'SAPDocumentTranslationOutput'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...odels.translation.SAPDocumentTranslationOutput'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslationOutput:140540952296096', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'config': {'metadata': {}, 'schema': {'choices': [{...}, {...}], 'type': 'union'}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {'default': <TranslationType.SAP_DOCUMENT_TRANSLATION: 'sap_document_translation'>, 'schema': {'cls': <enum 'TranslationType'>, 'members': [...], 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.translation.TranslationType:140540952288000', 'sub_type': 'str', 'type': 'enum'}, 'type': 'default'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'SAPDocumentTranslationOutput', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'config': FieldInfo(annotation=Union[OutputTranslationConfig, TranslationConfig], required=True), 'type_': FieldInfo(annotation=TranslationType, required=F...nt_translation'>, alias='type', alias_priority=2)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="SAPDocumentTranslationOut...t",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, type: gen_ai_hub.orchestration_v2...2.models.translation.TranslationConfig]) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'config': FieldInfo(annotation=Union[OutputTranslationConfig, TranslationConfig], required=True), 'type_': FieldInfo(annotation=TranslationType, required=F...nt_translation'>, alias='type', alias_priority=2)}
|
class StreamCompletionPostResponse(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
StreamCompletionPostResponse(*, request_id: str, intermediate_results: Optional[gen_ai_hub.orchestration_v2.models.response.StreamModuleResults], final_result: Optional[gen_ai_hub.orchestration_v2.models.response.StreamLLMModuleResult], intermediate_failures: Optional[List[gen_ai_hub.orchestration_v2.models.response.SAPAPIError]] = None) -> None
|
| |
- Method resolution order:
- StreamCompletionPostResponse
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'final_result': typing.Optional[gen_ai_hub.orchestration_v2.models.response.StreamLLMModuleResult], 'intermediate_failures': typing.Optional[typing.List[gen_ai_hub.orchestration_v2.models.response.SAPAPIError]], 'intermediate_results': typing.Optional[gen_ai_hub.orchestration_v2.models.response.StreamModuleResults], 'request_id': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.response.GenericModuleResult'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'GenericModuleResult'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tration_v2.models.response.GenericModuleResult'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.GenericModuleResult:140540951626320', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'message': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'GenericModuleResult', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TextPart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...hestration_v2.models.multimodal_items.TextPart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart:140540952612800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'text': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'TextPart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ImagePart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.multimodal_items.ImagePart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart:140540952617824', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'image_url': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ImagePart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChatCompletionTokenLogprob'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.response.ChatCompletionTokenLogprob'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob:140540951628352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'bytes': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'logprob': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'token': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'top_logprobs': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'ChatCompletionTokenLogprob', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.StreamCompletionPostResponse'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'StreamCompletionPostResponse'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...2.models.response.StreamCompletionPostResponse'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.StreamCompletionPostResponse:140540951163952', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'final_result': {'metadata': {}, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'model-field'}, 'intermediate_failures': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'intermediate_results': {'metadata': {}, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'model-field'}, 'request_id': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'StreamCompletionPostResponse', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'final_result': FieldInfo(annotation=Union[StreamLLMModuleResult, NoneType], required=True), 'intermediate_failures': FieldInfo(annotation=Union[List[SAPAPIError], NoneType], required=False, default=None), 'intermediate_results': FieldInfo(annotation=Union[StreamModuleResults, NoneType], required=True), 'request_id': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d95bf40) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="StreamCompletionPostRespo...ator: Py(0x7fd23d4edbd0) })], cache_strings=True)
- __signature__ = <Signature (*, request_id: str, intermediate_res...v2.models.response.SAPAPIError]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'final_result': FieldInfo(annotation=Union[StreamLLMModuleResult, NoneType], required=True), 'intermediate_failures': FieldInfo(annotation=Union[List[SAPAPIError], NoneType], required=False, default=None), 'intermediate_results': FieldInfo(annotation=Union[StreamModuleResults, NoneType], required=True), 'request_id': FieldInfo(annotation=str, required=True)}
|
class StreamDelta(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
StreamDelta(*, role: Optional[str] = None, content: str, tool_calls: Optional[List[gen_ai_hub.orchestration_v2.models.response.StreamToolCall]] = None) -> None
|
| |
- Method resolution order:
- StreamDelta
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'content': <class 'str'>, 'role': typing.Optional[str], 'tool_calls': typing.Optional[typing.List[gen_ai_hub.orchestration_v2.models.response.StreamToolCall]]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.StreamDelta'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'StreamDelta'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...b.orchestration_v2.models.response.StreamDelta'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.StreamDelta:140540951507968', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'content': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'role': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'tool_calls': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'StreamDelta', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'content': FieldInfo(annotation=str, required=True), 'role': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'tool_calls': FieldInfo(annotation=Union[List[StreamToolCall], NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="StreamDelta", validator=M...a",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, role: Optional[str] = None, conte...models.response.StreamToolCall]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'content': FieldInfo(annotation=str, required=True), 'role': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'tool_calls': FieldInfo(annotation=Union[List[StreamToolCall], NoneType], required=False, default=None)}
|
class StreamFunctionObject(gen_ai_hub.orchestration_v2.models.message.FunctionCall) |
| |
StreamFunctionObject(*, name: Optional[str] = None, arguments: Optional[str] = None) -> None
Represents a function call with its name and arguments.
Attributes:
name: str
The name of the function to call.
arguments: str
The arguments to call the function with, as generated by the model in JSON
format. Note that the model does not always generate valid JSON, and may
hallucinate parameters not defined by your function schema. Validate the
arguments in your code before calling your function. |
| |
- Method resolution order:
- StreamFunctionObject
- gen_ai_hub.orchestration_v2.models.message.FunctionCall
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'arguments': typing.Optional[str], 'name': typing.Optional[str]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.StreamFunctionObject'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'StreamFunctionObject'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ration_v2.models.response.StreamFunctionObject'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.StreamFunctionObject:140540951505920', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'arguments': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'name': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'StreamFunctionObject', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'arguments': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'name': FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="StreamFunctionObject", va...t",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, name: Optional[str] = None, arguments: Optional[str] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.message.FunctionCall:
- parse_arguments(self) -> dict
- Parses the arguments string as JSON.
:return: A dictionary representing the parsed arguments.
:rtype: dict
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'arguments': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'name': FieldInfo(annotation=Union[str, NoneType], required=False, default=None)}
|
class StreamLLMChoice(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
StreamLLMChoice(*, index: int, delta: gen_ai_hub.orchestration_v2.models.response.StreamDelta, logprobs: Optional[gen_ai_hub.orchestration_v2.models.response.ChoiceLogprobs] = None, finish_reason: Optional[str] = None) -> None
|
| |
- Method resolution order:
- StreamLLMChoice
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'delta': <class 'gen_ai_hub.orchestration_v2.models.response.StreamDelta'>, 'finish_reason': typing.Optional[str], 'index': <class 'int'>, 'logprobs': typing.Optional[gen_ai_hub.orchestration_v2.models.response.ChoiceLogprobs]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChatCompletionTokenLogprob'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.response.ChatCompletionTokenLogprob'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob:140540951628352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'bytes': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'logprob': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'token': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'top_logprobs': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'ChatCompletionTokenLogprob', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.StreamLLMChoice'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'StreamLLMChoice'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...chestration_v2.models.response.StreamLLMChoice'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.StreamLLMChoice:140540951508928', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'delta': {'metadata': {}, 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.StreamDelta'>, 'config': {...}, 'custom_init': False, 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.StreamDelta:140540951507968', 'root_model': False, 'schema': {...}, 'type': 'model'}, 'type': 'model-field'}, 'finish_reason': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'index': {'metadata': {}, 'schema': {'type': 'int'}, 'type': 'model-field'}, 'logprobs': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'StreamLLMChoice', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'delta': FieldInfo(annotation=StreamDelta, required=True), 'finish_reason': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'index': FieldInfo(annotation=int, required=True), 'logprobs': FieldInfo(annotation=Union[ChoiceLogprobs, NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d4edc60) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="StreamLLMChoice", validat...ator: Py(0x7fd23d4edbd0) })], cache_strings=True)
- __signature__ = <Signature (*, index: int, delta: gen_ai_hub.orc...ne, finish_reason: Optional[str] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'delta': FieldInfo(annotation=StreamDelta, required=True), 'finish_reason': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'index': FieldInfo(annotation=int, required=True), 'logprobs': FieldInfo(annotation=Union[ChoiceLogprobs, NoneType], required=False, default=None)}
|
class StreamLLMModuleResult(LLMModuleResult) |
| |
StreamLLMModuleResult(*, id: str, object: str, created: int, model: str, system_fingerprint: Optional[str] = None, choices: List[gen_ai_hub.orchestration_v2.models.response.StreamLLMChoice], usage: Optional[gen_ai_hub.orchestration_v2.models.response.TokenUsage] = None, citations: Optional[list[gen_ai_hub.orchestration_v2.models.response.Citation]] = None) -> None
|
| |
- Method resolution order:
- StreamLLMModuleResult
- LLMModuleResult
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'choices': typing.List[gen_ai_hub.orchestration_v2.models.response.StreamLLMChoice], 'usage': typing.Optional[gen_ai_hub.orchestration_v2.models.response.TokenUsage]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChatCompletionTokenLogprob'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.response.ChatCompletionTokenLogprob'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob:140540951628352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'bytes': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'logprob': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'token': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'top_logprobs': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'ChatCompletionTokenLogprob', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.StreamLLMModuleResult'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'StreamLLMModuleResult'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ation_v2.models.response.StreamLLMModuleResult'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.StreamLLMModuleResult:140540951513008', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'choices': {'metadata': {}, 'schema': {'items_schema': {...}, 'type': 'list'}, 'type': 'model-field'}, 'citations': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'created': {'metadata': {}, 'schema': {'type': 'int'}, 'type': 'model-field'}, 'id': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'model': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'object': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'system_fingerprint': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'usage': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'StreamLLMModuleResult', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'choices': FieldInfo(annotation=List[StreamLLMChoice], required=True), 'citations': FieldInfo(annotation=Union[list[Citation], NoneType], required=False, default=None), 'created': FieldInfo(annotation=int, required=True), 'id': FieldInfo(annotation=str, required=True), 'model': FieldInfo(annotation=str, required=True), 'object': FieldInfo(annotation=str, required=True), 'system_fingerprint': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'usage': FieldInfo(annotation=Union[TokenUsage, NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d4edc60) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="StreamLLMModuleResult", v...ator: Py(0x7fd23d4edbd0) })], cache_strings=True)
- __signature__ = <Signature (*, id: str, object: str, created: in...on_v2.models.response.Citation]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'choices': FieldInfo(annotation=List[StreamLLMChoice], required=True), 'citations': FieldInfo(annotation=Union[list[Citation], NoneType], required=False, default=None), 'created': FieldInfo(annotation=int, required=True), 'id': FieldInfo(annotation=str, required=True), 'model': FieldInfo(annotation=str, required=True), 'object': FieldInfo(annotation=str, required=True), 'system_fingerprint': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'usage': FieldInfo(annotation=Union[TokenUsage, NoneType], required=False, default=None)}
|
class StreamModuleResults(ModuleResults) |
| |
StreamModuleResults(*, grounding: Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult] = None, templating: Optional[List[Union[gen_ai_hub.orchestration_v2.models.message.SystemMessage, gen_ai_hub.orchestration_v2.models.message.UserMessage, gen_ai_hub.orchestration_v2.models.message.AssistantMessage, gen_ai_hub.orchestration_v2.models.message.ToolChatMessage, gen_ai_hub.orchestration_v2.models.message.DeveloperChatMessage, gen_ai_hub.orchestration_v2.models.message.ResponseChatMessage]]] = None, input_translation: Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult] = None, input_masking: Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult] = None, input_filtering: Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult] = None, output_filtering: Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult] = None, output_translation: Optional[gen_ai_hub.orchestration_v2.models.response.GenericModuleResult] = None, llm: Optional[gen_ai_hub.orchestration_v2.models.response.StreamLLMModuleResult] = None, output_unmasking: Optional[List[gen_ai_hub.orchestration_v2.models.response.StreamLLMChoice]] = None) -> None
|
| |
- Method resolution order:
- StreamModuleResults
- ModuleResults
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'llm': typing.Optional[gen_ai_hub.orchestration_v2.models.response.StreamLLMModuleResult], 'output_unmasking': typing.Optional[typing.List[gen_ai_hub.orchestration_v2.models.response.StreamLLMChoice]]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.response.GenericModuleResult'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'GenericModuleResult'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tration_v2.models.response.GenericModuleResult'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.GenericModuleResult:140540951626320', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'data': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'message': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'GenericModuleResult', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TextPart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...hestration_v2.models.multimodal_items.TextPart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart:140540952612800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'text': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'TextPart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ImagePart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.multimodal_items.ImagePart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart:140540952617824', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'image_url': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ImagePart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ChatCompletionTokenLogprob'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.response.ChatCompletionTokenLogprob'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.ChatCompletionTokenLogprob:140540951628352', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'bytes': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'logprob': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'token': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'top_logprobs': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}}, 'model_name': 'ChatCompletionTokenLogprob', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.StreamModuleResults'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'StreamModuleResults'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tration_v2.models.response.StreamModuleResults'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.StreamModuleResults:140540951518000', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'grounding': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'input_filtering': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'input_masking': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'input_translation': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'llm': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'output_filtering': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'output_translation': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'output_unmasking': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'templating': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'StreamModuleResults', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'grounding': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'input_filtering': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'input_masking': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'input_translation': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'llm': FieldInfo(annotation=Union[StreamLLMModuleResult, NoneType], required=False, default=None), 'output_filtering': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'output_translation': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'output_unmasking': FieldInfo(annotation=Union[List[StreamLLMChoice], NoneType], required=False, default=None), 'templating': FieldInfo(annotation=Union[List[Union[SystemMess...ssage]], NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d95bf40) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="StreamModuleResults", val...ator: Py(0x7fd23d4ed900) })], cache_strings=True)
- __signature__ = <Signature (*, grounding: Optional[gen_ai_hub.or...odels.response.StreamLLMChoice]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'grounding': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'input_filtering': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'input_masking': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'input_translation': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'llm': FieldInfo(annotation=Union[StreamLLMModuleResult, NoneType], required=False, default=None), 'output_filtering': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'output_translation': FieldInfo(annotation=Union[GenericModuleResult, NoneType], required=False, default=None), 'output_unmasking': FieldInfo(annotation=Union[List[StreamLLMChoice], NoneType], required=False, default=None), 'templating': FieldInfo(annotation=Union[List[Union[SystemMess...ssage]], NoneType], required=False, default=None)}
|
class StreamToolCall(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
StreamToolCall(*, type: Literal['function'] = 'function', index: int, id: Optional[str] = None, function: Optional[gen_ai_hub.orchestration_v2.models.response.StreamFunctionObject] = None) -> None
|
| |
- Method resolution order:
- StreamToolCall
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'function': typing.Optional[gen_ai_hub.orchestration_v2.models.response.StreamFunctionObject], 'id': typing.Optional[str], 'index': <class 'int'>, 'type_': typing.Literal['function']}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.StreamToolCall'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'StreamToolCall'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...rchestration_v2.models.response.StreamToolCall'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.StreamToolCall:140540951506944', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'function': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'id': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'index': {'metadata': {}, 'schema': {'type': 'int'}, 'type': 'model-field'}, 'type_': {'metadata': {'pydantic_js_updates': {'description': 'The type of the tool. Currently, only function is supported.'}}, 'schema': {'default': 'function', 'schema': {'expected': [...], 'type': 'literal'}, 'type': 'default'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'StreamToolCall', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'function': FieldInfo(annotation=Union[StreamFunctionObject, NoneType], required=False, default=None), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'index': FieldInfo(annotation=int, required=True), 'type_': FieldInfo(annotation=Literal['function'], requir...he tool. Currently, only function is supported.')}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="StreamToolCall", validato...l",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, type: Literal['function'] = 'func...s.response.StreamFunctionObject] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'function': FieldInfo(annotation=Union[StreamFunctionObject, NoneType], required=False, default=None), 'id': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'index': FieldInfo(annotation=int, required=True), 'type_': FieldInfo(annotation=Literal['function'], requir...he tool. Currently, only function is supported.')}
|
class SystemMessage(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
SystemMessage(*, role: gen_ai_hub.orchestration_v2.models.message.Role = <Role.SYSTEM: 'system'>, content: Union[str, List[gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart]]) -> None
Represents a system message in a prompt or conversation template.
System messages typically provide context or instructions to the AI model.
Args:
role: The role of the entity sending the message.
content: The text content of the system message. |
| |
- Method resolution order:
- SystemMessage
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'content': typing.Union[str, typing.List[gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart]], 'role': <enum 'Role'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.message.SystemMessage'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'SystemMessage'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche....orchestration_v2.models.message.SystemMessage'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.message.SystemMessage:140540952623888', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'content': {'metadata': {}, 'schema': {'choices': [{...}, {...}], 'type': 'union'}, 'type': 'model-field'}, 'role': {'metadata': {}, 'schema': {'default': <Role.SYSTEM: 'system'>, 'schema': {'cls': <enum 'Role'>, 'members': [...], 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.message.Role:140540952622880', 'sub_type': 'str', 'type': 'enum'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'SystemMessage', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'content': FieldInfo(annotation=Union[str, List[TextPart]], required=True), 'role': FieldInfo(annotation=Role, required=False, default=<Role.SYSTEM: 'system'>)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="SystemMessage", validator...e",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, role: gen_ai_hub.orchestration_v2...n_v2.models.multimodal_items.TextPart]]) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'content': FieldInfo(annotation=Union[str, List[TextPart]], required=True), 'role': FieldInfo(annotation=Role, required=False, default=<Role.SYSTEM: 'system'>)}
|
class Template(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
Template(*, template: List[Union[gen_ai_hub.orchestration_v2.models.message.SystemMessage, gen_ai_hub.orchestration_v2.models.message.UserMessage, gen_ai_hub.orchestration_v2.models.message.AssistantMessage, gen_ai_hub.orchestration_v2.models.message.ToolChatMessage, gen_ai_hub.orchestration_v2.models.message.DeveloperChatMessage, gen_ai_hub.orchestration_v2.models.message.ResponseChatMessage]], defaults: Optional[dict] = None, response_format: Union[gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatText, gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatJsonObject, gen_ai_hub.orchestration_v2.models.response_format.ResponseFormatJsonSchema, NoneType] = None, tools: Optional[List[dict | gen_ai_hub.orchestration_v2.models.tools.FunctionTool]] = None) -> None
Represents a configurable template for generating prompts or conversations.
Args:
template: A list of prompt messages that form the template.
defaults: A dict of default values for template variables.
tools: A list of tool definitions.
response_format: A response format that the model output should adhere to. |
| |
- Method resolution order:
- Template
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'defaults': typing.Optional[dict], 'response_format': typing.Union[gen_ai_hub.orchestration_v2.models....sponse_format.ResponseFormatJsonSchema, NoneType], 'template': typing.List[typing.Union[gen_ai_hub.orchestratio...estration_v2.models.message.ResponseChatMessage]], 'tools': typing.Optional[typing.List[dict | gen_ai_hub.orchestration_v2.models.tools.FunctionTool]]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TextPart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...hestration_v2.models.multimodal_items.TextPart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart:140540952612800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'text': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'TextPart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ImagePart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.multimodal_items.ImagePart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart:140540952617824', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'image_url': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ImagePart', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.template.Template'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'Template'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._hub.orchestration_v2.models.template.Template'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.template.Template:140540952281952', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'defaults': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'response_format': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'template': {'metadata': {}, 'schema': {'items_schema': {...}, 'type': 'list'}, 'type': 'model-field'}, 'tools': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'Template', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'defaults': FieldInfo(annotation=Union[dict, NoneType], required=False, default=None), 'response_format': FieldInfo(annotation=Union[ResponseFormatText, R...nSchema, NoneType], required=False, default=None), 'template': FieldInfo(annotation=List[Union[SystemMessage, U...hatMessage, ResponseChatMessage]], required=True), 'tools': FieldInfo(annotation=Union[List[Union[dict, FunctionTool]], NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d95bf40) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="Template", validator=Mode...ator: Py(0x7fd23d9a0160) })], cache_strings=True)
- __signature__ = <Signature (*, template: List[Union[gen_ai_hub.o...n_v2.models.tools.FunctionTool]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'defaults': FieldInfo(annotation=Union[dict, NoneType], required=False, default=None), 'response_format': FieldInfo(annotation=Union[ResponseFormatText, R...nSchema, NoneType], required=False, default=None), 'template': FieldInfo(annotation=List[Union[SystemMessage, U...hatMessage, ResponseChatMessage]], required=True), 'tools': FieldInfo(annotation=Union[List[Union[dict, FunctionTool]], NoneType], required=False, default=None)}
|
class TemplateRef(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
TemplateRef(*, template_ref: gen_ai_hub.orchestration_v2.models.template_ref.TemplateRefByID | gen_ai_hub.orchestration_v2.models.template_ref.TemplateRefByScenarioNameVersion) -> None
|
| |
- Method resolution order:
- TemplateRef
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'template_ref': gen_ai_hub.orchestration_v2.models.template_ref....els.template_ref.TemplateRefByScenarioNameVersion}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.template_ref.TemplateRef'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TemplateRef'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...chestration_v2.models.template_ref.TemplateRef'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.template_ref.TemplateRef:140540952275936', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'template_ref': {'metadata': {}, 'schema': {'choices': [{...}, {...}], 'type': 'union'}, 'type': 'model-field'}}, 'model_name': 'TemplateRef', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'template_ref': FieldInfo(annotation=Union[TemplateRefByID, TemplateRefByScenarioNameVersion], required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="TemplateRef", validator=M...f",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, template_ref: gen_ai_hub.orchestr...te_ref.TemplateRefByScenarioNameVersion) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'template_ref': FieldInfo(annotation=Union[TemplateRefByID, TemplateRefByScenarioNameVersion], required=True)}
|
class TemplateRefByID(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
TemplateRefByID(*, id: str, scope: Optional[Literal['resource_group', 'tenant']] = 'tenant') -> None
Represents a prompt template reference for generating prompts or conversations.
Args:
id(str): ID of the template in prompt registry
scope(Optional[Literal["resource_group", "tenant"]]): Defines the scope that is searched
for the referenced template. 'tenant' indicates the template is shared across all
resource groups within the tenant, while 'resource_group' indicates the template is
only accessible within the specific resource group. Defaults to 'tenant'. |
| |
- Method resolution order:
- TemplateRefByID
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'id': <class 'str'>, 'scope': typing.Optional[typing.Literal['resource_group', 'tenant']]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.template_ref.TemplateRefByID'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TemplateRefByID'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...tration_v2.models.template_ref.TemplateRefByID'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.template_ref.TemplateRefByID:140540952271888', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'id': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'scope': {'metadata': {}, 'schema': {'default': 'tenant', 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'TemplateRefByID', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'id': FieldInfo(annotation=str, required=True), 'scope': FieldInfo(annotation=Union[Literal['resource_gro...t'], NoneType], required=False, default='tenant')}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="TemplateRefByID", validat...D",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, id: str, scope: Optional[Literal['resource_group', 'tenant']] = 'tenant') -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'id': FieldInfo(annotation=str, required=True), 'scope': FieldInfo(annotation=Union[Literal['resource_gro...t'], NoneType], required=False, default='tenant')}
|
class TemplateRefByScenarioNameVersion(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
TemplateRefByScenarioNameVersion(*, scenario: str, name: str, version: str, scope: Optional[Literal['resource_group', 'tenant']] = 'tenant') -> None
Represents a prompt template reference for generating prompts or conversations.
Args:
scenario(str): Scenario name
name(str): Name of template
version(str): Version of template
scope(Optional[Literal["resource_group", "tenant"]]): Defines the scope that is searched
for the referenced template. 'tenant' indicates the template is shared across all
resource groups within the tenant, while 'resource_group' indicates the template is
only accessible within the specific resource group. Defaults to 'tenant'. |
| |
- Method resolution order:
- TemplateRefByScenarioNameVersion
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'name': <class 'str'>, 'scenario': <class 'str'>, 'scope': typing.Optional[typing.Literal['resource_group', 'tenant']], 'version': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.template_ref.TemplateRefByScenarioNameVersion'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TemplateRefByScenarioNameVersion'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche....template_ref.TemplateRefByScenarioNameVersion'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.template_ref.TemplateRefByScenarioNameVersion:140540952272896', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'name': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'scenario': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'scope': {'metadata': {}, 'schema': {'default': 'tenant', 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'version': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'TemplateRefByScenarioNameVersion', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'name': FieldInfo(annotation=str, required=True), 'scenario': FieldInfo(annotation=str, required=True), 'scope': FieldInfo(annotation=Union[Literal['resource_gro...t'], NoneType], required=False, default='tenant'), 'version': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="TemplateRefByScenarioName...n",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, scenario: str, name: str, version...'resource_group', 'tenant']] = 'tenant') -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'name': FieldInfo(annotation=str, required=True), 'scenario': FieldInfo(annotation=str, required=True), 'scope': FieldInfo(annotation=Union[Literal['resource_gro...t'], NoneType], required=False, default='tenant'), 'version': FieldInfo(annotation=str, required=True)}
|
class TextPart(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
TextPart(*, text: str, type: Literal['text'] = 'text') -> None
Represents a text segment within a multimodal content block.
Args:
text: The string content of the text part.
type: The type identifier, defaulting to "text". |
| |
- Method resolution order:
- TextPart
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'text': <class 'str'>, 'type_': typing.Literal['text']}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TextPart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...hestration_v2.models.multimodal_items.TextPart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart:140540952612800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'text': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {'default': 'text', 'schema': {'expected': [...], 'type': 'literal'}, 'type': 'default'}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'TextPart', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'text': FieldInfo(annotation=str, required=True), 'type_': FieldInfo(annotation=Literal['text'], required=F..., default='text', alias='type', alias_priority=2)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="TextPart", validator=Mode...t",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, text: str, type: Literal['text'] = 'text') -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'text': FieldInfo(annotation=str, required=True), 'type_': FieldInfo(annotation=Literal['text'], required=F..., default='text', alias='type', alias_priority=2)}
|
class TokenUsage(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
TokenUsage(*, completion_tokens: int, prompt_tokens: int, total_tokens: int, prompt_tokens_details: Optional[gen_ai_hub.orchestration_v2.models.response.PromptTokensDetails] = None, completion_tokens_details: Optional[gen_ai_hub.orchestration_v2.models.response.CompletionTokensDetails] = None) -> None
Usage of tokens in the response |
| |
- Method resolution order:
- TokenUsage
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'completion_tokens': <class 'int'>, 'completion_tokens_details': typing.Optional[gen_ai_hub.orchestration_v2.models.response.CompletionTokensDetails], 'prompt_tokens': <class 'int'>, 'prompt_tokens_details': typing.Optional[gen_ai_hub.orchestration_v2.models.response.PromptTokensDetails], 'total_tokens': <class 'int'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.TokenUsage'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TokenUsage'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ub.orchestration_v2.models.response.TokenUsage'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.TokenUsage:140540951625360', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'completion_tokens': {'metadata': {}, 'schema': {'type': 'int'}, 'type': 'model-field'}, 'completion_tokens_details': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'prompt_tokens': {'metadata': {}, 'schema': {'type': 'int'}, 'type': 'model-field'}, 'prompt_tokens_details': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'total_tokens': {'metadata': {}, 'schema': {'type': 'int'}, 'type': 'model-field'}}, 'model_name': 'TokenUsage', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'completion_tokens': FieldInfo(annotation=int, required=True), 'completion_tokens_details': FieldInfo(annotation=Union[CompletionTokensDetails, NoneType], required=False, default=None), 'prompt_tokens': FieldInfo(annotation=int, required=True), 'prompt_tokens_details': FieldInfo(annotation=Union[PromptTokensDetails, NoneType], required=False, default=None), 'total_tokens': FieldInfo(annotation=int, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="TokenUsage", validator=Mo...e",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, completion_tokens: int, prompt_to...esponse.CompletionTokensDetails] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'completion_tokens': FieldInfo(annotation=int, required=True), 'completion_tokens_details': FieldInfo(annotation=Union[CompletionTokensDetails, NoneType], required=False, default=None), 'prompt_tokens': FieldInfo(annotation=int, required=True), 'prompt_tokens_details': FieldInfo(annotation=Union[PromptTokensDetails, NoneType], required=False, default=None), 'total_tokens': FieldInfo(annotation=int, required=True)}
|
class ToolChatMessage(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
ToolChatMessage(*, role: gen_ai_hub.orchestration_v2.models.message.Role = <Role.TOOL: 'tool'>, tool_call_id: str, content: Union[str, List[gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart]]) -> None
|
| |
- Method resolution order:
- ToolChatMessage
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'content': typing.Union[str, typing.List[gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart]], 'role': <enum 'Role'>, 'tool_call_id': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.message.ToolChatMessage'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ToolChatMessage'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...rchestration_v2.models.message.ToolChatMessage'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.message.ToolChatMessage:140540952631952', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'content': {'metadata': {}, 'schema': {'choices': [{...}, {...}], 'type': 'union'}, 'type': 'model-field'}, 'role': {'metadata': {}, 'schema': {'default': <Role.TOOL: 'tool'>, 'schema': {'cls': <enum 'Role'>, 'members': [...], 'metadata': {...}, 'ref': 'gen_ai_hub.orchestration_v2.models.message.Role:140540952622880', 'sub_type': 'str', 'type': 'enum'}, 'type': 'default'}, 'type': 'model-field'}, 'tool_call_id': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'ToolChatMessage', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'content': FieldInfo(annotation=Union[str, List[TextPart]], required=True), 'role': FieldInfo(annotation=Role, required=False, default=<Role.TOOL: 'tool'>), 'tool_call_id': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="ToolChatMessage", validat...e",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, role: gen_ai_hub.orchestration_v2...n_v2.models.multimodal_items.TextPart]]) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'content': FieldInfo(annotation=Union[str, List[TextPart]], required=True), 'role': FieldInfo(annotation=Role, required=False, default=<Role.TOOL: 'tool'>), 'tool_call_id': FieldInfo(annotation=str, required=True)}
|
class TopLogprob(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
TopLogprob(*, token: str, logprob: float, bytes: Optional[List[int]] = None) -> None
Represents one of the most likely tokens and its log probability
at a given token position.
Attributes:
token: The token.
logprob: The log probability of this token.
bytes: UTF-8 bytes of the token, if applicable. |
| |
- Method resolution order:
- TopLogprob
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'bytes': typing.Optional[typing.List[int]], 'logprob': <class 'float'>, 'token': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.response.TopLogprob'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TopLogprob'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ub.orchestration_v2.models.response.TopLogprob'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.response.TopLogprob:140540951627328', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'bytes': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'logprob': {'metadata': {}, 'schema': {'type': 'float'}, 'type': 'model-field'}, 'token': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'TopLogprob', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'bytes': FieldInfo(annotation=Union[List[int], NoneType], required=False, default=None), 'logprob': FieldInfo(annotation=float, required=True), 'token': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="TopLogprob", validator=Mo...b",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, token: str, logprob: float, bytes: Optional[List[int]] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'bytes': FieldInfo(annotation=Union[List[int], NoneType], required=False, default=None), 'logprob': FieldInfo(annotation=float, required=True), 'token': FieldInfo(annotation=str, required=True)}
|
class TranslationConfig(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
TranslationConfig(*, source_language: Optional[str] = None, target_language: str) -> None
Configuration for sap_document_translation translation provider.
Args:
source_language: Language of the text to be translated. Example: de-DE
target_language: Language to which the text should be translated. Example: en-US |
| |
- Method resolution order:
- TranslationConfig
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'source_language': typing.Optional[str], 'target_language': <class 'str'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'cls': <class 'gen_ai_hub.orchestration_v2.models.translation.TranslationConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TranslationConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ration_v2.models.translation.TranslationConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.translation.TranslationConfig:140540952284976', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'source_language': {'metadata': {}, 'schema': {'default': None, 'schema': {'schema': {...}, 'type': 'nullable'}, 'type': 'default'}, 'type': 'model-field'}, 'target_language': {'metadata': {}, 'schema': {'type': 'str'}, 'type': 'model-field'}}, 'model_name': 'TranslationConfig', 'type': 'model-fields'}, 'type': 'model'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'source_language': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'target_language': FieldInfo(annotation=str, required=True)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...led_from_config: false,
},
), definitions=[])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="TranslationConfig", valid...g",
},
), definitions=[], cache_strings=True)
- __signature__ = <Signature (*, source_language: Optional[str] = None, target_language: str) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'source_language': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'target_language': FieldInfo(annotation=str, required=True)}
|
class TranslationModuleConfig(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
TranslationModuleConfig(*, input: Union[gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslationInput, gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslation, NoneType] = None, output: Union[gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslationOutput, gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslation, NoneType] = None) -> None
Configuration for translation module
Args:
input: Configuration for input translation
output: Configuration for output translation |
| |
- Method resolution order:
- TranslationModuleConfig
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'input': typing.Union[gen_ai_hub.orchestration_v2.models....els.translation.SAPDocumentTranslation, NoneType], 'output': typing.Union[gen_ai_hub.orchestration_v2.models....els.translation.SAPDocumentTranslation, NoneType]}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslation'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'SAPDocumentTranslation'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...n_v2.models.translation.SAPDocumentTranslation'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.translation.SAPDocumentTranslation:140540952286992', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'config': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'SAPDocumentTranslation', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.translation.TranslationModuleConfig'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TranslationModuleConfig'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche..._v2.models.translation.TranslationModuleConfig'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.translation.TranslationModuleConfig:140540952297072', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'input': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}, 'output': {'metadata': {}, 'schema': {'default': None, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'TranslationModuleConfig', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'input': FieldInfo(annotation=Union[SAPDocumentTranslatio...slation, NoneType], required=False, default=None), 'output': FieldInfo(annotation=Union[SAPDocumentTranslatio...slation, NoneType], required=False, default=None)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d9a2dd0) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="TranslationModuleConfig",...ator: Py(0x7fd23d9a2d40) })], cache_strings=True)
- __signature__ = <Signature (*, input: Union[gen_ai_hub.orchestra...APDocumentTranslation, NoneType] = None) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'input': FieldInfo(annotation=Union[SAPDocumentTranslatio...slation, NoneType], required=False, default=None), 'output': FieldInfo(annotation=Union[SAPDocumentTranslatio...slation, NoneType], required=False, default=None)}
|
class UserMessage(gen_ai_hub.orchestration_v2.models.base.ABCBaseModel) |
| |
UserMessage(*, role: gen_ai_hub.orchestration_v2.models.message.Role = <Role.USER: 'user'>, content: Union[str, gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart, gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart, List[Union[str, gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart, gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart, gen_ai_hub.orchestration_v2.models.multimodal_items.ImageItem]]]) -> None
Represents a user message in a prompt or conversation template.
User messages typically contain queries or inputs from the user.
Args:
role: The role of the entity sending the message.
content: The message content, which may be plain text or a sequence of text and images. |
| |
- Method resolution order:
- UserMessage
- gen_ai_hub.orchestration_v2.models.base.ABCBaseModel
- pydantic.main.BaseModel
- abc.ABC
- builtins.object
Class methods defined here:
- content_validation(content) from pydantic._internal._model_construction.ModelMetaclass
- Validates and maps the content field to the appropriate types.
Data and other attributes defined here:
- __abstractmethods__ = frozenset()
- __annotations__ = {'content': typing.Union[str, gen_ai_hub.orchestration_v2.mo...estration_v2.models.multimodal_items.ImageItem]]], 'role': <enum 'Role'>}
- __class_vars__ = set()
- __private_attributes__ = {}
- __pydantic_complete__ = True
- __pydantic_computed_fields__ = {}
- __pydantic_core_schema__ = {'definitions': [{'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'TextPart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...hestration_v2.models.multimodal_items.TextPart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.TextPart:140540952612800', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'text': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'TextPart', 'type': 'model-fields'}, 'type': 'model'}, {'cls': <class 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'ImagePart'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...estration_v2.models.multimodal_items.ImagePart'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.multimodal_items.ImagePart:140540952617824', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'image_url': {'metadata': {}, 'schema': {...}, 'type': 'model-field'}, 'type_': {'metadata': {}, 'schema': {...}, 'serialization_alias': 'type', 'type': 'model-field', 'validation_alias': 'type'}}, 'model_name': 'ImagePart', 'type': 'model-fields'}, 'type': 'model'}], 'schema': {'cls': <class 'gen_ai_hub.orchestration_v2.models.message.UserMessage'>, 'config': {'extra_fields_behavior': 'forbid', 'title': 'UserMessage'}, 'custom_init': False, 'metadata': {'pydantic_js_functions': [<bound method BaseModel.__get_pydantic_json_sche...ub.orchestration_v2.models.message.UserMessage'>>]}, 'ref': 'gen_ai_hub.orchestration_v2.models.message.UserMessage:140540952627888', 'root_model': False, 'schema': {'computed_fields': [], 'fields': {'content': {'metadata': {}, 'schema': {'function': {...}, 'schema': {...}, 'type': 'function-before'}, 'type': 'model-field'}, 'role': {'metadata': {}, 'schema': {'default': <Role.USER: 'user'>, 'schema': {...}, 'type': 'default'}, 'type': 'model-field'}}, 'model_name': 'UserMessage', 'type': 'model-fields'}, 'type': 'model'}, 'type': 'definitions'}
- __pydantic_custom_init__ = False
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={...zers={}, model_validators={}, computed_fields={})
- __pydantic_extra_info__ = None
- __pydantic_fields__ = {'content': FieldInfo(annotation=Union[str, TextPart, ImageP...TextPart, ImagePart, ImageItem]]], required=True), 'role': FieldInfo(annotation=Role, required=False, default=<Role.USER: 'user'>)}
- __pydantic_generic_metadata__ = {'args': (), 'origin': None, 'parameters': ()}
- __pydantic_parent_namespace__ = None
- __pydantic_post_init__ = None
- __pydantic_serializer__ = SchemaSerializer(serializer=PolymorphismTrampoli...7fd23d9a0280) }), enabled_from_config: false })])
- __pydantic_setattr_handlers__ = {}
- __pydantic_validator__ = SchemaValidator(title="UserMessage", validator=M...ator: Py(0x7fd23d9a0160) })], cache_strings=True)
- __signature__ = <Signature (*, role: gen_ai_hub.orchestration_v2...v2.models.multimodal_items.ImageItem]]]) -> None>
- model_config = {'extra': 'forbid', 'frozen': False}
Methods inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- model_dump(self, **kwargs)
- Dumps the model to a dictionary with default settings.
Data descriptors inherited from gen_ai_hub.orchestration_v2.models.base.ABCBaseModel:
- __weakref__
- list of weak references to the object (if defined)
Methods inherited from pydantic.main.BaseModel:
- __copy__(self) -> 'Self'
- Returns a shallow copy of the model.
- __deepcopy__(self, memo: 'dict[int, Any] | None' = None) -> 'Self'
- Returns a deep copy of the model.
- __delattr__(self, item: 'str') -> 'Any'
- Implement delattr(self, name).
- __eq__(self, other: 'Any') -> 'bool'
- Return self==value.
- __getattr__(self, item: 'str') -> 'Any'
- __getstate__(self) -> 'dict[Any, Any]'
- __init__(self, /, **data: 'Any') -> 'None'
- Create a new model by parsing and validating input data from keyword arguments.
Raises [`ValidationError`][pydantic_core.ValidationError] if the input data cannot be
validated to form a valid model.
`self` is explicitly positional-only to allow `self` as a field name.
- __iter__(self) -> 'TupleGenerator'
- So `dict(model)` works.
- __pretty__(self, fmt: 'Callable[[Any], Any]', **kwargs: 'Any') -> 'Generator[Any]'
- Used by devtools (https://python-devtools.helpmanual.io/) to pretty print objects.
- __replace__(self, **changes: 'Any') -> 'Self'
- # Because we make use of `@dataclass_transform()`, `__replace__` is already synthesized by
# type checkers, so we define the implementation in this `if not TYPE_CHECKING:` block:
- __repr__(self) -> 'str'
- Return repr(self).
- __repr_args__(self) -> '_repr.ReprArgs'
- __repr_name__(self) -> 'str'
- Name of the instance's class, used in __repr__.
- __repr_recursion__(self, object: 'Any') -> 'str'
- Returns the string representation of a recursive object.
- __repr_str__(self, join_str: 'str') -> 'str'
- __rich_repr__(self) -> 'RichReprResult'
- Used by Rich (https://rich.readthedocs.io/en/stable/pretty.html) to pretty print objects.
- __setattr__(self, name: 'str', value: 'Any') -> 'None'
- Implement setattr(self, name, value).
- __setstate__(self, state: 'dict[Any, Any]') -> 'None'
- __str__(self) -> 'str'
- Return str(self).
- copy(self, *, include: 'AbstractSetIntStr | MappingIntStrAny | None' = None, exclude: 'AbstractSetIntStr | MappingIntStrAny | None' = None, update: 'Dict[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- Returns a copy of the model.
!!! warning "Deprecated"
This method is now deprecated; use `model_copy` instead.
If you need `include` or `exclude`, use:
```python {test="skip" lint="skip"}
data = self.model_dump(include=include, exclude=exclude, round_trip=True)
data = {**data, **(update or {})}
copied = self.model_validate(data)
```
Args:
include: Optional set or mapping specifying which fields to include in the copied model.
exclude: Optional set or mapping specifying which fields to exclude in the copied model.
update: Optional dictionary of field-value pairs to override field values in the copied model.
deep: If True, the values of fields that are Pydantic models will be deep-copied.
Returns:
A copy of the model with included, excluded and updated fields as specified.
- dict(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | None' = None, by_alias: 'bool' = False, exclude_unset: 'bool' = False, exclude_defaults: 'bool' = False, exclude_none: 'bool' = False) -> 'Dict[str, Any]'
- json(self, *, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- model_copy(self, *, update: 'Mapping[str, Any] | None' = None, deep: 'bool' = False) -> 'Self'
- !!! abstract "Usage Documentation"
[`model_copy`](../concepts/models.md#model-copy)
Returns a copy of the model.
!!! note
The underlying instance's [`__dict__`][object.__dict__] attribute is copied. This
might have unexpected side effects if you store anything in it, on top of the model
fields (e.g. the value of [cached properties][functools.cached_property]).
Args:
update: Values to change/add in the new model. Note: the data is not validated
before creating the new model. You should trust this data.
deep: Set to `True` to make a deep copy of the model.
Returns:
New model instance.
- model_dump_json(self, *, indent: 'int | None' = None, ensure_ascii: 'bool' = False, include: 'IncEx | None' = None, exclude: 'IncEx | 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'
- !!! abstract "Usage Documentation"
[`model_dump_json`](../concepts/serialization.md#json-mode)
Generates a JSON representation of the model using Pydantic's `to_json` method.
Args:
indent: Indentation to use in the JSON output. If None is passed, the output will be compact.
ensure_ascii: If `True`, the output is guaranteed to have all incoming non-ASCII characters escaped.
If `False` (the default), these characters will be output as-is.
include: Field(s) to include in the JSON output.
exclude: Field(s) to exclude from the JSON output.
context: Additional context to pass to the serializer.
by_alias: Whether to serialize using field aliases.
exclude_unset: Whether to exclude fields that have not been explicitly set.
exclude_defaults: Whether to exclude fields that are set to their default value.
exclude_none: Whether to exclude fields that have a value of `None`.
exclude_computed_fields: Whether to exclude computed fields.
While this can be useful for round-tripping, it is usually recommended to use the dedicated
`round_trip` parameter instead.
round_trip: If True, dumped values should be valid as input for non-idempotent types such as Json[T].
warnings: How to handle serialization errors. False/"none" ignores them, True/"warn" logs errors,
"error" raises a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError].
fallback: A function to call when an unknown value is encountered. If not provided,
a [`PydanticSerializationError`][pydantic_core.PydanticSerializationError] error is raised.
serialize_as_any: Whether to serialize fields with duck-typing serialization behavior.
polymorphic_serialization: Whether to use model and dataclass polymorphic serialization for this call.
Returns:
A JSON string representation of the model.
- model_post_init(self, context: 'Any', /) -> 'None'
- Override this method to perform additional initialization after `__init__` and `model_construct`.
This is useful if you want to do some validation that requires the entire model to be initialized.
Class methods inherited from pydantic.main.BaseModel:
- __class_getitem__(typevar_values: 'type[Any] | tuple[type[Any], ...]') -> 'type[BaseModel] | _forward_ref.PydanticRecursiveRef' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_core_schema__(source: 'type[BaseModel]', handler: 'GetCoreSchemaHandler', /) -> 'CoreSchema' from pydantic._internal._model_construction.ModelMetaclass
- __get_pydantic_json_schema__(core_schema: 'CoreSchema', handler: 'GetJsonSchemaHandler', /) -> 'JsonSchemaValue' from pydantic._internal._model_construction.ModelMetaclass
- Hook into generating the model's JSON schema.
Args:
core_schema: A `pydantic-core` CoreSchema.
You can ignore this argument and call the handler with a new CoreSchema,
wrap this CoreSchema (`{'type': 'nullable', 'schema': current_schema}`),
or just call the handler with the original schema.
handler: Call into Pydantic's internal JSON schema generation.
This will raise a `pydantic.errors.PydanticInvalidForJsonSchema` if JSON schema
generation fails.
Since this gets called by `BaseModel.model_json_schema` you can override the
`schema_generator` argument to that function to change JSON schema generation globally
for a type.
Returns:
A JSON schema, as a Python object.
- __pydantic_init_subclass__(**kwargs: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is intended to behave just like `__init_subclass__`, but is called by `ModelMetaclass`
only after basic class initialization is complete. In particular, attributes like `model_fields` will
be present when this is called, but forward annotations are not guaranteed to be resolved yet,
meaning that creating an instance of the class may fail.
This is necessary because `__init_subclass__` will always be called by `type.__new__`,
and it would require a prohibitively large refactor to the `ModelMetaclass` to ensure that
`type.__new__` was called in such a manner that the class would already be sufficiently initialized.
This will receive the same `kwargs` that would be passed to the standard `__init_subclass__`, namely,
any kwargs passed to the class definition that aren't used internally by Pydantic.
Args:
**kwargs: Any keyword arguments passed to the class definition that aren't used internally
by Pydantic.
Note:
You may want to override [`__pydantic_on_complete__()`][pydantic.main.BaseModel.__pydantic_on_complete__]
instead, which is called once the class and its fields are fully initialized and ready for validation.
- __pydantic_on_complete__() -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- This is called once the class and its fields are fully initialized and ready to be used.
This typically happens when the class is created (just before
[`__pydantic_init_subclass__()`][pydantic.main.BaseModel.__pydantic_init_subclass__] is called on the superclass),
except when forward annotations are used that could not immediately be resolved.
In that case, it will be called later, when the model is rebuilt automatically or explicitly using
[`model_rebuild()`][pydantic.main.BaseModel.model_rebuild].
- construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- from_orm(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- model_construct(_fields_set: 'set[str] | None' = None, **values: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Creates a new instance of the `Model` class with validated data.
Creates a new model setting `__dict__` and `__pydantic_fields_set__` from trusted or pre-validated data.
Default values are respected, but no other validation is performed.
!!! note
`model_construct()` generally respects the `model_config.extra` setting on the provided model.
That is, if `model_config.extra == 'allow'`, then all extra passed values are added to the model instance's `__dict__`
and `__pydantic_extra__` fields. If `model_config.extra == 'ignore'` (the default), then all extra passed values are ignored.
Because no validation is performed with a call to `model_construct()`, having `model_config.extra == 'forbid'` does not result in
an error if extra values are passed, but they will be ignored.
Args:
_fields_set: A set of field names that were originally explicitly set during instantiation. If provided,
this is directly used for the [`model_fields_set`][pydantic.BaseModel.model_fields_set] attribute.
Otherwise, the field names from the `values` argument will be used.
values: Trusted or pre-validated data dictionary.
Returns:
A new instance of the `Model` class with validated data.
- model_json_schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', schema_generator: 'type[GenerateJsonSchema]' = <class 'pydantic.json_schema.GenerateJsonSchema'>, mode: 'JsonSchemaMode' = 'validation', *, union_format: "Literal['any_of', 'primitive_type_array']" = 'any_of') -> 'dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- Generates a JSON schema for a model class.
Args:
by_alias: Whether to use attribute aliases or not.
ref_template: The reference template.
union_format: The format to use when combining schemas from unions together. Can be one of:
- `'any_of'`: Use the [`anyOf`](https://json-schema.org/understanding-json-schema/reference/combining#anyOf)
keyword to combine schemas (the default).
- `'primitive_type_array'`: Use the [`type`](https://json-schema.org/understanding-json-schema/reference/type)
keyword as an array of strings, containing each type of the combination. If any of the schemas is not a primitive
type (`string`, `boolean`, `null`, `integer` or `number`) or contains constraints/metadata, falls back to
`any_of`.
schema_generator: To override the logic used to generate the JSON schema, as a subclass of
`GenerateJsonSchema` with your desired modifications
mode: The mode in which to generate the schema.
Returns:
The JSON schema for the given model class.
- model_parametrized_name(params: 'tuple[type[Any], ...]') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- Compute the class name for parametrizations of generic classes.
This method can be overridden to achieve a custom naming scheme for generic BaseModels.
Args:
params: Tuple of types of the class. Given a generic class
`Model` with 2 type variables and a concrete model `Model[str, int]`,
the value `(str, int)` would be passed to `params`.
Returns:
String representing the new class where `params` are passed to `cls` as type variables.
Raises:
TypeError: Raised when trying to generate concrete names for non-generic models.
- model_rebuild(*, force: 'bool' = False, raise_errors: 'bool' = True, _parent_namespace_depth: 'int' = 2, _types_namespace: 'MappingNamespace | None' = None) -> 'bool | None' from pydantic._internal._model_construction.ModelMetaclass
- Try to rebuild the pydantic-core schema for the model.
This may be necessary when one of the annotations is a ForwardRef which could not be resolved during
the initial attempt to build the schema, and automatic rebuilding fails.
Args:
force: Whether to force the rebuilding of the model schema, defaults to `False`.
raise_errors: Whether to raise errors, defaults to `True`.
_parent_namespace_depth: The depth level of the parent namespace, defaults to 2.
_types_namespace: The types namespace, defaults to `None`.
Returns:
Returns `None` if the schema is already "complete" and rebuilding was not required.
If rebuilding _was_ required, returns `True` if rebuilding was successful, otherwise `False`.
- model_validate(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, from_attributes: 'bool | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate a pydantic model instance.
Args:
obj: The object to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
from_attributes: Whether to extract data from object attributes.
context: Additional context to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Raises:
ValidationError: If the object could not be validated.
Returns:
The validated model instance.
- model_validate_json(json_data: 'str | bytes | bytearray', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- !!! abstract "Usage Documentation"
[JSON Parsing](../concepts/json.md#json-parsing)
Validate the given JSON data against the Pydantic model.
Args:
json_data: The JSON data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
Raises:
ValidationError: If `json_data` is not a JSON string or the object could not be validated.
- model_validate_strings(obj: 'Any', *, strict: 'bool | None' = None, extra: 'ExtraValues | None' = None, context: 'Any | None' = None, by_alias: 'bool | None' = None, by_name: 'bool | None' = None) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- Validate the given object with string data against the Pydantic model.
Args:
obj: The object containing string data to validate.
strict: Whether to enforce types strictly.
extra: Whether to ignore, allow, or forbid extra data during model validation.
See the [`extra` configuration value][pydantic.ConfigDict.extra] for details.
context: Extra variables to pass to the validator.
by_alias: Whether to use the field's alias when validating against the provided input data.
by_name: Whether to use the field's name when validating against the provided input data.
Returns:
The validated Pydantic model.
- parse_file(path: 'str | Path', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_obj(obj: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- parse_raw(b: 'str | bytes', *, content_type: 'str | None' = None, encoding: 'str' = 'utf8', proto: 'DeprecatedParseProtocol | None' = None, allow_pickle: 'bool' = False) -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
- schema(by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}') -> 'Dict[str, Any]' from pydantic._internal._model_construction.ModelMetaclass
- schema_json(*, by_alias: 'bool' = True, ref_template: 'str' = '#/$defs/{model}', **dumps_kwargs: 'Any') -> 'str' from pydantic._internal._model_construction.ModelMetaclass
- update_forward_refs(**localns: 'Any') -> 'None' from pydantic._internal._model_construction.ModelMetaclass
- validate(value: 'Any') -> 'Self' from pydantic._internal._model_construction.ModelMetaclass
Readonly properties inherited from pydantic.main.BaseModel:
- __fields_set__
- model_extra
- Get extra fields set during validation.
Returns:
A dictionary of extra fields, or `None` if `config.extra` is not set to `"allow"`.
- model_fields_set
- Returns the set of fields that have been explicitly set on this model instance.
Returns:
A set of strings representing the fields that have been set,
i.e. that were not filled from defaults.
Data descriptors inherited from pydantic.main.BaseModel:
- __dict__
- dictionary for instance variables (if defined)
- __pydantic_extra__
- __pydantic_fields_set__
- __pydantic_private__
Data and other attributes inherited from pydantic.main.BaseModel:
- __hash__ = None
- __pydantic_root_model__ = False
- model_computed_fields = {}
- model_fields = {'content': FieldInfo(annotation=Union[str, TextPart, ImageP...TextPart, ImagePart, ImageItem]]], required=True), 'role': FieldInfo(annotation=Role, required=False, default=<Role.USER: 'user'>)}
| |