Skip to content
Back to skills

Training

ASecurity

"Use SageMaker Python SDK v3 training workflows with ModelTrainer,

  • 247 stars
  • 0 votes
  • 0 copies
  • 4 views
  • Added September 9, 2026
devopspythongonodedockerawsapisecurity

Works with

  • api

Security analysis

A100/100

Pro scans all 6 files and shows the line behind each finding

Scanned September 9, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill training --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Training?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Training
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-training-856d89ee/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-training-856d89ee)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: training
description: "Use SageMaker Python SDK v3 training workflows with ModelTrainer,
  distributed drivers, JumpStart training, HPO, AWS Batch queues, and
  remote-function training concepts."
metadata:
  disco-role: operating
disable-model-invocation: true
license: Apache 2.0
---

# SageMaker Python SDK v3 Training Sub-skill

Use this sub-skill when the task is about general SageMaker training with the
v3 `sagemaker-train` package. Keep generated code v3-first and SDK-first.
Do not fall back to raw `boto3` training-job requests unless the user explicitly
asks for low-level API calls or the SDK does not expose the needed feature.

## Trigger phrases

Read this sub-skill when the user says or implies:

- "train a model on SageMaker" or "create a training job".
- "use ModelTrainer", "sagemaker-train", or "SDK v3 training".
- "local mode training", "local container training", `local_cpu`, or `local_gpu`.
- "distributed training", "torchrun", "MPI", "SMP", "multi-node", or "multi-GPU".
- "custom training container", "training image URI", or "retrieve a framework image".
- "JumpStart training" or `ModelTrainer.from_jumpstart_config(...)`.
- "hyperparameter tuning", "HPO", `HyperparameterTuner`, `tune()`, or `analytics()`.
- "AWS Batch training queue", `TrainingQueue`, fair-share, priority, or quota share.
- "remote function training job", `@remote`, `RemoteExecutor`, or container drivers.
- "migrate Estimator/framework estimator/fit to v3 training".

## When not to read this sub-skill

- Foundation model customization, evaluation, data mixing, recipe overrides,
  SFT, DPO, RLVR, RLAIF, CPT, or MultiTurnRL: route to
  [`../model-customization/SKILL.md`](../model-customization/SKILL.md).
- Model deployment, endpoint prediction, serverless/async real-time hosting,
  local/in-process inference, or ModelBuilder: route to
  [`../serving/SKILL.md`](../serving/SKILL.md).
- Processing jobs, batch transform, low-level resources, sessions, default
  buckets, image URI internals, or lineage primitives not tied to training:
  route to [`../core-resources/SKILL.md`](../core-resources/SKILL.md).
- Pipelines, workflow steps, model registry, feature store, Clarify, or lineage
  governance around training: route to [`../mlops/SKILL.md`](../mlops/SKILL.md).
- Deprecated v2 maintenance work only: use the root migration reference first,
  then return here only for the v3 replacement.

## V3 default policy

- Use `from sagemaker.train import ModelTrainer` for training orchestration.
- Prefer current config imports from `sagemaker.core.training.configs` for
  `SourceCode`, `Compute`, `InputData`, `StoppingCondition`, `OutputDataConfig`,
  `CheckpointConfig`, and `Networking`. Some examples use
  `sagemaker.train.configs`; it is a v3 compatibility shim in this repo.
- Use `from sagemaker.core import image_uris` and
  `image_uris.retrieve(...)` for framework image URI resolution.
- Use `Session()` and `get_execution_role()` from
  `sagemaker.core.helper.session_helper` rather than hardcoded buckets, regions,
  account IDs, or role ARNs.
- Use placeholders such as `<training-image-uri>`, `<role-name-or-arn>`, and
  `s3://<bucket>/<prefix>` when exact customer resources are unknown.
- Do not introduce v2 `Estimator`, framework estimator classes, `fit()`, v2
  `Model`, v2 `Predictor`, v2 `Processor`, or old workflow imports except in an
  explicitly labeled deprecated migration note.

## Short workflow

1. Classify the training task: single-job ModelTrainer, local container,
   distributed, JumpStart, HPO, AWS Batch queue, remote function, or migration.
2. Confirm required execution substrate: no-submit config drafting, Docker local
   mode, SageMaker cloud job, AWS Batch queue, or MLOps pipeline.
3. Establish AWS prerequisites if any cloud job may be submitted: region,
   credentials, execution role, S3 staging/output location, ECR image access,
   service quotas, and IAM permissions.
4. Build config objects first: `SourceCode`, `Compute`, `InputData`,
   `StoppingCondition`, optional `Networking`, `OutputDataConfig`,
   `CheckpointConfig`, and optional distributed config.
5. Resolve the training image with `image_uris.retrieve(...)` or accept a
   user-provided custom image URI placeholder.
6. Construct `ModelTrainer(...)`; set `role` explicitly outside SageMaker managed
   notebooks if automatic role discovery is not guaranteed.
7. Validate before spend: prefer `trainer.train(..., dry_run=True)` for cloud
   job configuration checks; for local mode also verify Docker/compose and local
   paths before calling `train()`.
8. Submit only when authorized: `train(wait=True, logs=True)` for a blocking job,
   `train(wait=False, logs=False)` for fire-and-check-later, or use HPO/Batch
   entry points when the task requires them.
9. After training, route deployment to
   [`../serving/SKILL.md`](../serving/SKILL.md) and route pipeline integration to
   [`../mlops/SKILL.md`](../mlops/SKILL.md).

## Reference map

- [`references/modeltrainer-workflows.md`](references/modeltrainer-workflows.md):
  ModelTrainer signatures, imports, region/role/session setup, image retrieval,
  hyperparameters, local/SageMaker training, JumpStart, and validation.
- [`references/distributed-training.md`](references/distributed-training.md):
  Torchrun, MPI, SMP, custom `DistributedConfig`, driver environment variables,
  local multi-container training, and distributed troubleshooting.
- [`references/hyperparameter-tuning.md`](references/hyperparameter-tuning.md):
  `HyperparameterTuner`, parameter ranges, metrics, `tune()`, `analytics()`,
  warm starts/autotune, and MLOps handoff.
- [`references/remote-function-and-advanced-training.md`](references/remote-function-and-advanced-training.md):
  AWS Batch `TrainingQueue`, remote function and `RemoteExecutor`, container
  driver concepts, queue monitoring, and advanced routing boundaries.
- [`references/troubleshooting.md`](references/troubleshooting.md):
  region, credentials, role, Docker/local mode, image URI, source packaging,
  hyperparameters, distributed, HPO, JumpStart, Batch, and remote-function fixes.

## Migration guardrail

Deprecated v2 training patterns map as follows; keep details concise here and
route broader migrations to [`../../references/migration-v2-to-v3.md`](../../references/migration-v2-to-v3.md).

- Deprecated `sagemaker.estimator.Estimator` -> v3 `sagemaker.train.ModelTrainer`.
- Deprecated framework estimators such as PyTorch, TensorFlow, SKLearn, XGBoost,
  and HuggingFace classes -> v3 `ModelTrainer` plus `image_uris.retrieve(...)`.
- Deprecated `estimator.fit(...)` -> v3 `model_trainer.train(...)` with
  `InputData(channel_name=..., data_source=...)`.
- Deprecated `instance_type`/`instance_count` on estimators -> v3
  `Compute(instance_type=..., instance_count=...)`.
- Deprecated `entry_point`/`source_dir` estimator parameters -> v3
  `SourceCode(entry_script=..., source_dir=...)`.

## Quality checks before returning training guidance

- Confirm examples use v3 imports and do not contain real account IDs, role
  ARNs, bucket names, subnet IDs, security group IDs, regions hardcoded as the
  only option, or credentials.
- If examples use `sagemaker.train.configs`, consider replacing with
  `sagemaker.core.training.configs` unless compatibility with an existing
  notebook is the explicit goal.
- Verify `SourceCode.source_dir` contains the named `entry_script` and optional
  `requirements` file, or explain that cloud validation will fail.
- For local mode, say Docker and Docker Compose are required and set
  `local_container_root` deliberately when output location matters.
- For distributed jobs, require `source_code.entry_script` and pick one driver:
  `Torchrun`, `MPI`, or a custom `DistributedConfig`.
- For HPO, define metric regexes that match the training script logs and use
  `tuner.analytics()` only after a tuning job exists.
- For AWS Batch, require `Mode.SAGEMAKER_TRAINING_JOB`; Batch queues do not
  accept local-container ModelTrainer jobs.

## Common safe defaults

- Start with `Compute(instance_type="ml.m5.xlarge", instance_count=1)` for CPU
  examples unless the user asks for GPU or a framework requires GPU.
- Use `StoppingCondition(max_runtime_in_seconds=3600)` in examples to bound cost.
- Use `Session().boto_region_name` for region and `Session().default_bucket()`
  for sample S3 URI assembly.
- Use `dry_run=True` when the user asks to validate configuration without
  launching a chargeable job.
- Use `wait=False` only when the user wants asynchronous submission and you also
  show how to inspect or wait for the resulting job/tuner/queue object.

## Handoff after training

- For deployment from a completed training job or model artifact, load
  [`../serving/SKILL.md`](../serving/SKILL.md).
- For a train/tune step inside a SageMaker Pipeline, load
  [`../mlops/SKILL.md`](../mlops/SKILL.md).
- For low-level inspection of `TrainingJob` resources or image URI behavior,
  load [`../core-resources/SKILL.md`](../core-resources/SKILL.md).
- For foundation model customization/evaluation recipes, do not duplicate here;
  load [`../model-customization/SKILL.md`](../model-customization/SKILL.md).

Files in this skill

  • SKILL.md9 KB
  • references/distributed-training.md2.6 KB
  • references/hyperparameter-tuning.md2.6 KB
  • references/modeltrainer-workflows.md3.3 KB
  • references/remote-function-and-advanced-training.md1.8 KB
  • references/troubleshooting.md1.9 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.