snowflake.ml.model.batch_inference.InputSpec

class snowflake.ml.model.batch_inference.InputSpec(*, params: dict[str, Any] | None = None, column_handling: dict[str, ColumnHandlingOptions] | None = None, partition_column: str | None = None)

Bases: BaseModel

Input block of the batch inference job specification.

params

Optional dictionary of model inference parameters (e.g., temperature, top_k for LLMs). These are passed as keyword arguments to the model’s inference method. Defaults to None.

Type:

Optional[dict[str, Any]]

column_handling

Optional dictionary specifying how to handle specific columns during file I/O. Maps column names to their input format and file encoding configuration.

Type:

Optional[dict[str, ColumnHandlingOptions]]

partition_column

Optional column name to use for partitioning the input data. When set, the batch inference job will partition the data by this column. Defaults to None.

Type:

Optional[str]

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] = {'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 = {'column_handling': FieldInfo(annotation=Union[dict[str, ColumnHandlingOptions], NoneType], required=False, default=None), 'params': FieldInfo(annotation=Union[dict[str, Any], NoneType], required=False, default=None), 'partition_column': FieldInfo(annotation=Union[str, 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.

params: dict[str, Any] | None
column_handling: dict[str, ColumnHandlingOptions] | None
partition_column: str | None