d3m.primitive_interfaces.generator¶
-
class
d3m.primitive_interfaces.generator.
GeneratorPrimitiveBase
(*, hyperparams, random_seed=0, docker_containers=None, volumes=None, temporary_directory=None)[source]¶ Bases:
d3m.primitive_interfaces.base.PrimitiveBase
[[d3m.container.list.List
,typing.Outputs
,typing.Params
],typing.Hyperparams
]A base class for primitives which have to be fitted before they can start producing (useful) outputs, but they are fitted only on output data. Moreover, they do not accept any inputs to generate outputs, which is represented as a sequence (list) of non-negative integer values to
produce
method, only to signal how many outputs are requested, and which one from the potential set of outputs.The list of integer values to
produce
method provides support for batching. A caller does not have to rely on the order in which the primitive is called but can specify the index of the requested output.This class is parameterized using only by three type variables,
Outputs
,Params
, andHyperparams
.-
fit_multi_produce
(*, produce_methods, inputs, outputs, timeout=None, iterations=None)[source]¶ A method calling
fit
and after that multiple produce methods at once.- Parameters
produce_methods (
Sequence
[str
]) – A list of names of produce methods to call.inputs (
List
) – The inputs given to all produce methods.outputs (~Outputs) – The outputs given to
set_training_data
.timeout (
Optional
[float
]) – A maximum time this primitive should take to both fit the primitive and produce outputs for all produce methods listed inproduce_methods
argument, in seconds.iterations (
Optional
[int
]) – How many of internal iterations should the primitive do for both fitting and producing outputs of all produce methods.
- Returns
A dict of values for each produce method wrapped inside
MultiCallResult
.- Return type
-
abstract
set_training_data
(*, outputs)[source]¶ Sets training data of this primitive.
- Parameters
outputs (~Outputs) – The outputs.
- Return type
None
-
docker_containers
: Dict[str, d3m.primitive_interfaces.base.DockerContainer][source]¶ A dict mapping Docker image keys from primitive’s metadata to (named) tuples containing container’s address under which the container is accessible by the primitive, and a dict mapping exposed ports to ports on that address.
-
logger
: ClassVar[logging.Logger][source]¶ Primitive’s logger. Available as a class attribute. This gets automatically set to primitive’s logger in metaclass.
-
metadata
: ClassVar[d3m.metadata.base.PrimitiveMetadata][source]¶ Primitive’s metadata. Available as a class attribute. Primitive author should provide all fields which cannot be determined automatically inside the code. In this way metadata is close to the code and it is easier for consumers to make sure metadata they are using is really matching the code they are using. PrimitiveMetadata class updates itself with metadata about code and other things it can extract automatically.
-