A DescriptorGenerator is a pure, stateless transform: given a series of structure identifiers (e.g. SMILES) it returns a dataframe of numeric descriptor columns. Correlation-based decorrelation is not done here — it lives on the consuming descriptor encoding / engineered feature (DescriptorSpec), applied across the whole assembled descriptor block.
# data_models.descriptor_generators.api { #bofire.data_models.descriptor_generators.api }`data_models.descriptor_generators.api`## Classes| Name | Description || ---| ---||[DescriptorGenerator](#bofire.data_models.descriptor_generators.api.DescriptorGenerator)| Base class for all descriptor generators. ||[Fingerprints](#bofire.data_models.descriptor_generators.api.Fingerprints)|||[Fragments](#bofire.data_models.descriptor_generators.api.Fragments)|||[MordredDescriptors](#bofire.data_models.descriptor_generators.api.MordredDescriptors)||### DescriptorGenerator { #bofire.data_models.descriptor_generators.api.DescriptorGenerator }```pythondata_models.descriptor_generators.api.DescriptorGenerator()```Base class for all descriptor generators.A ``DescriptorGenerator`` is a pure, stateless transform: given a series ofstructure identifiers (e.g. SMILES) it returns a dataframe of numeric descriptorcolumns. Correlation-based decorrelation is *not* done here — it lives on theconsuming descriptor encoding / engineered feature (``DescriptorSpec``), appliedacross the whole assembled descriptor block.#### Methods| Name | Description || ---| ---||[get_descriptor_names](#bofire.data_models.descriptor_generators.api.DescriptorGenerator.get_descriptor_names)| The descriptor column names this generator produces. ||[get_descriptor_values](#bofire.data_models.descriptor_generators.api.DescriptorGenerator.get_descriptor_values)| Descriptor values for a series of structures (columns = descriptor names). |##### get_descriptor_names { #bofire.data_models.descriptor_generators.api.DescriptorGenerator.get_descriptor_names }```pythondata_models.descriptor_generators.api.DescriptorGenerator.get_descriptor_names()```The descriptor column names this generator produces.##### get_descriptor_values { #bofire.data_models.descriptor_generators.api.DescriptorGenerator.get_descriptor_values }```pythondata_models.descriptor_generators.api.DescriptorGenerator.get_descriptor_values( values,)```Descriptor values for a series of structures (columns = descriptor names).### Fingerprints { #bofire.data_models.descriptor_generators.api.Fingerprints }```pythondata_models.descriptor_generators.api.Fingerprints()```### Fragments { #bofire.data_models.descriptor_generators.api.Fragments }```pythondata_models.descriptor_generators.api.Fragments()```#### Methods| Name | Description || ---| ---||[validate_fragments](#bofire.data_models.descriptor_generators.api.Fragments.validate_fragments)| Validates that fragments have unique names |##### validate_fragments { #bofire.data_models.descriptor_generators.api.Fragments.validate_fragments }```pythondata_models.descriptor_generators.api.Fragments.validate_fragments(fragments)```Validates that fragments have unique names###### Parameters {.doc-section .doc-section-parameters}| Name | Type | Description | Default ||------------|-------------|------------------------|------------|| categories | List\[str\]| List of fragment names | _required_ |###### Raises {.doc-section .doc-section-raises}| Name | Type | Description ||--------|------------|--------------------------------------||| ValueError | when fragments have non-unique names |###### Returns {.doc-section .doc-section-returns}| Name | Type | Description ||--------|--------|----------------------------------|||| List[str]: List of the fragments |### MordredDescriptors { #bofire.data_models.descriptor_generators.api.MordredDescriptors }```pythondata_models.descriptor_generators.api.MordredDescriptors()```#### Methods| Name | Description || ---| ---||[validate_descriptors](#bofire.data_models.descriptor_generators.api.MordredDescriptors.validate_descriptors)| Validates that descriptors have unique names |##### validate_descriptors { #bofire.data_models.descriptor_generators.api.MordredDescriptors.validate_descriptors }```pythondata_models.descriptor_generators.api.MordredDescriptors.validate_descriptors( descriptors,)```Validates that descriptors have unique names###### Parameters {.doc-section .doc-section-parameters}| Name | Type | Description | Default ||-------------|-------------|--------------------------|------------|| descriptors | List\[str\]| List of descriptor names | _required_ |###### Raises {.doc-section .doc-section-raises}| Name | Type | Description ||--------|------------|----------------------------------------||| ValueError | when descriptors have non-unique names |###### Returns {.doc-section .doc-section-returns}| Name | Type | Description ||--------|--------|------------------------------------|||| List[str]: List of the descriptors |