
Finetuning Technique
- 39 installs
- 850 repo stars
- Updated August 3, 2026
- awslabs/agent-plugins
finetuning-technique is a Claude skill that selects a fine-tuning technique (SFT, DPO, RLVR, or RLAIF) and validates it against a selected model's SageMaker recipes.
About
This skill helps a developer pick a fine-tuning technique (SFT, DPO, RLVR, or RLAIF) for a use case and checks that the selected model actually supports it on SageMaker. It reads a use-case spec, recommends a technique, then runs get_recipes.py against the model and hub to confirm availability. A developer uses it after deciding to fine-tune and before running training.
- Recommends SFT, DPO, RLVR, or RLAIF based on the use case
- Validates the chosen technique against the selected model's SageMaker recipes
- Requires a base model already selected via the model-selection skill
Finetuning Technique by the numbers
- 39 all-time installs (skills.sh)
- Ranked #1,006 of 2,064 Data Science & ML skills by installs in the Skillselion catalog
- Data as of Aug 4, 2026 (Skillselion catalog sync)
finetuning-technique capabilities & compatibility
- Capabilities
- model selection · model evaluation · model deployment
- Works with
- aws
- Use cases
- orchestration
What finetuning-technique says it does
Selects a fine-tuning technique (SFT, DPO, RLVR, or RLAIF) for the user's use case and validates it against the selected model's available recipes.
Only these four techniques are supported — ignore any other techniques even if the model's recipes include them.
npx skills add https://github.com/awslabs/agent-plugins --skill finetuning-techniqueAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 39 |
|---|---|
| repo stars | ★ 850 |
| Last updated | August 3, 2026 |
| Repository | awslabs/agent-plugins ↗ |
What it does
Choose and validate a fine-tuning technique for a SageMaker model before training.
Who is it for?
Developers deciding how to fine-tune a base model on SageMaker
Skip if: Selecting the base model itself (that is the model-selection skill's job)
When should I use this skill?
User has decided to finetune and needs to choose a technique
What you get
A validated fine-tuning technique paired with a compatible base model.
- Recommended fine-tuning technique
- Validation that the model supports it on SageMaker
By the numbers
- 4 supported techniques (SFT, DPO, RLVR, RLAIF)
- 3-step workflow
Files
Finetuning Technique
Guides the user through selecting a fine-tuning technique based on their use case and validates compatibility with the selected model.
When to Use
- User has decided to finetune and needs to choose a technique
- User wants to change their finetuning technique
- Technique needs to be validated against a selected model
Prerequisites
- A base model has been selected (via model-selection skill). The model name and hub must be known.
- A
use_case_spec.mdfile exists. If not, activate the use-case-specification skill to generate it first.
Workflow
Step 1: Determine Finetuning Technique
Consult references/finetune_technique_selection_guide.md to recommend the best-fit technique based on the use case and the user's needs (SFT, DPO, RLVR, RLAIF).
Present the recommendation and reasoning to the user. Ask if they'd like to go with the recommendation or prefer a different technique.
Step 2: Validate Technique Availability
1. Once the user confirms a technique, retrieve the finetuning techniques available for the selected model by running: python finetuning-technique/scripts/get_recipes.py <model-name> <hub-name>
- This returns only the techniques the model actually supports, filtered to SFT, DPO, RLVR, and RLAIF. Only these four techniques are supported — ignore any other techniques even if the model's recipes include them.
2. If the chosen technique is available for the model, proceed to Step 3. 3. If the chosen technique is not available for the model, explain that the selected model does not support it on SageMaker and offer to go back to model-selection to pick a different model that supports the chosen technique.
Step 3: Confirm Selections
Present a summary to the user:
Here's what we've selected:
- Base model: [model name]
- Fine-tuning technique: [SFT/DPO/RLVR/RLAIF]References
references/finetune_technique_selection_guide.md— Technique guidance (SFT/DPO/RLVR/RLAIF)
Finetuning Technique Selection Guide
Not all models support all techniques. Always validate technique availability against the selected model's recipes before recommending. Only SFT, DPO, RLVR, and RLAIF are supported.
Technique Overview
SFT (Supervised Fine-Tuning)
Use when:
- Task has clear right/wrong answers
- Single optimal output per input
- Output represents exemplary responses
- Classification, extraction, structured generation
DPO (Direct Preference Optimization)
Use when:
- Multiple valid outputs, some better than others
- Subjective quality (tone, style, helpfulness)
- Creative tasks with preference judgments
RLVR (Reinforcement Learning from Verifiable Rewards)
Use when:
- Outputs can be verified programmatically
- Want to reward similarity to gold responses
- Code generation (passes tests = reward)
- Math problems (correct answer = reward)
- Constraint satisfaction (meets criteria = reward)
Key difference from SFT:
- SFT: Model learns to imitate gold responses directly
- RLVR: Model learns to maximize rewards (can be gold similarity or verification-based)
RLAIF (Reinforcement Learning from AI Feedback)
Use when:
- Quality is subjective and hard to define with rules (tone, helpfulness, brand voice, safety)
- No human preference data is available and collecting it is too expensive or slow
- You want RLHF-level alignment without human annotators
- Task involves summarization, dialogue, or open-ended generation where "better" is a judgment call
- You need scalable preference signals that can be regenerated as the model improves
Key difference from DPO:
- DPO: Requires a static dataset of preference pairs (chosen/rejected) upfront
- RLAIF: Uses an AI judge model to generate preference signals or reward scores dynamically, enabling iterative improvement
Key difference from RLVR:
- RLVR: Reward is rule-based and programmatic (correct/incorrect, passes tests)
- RLAIF: Reward comes from an AI model evaluating subjective quality (helpfulness, coherence, safety)
When NOT to use RLAIF:
- Task has objectively verifiable answers → use RLVR instead
- You already have high-quality human preference data → use DPO instead
- You have clear gold-standard outputs → use SFT instead
- The AI judge model is weaker than the model being trained (judge quality bounds training quality)
import boto3
import json
import sys
if len(sys.argv) < 3:
print("Usage: python get_recipes.py <model-name> <hub-name>")
sys.exit(1)
model_name = sys.argv[1]
hub_name = sys.argv[2]
sm_client = boto3.client("sagemaker")
detail = sm_client.describe_hub_content(
HubName=hub_name,
HubContentType="Model",
HubContentName=model_name
)
keywords = detail.get("HubContentSearchKeywords", [])
# Only include SFT, DPO, RLVR, and RLAIF techniques
supported = {"sft", "dpo", "rlvr", "rlaif"}
techniques = sorted(
t.replace("@recipe:finetuning_", "").split("_")[0]
for t in keywords
if t.startswith("@recipe:finetuning_")
)
techniques = [t for t in dict.fromkeys(techniques) if t in supported]
print(json.dumps(techniques))
Related skills
FAQ
Which fine-tuning techniques does this skill support?
Only SFT, DPO, RLVR, and RLAIF; it ignores any other techniques even if the model's recipes include them.
Do I need a model chosen first?
Yes. A base model must already be selected via the model-selection skill, with the model name and hub known.