{"id":"cmuxhyg1c0iwzad077pbpkedu","slug":"finetuning","publicId":"329ef124-aab3-4a26-9e88-4e01af13f4d8","name":"finetuning","description":"Fine-tune models on Microsoft Foundry using SFT (supervised), DPO (preference), or RFT (reinforcement with graders). Covers dataset preparation, training job submission, deployment, and evaluation. USE FOR: fine-tune, SFT, DPO, RFT, training data, grader, distillation, fine-tuned model, training job, large file upload, calibrate grader, deploy fine-tuned model, evaluate fine-tuned model. DO NOT USE FOR: general model deployment without fine-tuning (use deploy-model), agent creation (use agents), prompt optimization without training (use prompt-optimizer).","version":"0.0.0-placeholder","author":"Microsoft","license":"MIT","compatibility":"","status":"completed","overallGrade":"F","scannerVersion":11,"fileCount":34,"hasSkillMd":true,"hasScripts":true,"hasReferences":true,"hasEvals":false,"hasAssets":false,"sourceType":"github","sourceUrl":"https://github.com/microsoft/skills/tree/main/.github/plugins/azure-skills/skills/microsoft-foundry/finetuning","createdAt":"2026-10-07T02:37:04.457Z","completedAt":"2026-10-07T02:37:04.454Z","visibility":"public","publishedAt":"2026-08-03T21:44:59.183Z","category":"","frameworks":[],"badgeStatus":"flagged","downloadCount":0,"verdictRationale":{"summary":"Skill failed: 2 hard fails in security or structure checks.","verdict":"fail","scanners":[{"source":"vettd","weight":1,"verdict":"fail"},{"source":"cisco","weight":0.8,"verdict":"fail"}],"consensus":"fail","warnTriggers":["References external URL — review for indirect prompt injection risk"],"policyVersion":"consensus-v1","hardFailTriggers":["Shell execution without sandboxing","System prompt override attempt"]},"verdictPolicyVersion":"consensus-v1","skillId":"cmsdrcap202gyad06poizahmd","findings":[{"id":"cmuxhyg1c0ix4ad07u05e3xwl","source":"cisco","category":"security","label":"Dangerous code execution functions that can execute arbitrary code","detail":"scripts/calibrate_grader.py:54 — Pattern detected: exec(","severity":"critical","ruleId":"COMMAND_INJECTION_EVAL","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"5ddc587096c6a178febe9a315b488a80","filepath":"scripts/calibrate_grader.py"},{"id":"cmuxhyg1c0ix0ad07xva65xic","source":"vettd","category":"security","label":"Shell execution without sandboxing","detail":"Detected in scripts/calibrate_grader.py:54 — `exec(compile(source, grader_path, \"exec\"), namespace)`","severity":"critical","ruleId":"VTD-0018","owaspLlmCategory":null,"intent":"negligent","chainId":null,"fingerprint":"a140e46c2daf4590484f67a9167c69a4","filepath":"scripts/calibrate_grader.py"},{"id":"cmuxhyg1c0ix1ad0728j9h20u","source":"vettd","category":"security","label":"System prompt override attempt","detail":"Detected in scripts/evaluate_model.py:188 — `help=\"override system prompt for all examples (default: use per-example system prompt from test data)\")`","severity":"critical","ruleId":"VTD-0066","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"051dbe351a54cb3d3f673d60d3010f0e","filepath":"scripts/evaluate_model.py"},{"id":"cmuxhyg1c0ix5ad07br1esz5q","source":"cisco","category":"security","label":"Outbound network request primitives that can transmit data externally","detail":"scripts/deploy_model.py:120 — Pattern detected: requests.put(","severity":"medium","ruleId":"DATA_EXFIL_NETWORK_REQUESTS","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4946b6d4cbf970656472f42cc23d290f","filepath":"scripts/deploy_model.py"},{"id":"cmuxhyg1c0ix6ad07kavoe5gg","source":"cisco","category":"security","label":"Outbound network request primitives that can transmit data externally","detail":"scripts/deploy_model.py:141 — Pattern detected: requests.get(","severity":"medium","ruleId":"DATA_EXFIL_NETWORK_REQUESTS","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4946b6d4cbf970656472f42cc23d290f","filepath":"scripts/deploy_model.py"},{"id":"cmuxhyg1c0ix7ad078oq25xkg","source":"cisco","category":"security","label":"Outbound network request primitives that can transmit data externally","detail":"scripts/deploy_model.py:167 — Pattern detected: requests.delete(","severity":"medium","ruleId":"DATA_EXFIL_NETWORK_REQUESTS","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4946b6d4cbf970656472f42cc23d290f","filepath":"scripts/deploy_model.py"},{"id":"cmuxhyg1d0ix8ad07unhukstg","source":"cisco","category":"security","label":"Outbound network request primitives that can transmit data externally","detail":"scripts/deploy_model.py:178 — Pattern detected: requests.get(","severity":"medium","ruleId":"DATA_EXFIL_NETWORK_REQUESTS","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"4946b6d4cbf970656472f42cc23d290f","filepath":"scripts/deploy_model.py"},{"id":"cmuxhyg1d0ix9ad07xiu1lqxv","source":"cisco","category":"security","label":"Outbound network request primitives that can transmit data externally","detail":"scripts/submit_training.py:84 — Pattern detected: requests.post(","severity":"medium","ruleId":"DATA_EXFIL_NETWORK_REQUESTS","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"38e7fd3e952179bf4f22f66993e8200b","filepath":"scripts/submit_training.py"},{"id":"cmuxhyg1c0ix2ad07w9ar55cu","source":"vettd","category":"security","label":"References external URL — review for indirect prompt injection risk","detail":"External URL(s) detected in references/agentic-rft.md — referenced content can change after audit","severity":"medium","ruleId":"VTD-0088","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"ae93fc635504c15c01d1a71f304dbe3c","filepath":"references/agentic-rft.md"},{"id":"cmuxhyg1c0ix3ad07uyqaxm7e","source":"cisco","category":"security","label":"Undeclared network usage","detail":"SKILL.md — Skill code uses network libraries but doesn't declare network requirement","severity":"medium","ruleId":"TOOL_ABUSE_UNDECLARED_NETWORK","owaspLlmCategory":null,"intent":null,"chainId":null,"fingerprint":"16553ad68e1e8ade5e1f2387f1770caa","filepath":"SKILL.md"}],"scannerRuns":[{"source":"cisco","status":"success","verdict":null,"grade":"F","findingCount":7,"criticalCount":1,"highCount":1},{"source":"vettd","status":"success","verdict":null,"grade":"F","findingCount":3,"criticalCount":2,"highCount":2}],"user":{"name":"Justin Pacella","image":"https://avatars.githubusercontent.com/u/97124458?v=4"},"repository":{"owner":"microsoft","name":"skills"},"freshness":{"status":"verified_unchanged","reason":null,"retryable":false,"renamedTo":null,"lastCheckedAt":"2026-10-22T03:56:39.593Z","lastVerifiedAt":"2026-10-22T03:56:39.593Z","lastChangeDetectedAt":"2026-08-25T11:24:23.461Z","scannedHash":"91b3afacfb2c855870109207d0b584e8e2993f8e","latestUpstreamHash":"91b3afacfb2c855870109207d0b584e8e2993f8e","nextCheckDueAt":"2026-10-23T02:23:59.608Z"},"signalCategories":[{"category":"safety","label":"Safety","form":"graded","verdict":null,"rows":[]},{"category":"reliability","label":"Reliability & Quality","form":"graded","verdict":null,"rows":[]},{"category":"performance","label":"Performance","form":"measured","verdict":{"form":"measured","magnitudes":[{"ruleId":"performance/static-context-tokens","label":"Static context tokens","value":1226,"unit":null,"method":"tiktoken/cl100k_base/skill-md-body"}]},"rows":[{"origin":"signal","id":"cmuxhygny0j0uad075311hx3y","subjectType":"skill_audit","subjectId":"cmuxhyg1c0iwzad077pbpkedu","relatedType":"","relatedId":"","dataCategory":"performance","sourceClass":"scan","source":"vettd","ruleId":"performance/progressive-disclosure","severity":null,"label":"Progressive disclosure","detail":null,"valueNum":null,"valueText":"present","unit":null,"method":null,"derivation":"read","confidence":null,"sampleSize":null,"synthetic":false,"firstParty":true,"observedAt":"2026-10-07T02:36:59.000Z","payload":null},{"origin":"signal","id":"cmuxhyg7a0iykad07eds3jmtt","subjectType":"skill_audit","subjectId":"cmuxhyg1c0iwzad077pbpkedu","relatedType":"","relatedId":"","dataCategory":"performance","sourceClass":"scan","source":"vettd","ruleId":"performance/static-context-tokens","severity":null,"label":"Static context tokens","detail":null,"valueNum":1226,"valueText":null,"unit":null,"method":"tiktoken/cl100k_base/skill-md-body","derivation":null,"confidence":null,"sampleSize":null,"synthetic":false,"firstParty":true,"observedAt":"2026-10-07T02:36:59.000Z","payload":null}]},{"category":"cost","label":"Cost","form":"measured","verdict":null,"rows":[]},{"category":"compatibility","label":"Compatibility","form":"unjudged","verdict":{"form":"unjudged"},"rows":[{"origin":"signal","id":"cmuxhygo40j0wad07tehoobli","subjectType":"skill_audit","subjectId":"cmuxhyg1c0iwzad077pbpkedu","relatedType":"","relatedId":"","dataCategory":"compatibility","sourceClass":"scan","source":"vettd","ruleId":"compatibility/cli-help","severity":null,"label":"CLI help","detail":null,"valueNum":null,"valueText":"present","unit":null,"method":null,"derivation":"read","confidence":null,"sampleSize":null,"synthetic":false,"firstParty":true,"observedAt":"2026-10-07T02:36:59.000Z","payload":null},{"origin":"signal","id":"cmuxhygoa0j0yad07ybwdm3yh","subjectType":"skill_audit","subjectId":"cmuxhyg1c0iwzad077pbpkedu","relatedType":"","relatedId":"","dataCategory":"compatibility","sourceClass":"scan","source":"vettd","ruleId":"compatibility/structured-output","severity":null,"label":"Structured output","detail":null,"valueNum":null,"valueText":"present","unit":null,"method":null,"derivation":"read","confidence":null,"sampleSize":null,"synthetic":false,"firstParty":true,"observedAt":"2026-10-07T02:36:59.000Z","payload":null},{"origin":"signal","id":"cmuxhygif0j04ad07nhiyc99e","subjectType":"skill_audit","subjectId":"cmuxhyg1c0iwzad077pbpkedu","relatedType":"","relatedId":"","dataCategory":"compatibility","sourceClass":"scan","source":"vettd","ruleId":"compatibility/declared-name","severity":null,"label":"Declared skill name","detail":null,"valueNum":null,"valueText":"finetuning","unit":null,"method":null,"derivation":"read","confidence":null,"sampleSize":null,"synthetic":false,"firstParty":true,"observedAt":"2026-10-07T02:36:59.000Z","payload":null},{"origin":"signal","id":"cmuxhyg9w0iyqad07bgota27x","subjectType":"skill_audit","subjectId":"cmuxhyg1c0iwzad077pbpkedu","relatedType":"","relatedId":"","dataCategory":"compatibility","sourceClass":"scan","source":"vettd","ruleId":"compatibility/declared-environment-assumptions","severity":null,"label":"Declared environment assumptions","detail":null,"valueNum":null,"valueText":"","unit":null,"method":null,"derivation":"read","confidence":null,"sampleSize":null,"synthetic":false,"firstParty":true,"observedAt":"2026-10-07T02:36:59.000Z","payload":null},{"origin":"signal","id":"cmuxhygoh0j10ad0782lg7fg0","subjectType":"skill_audit","subjectId":"cmuxhyg1c0iwzad077pbpkedu","relatedType":"","relatedId":"","dataCategory":"compatibility","sourceClass":"scan","source":"vettd","ruleId":"compatibility/interactive-prompts","severity":"high","label":"Interactive prompts detected","detail":"Agents run in non-interactive shells — replace prompts with CLI flags or stdin","valueNum":null,"valueText":null,"unit":null,"method":null,"derivation":null,"confidence":null,"sampleSize":null,"synthetic":false,"firstParty":true,"observedAt":"2026-10-07T02:36:59.000Z","payload":null},{"origin":"signal","id":"cmuxhygoo0j12ad078g54airn","subjectType":"skill_audit","subjectId":"cmuxhyg1c0iwzad077pbpkedu","relatedType":"","relatedId":"","dataCategory":"compatibility","sourceClass":"scan","source":"vettd","ruleId":"compatibility/unpinned-dependencies","severity":"low","label":"Unpinned dependency versions","detail":"Pin dependency versions for reproducibility (e.g., >=4.12,<5 instead of >=4.12)","valueNum":null,"valueText":null,"unit":null,"method":null,"derivation":null,"confidence":null,"sampleSize":null,"synthetic":false,"firstParty":true,"observedAt":"2026-10-07T02:36:59.000Z","payload":null}]},{"category":"sentiment","label":"Popularity","form":"unjudged","verdict":null,"rows":[]},{"category":"characteristics","label":"Characteristics","form":"unjudged","verdict":null,"rows":[]}],"signalCount":35,"publisherSupplied":["name","description","author","version","license"]}