{"id":"finetune","slug":"finetune","name":"Fine-tune open models","shortName":"Fine-tune open models","problemStatement":"SFT/DPO/LoRA without building training infra from scratch.","whenNotTopPick":"Many LoRA adapters on shared GPUs — Predibase/LoRAX; full custom training clusters — Lambda/CoreWeave; Hub-centric — HF; Lightning/PyTorch Studio DX — lightning-ai. Do not start new work on OpenPipe hosted (migrated/sunset).","categoryIds":["cat-inference-apis","cat-train-finetune"],"depotPickProviderId":"together","depotPickRationale":"capability fine-tune features + pricePerf + dx.","runnersUpIds":["unsloth","fireworks","predibase","huggingface-inference","modal","lightning-ai"],"weights":{"capabilityFit":0.25,"pricePerformance":0.18,"latencyReliability":0.15,"developerDx":0.15,"privacyPosture":0.1,"lockInRisk":0.07,"maturity":0.1},"methodologyNotes":"capability fine-tune features + pricePerf + dx.","tags":["finetune"],"depth":{"whenNotToUse":{"text":"Many LoRA adapters on shared GPUs — Predibase/LoRAX; full custom training clusters — Lambda/CoreWeave; Hub-centric — HF; Lightning/PyTorch Studio DX — lightning-ai. Do not start new work on OpenPipe hosted (migrated/sunset).","source":"editorial `whenNotTopPick` (data/jtbds.json)"},"whenNotToUseReason":null,"runnerUp":{"providerId":"unsloth","name":"Unsloth","overallForJob":8.52,"pickOverallForJob":8.2,"beatsPickOn":["capabilityFit","pricePerformance","developerDx","privacyPosture","lockInRisk"],"source":"first resolvable entry of the job's editorially ranked `runnersUpIds`; scores are stored job-weighted scores"},"runnerUpReason":null,"lockIn":{"pickLockInRisk":3.5,"runnerUpLockInRisk":2,"scale":"0–10 stored curated estimate; higher = more lock-in (worse)","pickExitSignals":["serves open-weight models (provider tag `open-models`)"],"runnerUpExitSignals":["open source (provider tag `oss`)"],"pickNotes":[],"selfHostFallback":[{"id":"huggingface-transformers","name":"Hugging Face Transformers","license":"Apache-2.0","sourceUrl":"https://github.com/huggingface/transformers/blob/main/LICENSE"},{"id":"wildchat","name":"WildChat","license":"ODC-By","sourceUrl":"https://huggingface.co/datasets/allenai/WildChat/raw/main/README.md"}],"migration":"Runner-up Unsloth has lower stored lock-in risk (2 vs 3.5, 0–10, higher = more lock-in). Pick exit signals: serves open-weight models (provider tag `open-models`). Self-host fallback listed for this job: Hugging Face Transformers, WildChat.","migrationReason":null,"derivedFrom":"stored lockInRisk scores, provider tags (oss, self-host, openai-compat, open-models), free rows that list this job, and verbatim provider notes. No migration guide was invented."}},"freshness":{"pick":{"score":{"asOf":"2026-09-14","ageDays":43,"stale":true,"staleAfterDays":30,"reason":null},"lastReviewed":{"asOf":"2026-09-14","ageDays":43,"stale":true,"staleAfterDays":30,"reason":null},"sourceCheck":{"checkedAt":"2026-10-27","sourceUrls":3,"sourcesReachable":3,"pricingRows":10,"pricingRowsReconfirmed":8,"note":"A source re-check confirms the page is reachable and, for pricing rows, that the stored amount and SKU name appear on it. It does not re-derive or change the score.","reason":null}}}}