heaven_base.configs.base_config
1# base_config.py 2from pydantic import BaseModel 3from typing import Dict, Any, Union, Callable 4import json 5 6# BaseFunctionConfig is a Pydantic model that holds the configuration for a function. 7class BaseFunctionConfig(BaseModel): 8 func_name: str # The name of the function (for identification) | This should be Callable 9 args_template: Dict[str, Any] # The template for arguments; keys must match function parameter names 10 11 @classmethod 12 def load_from_json(cls, json_data: Union[str, Dict[str, Any]]) -> "BaseFunctionConfig": 13 """ 14 Create a BaseFunctionConfig instance from a JSON string or a dictionary. 15 16 Args: 17 json_data: A JSON string or a dict containing BaseFunctionConfig fields. 18 19 Returns: 20 BaseFunctionConfig: An instance populated with the provided data. 21 """ 22 if isinstance(json_data, str): 23 data = json.loads(json_data) 24 else: 25 data = json_data 26 return cls(**data)
class
BaseFunctionConfig(pydantic.main.BaseModel):
8class BaseFunctionConfig(BaseModel): 9 func_name: str # The name of the function (for identification) | This should be Callable 10 args_template: Dict[str, Any] # The template for arguments; keys must match function parameter names 11 12 @classmethod 13 def load_from_json(cls, json_data: Union[str, Dict[str, Any]]) -> "BaseFunctionConfig": 14 """ 15 Create a BaseFunctionConfig instance from a JSON string or a dictionary. 16 17 Args: 18 json_data: A JSON string or a dict containing BaseFunctionConfig fields. 19 20 Returns: 21 BaseFunctionConfig: An instance populated with the provided data. 22 """ 23 if isinstance(json_data, str): 24 data = json.loads(json_data) 25 else: 26 data = json_data 27 return cls(**data)
!!! abstract "Usage Documentation" Models
A base class for creating Pydantic models.
Attributes:
__class_vars__: The names of the class variables defined on the model.
__private_attributes__: Metadata about the private attributes of the model.
__signature__: The synthesized __init__ [Signature][inspect.Signature] of the model.
__pydantic_complete__: Whether model building is completed, or if there are still undefined fields.
__pydantic_core_schema__: The core schema of the model.
__pydantic_custom_init__: Whether the model has a custom `__init__` function.
__pydantic_decorators__: Metadata containing the decorators defined on the model.
This replaces `Model.__validators__` and `Model.__root_validators__` from Pydantic V1.
__pydantic_generic_metadata__: Metadata for generic models; contains data used for a similar purpose to
__args__, __origin__, __parameters__ in typing-module generics. May eventually be replaced by these.
__pydantic_parent_namespace__: Parent namespace of the model, used for automatic rebuilding of models.
__pydantic_post_init__: The name of the post-init method for the model, if defined.
__pydantic_root_model__: Whether the model is a [`RootModel`][pydantic.root_model.RootModel].
__pydantic_serializer__: The `pydantic-core` `SchemaSerializer` used to dump instances of the model.
__pydantic_validator__: The `pydantic-core` `SchemaValidator` used to validate instances of the model.
__pydantic_fields__: A dictionary of field names and their corresponding [`FieldInfo`][pydantic.fields.FieldInfo] objects.
__pydantic_computed_fields__: A dictionary of computed field names and their corresponding [`ComputedFieldInfo`][pydantic.fields.ComputedFieldInfo] objects.
__pydantic_extra__: A dictionary containing extra values, if [`extra`][pydantic.config.ConfigDict.extra]
is set to `'allow'`.
__pydantic_fields_set__: The names of fields explicitly set during instantiation.
__pydantic_private__: Values of private attributes set on the model instance.
12 @classmethod 13 def load_from_json(cls, json_data: Union[str, Dict[str, Any]]) -> "BaseFunctionConfig": 14 """ 15 Create a BaseFunctionConfig instance from a JSON string or a dictionary. 16 17 Args: 18 json_data: A JSON string or a dict containing BaseFunctionConfig fields. 19 20 Returns: 21 BaseFunctionConfig: An instance populated with the provided data. 22 """ 23 if isinstance(json_data, str): 24 data = json.loads(json_data) 25 else: 26 data = json_data 27 return cls(**data)
Create a BaseFunctionConfig instance from a JSON string or a dictionary.
Args: json_data: A JSON string or a dict containing BaseFunctionConfig fields.
Returns: BaseFunctionConfig: An instance populated with the provided data.