snowflake.ml.model.batch_inference.InferenceSpec

class snowflake.ml.model.batch_inference.InferenceSpec(*, num_workers: int | None = None, max_batch_rows: int | None = None, engine_options: EngineOptions | None = None, adapters: dict[str, Any] | list[Any] | None = None)

Bases: BaseModel

Inference block of the batch inference job specification.

num_workers

The number of workers to run the inference service for handling requests in parallel within an instance of the service. Auto determined if None.

Type:

Optional[int]

max_batch_rows

Maximum number of rows to process in a single batch. Auto determined if None. Larger values may improve throughput.

Type:

Optional[int]

engine_options

Options for a custom inference engine.

Type:

Optional[EngineOptions]

adapters

Adapter versions for this job. A dict maps job alias (input.params.model) to adapter versions; keys become alias on each emitted list item. A nonempty list and adapter-as-target omit alias. Empty {} / [] are treated as unset so the YAML key is omitted. run_batch serializes these to name/version identities before writing the job spec.

Type:

Optional[dict[str, ModelVersion] | list[ModelVersion]]

Create a new model by parsing and validating input data from keyword arguments.

Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.

self is explicitly positional-only to allow self as a field name.

Attributes

model_computed_fields = {}
model_config: ClassVar[ConfigDict] = {'arbitrary_types_allowed': True, 'extra': 'forbid'}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

model_extra

Get extra fields set during validation.

Returns:

A dictionary of extra fields, or None if config.extra is not set to “allow”.

model_fields = {'adapters': FieldInfo(annotation=Union[dict[str, Any], list[Any], NoneType], required=False, default=None), 'engine_options': FieldInfo(annotation=Union[EngineOptions, NoneType], required=False, default=None), 'max_batch_rows': FieldInfo(annotation=Union[int, NoneType], required=False, default=None), 'num_workers': FieldInfo(annotation=Union[int, NoneType], required=False, default=None)}
model_fields_set

Returns the set of fields that have been explicitly set on this model instance.

Returns:

A set of strings representing the fields that have been set,

i.e. that were not filled from defaults.

num_workers: int | None
max_batch_rows: int | None
engine_options: EngineOptions | None
adapters: dict[str, Any] | list[Any] | None