gt4sd.algorithms.generation.diffusion.core module¶
HuggingFace Diffusers generation algorithm. Code and models adapted from https://github.com/huggingface/diffusers.
Summary¶
Classes:
DDIM - Configuration to generate using a denoising diffusion implicit model. |
|
DDPM - Configuration to generate using unconditional denoising diffusion models. |
|
Basic configuration for a diffusion algorithm. |
|
GeoDiff Diffusion Model - Configuration for conditional 3D molecule structure generation given 2D information using a GeoDiff diffusion model. |
|
Unconditional Latent Diffusion Model - Configuration to generate using a latent diffusion model. |
|
Conditional Latent Diffusion Model - Configuration for conditional text2image generation using a latent diffusion model. |
|
Score SDE Generative Model - Configuration to generate using a score-based diffusion generative model. |
|
Stable Diffusion Model - Configuration for conditional text2image generation using a stable diffusion model. |
Reference¶
- class DiffusersGenerationAlgorithm(configuration, target=None)[source]¶
Bases:
GeneratorAlgorithm
[S
,None
]- __init__(configuration, target=None)[source]¶
Diffusers generation algorithm.
- Parameters
configuration (
AlgorithmConfiguration
) – domain and application specification, defining types and validations.target (
Optional
[~S,None
]) – none for untargeted generation.
Example
An example for using a generative algorithm from Diffusers:
configuration = GeneratorConfiguration() algorithm = DiffusersGenerationAlgorithm(configuration=configuration) items = list(algorithm.sample(1)) print(items)
- get_generator(configuration, target)[source]¶
Get the function to sample batches.
- Parameters
configuration (
AlgorithmConfiguration
[~S,None
]) – helps to set up the application.target (
None
) – context or condition for the generation.
- Return type
Callable
[[],Iterable
[Any
]]- Returns
callable generating a batch of items.
- validate_configuration(configuration)[source]¶
Overload to validate the a configuration for the algorithm.
- Parameters
configuration (
AlgorithmConfiguration
) – the algorithm configuration.- Raises
InvalidAlgorithmConfiguration – in case the configuration for the algorithm is invalid.
- Return type
- Returns
the validated configuration.
- __abstractmethods__ = frozenset({})¶
- __annotations__ = {'generate': 'Untargeted', 'generator': 'Union[Untargeted, Targeted[T]]', 'max_runtime': 'int', 'max_samples': 'int', 'target': 'Optional[T]'}¶
- __doc__ = None¶
- __module__ = 'gt4sd.algorithms.generation.diffusion.core'¶
- __orig_bases__ = (gt4sd.algorithms.core.GeneratorAlgorithm[~S, NoneType],)¶
- __parameters__ = (~S,)¶
- _abc_impl = <_abc._abc_data object>¶
- class DiffusersConfiguration(*args, **kwargs)[source]¶
Bases:
DiffusersConfiguration
,Generic
[T
]Basic configuration for a diffusion algorithm.
- algorithm_type: ClassVar[str] = 'generation'¶
General type of generative algorithm.
- domain: ClassVar[str] = 'vision'¶
General application domain. Hints at input/output types.
- modality: str = 'image'¶
- model_type: str = 'diffusion'¶
- scheduler_type: str = 'discrete'¶
- prompt: Union[str, Dict[str, Any]] = None¶
- __annotations__ = {'algorithm_application': 'ClassVar[str]', 'algorithm_name': 'ClassVar[str]', 'algorithm_type': typing.ClassVar[str], 'algorithm_version': 'str', 'domain': typing.ClassVar[str], 'modality': <class 'str'>, 'model_type': <class 'str'>, 'prompt': typing.Union[str, typing.Dict[str, typing.Any]], 'scheduler_type': <class 'str'>}¶
- __dataclass_fields__ = {'algorithm_application': Field(name='algorithm_application',type=typing.ClassVar[str],default='DiffusersConfiguration',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_name': Field(name='algorithm_name',type=typing.ClassVar[str],default='DiffusersGenerationAlgorithm',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_type': Field(name='algorithm_type',type=typing.ClassVar[str],default='generation',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_version': Field(name='algorithm_version',type='str',default='',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'domain': Field(name='domain',type=typing.ClassVar[str],default='vision',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'modality': Field(name='modality',type=<class 'str'>,default='image',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({'description': "Modality. Supported: 'image', 'text', 'audio', 'molecule'."}),kw_only=False,_field_type=_FIELD), 'model_type': Field(name='model_type',type=<class 'str'>,default='diffusion',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({'description': 'Type of the model. Supported: diffusion, diffusion_implicit, latent_diffusion, latent_diffusion_conditional, stable_diffusion, score_sde, geodiff'}),kw_only=False,_field_type=_FIELD), 'prompt': Field(name='prompt',type=typing.Union[str, typing.Dict[str, typing.Any]],default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({'description': 'Prompt for conditional generation.'}),kw_only=False,_field_type=_FIELD), 'scheduler_type': Field(name='scheduler_type',type=<class 'str'>,default='discrete',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({'description': 'Type of the noise scheduler. Supported: ddpm, ddim, discrete, continuous'}),kw_only=False,_field_type=_FIELD)}¶
- __dataclass_params__ = _DataclassParams(init=True,repr=True,eq=True,order=False,unsafe_hash=False,frozen=False)¶
- __doc__ = 'Basic configuration for a diffusion algorithm.'¶
- __eq__(other)¶
Return self==value.
- __hash__ = None¶
- __init__(*args, **kwargs)¶
- __is_pydantic_dataclass__ = True¶
- __match_args__ = ('algorithm_version', 'modality', 'model_type', 'scheduler_type', 'prompt')¶
- __module__ = 'gt4sd.algorithms.generation.diffusion.core'¶
- __orig_bases__ = (<class 'types.DiffusersConfiguration'>, typing.Generic[~T])¶
- __parameters__ = (~T,)¶
- __pydantic_complete__ = True¶
- __pydantic_config__ = {}¶
- __pydantic_core_schema__ = {'cls': <class 'gt4sd.algorithms.generation.diffusion.core.DiffusersConfiguration'>, 'config': {'title': 'DiffusersConfiguration'}, 'fields': ['algorithm_version', 'modality', 'model_type', 'scheduler_type', 'prompt'], 'frozen': False, 'post_init': False, 'ref': 'types.DiffusersConfiguration:94588860742272', 'schema': {'collect_init_only': False, 'computed_fields': [], 'dataclass_name': 'DiffusersConfiguration', 'fields': [{'type': 'dataclass-field', 'name': 'algorithm_version', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': ''}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'modality', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'image'}, 'kw_only': False, 'init': True, 'metadata': {'pydantic_js_updates': {'description': "Modality. Supported: 'image', 'text', 'audio', 'molecule'."}}}, {'type': 'dataclass-field', 'name': 'model_type', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'diffusion'}, 'kw_only': False, 'init': True, 'metadata': {'pydantic_js_updates': {'description': 'Type of the model. Supported: diffusion, diffusion_implicit, latent_diffusion, latent_diffusion_conditional, stable_diffusion, score_sde, geodiff'}}}, {'type': 'dataclass-field', 'name': 'scheduler_type', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'discrete'}, 'kw_only': False, 'init': True, 'metadata': {'pydantic_js_updates': {'description': 'Type of the noise scheduler. Supported: ddpm, ddim, discrete, continuous'}}}, {'type': 'dataclass-field', 'name': 'prompt', 'schema': {'type': 'default', 'schema': {'type': 'union', 'choices': [{'type': 'str'}, {'type': 'dict', 'keys_schema': {'type': 'str'}, 'values_schema': {'type': 'any'}}]}, 'default': None}, 'kw_only': False, 'init': True, 'metadata': {'pydantic_js_updates': {'description': 'Prompt for conditional generation.'}}}], 'type': 'dataclass-args'}, 'slots': True, 'type': 'dataclass'}¶
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})¶
- __pydantic_fields__ = {'algorithm_version': FieldInfo(annotation=str, required=False, default='', init=True, init_var=False, kw_only=False), 'modality': FieldInfo(annotation=str, required=False, default='image', description="Modality. Supported: 'image', 'text', 'audio', 'molecule'.", init=True, init_var=False, kw_only=False), 'model_type': FieldInfo(annotation=str, required=False, default='diffusion', description='Type of the model. Supported: diffusion, diffusion_implicit, latent_diffusion, latent_diffusion_conditional, stable_diffusion, score_sde, geodiff', init=True, init_var=False, kw_only=False), 'prompt': FieldInfo(annotation=Union[str, Dict[str, Any]], required=False, default=None, description='Prompt for conditional generation.', init=True, init_var=False, kw_only=False), 'scheduler_type': FieldInfo(annotation=str, required=False, default='discrete', description='Type of the noise scheduler. Supported: ddpm, ddim, discrete, continuous', init=True, init_var=False, kw_only=False)}¶
- classmethod __pydantic_fields_complete__()¶
Return whether the fields where successfully collected (i.e. type hints were successfully resolves).
This is a private property, not meant to be used outside Pydantic.
- Return type
bool
- __pydantic_serializer__ = SchemaSerializer(serializer=Dataclass( DataclassSerializer { class: Py( 0x000056072f71ba80, ), serializer: Fields( GeneralFieldsSerializer { fields: { "prompt": SerField { key_py: Py( 0x00007fad501d3e30, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x0000560719b07740, ), ), serializer: Union( UnionSerializer { choices: [ Str( StrSerializer, ), Dict( DictSerializer { key_serializer: Str( StrSerializer, ), value_serializer: Any( AnySerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "dict[str, any]", }, ), ], name: "Union[str, dict[str, any]]", }, ), }, ), ), required: true, serialize_by_alias: None, }, "model_type": SerField { key_py: Py( 0x00007fad501d3db0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fae137572f0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "algorithm_version": SerField { key_py: Py( 0x00007fad501d6420, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fae3529c030, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "modality": SerField { key_py: Py( 0x00007fad501d3d70, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fae349f74b0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "scheduler_type": SerField { key_py: Py( 0x00007fad501d3df0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad7415c9b0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 5, }, ), fields: [ Py( 0x00007fae310b4800, ), Py( 0x00007fad6fc604f0, ), Py( 0x00007fae31df8170, ), Py( 0x00007fad5012bc70, ), Py( 0x00007fae34f4d570, ), ], name: "DiffusersConfiguration", }, ), definitions=[])¶
- __pydantic_validator__ = SchemaValidator(title="DiffusersConfiguration", validator=Dataclass( DataclassValidator { strict: false, validator: DataclassArgs( DataclassArgsValidator { fields: [ Field { kw_only: false, name: "algorithm_version", py_name: Py( 0x00007fae310b4800, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "algorithm_version", py_key: Py( 0x00007fad501d63d0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fae3529c030, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "modality", py_name: Py( 0x00007fad6fc604f0, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "modality", py_key: Py( 0x00007fad501d3370, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fae349f74b0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "model_type", py_name: Py( 0x00007fae31df8170, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "model_type", py_key: Py( 0x00007fad501d3a70, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fae137572f0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "scheduler_type", py_name: Py( 0x00007fad5012bc70, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "scheduler_type", py_key: Py( 0x00007fad501d3cf0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad7415c9b0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "prompt", py_name: Py( 0x00007fae34f4d570, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "prompt", py_key: Py( 0x00007fad501d3d30, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x0000560719b07740, ), ), on_error: Raise, validator: Union( UnionValidator { mode: Smart, choices: [ ( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), None, ), ( Dict( DictValidator { strict: false, key_validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), value_validator: Any( AnyValidator, ), min_length: None, max_length: None, name: "dict[str,any]", }, ), None, ), ], custom_error: None, name: "union[str,dict[str,any]]", }, ), validate_default: false, copy_default: false, name: "default[union[str,dict[str,any]]]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, ], positional_count: 5, init_only_count: None, dataclass_name: "DiffusersConfiguration", validator_name: "dataclass-args[DiffusersConfiguration]", extra_behavior: Ignore, extras_validator: None, loc_by_alias: true, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x000056072f71ba80, ), generic_origin: None, fields: [ Py( 0x00007fae310b4800, ), Py( 0x00007fad6fc604f0, ), Py( 0x00007fae31df8170, ), Py( 0x00007fad5012bc70, ), Py( 0x00007fae34f4d570, ), ], post_init: None, revalidate: Never, name: "DiffusersConfiguration", frozen: false, slots: true, }, ), definitions=[], cache_strings=True)¶
- __repr__()¶
Return repr(self).
- __signature__ = <Signature (algorithm_version: 'str' = '', modality: str = 'image', model_type: str = 'diffusion', scheduler_type: str = 'discrete', prompt: Union[str, Dict[str, Any]] = None) -> None>¶
- __wrapped__¶
alias of
DiffusersConfiguration
- class DDPMGenerator(*args, **kwargs)[source]¶
Bases:
DDPMGenerator
DDPM - Configuration to generate using unconditional denoising diffusion models.
- algorithm_version: str = 'google/ddpm-cifar10-32'¶
To differentiate between different versions of an application.
There is no imposed naming convention.
- model_type: str = 'diffusion'¶
- scheduler_type: str = 'ddpm'¶
- modality: str = 'image'¶
- classmethod list_versions()[source]¶
Get possible algorithm versions.
Standard S3 and cache search adding the version used in the configuration.
- Return type
Set
[str
]- Returns
viable values as
algorithm_version
for the environment.
- __annotations__ = {'algorithm_application': 'ClassVar[str]', 'algorithm_name': 'ClassVar[str]', 'algorithm_type': 'ClassVar[str]', 'algorithm_version': <class 'str'>, 'domain': 'ClassVar[str]', 'modality': <class 'str'>, 'model_type': <class 'str'>, 'prompt': 'Union[str, Dict[str, Any]]', 'scheduler_type': <class 'str'>}¶
- __dataclass_fields__ = {'algorithm_application': Field(name='algorithm_application',type=typing.ClassVar[str],default='DDPMGenerator',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_name': Field(name='algorithm_name',type=typing.ClassVar[str],default='DiffusersGenerationAlgorithm',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_type': Field(name='algorithm_type',type=typing.ClassVar[str],default='generation',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_version': Field(name='algorithm_version',type=<class 'str'>,default='google/ddpm-cifar10-32',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'domain': Field(name='domain',type=typing.ClassVar[str],default='vision',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'modality': Field(name='modality',type=<class 'str'>,default='image',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'model_type': Field(name='model_type',type=<class 'str'>,default='diffusion',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'prompt': Field(name='prompt',type=typing.Union[str, typing.Dict[str, typing.Any]],default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({'description': 'Prompt for conditional generation.'}),kw_only=False,_field_type=_FIELD), 'scheduler_type': Field(name='scheduler_type',type=<class 'str'>,default='ddpm',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD)}¶
- __dataclass_params__ = _DataclassParams(init=True,repr=True,eq=True,order=False,unsafe_hash=False,frozen=False)¶
- __doc__ = 'DDPM - Configuration to generate using unconditional denoising diffusion models.'¶
- __eq__(other)¶
Return self==value.
- __hash__ = None¶
- __init__(*args, **kwargs)¶
- __is_pydantic_dataclass__ = True¶
- __match_args__ = ('algorithm_version', 'modality', 'model_type', 'scheduler_type', 'prompt')¶
- __module__ = 'gt4sd.algorithms.generation.diffusion.core'¶
- __parameters__ = (~T,)¶
- __pydantic_complete__ = True¶
- __pydantic_config__ = {}¶
- __pydantic_core_schema__ = {'cls': <class 'gt4sd.algorithms.generation.diffusion.core.DDPMGenerator'>, 'config': {'title': 'DDPMGenerator'}, 'fields': ['algorithm_version', 'modality', 'model_type', 'scheduler_type', 'prompt'], 'frozen': False, 'post_init': False, 'ref': 'types.DDPMGenerator:94588860889600', 'schema': {'collect_init_only': False, 'computed_fields': [], 'dataclass_name': 'DDPMGenerator', 'fields': [{'type': 'dataclass-field', 'name': 'algorithm_version', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'google/ddpm-cifar10-32'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'modality', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'image'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'model_type', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'diffusion'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'scheduler_type', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'ddpm'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'prompt', 'schema': {'type': 'default', 'schema': {'type': 'union', 'choices': [{'type': 'str'}, {'type': 'dict', 'keys_schema': {'type': 'str'}, 'values_schema': {'type': 'any'}}]}, 'default': None}, 'kw_only': False, 'init': True, 'metadata': {'pydantic_js_updates': {'description': 'Prompt for conditional generation.'}}}], 'type': 'dataclass-args'}, 'slots': True, 'type': 'dataclass'}¶
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})¶
- __pydantic_fields__ = {'algorithm_version': FieldInfo(annotation=str, required=False, default='google/ddpm-cifar10-32', init=True, init_var=False, kw_only=False), 'modality': FieldInfo(annotation=str, required=False, default='image', init=True, init_var=False, kw_only=False), 'model_type': FieldInfo(annotation=str, required=False, default='diffusion', init=True, init_var=False, kw_only=False), 'prompt': FieldInfo(annotation=Union[str, Dict[str, Any]], required=False, default=None, description='Prompt for conditional generation.', init=True, init_var=False, kw_only=False), 'scheduler_type': FieldInfo(annotation=str, required=False, default='ddpm', init=True, init_var=False, kw_only=False)}¶
- classmethod __pydantic_fields_complete__()¶
Return whether the fields where successfully collected (i.e. type hints were successfully resolves).
This is a private property, not meant to be used outside Pydantic.
- Return type
bool
- __pydantic_serializer__ = SchemaSerializer(serializer=Dataclass( DataclassSerializer { class: Py( 0x000056072f73fa00, ), serializer: Fields( GeneralFieldsSerializer { fields: { "model_type": SerField { key_py: Py( 0x00007fad501e1ab0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fae137572f0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "algorithm_version": SerField { key_py: Py( 0x00007fad501e49e0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad5012eb50, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "prompt": SerField { key_py: Py( 0x00007fad501e0670, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x0000560719b07740, ), ), serializer: Union( UnionSerializer { choices: [ Str( StrSerializer, ), Dict( DictSerializer { key_serializer: Str( StrSerializer, ), value_serializer: Any( AnySerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "dict[str, any]", }, ), ], name: "Union[str, dict[str, any]]", }, ), }, ), ), required: true, serialize_by_alias: None, }, "scheduler_type": SerField { key_py: Py( 0x00007fad501e19b0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad68906430, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "modality": SerField { key_py: Py( 0x00007fad501e1d70, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fae349f74b0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 5, }, ), fields: [ Py( 0x00007fae310b4800, ), Py( 0x00007fad6fc604f0, ), Py( 0x00007fae31df8170, ), Py( 0x00007fad5012bc70, ), Py( 0x00007fae34f4d570, ), ], name: "DDPMGenerator", }, ), definitions=[])¶
- __pydantic_validator__ = SchemaValidator(title="DDPMGenerator", validator=Dataclass( DataclassValidator { strict: false, validator: DataclassArgs( DataclassArgsValidator { fields: [ Field { kw_only: false, name: "algorithm_version", py_name: Py( 0x00007fae310b4800, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "algorithm_version", py_key: Py( 0x00007fad501d6e20, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad5012eb50, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "modality", py_name: Py( 0x00007fad6fc604f0, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "modality", py_key: Py( 0x00007fad55a93fb0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fae349f74b0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "model_type", py_name: Py( 0x00007fae31df8170, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "model_type", py_key: Py( 0x00007fad501e29f0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fae137572f0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "scheduler_type", py_name: Py( 0x00007fad5012bc70, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "scheduler_type", py_key: Py( 0x00007fad501e28f0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad68906430, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "prompt", py_name: Py( 0x00007fae34f4d570, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "prompt", py_key: Py( 0x00007fad501e2c30, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x0000560719b07740, ), ), on_error: Raise, validator: Union( UnionValidator { mode: Smart, choices: [ ( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), None, ), ( Dict( DictValidator { strict: false, key_validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), value_validator: Any( AnyValidator, ), min_length: None, max_length: None, name: "dict[str,any]", }, ), None, ), ], custom_error: None, name: "union[str,dict[str,any]]", }, ), validate_default: false, copy_default: false, name: "default[union[str,dict[str,any]]]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, ], positional_count: 5, init_only_count: None, dataclass_name: "DDPMGenerator", validator_name: "dataclass-args[DDPMGenerator]", extra_behavior: Ignore, extras_validator: None, loc_by_alias: true, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x000056072f73fa00, ), generic_origin: None, fields: [ Py( 0x00007fae310b4800, ), Py( 0x00007fad6fc604f0, ), Py( 0x00007fae31df8170, ), Py( 0x00007fad5012bc70, ), Py( 0x00007fae34f4d570, ), ], post_init: None, revalidate: Never, name: "DDPMGenerator", frozen: false, slots: true, }, ), definitions=[], cache_strings=True)¶
- __repr__()¶
Return repr(self).
- __signature__ = <Signature (*args: Any, algorithm_version: str = 'google/ddpm-cifar10-32', modality: str = 'image', model_type: str = 'diffusion', scheduler_type: str = 'ddpm', prompt: Union[str, Dict[str, Any]] = None) -> None>¶
- __wrapped__¶
alias of
DDPMGenerator
- algorithm_application: ClassVar[str] = 'DDPMGenerator'¶
Unique name for the application that is the use of this configuration together with a specific algorithm.
Will be set when registering to
ApplicationsRegistry
, but can be given by direct registration (Seeregister_algorithm_application
)
- algorithm_name: ClassVar[str] = 'DiffusersGenerationAlgorithm'¶
Name of the algorithm to use with this configuration.
Will be set when registering to
ApplicationsRegistry
- class DDIMGenerator(*args, **kwargs)[source]¶
Bases:
DDIMGenerator
DDIM - Configuration to generate using a denoising diffusion implicit model.
- algorithm_version: str = 'dboshardy/ddim-butterflies-128'¶
To differentiate between different versions of an application.
There is no imposed naming convention.
- model_type: str = 'diffusion_implicit'¶
- scheduler_type: str = 'ddim'¶
- modality: str = 'image'¶
- classmethod list_versions()[source]¶
Get possible algorithm versions.
Standard S3 and cache search adding the version used in the configuration.
- Return type
Set
[str
]- Returns
viable values as
algorithm_version
for the environment.
- __annotations__ = {'algorithm_application': 'ClassVar[str]', 'algorithm_name': 'ClassVar[str]', 'algorithm_type': 'ClassVar[str]', 'algorithm_version': <class 'str'>, 'domain': 'ClassVar[str]', 'modality': <class 'str'>, 'model_type': <class 'str'>, 'prompt': 'Union[str, Dict[str, Any]]', 'scheduler_type': <class 'str'>}¶
- __dataclass_fields__ = {'algorithm_application': Field(name='algorithm_application',type=typing.ClassVar[str],default='DDIMGenerator',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_name': Field(name='algorithm_name',type=typing.ClassVar[str],default='DiffusersGenerationAlgorithm',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_type': Field(name='algorithm_type',type=typing.ClassVar[str],default='generation',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_version': Field(name='algorithm_version',type=<class 'str'>,default='dboshardy/ddim-butterflies-128',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'domain': Field(name='domain',type=typing.ClassVar[str],default='vision',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'modality': Field(name='modality',type=<class 'str'>,default='image',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'model_type': Field(name='model_type',type=<class 'str'>,default='diffusion_implicit',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'prompt': Field(name='prompt',type=typing.Union[str, typing.Dict[str, typing.Any]],default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({'description': 'Prompt for conditional generation.'}),kw_only=False,_field_type=_FIELD), 'scheduler_type': Field(name='scheduler_type',type=<class 'str'>,default='ddim',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD)}¶
- __dataclass_params__ = _DataclassParams(init=True,repr=True,eq=True,order=False,unsafe_hash=False,frozen=False)¶
- __doc__ = 'DDIM - Configuration to generate using a denoising diffusion implicit model.'¶
- __eq__(other)¶
Return self==value.
- __hash__ = None¶
- __init__(*args, **kwargs)¶
- __is_pydantic_dataclass__ = True¶
- __match_args__ = ('algorithm_version', 'modality', 'model_type', 'scheduler_type', 'prompt')¶
- __module__ = 'gt4sd.algorithms.generation.diffusion.core'¶
- __parameters__ = (~T,)¶
- __pydantic_complete__ = True¶
- __pydantic_config__ = {}¶
- __pydantic_core_schema__ = {'cls': <class 'gt4sd.algorithms.generation.diffusion.core.DDIMGenerator'>, 'config': {'title': 'DDIMGenerator'}, 'fields': ['algorithm_version', 'modality', 'model_type', 'scheduler_type', 'prompt'], 'frozen': False, 'post_init': False, 'ref': 'types.DDIMGenerator:94588860904048', 'schema': {'collect_init_only': False, 'computed_fields': [], 'dataclass_name': 'DDIMGenerator', 'fields': [{'type': 'dataclass-field', 'name': 'algorithm_version', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'dboshardy/ddim-butterflies-128'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'modality', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'image'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'model_type', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'diffusion_implicit'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'scheduler_type', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'ddim'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'prompt', 'schema': {'type': 'default', 'schema': {'type': 'union', 'choices': [{'type': 'str'}, {'type': 'dict', 'keys_schema': {'type': 'str'}, 'values_schema': {'type': 'any'}}]}, 'default': None}, 'kw_only': False, 'init': True, 'metadata': {'pydantic_js_updates': {'description': 'Prompt for conditional generation.'}}}], 'type': 'dataclass-args'}, 'slots': True, 'type': 'dataclass'}¶
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})¶
- __pydantic_fields__ = {'algorithm_version': FieldInfo(annotation=str, required=False, default='dboshardy/ddim-butterflies-128', init=True, init_var=False, kw_only=False), 'modality': FieldInfo(annotation=str, required=False, default='image', init=True, init_var=False, kw_only=False), 'model_type': FieldInfo(annotation=str, required=False, default='diffusion_implicit', init=True, init_var=False, kw_only=False), 'prompt': FieldInfo(annotation=Union[str, Dict[str, Any]], required=False, default=None, description='Prompt for conditional generation.', init=True, init_var=False, kw_only=False), 'scheduler_type': FieldInfo(annotation=str, required=False, default='ddim', init=True, init_var=False, kw_only=False)}¶
- classmethod __pydantic_fields_complete__()¶
Return whether the fields where successfully collected (i.e. type hints were successfully resolves).
This is a private property, not meant to be used outside Pydantic.
- Return type
bool
- __pydantic_serializer__ = SchemaSerializer(serializer=Dataclass( DataclassSerializer { class: Py( 0x000056072f743270, ), serializer: Fields( GeneralFieldsSerializer { fields: { "scheduler_type": SerField { key_py: Py( 0x00007fad501d20f0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad69b78fb0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "prompt": SerField { key_py: Py( 0x00007fad501d04b0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x0000560719b07740, ), ), serializer: Union( UnionSerializer { choices: [ Str( StrSerializer, ), Dict( DictSerializer { key_serializer: Str( StrSerializer, ), value_serializer: Any( AnySerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "dict[str, any]", }, ), ], name: "Union[str, dict[str, any]]", }, ), }, ), ), required: true, serialize_by_alias: None, }, "modality": SerField { key_py: Py( 0x00007fad501d1930, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fae349f74b0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "algorithm_version": SerField { key_py: Py( 0x00007fad501c3e60, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad5012ec40, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "model_type": SerField { key_py: Py( 0x00007fad501d21f0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad5012ec90, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 5, }, ), fields: [ Py( 0x00007fae310b4800, ), Py( 0x00007fad6fc604f0, ), Py( 0x00007fae31df8170, ), Py( 0x00007fad5012bc70, ), Py( 0x00007fae34f4d570, ), ], name: "DDIMGenerator", }, ), definitions=[])¶
- __pydantic_validator__ = SchemaValidator(title="DDIMGenerator", validator=Dataclass( DataclassValidator { strict: false, validator: DataclassArgs( DataclassArgsValidator { fields: [ Field { kw_only: false, name: "algorithm_version", py_name: Py( 0x00007fae310b4800, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "algorithm_version", py_key: Py( 0x00007fad501c3eb0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad5012ec40, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "modality", py_name: Py( 0x00007fad6fc604f0, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "modality", py_key: Py( 0x00007fad55973530, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fae349f74b0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "model_type", py_name: Py( 0x00007fae31df8170, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "model_type", py_key: Py( 0x00007fad501d0630, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad5012ec90, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "scheduler_type", py_name: Py( 0x00007fad5012bc70, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "scheduler_type", py_key: Py( 0x00007fad501d35f0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad69b78fb0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "prompt", py_name: Py( 0x00007fae34f4d570, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "prompt", py_key: Py( 0x00007fad501d00f0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x0000560719b07740, ), ), on_error: Raise, validator: Union( UnionValidator { mode: Smart, choices: [ ( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), None, ), ( Dict( DictValidator { strict: false, key_validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), value_validator: Any( AnyValidator, ), min_length: None, max_length: None, name: "dict[str,any]", }, ), None, ), ], custom_error: None, name: "union[str,dict[str,any]]", }, ), validate_default: false, copy_default: false, name: "default[union[str,dict[str,any]]]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, ], positional_count: 5, init_only_count: None, dataclass_name: "DDIMGenerator", validator_name: "dataclass-args[DDIMGenerator]", extra_behavior: Ignore, extras_validator: None, loc_by_alias: true, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x000056072f743270, ), generic_origin: None, fields: [ Py( 0x00007fae310b4800, ), Py( 0x00007fad6fc604f0, ), Py( 0x00007fae31df8170, ), Py( 0x00007fad5012bc70, ), Py( 0x00007fae34f4d570, ), ], post_init: None, revalidate: Never, name: "DDIMGenerator", frozen: false, slots: true, }, ), definitions=[], cache_strings=True)¶
- __repr__()¶
Return repr(self).
- __signature__ = <Signature (*args: Any, algorithm_version: str = 'dboshardy/ddim-butterflies-128', modality: str = 'image', model_type: str = 'diffusion_implicit', scheduler_type: str = 'ddim', prompt: Union[str, Dict[str, Any]] = None) -> None>¶
- __wrapped__¶
alias of
DDIMGenerator
- algorithm_application: ClassVar[str] = 'DDIMGenerator'¶
Unique name for the application that is the use of this configuration together with a specific algorithm.
Will be set when registering to
ApplicationsRegistry
, but can be given by direct registration (Seeregister_algorithm_application
)
- algorithm_name: ClassVar[str] = 'DiffusersGenerationAlgorithm'¶
Name of the algorithm to use with this configuration.
Will be set when registering to
ApplicationsRegistry
- class LDMGenerator(*args, **kwargs)[source]¶
Bases:
LDMGenerator
Unconditional Latent Diffusion Model - Configuration to generate using a latent diffusion model.
- algorithm_version: str = 'CompVis/ldm-celebahq-256'¶
To differentiate between different versions of an application.
There is no imposed naming convention.
- model_type: str = 'latent_diffusion'¶
- scheduler_type: str = 'discrete'¶
- modality: str = 'image'¶
- classmethod list_versions()[source]¶
Get possible algorithm versions.
Standard S3 and cache search adding the version used in the configuration.
- Return type
Set
[str
]- Returns
viable values as
algorithm_version
for the environment.
- __annotations__ = {'algorithm_application': 'ClassVar[str]', 'algorithm_name': 'ClassVar[str]', 'algorithm_type': 'ClassVar[str]', 'algorithm_version': <class 'str'>, 'domain': 'ClassVar[str]', 'modality': <class 'str'>, 'model_type': <class 'str'>, 'prompt': 'Union[str, Dict[str, Any]]', 'scheduler_type': <class 'str'>}¶
- __dataclass_fields__ = {'algorithm_application': Field(name='algorithm_application',type=typing.ClassVar[str],default='LDMGenerator',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_name': Field(name='algorithm_name',type=typing.ClassVar[str],default='DiffusersGenerationAlgorithm',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_type': Field(name='algorithm_type',type=typing.ClassVar[str],default='generation',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_version': Field(name='algorithm_version',type=<class 'str'>,default='CompVis/ldm-celebahq-256',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'domain': Field(name='domain',type=typing.ClassVar[str],default='vision',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'modality': Field(name='modality',type=<class 'str'>,default='image',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'model_type': Field(name='model_type',type=<class 'str'>,default='latent_diffusion',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'prompt': Field(name='prompt',type=typing.Union[str, typing.Dict[str, typing.Any]],default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({'description': 'Prompt for conditional generation.'}),kw_only=False,_field_type=_FIELD), 'scheduler_type': Field(name='scheduler_type',type=<class 'str'>,default='discrete',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD)}¶
- __dataclass_params__ = _DataclassParams(init=True,repr=True,eq=True,order=False,unsafe_hash=False,frozen=False)¶
- __doc__ = 'Unconditional Latent Diffusion Model - Configuration to generate using a latent diffusion model.'¶
- __eq__(other)¶
Return self==value.
- __hash__ = None¶
- __init__(*args, **kwargs)¶
- __is_pydantic_dataclass__ = True¶
- __match_args__ = ('algorithm_version', 'modality', 'model_type', 'scheduler_type', 'prompt')¶
- __module__ = 'gt4sd.algorithms.generation.diffusion.core'¶
- __parameters__ = (~T,)¶
- __pydantic_complete__ = True¶
- __pydantic_config__ = {}¶
- __pydantic_core_schema__ = {'cls': <class 'gt4sd.algorithms.generation.diffusion.core.LDMGenerator'>, 'config': {'title': 'LDMGenerator'}, 'fields': ['algorithm_version', 'modality', 'model_type', 'scheduler_type', 'prompt'], 'frozen': False, 'post_init': False, 'ref': 'types.LDMGenerator:94588860552208', 'schema': {'collect_init_only': False, 'computed_fields': [], 'dataclass_name': 'LDMGenerator', 'fields': [{'type': 'dataclass-field', 'name': 'algorithm_version', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'CompVis/ldm-celebahq-256'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'modality', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'image'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'model_type', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'latent_diffusion'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'scheduler_type', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'discrete'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'prompt', 'schema': {'type': 'default', 'schema': {'type': 'union', 'choices': [{'type': 'str'}, {'type': 'dict', 'keys_schema': {'type': 'str'}, 'values_schema': {'type': 'any'}}]}, 'default': None}, 'kw_only': False, 'init': True, 'metadata': {'pydantic_js_updates': {'description': 'Prompt for conditional generation.'}}}], 'type': 'dataclass-args'}, 'slots': True, 'type': 'dataclass'}¶
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})¶
- __pydantic_fields__ = {'algorithm_version': FieldInfo(annotation=str, required=False, default='CompVis/ldm-celebahq-256', init=True, init_var=False, kw_only=False), 'modality': FieldInfo(annotation=str, required=False, default='image', init=True, init_var=False, kw_only=False), 'model_type': FieldInfo(annotation=str, required=False, default='latent_diffusion', init=True, init_var=False, kw_only=False), 'prompt': FieldInfo(annotation=Union[str, Dict[str, Any]], required=False, default=None, description='Prompt for conditional generation.', init=True, init_var=False, kw_only=False), 'scheduler_type': FieldInfo(annotation=str, required=False, default='discrete', init=True, init_var=False, kw_only=False)}¶
- classmethod __pydantic_fields_complete__()¶
Return whether the fields where successfully collected (i.e. type hints were successfully resolves).
This is a private property, not meant to be used outside Pydantic.
- Return type
bool
- __pydantic_serializer__ = SchemaSerializer(serializer=Dataclass( DataclassSerializer { class: Py( 0x000056072f6ed410, ), serializer: Fields( GeneralFieldsSerializer { fields: { "scheduler_type": SerField { key_py: Py( 0x00007fad5011aa70, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad7415c9b0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "algorithm_version": SerField { key_py: Py( 0x00007fad50113960, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad5012ed30, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "prompt": SerField { key_py: Py( 0x00007fad58d547f0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x0000560719b07740, ), ), serializer: Union( UnionSerializer { choices: [ Str( StrSerializer, ), Dict( DictSerializer { key_serializer: Str( StrSerializer, ), value_serializer: Any( AnySerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "dict[str, any]", }, ), ], name: "Union[str, dict[str, any]]", }, ), }, ), ), required: true, serialize_by_alias: None, }, "model_type": SerField { key_py: Py( 0x00007fad5011a270, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad689403a0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "modality": SerField { key_py: Py( 0x00007fad5011af70, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fae349f74b0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 5, }, ), fields: [ Py( 0x00007fae310b4800, ), Py( 0x00007fad6fc604f0, ), Py( 0x00007fae31df8170, ), Py( 0x00007fad5012bc70, ), Py( 0x00007fae34f4d570, ), ], name: "LDMGenerator", }, ), definitions=[])¶
- __pydantic_validator__ = SchemaValidator(title="LDMGenerator", validator=Dataclass( DataclassValidator { strict: false, validator: DataclassArgs( DataclassArgsValidator { fields: [ Field { kw_only: false, name: "algorithm_version", py_name: Py( 0x00007fae310b4800, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "algorithm_version", py_key: Py( 0x00007fad501d4440, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad5012ed30, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "modality", py_name: Py( 0x00007fad6fc604f0, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "modality", py_key: Py( 0x00007fad58c83630, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fae349f74b0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "model_type", py_name: Py( 0x00007fae31df8170, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "model_type", py_key: Py( 0x00007fad55a067f0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad689403a0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "scheduler_type", py_name: Py( 0x00007fad5012bc70, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "scheduler_type", py_key: Py( 0x00007fad501d0c30, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad7415c9b0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "prompt", py_name: Py( 0x00007fae34f4d570, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "prompt", py_key: Py( 0x00007fad50129030, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x0000560719b07740, ), ), on_error: Raise, validator: Union( UnionValidator { mode: Smart, choices: [ ( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), None, ), ( Dict( DictValidator { strict: false, key_validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), value_validator: Any( AnyValidator, ), min_length: None, max_length: None, name: "dict[str,any]", }, ), None, ), ], custom_error: None, name: "union[str,dict[str,any]]", }, ), validate_default: false, copy_default: false, name: "default[union[str,dict[str,any]]]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, ], positional_count: 5, init_only_count: None, dataclass_name: "LDMGenerator", validator_name: "dataclass-args[LDMGenerator]", extra_behavior: Ignore, extras_validator: None, loc_by_alias: true, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x000056072f6ed410, ), generic_origin: None, fields: [ Py( 0x00007fae310b4800, ), Py( 0x00007fad6fc604f0, ), Py( 0x00007fae31df8170, ), Py( 0x00007fad5012bc70, ), Py( 0x00007fae34f4d570, ), ], post_init: None, revalidate: Never, name: "LDMGenerator", frozen: false, slots: true, }, ), definitions=[], cache_strings=True)¶
- __repr__()¶
Return repr(self).
- __signature__ = <Signature (*args: Any, algorithm_version: str = 'CompVis/ldm-celebahq-256', modality: str = 'image', model_type: str = 'latent_diffusion', scheduler_type: str = 'discrete', prompt: Union[str, Dict[str, Any]] = None) -> None>¶
- __wrapped__¶
alias of
LDMGenerator
- algorithm_application: ClassVar[str] = 'LDMGenerator'¶
Unique name for the application that is the use of this configuration together with a specific algorithm.
Will be set when registering to
ApplicationsRegistry
, but can be given by direct registration (Seeregister_algorithm_application
)
- algorithm_name: ClassVar[str] = 'DiffusersGenerationAlgorithm'¶
Name of the algorithm to use with this configuration.
Will be set when registering to
ApplicationsRegistry
- class ScoreSdeGenerator(*args, **kwargs)[source]¶
Bases:
ScoreSdeGenerator
Score SDE Generative Model - Configuration to generate using a score-based diffusion generative model.
- algorithm_version: str = 'google/ncsnpp-celebahq-256'¶
To differentiate between different versions of an application.
There is no imposed naming convention.
- model_type: str = 'score_sde'¶
- scheduler_type: str = 'continuous'¶
- modality: str = 'image'¶
- classmethod list_versions()[source]¶
Get possible algorithm versions.
Standard S3 and cache search adding the version used in the configuration.
- Return type
Set
[str
]- Returns
viable values as
algorithm_version
for the environment.
- __annotations__ = {'algorithm_application': 'ClassVar[str]', 'algorithm_name': 'ClassVar[str]', 'algorithm_type': 'ClassVar[str]', 'algorithm_version': <class 'str'>, 'domain': 'ClassVar[str]', 'modality': <class 'str'>, 'model_type': <class 'str'>, 'prompt': 'Union[str, Dict[str, Any]]', 'scheduler_type': <class 'str'>}¶
- __dataclass_fields__ = {'algorithm_application': Field(name='algorithm_application',type=typing.ClassVar[str],default='ScoreSdeGenerator',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_name': Field(name='algorithm_name',type=typing.ClassVar[str],default='DiffusersGenerationAlgorithm',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_type': Field(name='algorithm_type',type=typing.ClassVar[str],default='generation',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_version': Field(name='algorithm_version',type=<class 'str'>,default='google/ncsnpp-celebahq-256',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'domain': Field(name='domain',type=typing.ClassVar[str],default='vision',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'modality': Field(name='modality',type=<class 'str'>,default='image',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'model_type': Field(name='model_type',type=<class 'str'>,default='score_sde',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'prompt': Field(name='prompt',type=typing.Union[str, typing.Dict[str, typing.Any]],default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({'description': 'Prompt for conditional generation.'}),kw_only=False,_field_type=_FIELD), 'scheduler_type': Field(name='scheduler_type',type=<class 'str'>,default='continuous',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD)}¶
- __dataclass_params__ = _DataclassParams(init=True,repr=True,eq=True,order=False,unsafe_hash=False,frozen=False)¶
- __doc__ = 'Score SDE Generative Model - Configuration to generate using a score-based diffusion generative model.'¶
- __eq__(other)¶
Return self==value.
- __hash__ = None¶
- __init__(*args, **kwargs)¶
- __is_pydantic_dataclass__ = True¶
- __match_args__ = ('algorithm_version', 'modality', 'model_type', 'scheduler_type', 'prompt')¶
- __module__ = 'gt4sd.algorithms.generation.diffusion.core'¶
- __parameters__ = (~T,)¶
- __pydantic_complete__ = True¶
- __pydantic_config__ = {}¶
- __pydantic_core_schema__ = {'cls': <class 'gt4sd.algorithms.generation.diffusion.core.ScoreSdeGenerator'>, 'config': {'title': 'ScoreSdeGenerator'}, 'fields': ['algorithm_version', 'modality', 'model_type', 'scheduler_type', 'prompt'], 'frozen': False, 'post_init': False, 'ref': 'types.ScoreSdeGenerator:94588860499424', 'schema': {'collect_init_only': False, 'computed_fields': [], 'dataclass_name': 'ScoreSdeGenerator', 'fields': [{'type': 'dataclass-field', 'name': 'algorithm_version', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'google/ncsnpp-celebahq-256'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'modality', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'image'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'model_type', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'score_sde'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'scheduler_type', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'continuous'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'prompt', 'schema': {'type': 'default', 'schema': {'type': 'union', 'choices': [{'type': 'str'}, {'type': 'dict', 'keys_schema': {'type': 'str'}, 'values_schema': {'type': 'any'}}]}, 'default': None}, 'kw_only': False, 'init': True, 'metadata': {'pydantic_js_updates': {'description': 'Prompt for conditional generation.'}}}], 'type': 'dataclass-args'}, 'slots': True, 'type': 'dataclass'}¶
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})¶
- __pydantic_fields__ = {'algorithm_version': FieldInfo(annotation=str, required=False, default='google/ncsnpp-celebahq-256', init=True, init_var=False, kw_only=False), 'modality': FieldInfo(annotation=str, required=False, default='image', init=True, init_var=False, kw_only=False), 'model_type': FieldInfo(annotation=str, required=False, default='score_sde', init=True, init_var=False, kw_only=False), 'prompt': FieldInfo(annotation=Union[str, Dict[str, Any]], required=False, default=None, description='Prompt for conditional generation.', init=True, init_var=False, kw_only=False), 'scheduler_type': FieldInfo(annotation=str, required=False, default='continuous', init=True, init_var=False, kw_only=False)}¶
- classmethod __pydantic_fields_complete__()¶
Return whether the fields where successfully collected (i.e. type hints were successfully resolves).
This is a private property, not meant to be used outside Pydantic.
- Return type
bool
- __pydantic_serializer__ = SchemaSerializer(serializer=Dataclass( DataclassSerializer { class: Py( 0x000056072f6e05e0, ), serializer: Fields( GeneralFieldsSerializer { fields: { "model_type": SerField { key_py: Py( 0x00007fad501e3fb0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad5012bd30, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "prompt": SerField { key_py: Py( 0x00007fad501e3930, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x0000560719b07740, ), ), serializer: Union( UnionSerializer { choices: [ Str( StrSerializer, ), Dict( DictSerializer { key_serializer: Str( StrSerializer, ), value_serializer: Any( AnySerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "dict[str, any]", }, ), ], name: "Union[str, dict[str, any]]", }, ), }, ), ), required: true, serialize_by_alias: None, }, "scheduler_type": SerField { key_py: Py( 0x00007fad501e3bf0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fae32fdd4b0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "algorithm_version": SerField { key_py: Py( 0x00007fad501e71e0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad5012edd0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "modality": SerField { key_py: Py( 0x00007fad501e33b0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fae349f74b0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 5, }, ), fields: [ Py( 0x00007fae310b4800, ), Py( 0x00007fad6fc604f0, ), Py( 0x00007fae31df8170, ), Py( 0x00007fad5012bc70, ), Py( 0x00007fae34f4d570, ), ], name: "ScoreSdeGenerator", }, ), definitions=[])¶
- __pydantic_validator__ = SchemaValidator(title="ScoreSdeGenerator", validator=Dataclass( DataclassValidator { strict: false, validator: DataclassArgs( DataclassArgsValidator { fields: [ Field { kw_only: false, name: "algorithm_version", py_name: Py( 0x00007fae310b4800, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "algorithm_version", py_key: Py( 0x00007fad50113cd0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad5012edd0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "modality", py_name: Py( 0x00007fad6fc604f0, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "modality", py_key: Py( 0x00007fad501e3cf0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fae349f74b0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "model_type", py_name: Py( 0x00007fae31df8170, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "model_type", py_key: Py( 0x00007fad5012a5f0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad5012bd30, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "scheduler_type", py_name: Py( 0x00007fad5012bc70, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "scheduler_type", py_key: Py( 0x00007fad50128630, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fae32fdd4b0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "prompt", py_name: Py( 0x00007fae34f4d570, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "prompt", py_key: Py( 0x00007fad558e5030, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x0000560719b07740, ), ), on_error: Raise, validator: Union( UnionValidator { mode: Smart, choices: [ ( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), None, ), ( Dict( DictValidator { strict: false, key_validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), value_validator: Any( AnyValidator, ), min_length: None, max_length: None, name: "dict[str,any]", }, ), None, ), ], custom_error: None, name: "union[str,dict[str,any]]", }, ), validate_default: false, copy_default: false, name: "default[union[str,dict[str,any]]]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, ], positional_count: 5, init_only_count: None, dataclass_name: "ScoreSdeGenerator", validator_name: "dataclass-args[ScoreSdeGenerator]", extra_behavior: Ignore, extras_validator: None, loc_by_alias: true, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x000056072f6e05e0, ), generic_origin: None, fields: [ Py( 0x00007fae310b4800, ), Py( 0x00007fad6fc604f0, ), Py( 0x00007fae31df8170, ), Py( 0x00007fad5012bc70, ), Py( 0x00007fae34f4d570, ), ], post_init: None, revalidate: Never, name: "ScoreSdeGenerator", frozen: false, slots: true, }, ), definitions=[], cache_strings=True)¶
- __repr__()¶
Return repr(self).
- __signature__ = <Signature (*args: Any, algorithm_version: str = 'google/ncsnpp-celebahq-256', modality: str = 'image', model_type: str = 'score_sde', scheduler_type: str = 'continuous', prompt: Union[str, Dict[str, Any]] = None) -> None>¶
- __wrapped__¶
alias of
ScoreSdeGenerator
- algorithm_application: ClassVar[str] = 'ScoreSdeGenerator'¶
Unique name for the application that is the use of this configuration together with a specific algorithm.
Will be set when registering to
ApplicationsRegistry
, but can be given by direct registration (Seeregister_algorithm_application
)
- algorithm_name: ClassVar[str] = 'DiffusersGenerationAlgorithm'¶
Name of the algorithm to use with this configuration.
Will be set when registering to
ApplicationsRegistry
- class LDMTextToImageGenerator(*args, **kwargs)[source]¶
Bases:
LDMTextToImageGenerator
Conditional Latent Diffusion Model - Configuration for conditional text2image generation using a latent diffusion model.
- algorithm_version: str = 'CompVis/ldm-text2im-large-256'¶
To differentiate between different versions of an application.
There is no imposed naming convention.
- model_type: str = 'latent_diffusion_conditional'¶
- scheduler_type: str = 'discrete'¶
- modality: str = 'token2image'¶
- classmethod list_versions()[source]¶
Get possible algorithm versions.
Standard S3 and cache search adding the version used in the configuration.
- Return type
Set
[str
]- Returns
viable values as
algorithm_version
for the environment.
- __annotations__ = {'algorithm_application': 'ClassVar[str]', 'algorithm_name': 'ClassVar[str]', 'algorithm_type': 'ClassVar[str]', 'algorithm_version': <class 'str'>, 'domain': 'ClassVar[str]', 'modality': <class 'str'>, 'model_type': <class 'str'>, 'prompt': 'Union[str, Dict[str, Any]]', 'scheduler_type': <class 'str'>}¶
- __dataclass_fields__ = {'algorithm_application': Field(name='algorithm_application',type=typing.ClassVar[str],default='LDMTextToImageGenerator',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_name': Field(name='algorithm_name',type=typing.ClassVar[str],default='DiffusersGenerationAlgorithm',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_type': Field(name='algorithm_type',type=typing.ClassVar[str],default='generation',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_version': Field(name='algorithm_version',type=<class 'str'>,default='CompVis/ldm-text2im-large-256',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'domain': Field(name='domain',type=typing.ClassVar[str],default='vision',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'modality': Field(name='modality',type=<class 'str'>,default='token2image',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'model_type': Field(name='model_type',type=<class 'str'>,default='latent_diffusion_conditional',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'prompt': Field(name='prompt',type=typing.Union[str, typing.Dict[str, typing.Any]],default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({'description': 'Prompt for conditional generation.'}),kw_only=False,_field_type=_FIELD), 'scheduler_type': Field(name='scheduler_type',type=<class 'str'>,default='discrete',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD)}¶
- __dataclass_params__ = _DataclassParams(init=True,repr=True,eq=True,order=False,unsafe_hash=False,frozen=False)¶
- __doc__ = 'Conditional Latent Diffusion Model - Configuration for conditional text2image generation using a latent diffusion model.'¶
- __eq__(other)¶
Return self==value.
- __hash__ = None¶
- __init__(*args, **kwargs)¶
- __is_pydantic_dataclass__ = True¶
- __match_args__ = ('algorithm_version', 'modality', 'model_type', 'scheduler_type', 'prompt')¶
- __module__ = 'gt4sd.algorithms.generation.diffusion.core'¶
- __parameters__ = (~T,)¶
- __pydantic_complete__ = True¶
- __pydantic_config__ = {}¶
- __pydantic_core_schema__ = {'cls': <class 'gt4sd.algorithms.generation.diffusion.core.LDMTextToImageGenerator'>, 'config': {'title': 'LDMTextToImageGenerator'}, 'fields': ['algorithm_version', 'modality', 'model_type', 'scheduler_type', 'prompt'], 'frozen': False, 'post_init': False, 'ref': 'types.LDMTextToImageGenerator:94588860933488', 'schema': {'collect_init_only': False, 'computed_fields': [], 'dataclass_name': 'LDMTextToImageGenerator', 'fields': [{'type': 'dataclass-field', 'name': 'algorithm_version', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'CompVis/ldm-text2im-large-256'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'modality', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'token2image'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'model_type', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'latent_diffusion_conditional'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'scheduler_type', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'discrete'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'prompt', 'schema': {'type': 'default', 'schema': {'type': 'union', 'choices': [{'type': 'str'}, {'type': 'dict', 'keys_schema': {'type': 'str'}, 'values_schema': {'type': 'any'}}]}, 'default': None}, 'kw_only': False, 'init': True, 'metadata': {'pydantic_js_updates': {'description': 'Prompt for conditional generation.'}}}], 'type': 'dataclass-args'}, 'slots': True, 'type': 'dataclass'}¶
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})¶
- __pydantic_fields__ = {'algorithm_version': FieldInfo(annotation=str, required=False, default='CompVis/ldm-text2im-large-256', init=True, init_var=False, kw_only=False), 'modality': FieldInfo(annotation=str, required=False, default='token2image', init=True, init_var=False, kw_only=False), 'model_type': FieldInfo(annotation=str, required=False, default='latent_diffusion_conditional', init=True, init_var=False, kw_only=False), 'prompt': FieldInfo(annotation=Union[str, Dict[str, Any]], required=False, default=None, description='Prompt for conditional generation.', init=True, init_var=False, kw_only=False), 'scheduler_type': FieldInfo(annotation=str, required=False, default='discrete', init=True, init_var=False, kw_only=False)}¶
- classmethod __pydantic_fields_complete__()¶
Return whether the fields where successfully collected (i.e. type hints were successfully resolves).
This is a private property, not meant to be used outside Pydantic.
- Return type
bool
- __pydantic_serializer__ = SchemaSerializer(serializer=Dataclass( DataclassSerializer { class: Py( 0x000056072f74a570, ), serializer: Fields( GeneralFieldsSerializer { fields: { "model_type": SerField { key_py: Py( 0x00007fad501f99f0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad5012eec0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "prompt": SerField { key_py: Py( 0x00007fad501f9370, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x0000560719b07740, ), ), serializer: Union( UnionSerializer { choices: [ Str( StrSerializer, ), Dict( DictSerializer { key_serializer: Str( StrSerializer, ), value_serializer: Any( AnySerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "dict[str, any]", }, ), ], name: "Union[str, dict[str, any]]", }, ), }, ), ), required: true, serialize_by_alias: None, }, "modality": SerField { key_py: Py( 0x00007fad559714b0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad5012bd70, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "scheduler_type": SerField { key_py: Py( 0x00007fad501f99b0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad7415c9b0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "algorithm_version": SerField { key_py: Py( 0x00007fad501fd610, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad5012ee70, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 5, }, ), fields: [ Py( 0x00007fae310b4800, ), Py( 0x00007fad6fc604f0, ), Py( 0x00007fae31df8170, ), Py( 0x00007fad5012bc70, ), Py( 0x00007fae34f4d570, ), ], name: "LDMTextToImageGenerator", }, ), definitions=[])¶
- __pydantic_validator__ = SchemaValidator(title="LDMTextToImageGenerator", validator=Dataclass( DataclassValidator { strict: false, validator: DataclassArgs( DataclassArgsValidator { fields: [ Field { kw_only: false, name: "algorithm_version", py_name: Py( 0x00007fae310b4800, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "algorithm_version", py_key: Py( 0x00007fad501e7be0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad5012ee70, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "modality", py_name: Py( 0x00007fad6fc604f0, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "modality", py_key: Py( 0x00007fad55932bf0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad5012bd70, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "model_type", py_name: Py( 0x00007fae31df8170, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "model_type", py_key: Py( 0x00007fad5012a830, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad5012eec0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "scheduler_type", py_name: Py( 0x00007fad5012bc70, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "scheduler_type", py_key: Py( 0x00007fad501e3e30, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad7415c9b0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "prompt", py_name: Py( 0x00007fae34f4d570, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "prompt", py_key: Py( 0x00007fad501f96b0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x0000560719b07740, ), ), on_error: Raise, validator: Union( UnionValidator { mode: Smart, choices: [ ( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), None, ), ( Dict( DictValidator { strict: false, key_validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), value_validator: Any( AnyValidator, ), min_length: None, max_length: None, name: "dict[str,any]", }, ), None, ), ], custom_error: None, name: "union[str,dict[str,any]]", }, ), validate_default: false, copy_default: false, name: "default[union[str,dict[str,any]]]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, ], positional_count: 5, init_only_count: None, dataclass_name: "LDMTextToImageGenerator", validator_name: "dataclass-args[LDMTextToImageGenerator]", extra_behavior: Ignore, extras_validator: None, loc_by_alias: true, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x000056072f74a570, ), generic_origin: None, fields: [ Py( 0x00007fae310b4800, ), Py( 0x00007fad6fc604f0, ), Py( 0x00007fae31df8170, ), Py( 0x00007fad5012bc70, ), Py( 0x00007fae34f4d570, ), ], post_init: None, revalidate: Never, name: "LDMTextToImageGenerator", frozen: false, slots: true, }, ), definitions=[], cache_strings=True)¶
- __repr__()¶
Return repr(self).
- __signature__ = <Signature (*args: Any, algorithm_version: str = 'CompVis/ldm-text2im-large-256', modality: str = 'token2image', model_type: str = 'latent_diffusion_conditional', scheduler_type: str = 'discrete', prompt: Union[str, Dict[str, Any]] = None) -> None>¶
- __wrapped__¶
alias of
LDMTextToImageGenerator
- algorithm_application: ClassVar[str] = 'LDMTextToImageGenerator'¶
Unique name for the application that is the use of this configuration together with a specific algorithm.
Will be set when registering to
ApplicationsRegistry
, but can be given by direct registration (Seeregister_algorithm_application
)
- algorithm_name: ClassVar[str] = 'DiffusersGenerationAlgorithm'¶
Name of the algorithm to use with this configuration.
Will be set when registering to
ApplicationsRegistry
- class StableDiffusionGenerator(*args, **kwargs)[source]¶
Bases:
StableDiffusionGenerator
Stable Diffusion Model - Configuration for conditional text2image generation using a stable diffusion model. You have to provide authentication credentials to use this model.
- algorithm_version: str = 'CompVis/stable-diffusion-v1-4'¶
To differentiate between different versions of an application.
There is no imposed naming convention.
- model_type: str = 'stable_diffusion'¶
- scheduler_type: str = 'discrete'¶
- modality: str = 'token2image'¶
- classmethod list_versions()[source]¶
Get possible algorithm versions.
Standard S3 and cache search adding the version used in the configuration.
- Return type
Set
[str
]- Returns
viable values as
algorithm_version
for the environment.
- __annotations__ = {'algorithm_application': 'ClassVar[str]', 'algorithm_name': 'ClassVar[str]', 'algorithm_type': 'ClassVar[str]', 'algorithm_version': <class 'str'>, 'domain': 'ClassVar[str]', 'modality': <class 'str'>, 'model_type': <class 'str'>, 'prompt': 'Union[str, Dict[str, Any]]', 'scheduler_type': <class 'str'>}¶
- __dataclass_fields__ = {'algorithm_application': Field(name='algorithm_application',type=typing.ClassVar[str],default='StableDiffusionGenerator',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_name': Field(name='algorithm_name',type=typing.ClassVar[str],default='DiffusersGenerationAlgorithm',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_type': Field(name='algorithm_type',type=typing.ClassVar[str],default='generation',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_version': Field(name='algorithm_version',type=<class 'str'>,default='CompVis/stable-diffusion-v1-4',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'domain': Field(name='domain',type=typing.ClassVar[str],default='vision',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'modality': Field(name='modality',type=<class 'str'>,default='token2image',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'model_type': Field(name='model_type',type=<class 'str'>,default='stable_diffusion',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'prompt': Field(name='prompt',type=typing.Union[str, typing.Dict[str, typing.Any]],default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({'description': 'Prompt for conditional generation.'}),kw_only=False,_field_type=_FIELD), 'scheduler_type': Field(name='scheduler_type',type=<class 'str'>,default='discrete',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD)}¶
- __dataclass_params__ = _DataclassParams(init=True,repr=True,eq=True,order=False,unsafe_hash=False,frozen=False)¶
- __doc__ = 'Stable Diffusion Model - Configuration for conditional text2image generation using a stable diffusion model.\n You have to provide authentication credentials to use this model.\n '¶
- __eq__(other)¶
Return self==value.
- __hash__ = None¶
- __init__(*args, **kwargs)¶
- __is_pydantic_dataclass__ = True¶
- __match_args__ = ('algorithm_version', 'modality', 'model_type', 'scheduler_type', 'prompt')¶
- __module__ = 'gt4sd.algorithms.generation.diffusion.core'¶
- __parameters__ = (~T,)¶
- __pydantic_complete__ = True¶
- __pydantic_config__ = {}¶
- __pydantic_core_schema__ = {'cls': <class 'gt4sd.algorithms.generation.diffusion.core.StableDiffusionGenerator'>, 'config': {'title': 'StableDiffusionGenerator'}, 'fields': ['algorithm_version', 'modality', 'model_type', 'scheduler_type', 'prompt'], 'frozen': False, 'post_init': False, 'ref': 'types.StableDiffusionGenerator:94588860953648', 'schema': {'collect_init_only': False, 'computed_fields': [], 'dataclass_name': 'StableDiffusionGenerator', 'fields': [{'type': 'dataclass-field', 'name': 'algorithm_version', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'CompVis/stable-diffusion-v1-4'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'modality', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'token2image'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'model_type', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'stable_diffusion'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'scheduler_type', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'discrete'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'prompt', 'schema': {'type': 'default', 'schema': {'type': 'union', 'choices': [{'type': 'str'}, {'type': 'dict', 'keys_schema': {'type': 'str'}, 'values_schema': {'type': 'any'}}]}, 'default': None}, 'kw_only': False, 'init': True, 'metadata': {'pydantic_js_updates': {'description': 'Prompt for conditional generation.'}}}], 'type': 'dataclass-args'}, 'slots': True, 'type': 'dataclass'}¶
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})¶
- __pydantic_fields__ = {'algorithm_version': FieldInfo(annotation=str, required=False, default='CompVis/stable-diffusion-v1-4', init=True, init_var=False, kw_only=False), 'modality': FieldInfo(annotation=str, required=False, default='token2image', init=True, init_var=False, kw_only=False), 'model_type': FieldInfo(annotation=str, required=False, default='stable_diffusion', init=True, init_var=False, kw_only=False), 'prompt': FieldInfo(annotation=Union[str, Dict[str, Any]], required=False, default=None, description='Prompt for conditional generation.', init=True, init_var=False, kw_only=False), 'scheduler_type': FieldInfo(annotation=str, required=False, default='discrete', init=True, init_var=False, kw_only=False)}¶
- classmethod __pydantic_fields_complete__()¶
Return whether the fields where successfully collected (i.e. type hints were successfully resolves).
This is a private property, not meant to be used outside Pydantic.
- Return type
bool
- __pydantic_serializer__ = SchemaSerializer(serializer=Dataclass( DataclassSerializer { class: Py( 0x000056072f74f430, ), serializer: Fields( GeneralFieldsSerializer { fields: { "algorithm_version": SerField { key_py: Py( 0x00007fad501ff780, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad5012ef10, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "modality": SerField { key_py: Py( 0x00007fad501fb570, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad5012bd70, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "scheduler_type": SerField { key_py: Py( 0x00007fad501fb1b0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad7415c9b0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "prompt": SerField { key_py: Py( 0x00007fad501fb130, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x0000560719b07740, ), ), serializer: Union( UnionSerializer { choices: [ Str( StrSerializer, ), Dict( DictSerializer { key_serializer: Str( StrSerializer, ), value_serializer: Any( AnySerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "dict[str, any]", }, ), ], name: "Union[str, dict[str, any]]", }, ), }, ), ), required: true, serialize_by_alias: None, }, "model_type": SerField { key_py: Py( 0x00007fad501fb330, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad689403f0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 5, }, ), fields: [ Py( 0x00007fae310b4800, ), Py( 0x00007fad6fc604f0, ), Py( 0x00007fae31df8170, ), Py( 0x00007fad5012bc70, ), Py( 0x00007fae34f4d570, ), ], name: "StableDiffusionGenerator", }, ), definitions=[])¶
- __pydantic_validator__ = SchemaValidator(title="StableDiffusionGenerator", validator=Dataclass( DataclassValidator { strict: false, validator: DataclassArgs( DataclassArgsValidator { fields: [ Field { kw_only: false, name: "algorithm_version", py_name: Py( 0x00007fae310b4800, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "algorithm_version", py_key: Py( 0x00007fad501ff6e0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad5012ef10, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "modality", py_name: Py( 0x00007fad6fc604f0, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "modality", py_key: Py( 0x00007fad501e3830, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad5012bd70, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "model_type", py_name: Py( 0x00007fae31df8170, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "model_type", py_key: Py( 0x00007fad501fadf0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad689403f0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "scheduler_type", py_name: Py( 0x00007fad5012bc70, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "scheduler_type", py_key: Py( 0x00007fad501fb230, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad7415c9b0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "prompt", py_name: Py( 0x00007fae34f4d570, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "prompt", py_key: Py( 0x00007fad501fbdf0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x0000560719b07740, ), ), on_error: Raise, validator: Union( UnionValidator { mode: Smart, choices: [ ( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), None, ), ( Dict( DictValidator { strict: false, key_validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), value_validator: Any( AnyValidator, ), min_length: None, max_length: None, name: "dict[str,any]", }, ), None, ), ], custom_error: None, name: "union[str,dict[str,any]]", }, ), validate_default: false, copy_default: false, name: "default[union[str,dict[str,any]]]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, ], positional_count: 5, init_only_count: None, dataclass_name: "StableDiffusionGenerator", validator_name: "dataclass-args[StableDiffusionGenerator]", extra_behavior: Ignore, extras_validator: None, loc_by_alias: true, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x000056072f74f430, ), generic_origin: None, fields: [ Py( 0x00007fae310b4800, ), Py( 0x00007fad6fc604f0, ), Py( 0x00007fae31df8170, ), Py( 0x00007fad5012bc70, ), Py( 0x00007fae34f4d570, ), ], post_init: None, revalidate: Never, name: "StableDiffusionGenerator", frozen: false, slots: true, }, ), definitions=[], cache_strings=True)¶
- __repr__()¶
Return repr(self).
- __signature__ = <Signature (*args: Any, algorithm_version: str = 'CompVis/stable-diffusion-v1-4', modality: str = 'token2image', model_type: str = 'stable_diffusion', scheduler_type: str = 'discrete', prompt: Union[str, Dict[str, Any]] = None) -> None>¶
- __wrapped__¶
alias of
StableDiffusionGenerator
- algorithm_application: ClassVar[str] = 'StableDiffusionGenerator'¶
Unique name for the application that is the use of this configuration together with a specific algorithm.
Will be set when registering to
ApplicationsRegistry
, but can be given by direct registration (Seeregister_algorithm_application
)
- algorithm_name: ClassVar[str] = 'DiffusersGenerationAlgorithm'¶
Name of the algorithm to use with this configuration.
Will be set when registering to
ApplicationsRegistry
- class GeoDiffGenerator(*args, **kwargs)[source]¶
Bases:
GeoDiffGenerator
GeoDiff Diffusion Model - Configuration for conditional 3D molecule structure generation given 2D information using a GeoDiff diffusion model.
- algorithm_version: str = 'fusing/gfn-molecule-gen-drugs'¶
To differentiate between different versions of an application.
There is no imposed naming convention.
- model_type: str = 'geodiff'¶
- scheduler_type: str = 'ddpm'¶
- modality: str = 'molecule'¶
- classmethod list_versions()[source]¶
Get possible algorithm versions.
Standard S3 and cache search adding the version used in the configuration.
- Return type
Set
[str
]- Returns
viable values as
algorithm_version
for the environment.
- get_target_description()[source]¶
Get description of the target for generation.
- Return type
Optional
[Dict
[str
,str
],None
]- Returns
target description, returns None in case no target is used.
- __annotations__ = {'algorithm_application': 'ClassVar[str]', 'algorithm_name': 'ClassVar[str]', 'algorithm_type': 'ClassVar[str]', 'algorithm_version': <class 'str'>, 'domain': 'ClassVar[str]', 'modality': <class 'str'>, 'model_type': <class 'str'>, 'prompt': 'Union[str, Dict[str, Any]]', 'scheduler_type': <class 'str'>}¶
- __dataclass_fields__ = {'algorithm_application': Field(name='algorithm_application',type=typing.ClassVar[str],default='GeoDiffGenerator',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_name': Field(name='algorithm_name',type=typing.ClassVar[str],default='DiffusersGenerationAlgorithm',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_type': Field(name='algorithm_type',type=typing.ClassVar[str],default='generation',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'algorithm_version': Field(name='algorithm_version',type=<class 'str'>,default='fusing/gfn-molecule-gen-drugs',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'domain': Field(name='domain',type=typing.ClassVar[str],default='vision',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=<dataclasses._MISSING_TYPE object>,_field_type=_FIELD_CLASSVAR), 'modality': Field(name='modality',type=<class 'str'>,default='molecule',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'model_type': Field(name='model_type',type=<class 'str'>,default='geodiff',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD), 'prompt': Field(name='prompt',type=typing.Union[str, typing.Dict[str, typing.Any]],default=None,default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({'description': 'Prompt for conditional generation.'}),kw_only=False,_field_type=_FIELD), 'scheduler_type': Field(name='scheduler_type',type=<class 'str'>,default='ddpm',default_factory=<dataclasses._MISSING_TYPE object>,init=True,repr=True,hash=None,compare=True,metadata=mappingproxy({}),kw_only=False,_field_type=_FIELD)}¶
- __dataclass_params__ = _DataclassParams(init=True,repr=True,eq=True,order=False,unsafe_hash=False,frozen=False)¶
- __doc__ = 'GeoDiff Diffusion Model - Configuration for conditional 3D molecule structure generation given 2D information using a GeoDiff diffusion model.'¶
- __eq__(other)¶
Return self==value.
- __hash__ = None¶
- __init__(*args, **kwargs)¶
- __is_pydantic_dataclass__ = True¶
- __match_args__ = ('algorithm_version', 'modality', 'model_type', 'scheduler_type', 'prompt')¶
- __module__ = 'gt4sd.algorithms.generation.diffusion.core'¶
- __parameters__ = (~T,)¶
- __pydantic_complete__ = True¶
- __pydantic_config__ = {}¶
- __pydantic_core_schema__ = {'cls': <class 'gt4sd.algorithms.generation.diffusion.core.GeoDiffGenerator'>, 'config': {'title': 'GeoDiffGenerator'}, 'fields': ['algorithm_version', 'modality', 'model_type', 'scheduler_type', 'prompt'], 'frozen': False, 'post_init': False, 'ref': 'types.GeoDiffGenerator:94588860750912', 'schema': {'collect_init_only': False, 'computed_fields': [], 'dataclass_name': 'GeoDiffGenerator', 'fields': [{'type': 'dataclass-field', 'name': 'algorithm_version', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'fusing/gfn-molecule-gen-drugs'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'modality', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'molecule'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'model_type', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'geodiff'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'scheduler_type', 'schema': {'type': 'default', 'schema': {'type': 'str'}, 'default': 'ddpm'}, 'kw_only': False, 'init': True, 'metadata': {}}, {'type': 'dataclass-field', 'name': 'prompt', 'schema': {'type': 'default', 'schema': {'type': 'union', 'choices': [{'type': 'str'}, {'type': 'dict', 'keys_schema': {'type': 'str'}, 'values_schema': {'type': 'any'}}]}, 'default': None}, 'kw_only': False, 'init': True, 'metadata': {'pydantic_js_updates': {'description': 'Prompt for conditional generation.'}}}], 'type': 'dataclass-args'}, 'slots': True, 'type': 'dataclass'}¶
- __pydantic_decorators__ = DecoratorInfos(validators={}, field_validators={}, root_validators={}, field_serializers={}, model_serializers={}, model_validators={}, computed_fields={})¶
- __pydantic_fields__ = {'algorithm_version': FieldInfo(annotation=str, required=False, default='fusing/gfn-molecule-gen-drugs', init=True, init_var=False, kw_only=False), 'modality': FieldInfo(annotation=str, required=False, default='molecule', init=True, init_var=False, kw_only=False), 'model_type': FieldInfo(annotation=str, required=False, default='geodiff', init=True, init_var=False, kw_only=False), 'prompt': FieldInfo(annotation=Union[str, Dict[str, Any]], required=False, default=None, description='Prompt for conditional generation.', init=True, init_var=False, kw_only=False), 'scheduler_type': FieldInfo(annotation=str, required=False, default='ddpm', init=True, init_var=False, kw_only=False)}¶
- classmethod __pydantic_fields_complete__()¶
Return whether the fields where successfully collected (i.e. type hints were successfully resolves).
This is a private property, not meant to be used outside Pydantic.
- Return type
bool
- __pydantic_serializer__ = SchemaSerializer(serializer=Dataclass( DataclassSerializer { class: Py( 0x000056072f71dc40, ), serializer: Fields( GeneralFieldsSerializer { fields: { "model_type": SerField { key_py: Py( 0x00007fad55ca6db0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad5012bdf0, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "modality": SerField { key_py: Py( 0x00007fad58c83c30, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fae310aa730, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "scheduler_type": SerField { key_py: Py( 0x00007fad50009030, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad68906430, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, "prompt": SerField { key_py: Py( 0x00007fad50008ff0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x0000560719b07740, ), ), serializer: Union( UnionSerializer { choices: [ Str( StrSerializer, ), Dict( DictSerializer { key_serializer: Str( StrSerializer, ), value_serializer: Any( AnySerializer, ), filter: SchemaFilter { include: None, exclude: None, }, name: "dict[str, any]", }, ), ], name: "Union[str, dict[str, any]]", }, ), }, ), ), required: true, serialize_by_alias: None, }, "algorithm_version": SerField { key_py: Py( 0x00007fad500119d0, ), alias: None, alias_py: None, serializer: Some( WithDefault( WithDefaultSerializer { default: Default( Py( 0x00007fad5012ef60, ), ), serializer: Str( StrSerializer, ), }, ), ), required: true, serialize_by_alias: None, }, }, computed_fields: Some( ComputedFields( [], ), ), mode: SimpleDict, extra_serializer: None, filter: SchemaFilter { include: None, exclude: None, }, required_fields: 5, }, ), fields: [ Py( 0x00007fae310b4800, ), Py( 0x00007fad6fc604f0, ), Py( 0x00007fae31df8170, ), Py( 0x00007fad5012bc70, ), Py( 0x00007fae34f4d570, ), ], name: "GeoDiffGenerator", }, ), definitions=[])¶
- __pydantic_validator__ = SchemaValidator(title="GeoDiffGenerator", validator=Dataclass( DataclassValidator { strict: false, validator: DataclassArgs( DataclassArgsValidator { fields: [ Field { kw_only: false, name: "algorithm_version", py_name: Py( 0x00007fae310b4800, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "algorithm_version", py_key: Py( 0x00007fad501ffd70, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad5012ef60, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "modality", py_name: Py( 0x00007fad6fc604f0, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "modality", py_key: Py( 0x00007fad55c0faf0, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fae310aa730, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "model_type", py_name: Py( 0x00007fae31df8170, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "model_type", py_key: Py( 0x00007fad55a06a70, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad5012bdf0, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "scheduler_type", py_name: Py( 0x00007fad5012bc70, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "scheduler_type", py_key: Py( 0x00007fad55ccdd70, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x00007fad68906430, ), ), on_error: Raise, validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), validate_default: false, copy_default: false, name: "default[str]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, Field { kw_only: false, name: "prompt", py_name: Py( 0x00007fae34f4d570, ), init: true, init_only: false, lookup_key_collection: LookupKeyCollection { by_name: Simple( LookupPath { first_item: PathItemString { key: "prompt", py_key: Py( 0x00007fad55c26c70, ), }, rest: [], }, ), by_alias: None, by_alias_then_name: None, }, validator: WithDefault( WithDefaultValidator { default: Default( Py( 0x0000560719b07740, ), ), on_error: Raise, validator: Union( UnionValidator { mode: Smart, choices: [ ( Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), None, ), ( Dict( DictValidator { strict: false, key_validator: Str( StrValidator { strict: false, coerce_numbers_to_str: false, }, ), value_validator: Any( AnyValidator, ), min_length: None, max_length: None, name: "dict[str,any]", }, ), None, ), ], custom_error: None, name: "union[str,dict[str,any]]", }, ), validate_default: false, copy_default: false, name: "default[union[str,dict[str,any]]]", undefined: Py( 0x00007fae32fe7a60, ), }, ), frozen: false, }, ], positional_count: 5, init_only_count: None, dataclass_name: "GeoDiffGenerator", validator_name: "dataclass-args[GeoDiffGenerator]", extra_behavior: Ignore, extras_validator: None, loc_by_alias: true, validate_by_alias: None, validate_by_name: None, }, ), class: Py( 0x000056072f71dc40, ), generic_origin: None, fields: [ Py( 0x00007fae310b4800, ), Py( 0x00007fad6fc604f0, ), Py( 0x00007fae31df8170, ), Py( 0x00007fad5012bc70, ), Py( 0x00007fae34f4d570, ), ], post_init: None, revalidate: Never, name: "GeoDiffGenerator", frozen: false, slots: true, }, ), definitions=[], cache_strings=True)¶
- __repr__()¶
Return repr(self).
- __signature__ = <Signature (*args: Any, algorithm_version: str = 'fusing/gfn-molecule-gen-drugs', modality: str = 'molecule', model_type: str = 'geodiff', scheduler_type: str = 'ddpm', prompt: Union[str, Dict[str, Any]] = None) -> None>¶
- __wrapped__¶
alias of
GeoDiffGenerator
- algorithm_application: ClassVar[str] = 'GeoDiffGenerator'¶
Unique name for the application that is the use of this configuration together with a specific algorithm.
Will be set when registering to
ApplicationsRegistry
, but can be given by direct registration (Seeregister_algorithm_application
)
- algorithm_name: ClassVar[str] = 'DiffusersGenerationAlgorithm'¶
Name of the algorithm to use with this configuration.
Will be set when registering to
ApplicationsRegistry