snowflake-ml-python 1.25.0__py3-none-any.whl → 1.25.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
snowflake/ml/jobs/job.py CHANGED
@@ -123,41 +123,26 @@ class MLJob(Generic[T], SerializableSessionMixin):
123
123
 
124
124
  return self._transform_path(result_path_str)
125
125
 
126
- # After introducing ML Job definitions, we have additional stage mount for result path
127
- # the result path is like @payload_stage/{job_definition_name}/{job_name}/mljob_result
128
- @property
129
- def _result_stage_path(self) -> Optional[str]:
130
- volumes = self._service_spec["spec"]["volumes"]
131
- stage_volume = next((v for v in volumes if v["name"] == constants.RESULT_VOLUME_NAME), None)
132
- if stage_volume is None:
133
- return self._stage_path
134
- elif "stageConfig" in stage_volume:
135
- return cast(str, stage_volume["stageConfig"]["name"])
136
- else:
137
- return cast(str, stage_volume["source"])
138
-
139
- def _transform_path(
140
- self,
141
- path_str: str,
142
- ) -> str:
126
+ def _transform_path(self, path_str: str) -> str:
143
127
  """Transform a local path within the container to a stage path."""
144
128
  path = stage_utils.resolve_path(path_str)
145
129
  if isinstance(path, stage_utils.StagePath):
130
+ # Stage paths need no transformation
146
131
  return path.as_posix()
147
132
  if not path.is_absolute():
148
- return f"{self._result_stage_path}/{path.as_posix()}"
133
+ # Assume relative paths are relative to stage mount path
134
+ return f"{self._stage_path}/{path.as_posix()}"
149
135
 
136
+ # If result path is absolute, rebase it onto the stage mount path
137
+ # TODO: Rather than matching by name, use the longest mount path which matches
150
138
  volume_mounts = self._container_spec["volumeMounts"]
151
- stage_volume = next((v for v in volume_mounts if v["name"] == constants.RESULT_VOLUME_NAME), None)
152
- if stage_volume is None:
153
- stage_volume = next(v for v in volume_mounts if v["name"] == constants.STAGE_VOLUME_NAME)
154
- stage_mount_str = stage_volume["mountPath"]
139
+ stage_mount_str = next(v for v in volume_mounts if v.get("name") == constants.STAGE_VOLUME_NAME)["mountPath"]
155
140
  stage_mount = Path(stage_mount_str)
156
141
  try:
157
142
  relative_path = path.relative_to(stage_mount)
158
- return f"{self._result_stage_path}/{relative_path.as_posix()}"
143
+ return f"{self._stage_path}/{relative_path.as_posix()}"
159
144
  except ValueError:
160
- raise ValueError(f"Result Path {path} is absolute, but should be relative to stage mount {stage_mount}")
145
+ raise ValueError(f"Result path {path} is absolute, but should be relative to stage mount {stage_mount}")
161
146
 
162
147
  @overload
163
148
  def get_logs(
@@ -294,7 +279,7 @@ class MLJob(Generic[T], SerializableSessionMixin):
294
279
  if self._result is None:
295
280
  self.wait(timeout)
296
281
  try:
297
- self._result = interop_utils.load(
282
+ self._result = interop_utils.load_result(
298
283
  self._result_path, session=self._session, path_transform=self._transform_path
299
284
  )
300
285
  except Exception as e:
@@ -14,14 +14,11 @@ from snowflake.ml._internal import telemetry
14
14
  from snowflake.ml._internal.utils import identifier
15
15
  from snowflake.ml._internal.utils.mixins import SerializableSessionMixin
16
16
  from snowflake.ml.jobs import job as jb
17
- from snowflake.ml.jobs._interop import utils as interop_utils
18
17
  from snowflake.ml.jobs._utils import (
19
- arg_protocol,
20
18
  constants,
21
19
  feature_flags,
22
20
  payload_utils,
23
21
  query_helper,
24
- runtime_env_utils,
25
22
  types,
26
23
  )
27
24
  from snowflake.snowpark import context as sp_context
@@ -43,8 +40,6 @@ class MLJobDefinition(Generic[_Args, _ReturnValue], SerializableSessionMixin):
43
40
  compute_pool: str,
44
41
  name: str,
45
42
  entrypoint_args: list[Any],
46
- arg_protocol: Optional[arg_protocol.ArgProtocol] = arg_protocol.ArgProtocol.NONE,
47
- default_args: Optional[list[Any]] = None,
48
43
  database: Optional[str] = None,
49
44
  schema: Optional[str] = None,
50
45
  session: Optional[snowpark.Session] = None,
@@ -64,12 +59,8 @@ class MLJobDefinition(Generic[_Args, _ReturnValue], SerializableSessionMixin):
64
59
  self.schema = identifier.resolve_identifier(resolved_schema)
65
60
  self.job_definition_id = identifier.get_schema_level_object_identifier(self.database, self.schema, name)
66
61
  self.entrypoint_args = entrypoint_args
67
- self.arg_protocol = arg_protocol
68
- self.default_args = default_args
69
62
 
70
63
  def delete(self) -> None:
71
- if self.session is None:
72
- raise RuntimeError("Session is required to delete job definition")
73
64
  if self.stage_name:
74
65
  try:
75
66
  self.session.sql(f"REMOVE {self.stage_name}/").collect()
@@ -77,27 +68,9 @@ class MLJobDefinition(Generic[_Args, _ReturnValue], SerializableSessionMixin):
77
68
  except Exception as e:
78
69
  logger.warning(f"Failed to clean up stage files for job definition {self.stage_name}: {e}")
79
70
 
80
- def _prepare_arguments(self, *args: _Args.args, **kwargs: _Args.kwargs) -> Optional[list[Any]]:
81
- if self.arg_protocol == arg_protocol.ArgProtocol.NONE:
82
- if len(kwargs) > 0:
83
- raise ValueError(f"Keyword arguments are not supported with {self.arg_protocol}")
84
- return list(args)
85
- elif self.arg_protocol == arg_protocol.ArgProtocol.CLI:
86
- return _combine_runtime_arguments(self.default_args, *args, **kwargs)
87
- elif self.arg_protocol == arg_protocol.ArgProtocol.PICKLE:
88
- if not args and not kwargs:
89
- return []
90
- uid = uuid4().hex[:8]
91
- rel_path = f"{uid}/function_args"
92
- file_path = f"{self.stage_name}/{constants.APP_STAGE_SUBPATH}/{rel_path}"
93
- payload = interop_utils.save_result(
94
- (args, kwargs), file_path, session=self.session, max_inline_size=interop_utils._MAX_INLINE_SIZE
95
- )
96
- if payload is not None:
97
- return [f"--function_args={payload.decode('utf-8')}"]
98
- return [f"--function_args={rel_path}"]
99
- else:
100
- raise ValueError(f"Invalid arg_protocol: {self.arg_protocol}")
71
+ def _prepare_arguments(self, *args: _Args.args, **kwargs: _Args.kwargs) -> list[Any]:
72
+ # TODO: Add ArgProtocol and respective logics
73
+ return [arg for arg in args]
101
74
 
102
75
  @telemetry.send_api_usage_telemetry(project=_PROJECT)
103
76
  def __call__(self, *args: _Args.args, **kwargs: _Args.kwargs) -> jb.MLJob[_ReturnValue]:
@@ -131,7 +104,6 @@ class MLJobDefinition(Generic[_Args, _ReturnValue], SerializableSessionMixin):
131
104
  json.dumps(job_options_dict),
132
105
  ]
133
106
  query_template = "CALL SYSTEM$EXECUTE_ML_JOB(%s, %s, %s, %s)"
134
- assert self.session is not None, "Session is required to generate MLJob SQL query"
135
107
  sql = self.session._conn._cursor._preprocess_pyformat_query(query_template, params)
136
108
  return sql
137
109
 
@@ -157,7 +129,6 @@ class MLJobDefinition(Generic[_Args, _ReturnValue], SerializableSessionMixin):
157
129
  entrypoint: Optional[Union[str, list[str]]] = None,
158
130
  target_instances: int = 1,
159
131
  generate_suffix: bool = True,
160
- arg_protocol: Optional[arg_protocol.ArgProtocol] = arg_protocol.ArgProtocol.NONE,
161
132
  **kwargs: Any,
162
133
  ) -> "MLJobDefinition[_Args, _ReturnValue]":
163
134
  # Use kwargs for less common optional parameters
@@ -177,7 +148,6 @@ class MLJobDefinition(Generic[_Args, _ReturnValue], SerializableSessionMixin):
177
148
  )
178
149
  overwrite = kwargs.pop("overwrite", False)
179
150
  name = kwargs.pop("name", None)
180
- default_args = kwargs.pop("default_args", None)
181
151
  # Warn if there are unknown kwargs
182
152
  if kwargs:
183
153
  logger.warning(f"Ignoring unknown kwargs: {kwargs.keys()}")
@@ -185,11 +155,6 @@ class MLJobDefinition(Generic[_Args, _ReturnValue], SerializableSessionMixin):
185
155
  # Validate parameters
186
156
  if database and not schema:
187
157
  raise ValueError("Schema must be specified if database is specified.")
188
-
189
- compute_pool = identifier.resolve_identifier(compute_pool)
190
- if query_warehouse is not None:
191
- query_warehouse = identifier.resolve_identifier(query_warehouse)
192
-
193
158
  if target_instances < 1:
194
159
  raise ValueError("target_instances must be greater than 0.")
195
160
  if not (0 < min_instances <= target_instances):
@@ -235,7 +200,6 @@ class MLJobDefinition(Generic[_Args, _ReturnValue], SerializableSessionMixin):
235
200
  # Pass a JSON object for runtime versions so it serializes as nested JSON in options
236
201
  runtime_environment = json.dumps({"pythonVersion": f"{sys.version_info.major}.{sys.version_info.minor}"})
237
202
 
238
- runtime = runtime_env_utils.get_runtime_image(session, compute_pool, runtime_environment)
239
203
  combined_env_vars = {**uploaded_payload.env_vars, **(env_vars or {})}
240
204
  entrypoint_args = [v.as_posix() if isinstance(v, PurePath) else v for v in uploaded_payload.entrypoint]
241
205
  spec_options = types.SpecOptions(
@@ -245,7 +209,7 @@ class MLJobDefinition(Generic[_Args, _ReturnValue], SerializableSessionMixin):
245
209
  env_vars=combined_env_vars,
246
210
  enable_metrics=enable_metrics,
247
211
  spec_overrides=spec_overrides,
248
- runtime=runtime,
212
+ runtime=runtime_environment if runtime_environment else None,
249
213
  enable_stage_mount_v2=feature_flags.FeatureFlags.ENABLE_STAGE_MOUNT_V2.is_enabled(),
250
214
  )
251
215
 
@@ -264,8 +228,6 @@ class MLJobDefinition(Generic[_Args, _ReturnValue], SerializableSessionMixin):
264
228
  compute_pool=compute_pool,
265
229
  entrypoint_args=entrypoint_args,
266
230
  session=session,
267
- arg_protocol=arg_protocol,
268
- default_args=default_args,
269
231
  database=database,
270
232
  schema=schema,
271
233
  name=name,
@@ -274,51 +236,3 @@ class MLJobDefinition(Generic[_Args, _ReturnValue], SerializableSessionMixin):
274
236
 
275
237
  def _generate_suffix() -> str:
276
238
  return str(uuid4().hex)[:8]
277
-
278
-
279
- def _combine_runtime_arguments(
280
- default_runtime_args: Optional[list[Any]] = None, *args: Any, **kwargs: Any
281
- ) -> list[Any]:
282
- """Merge default CLI arguments with runtime overrides into a flat argument list.
283
-
284
- Parses `default_runtime_args` for flags (e.g., `--key value`) and merges them with
285
- `kwargs`. Keyword arguments override defaults unless their value is None. Positional
286
- arguments from both `default_args` and `*args` are preserved in order.
287
-
288
- Args:
289
- default_runtime_args: Optional list of default CLI arguments to parse for flags and positional args.
290
- *args: Additional positional arguments to include in the output.
291
- **kwargs: Keyword arguments that override default flags. Values of None are ignored.
292
-
293
- Returns:
294
- A list of CLI-style arguments: positional args followed by `--key value` pairs.
295
- """
296
- cli_args = list(args)
297
- flags: dict[str, Any] = {}
298
- if default_runtime_args:
299
- i = 0
300
- while i < len(default_runtime_args):
301
- arg = default_runtime_args[i]
302
- if isinstance(arg, str) and arg.startswith("--"):
303
- key = arg[2:]
304
- # Check if next arg is a value (not a flag)
305
- if i + 1 < len(default_runtime_args):
306
- next_arg = default_runtime_args[i + 1]
307
- if not (isinstance(next_arg, str) and next_arg.startswith("--")):
308
- flags[key] = next_arg
309
- i += 2
310
- continue
311
-
312
- flags[key] = None
313
- else:
314
- cli_args.append(arg)
315
- i += 1
316
- # Prioritize kwargs over default_args. Explicit None values in kwargs
317
- # serve as overrides and are converted to the string "None" to match
318
- # CLI flag conventions (--key=value)
319
- # Downstream logic must handle the parsing of these string-based nulls.
320
- for k, v in kwargs.items():
321
- flags[k] = v
322
- for k, v in flags.items():
323
- cli_args.extend([f"--{k}", str(v)])
324
- return cli_args
snowflake/ml/version.py CHANGED
@@ -1,2 +1,2 @@
1
1
  # This is parsed by regex in conda recipe meta file. Make sure not to break it.
2
- VERSION = "1.25.0"
2
+ VERSION = "1.25.1"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: snowflake-ml-python
3
- Version: 1.25.0
3
+ Version: 1.25.1
4
4
  Summary: The machine learning client library that is used for interacting with Snowflake to build machine learning solutions.
5
5
  Author-email: "Snowflake, Inc" <support@snowflake.com>
6
6
  License:
@@ -417,6 +417,12 @@ NOTE: Version 1.7.0 is used as example here. Please choose the the latest versio
417
417
 
418
418
  # Release History
419
419
 
420
+ ## 1.25.1
421
+
422
+ ### Bug Fixes
423
+
424
+ * ML Job: Reverted changes related to the introduction of ML Job Definitions.
425
+
420
426
  ## 1.25.0
421
427
 
422
428
  ### New Features
@@ -10,7 +10,7 @@ snowflake/cortex/_sse_client.py,sha256=sLYgqAfTOPADCnaWH2RWAJi8KbU_7gSRsTUDcDD5T
10
10
  snowflake/cortex/_summarize.py,sha256=7GH8zqfIdOiHA5w4b6EvJEKEWhaTrL4YA6iDGbn7BNM,1307
11
11
  snowflake/cortex/_translate.py,sha256=9ZGjvAnJFisbzJ_bXnt4pyug5UzhHJRXW8AhGQEersM,1652
12
12
  snowflake/cortex/_util.py,sha256=krNTpbkFLXwdFqy1bd0xi7ZmOzOHRnIfHdQCPiLZJxk,3288
13
- snowflake/ml/version.py,sha256=V1sQKmkr-QMsegsFN8N1EoPDeU1CzZe6ofRecCIByco,99
13
+ snowflake/ml/version.py,sha256=oU0Z3v9Lg_mwDt9f5axBWDQv8y6QGuNh3xnDahFqq8w,99
14
14
  snowflake/ml/_internal/env.py,sha256=EY_2KVe8oR3LgKWdaeRb5rRU-NDNXJppPDsFJmMZUUY,265
15
15
  snowflake/ml/_internal/env_utils.py,sha256=Xx03pV_qEIVJJY--J3ZmnqK9Ugf0Os3O2vrF8xOyq_c,31500
16
16
  snowflake/ml/_internal/file_utils.py,sha256=7sA6loOeSfmGP4yx16P4usT9ZtRqG3ycnXu7_Tk7dOs,14206
@@ -40,7 +40,7 @@ snowflake/ml/_internal/utils/formatting.py,sha256=PswZ6Xas7sx3Ok1MBLoH2o7nfXOxaJ
40
40
  snowflake/ml/_internal/utils/identifier.py,sha256=HrcCBOyn93fRjMj4K1YJG37ONtw7e3EZnt29LzhEgLA,12586
41
41
  snowflake/ml/_internal/utils/import_utils.py,sha256=msvUDaCcJpAcNCS-5Ynz4F1CvUhXjRsuZyOv1rN6Yhk,3213
42
42
  snowflake/ml/_internal/utils/jwt_generator.py,sha256=X8D_bjVRnpcSCuJFjrA71KBJDRFXD_73tVu4VL9agpE,5441
43
- snowflake/ml/_internal/utils/mixins.py,sha256=FxpB5ZJBJk9Cv3dI_YiJDkBzMRel60aOD_xn67TFR5s,4708
43
+ snowflake/ml/_internal/utils/mixins.py,sha256=0_jJN_-iNvLim0-GsJ4geqK4Ja91O-M527uWzj3vBtw,3511
44
44
  snowflake/ml/_internal/utils/parallelize.py,sha256=l8Zjo-hp8zqoLgHxBlpz9Zmn2Z-MRQ0fS_NnrR4jWR8,4522
45
45
  snowflake/ml/_internal/utils/pkg_version_utils.py,sha256=EaY_3IsVOZ9BCH28F5VLjp-0AiEqDlL7L715vkPsgrY,5149
46
46
  snowflake/ml/_internal/utils/query_result_checker.py,sha256=1PR41Xn9BUIXvp-UmJ9FgEbj8WfgU7RUhz3PqvvVQ5E,10656
@@ -114,30 +114,31 @@ snowflake/ml/fileset/sfcfs.py,sha256=FJFc9-gc0KXaNyc10ZovN_87aUCShb0WztVwa02t0io
114
114
  snowflake/ml/fileset/snowfs.py,sha256=uF5QluYtiJ-HezGIhF55dONi3t0E6N7ByaVAIAlM3nk,5133
115
115
  snowflake/ml/fileset/stage_fs.py,sha256=SnkgCta6_5G6Ljl-Nzctr4yavhHUSlNKN3je0ojp54E,20685
116
116
  snowflake/ml/jobs/__init__.py,sha256=JypKzxERpcn4yJ7FILA98Gl0sFDEGkAIQ35b1iSzaXg,741
117
- snowflake/ml/jobs/decorators.py,sha256=ugaVGOLTlYFyohYbErCyWU5Aqh2gwSlNAmn7Yr55dsE,3241
118
- snowflake/ml/jobs/job.py,sha256=t1kk2Il8NQcDsVphw38_V6Hha5c0ToO9sI6M8lws-NE,28275
119
- snowflake/ml/jobs/job_definition.py,sha256=qTB2T9UrZXCS5xaznDCsFHG4mdyFzymOPOInHbIRRwc,14822
117
+ snowflake/ml/jobs/decorators.py,sha256=mQgdWvvCwD7q79cSFKZHKegXGh2j1u8WM64UD3lCKr4,3428
118
+ snowflake/ml/jobs/job.py,sha256=wEeIk5RZhkaJ56Zb1cBxsTAUJIo4QyhpRWaZaiYBuGY,27697
119
+ snowflake/ml/jobs/job_definition.py,sha256=95qK57PyrT65VRVEXRSKaG_VUkHiI2mJ7cpWMkTP9B4,10791
120
120
  snowflake/ml/jobs/manager.py,sha256=heuOXEn7Y5Gb5s2y55GEx6i9mr-Z2tTL-b0rPGYv3ao,20469
121
121
  snowflake/ml/jobs/_interop/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
122
- snowflake/ml/jobs/_interop/data_utils.py,sha256=Cw0Mpa_bs-Co_z3EVf93fLjlXE9U6gMfILrU8BHjj_k,4109
123
- snowflake/ml/jobs/_interop/dto_schema.py,sha256=QlFYvlarJNI_gALZgVdNej08oBy2E7dPRdpMQTrvoHc,4272
122
+ snowflake/ml/jobs/_interop/data_utils.py,sha256=xUO5YlhUKFVCDtbjam5gP2lka3lfoknTLr7syNAVxK0,4074
123
+ snowflake/ml/jobs/_interop/dto_schema.py,sha256=NhoQ6WJa7uLO9VJojEENVVZhZMfL_G1VPPSSUYmmhO8,2750
124
124
  snowflake/ml/jobs/_interop/exception_utils.py,sha256=ZCphBkaaNINFATXZmjPzzNLKZZxKvGPROZ2azU8w13g,16348
125
125
  snowflake/ml/jobs/_interop/legacy.py,sha256=8BuC197e6nPmAzh4urYiuBuCNP-RlOlvWnWpSHTduqQ,9238
126
- snowflake/ml/jobs/_interop/protocols.py,sha256=YNCIT_FzjFPfEGp78QlolIYBxo3IMbsSRo9tBfeB0Ic,23026
126
+ snowflake/ml/jobs/_interop/protocols.py,sha256=I-RGWUDUc_FsKsq_mtczO7n93O_IzUvmEKXTznSJyK8,18413
127
127
  snowflake/ml/jobs/_interop/results.py,sha256=nQ07XJ1BZEkPB4xa12pbGyaKqR8sWCoSzx0IKQlub4w,1714
128
- snowflake/ml/jobs/_interop/utils.py,sha256=WkScRL88GmDD-cm_xqSIhCelK-793ERfwY3Y8U8zMMY,8102
128
+ snowflake/ml/jobs/_interop/utils.py,sha256=TWFkUcAYmb-fpTwEL8idkk3XxlZ8vLz4X_gyS78PSi4,5552
129
129
  snowflake/ml/jobs/_utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
130
- snowflake/ml/jobs/_utils/arg_protocol.py,sha256=SP60NjjxFEvGBWftfSSj2lU0PIrDMBdGzZ6fgA_VZOE,89
131
- snowflake/ml/jobs/_utils/constants.py,sha256=rLT2gTT_iv2Cia0b_fERb5U0Lc7Zuuu67QP8csNeR8I,4785
130
+ snowflake/ml/jobs/_utils/constants.py,sha256=7KMhM-7KEursLjFBlj4xaQ4uGFJtjJ12rlx55hcBCQ0,4677
132
131
  snowflake/ml/jobs/_utils/feature_flags.py,sha256=j1PvXFTc83ds6I1575X0xnfIz-qRlnUwna8ZhQN1pUw,4831
133
- snowflake/ml/jobs/_utils/payload_utils.py,sha256=fAe9CN_mbbqtgfaUe61nKZTTPbeSPy4G1EB6wQImNwA,32681
132
+ snowflake/ml/jobs/_utils/function_payload_utils.py,sha256=4LBaStMdhRxcqwRkwFje-WwiEKRWnBfkaOYouF3N3Kg,1308
133
+ snowflake/ml/jobs/_utils/payload_utils.py,sha256=X9nG3kKlxr-2EfnLXhLwHdXoAhQS_MaTPfXPydlE_JU,33824
134
134
  snowflake/ml/jobs/_utils/query_helper.py,sha256=DxezZzftVT7WZzf0uzEn0l6U7BFLNU4U4W_IRCzgbaI,1265
135
- snowflake/ml/jobs/_utils/runtime_env_utils.py,sha256=l7IegZo_UYeQQEXs8gptP8UBEnikGcxP49Ocp0t2d0I,751
135
+ snowflake/ml/jobs/_utils/runtime_env_utils.py,sha256=EHESq95LhgKi1E68u9vlp8Brc4Ff8R0dFlIXAXoB1EA,4472
136
+ snowflake/ml/jobs/_utils/spec_utils.py,sha256=eC24LFiHtHQiswrZy7m94jixIInJFXNZ_-Km-xr9NJg,871
136
137
  snowflake/ml/jobs/_utils/stage_utils.py,sha256=vUWBj5nAsdcYe5Gtv_JhHYMbE5sKGFW6w7qh6uPtBUI,5912
137
138
  snowflake/ml/jobs/_utils/types.py,sha256=UJ_WjiHcMxR3DZb5LQm-bUs7i74tZi7DHXrWRyvqlpg,3154
138
139
  snowflake/ml/jobs/_utils/scripts/constants.py,sha256=YyIWZqQPYOTtgCY6SfyJjk2A98I5RQVmrOuLtET5Pqg,173
139
140
  snowflake/ml/jobs/_utils/scripts/get_instance_ip.py,sha256=N2wJYMPlwg-hidwgHhDhiBWOE6TskqCfWLMRRNnZBQs,5776
140
- snowflake/ml/jobs/_utils/scripts/mljob_launcher.py,sha256=HuhAai6JL1Zdbo50Pg257Zeyfog90fJKVIvujmCASPw,26904
141
+ snowflake/ml/jobs/_utils/scripts/mljob_launcher.py,sha256=D2yheAux0GrIcxzD7IPEuUaRb4JyDdDpxRXXNlxszWQ,19912
141
142
  snowflake/ml/jobs/_utils/scripts/signal_workers.py,sha256=AR1Pylkm4-FGh10WXfrCtcxaV0rI7IQ2ZiO0Li7zZ3U,7433
142
143
  snowflake/ml/jobs/_utils/scripts/start_mlruntime.sh,sha256=EIhhpEeu1Ph3J-QsAvugkhESkTMSZP3lWubmBCw5Z4w,3671
143
144
  snowflake/ml/jobs/_utils/scripts/startup.sh,sha256=OwJjQczoNwqf6v2vq6MeChNoa79NHfLeZG8VngRQMvQ,4148
@@ -464,8 +465,8 @@ snowflake/ml/utils/connection_params.py,sha256=NSBUgcs-DXPRHs1BKpxdSubbJx1yrFRlM
464
465
  snowflake/ml/utils/html_utils.py,sha256=4g1EPuD8EnOAK7BCYiY8Wp3ZrdDkNOcUDrDAbUYxLfs,9954
465
466
  snowflake/ml/utils/sparse.py,sha256=zLBNh-ynhGpKH5TFtopk0YLkHGvv0yq1q-sV59YQKgg,3819
466
467
  snowflake/ml/utils/sql_client.py,sha256=pSe2od6Pkh-8NwG3D-xqN76_uNf-ohOtVbT55HeQg1Y,668
467
- snowflake_ml_python-1.25.0.dist-info/licenses/LICENSE.txt,sha256=PdEp56Av5m3_kl21iFkVTX_EbHJKFGEdmYeIO1pL_Yk,11365
468
- snowflake_ml_python-1.25.0.dist-info/METADATA,sha256=hV6uhSQvACNGp9jEdujaC9Y_F5r5rf1eBI22Hh6FBe0,107037
469
- snowflake_ml_python-1.25.0.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
470
- snowflake_ml_python-1.25.0.dist-info/top_level.txt,sha256=TY0gFSHKDdZy3THb0FGomyikWQasEGldIR1O0HGOHVw,10
471
- snowflake_ml_python-1.25.0.dist-info/RECORD,,
468
+ snowflake_ml_python-1.25.1.dist-info/licenses/LICENSE.txt,sha256=PdEp56Av5m3_kl21iFkVTX_EbHJKFGEdmYeIO1pL_Yk,11365
469
+ snowflake_ml_python-1.25.1.dist-info/METADATA,sha256=brYA-SAFfm2yssPWtVtE1sSId2v5q28m3OKgujz1JsY,107142
470
+ snowflake_ml_python-1.25.1.dist-info/WHEEL,sha256=wUyA8OaulRlbfwMtmQsvNngGrxQHAvkKcvRmdizlJi0,92
471
+ snowflake_ml_python-1.25.1.dist-info/top_level.txt,sha256=TY0gFSHKDdZy3THb0FGomyikWQasEGldIR1O0HGOHVw,10
472
+ snowflake_ml_python-1.25.1.dist-info/RECORD,,
@@ -1,7 +0,0 @@
1
- from enum import Enum
2
-
3
-
4
- class ArgProtocol(Enum):
5
- NONE = 0
6
- CLI = 1
7
- PICKLE = 2