Skip to main content
Ranked roundup

Best Fine-Tuning Platforms in 2026

Fine-tuning changed addresses in 2026. OpenAI is winding down its self-serve fine-tuning platform in stages: organizations that never ran a job lost access on May 7, 2026, organizations without fine-tuned-model inference in the prior 60 days lost the ability to start new jobs on July 2, 2026, and every remaining customer loses new-job access on January 6, 2027. Inference on already-tuned models keeps running until each base model is deprecated, but the message is unambiguous: if fine-tuning matters to your product, it now happens on open-weight models, on infrastructure where you can keep the artifact.

This ranking is for teams tuning open-weight models for production: a support model that speaks your domain, a classifier that beats prompting on cost, an agent tuned on your own traces. We ranked five serious options across the full spectrum, from fully managed APIs to a framework you run yourself, because the right answer depends on how much control you need, not on a single leaderboard. The verdict on each entry says when a lower-ranked option beats the winner.

TL;DR

The best fine-tuning platform for most teams in 2026 is Together AI: managed per-token training across an open-weight catalog spanning 270M to 480B parameters, both LoRA and full fine-tuning, and downloadable checkpoints, so the model you pay to train is genuinely yours. Pick Fireworks AI when the tuned model ships straight into production on Fireworks' inference stack, or when you need managed reinforcement fine-tuning. Pick Tinker when you want research-grade control over the training loop itself without owning GPUs. Self-host Axolotl when compliance or sustained training volume justifies owning the pipeline, and run it on Modal when you want that control on rented, per-second GPUs. The context that reshaped this category: OpenAI is winding down self-serve fine-tuning entirely, with no new jobs for anyone after January 6, 2027, which makes open weights and portability the deciding criteria this year.

How this ranking was made

Verified July 6, 2026

We ranked platforms for teams fine-tuning open-weight language models for production use, not for one-off research experiments or pre-training. Every price, version number, and limit on this page was pulled from the vendors' live pricing pages, documentation, and GitHub repositories, all fetched on the verification date shown here; nothing is quoted from memory or from third-party listicles. BearPlex builds AI systems for clients, including fine-tuned open-weight models, which is where the operational judgments come from. No vendor paid for placement, and none of the ranked platforms is a BearPlex product. We excluded hyperscaler tuning services (Vertex AI, Azure AI Foundry, Amazon Bedrock), which are cloud-platform commitments rather than platform choices, and raw GPU marketplaces, which rent compute rather than a training workflow. OpenAI's platform appears as context, not as a ranked entry, because it no longer accepts new fine-tuning customers.

Weight ownership and portability

Whether you can download the trained artifact and serve it anywhere, which is the lesson of the OpenAI wind-down.

Training method coverage

LoRA and full fine-tuning, supervised and preference methods (SFT, DPO), and reinforcement learning when the task needs it.

Cost and pricing legibility

What a real job costs, how predictable the bill is, and whether the meter is per token, per GPU-hour, or per second.

Time to first tuned model

Operational burden from dataset in hand to trained artifact: managed API call versus cluster configuration.

Path to production

How the tuned model actually gets served, and at what economics, once training finishes.

All 5 at a glance

Dimension#1 Together AI#2 Fireworks AI#3 Tinker#4 Axolotl (self-hosted)#5 Modal
What it isManaged fine-tuning APIManaged fine-tuning on an inference platformManaged training primitives (write your own loops)Open-source training framework, your GPUsServerless GPU cloud running your training code
MethodsLoRA + full FT; SFT, DPOLoRA + full FT; SFT, DPO, managed RFTSL, RL, DPO, distillation via custom loops; LoRA onlyFull FT, LoRA, QLoRA, QAT, DPO/IPO/KTO/ORPO, GRPO/GDPO, reward modelsWhatever your framework supports (Unsloth, TRL, verl examples)
Weight exportYes: final and intermediate checkpoints, merged or adapterNot documented; external LoRA import supportedYes: any saved checkpoint via APIAlways: weights never leave your storageAlways: artifacts live in your volumes
Pricing modelPer token: LoRA SFT from $0.48/1M (up to 16B), $4.00 job minimumPer token: LoRA SFT from $0.50/1M (up to 16B); RFT per GPU-hourPer token across prefill, sample, and train meters; increase lands July 17, 2026Free (Apache 2.0); you pay only for computePer second: H100 $0.001097/s (about $3.95/hr); $30/mo free credits
Path to productionDedicated endpoint on Together, or take the weights anywhereOn-demand dedicated deployments ($7/hr H100); multi-LoRAOpenAI-compatible sampling interface, or export the weightsYours to build: pair with vLLM or a serving hostDeploy vLLM on Modal from the same codebase, or export
Sweet spotMost production tuning: 1B to 100B, SFT/DPO, portable outputTuned models serving production traffic on Fireworks; RL against a graderResearch-grade post-training, very large MoE, custom objectivesCompliance environments and continuous high-volume trainingOccasional or bursty jobs with full code control and no hardware
Standout fact (verified July 2026)Catalog spans 270M to 480B parameters plus Hugging Face bring-your-ownFine-tuned models serve at base-model prices (vendor pricing page)MoE up to the 550B Nemotron-3-Ultra tunable via LoRA primitivesv0.17.0; FSDP2, DeepSpeed, Ray multi-node; QAT to NVFP4/MXFP4Official Unsloth and GRPO (TRL, verl) examples plus per-second GPU billing

The ranking

Together AI

Together Computer

Managed fine-tuning with real weight ownership: per-token pricing, the broadest open-weight catalog, and checkpoints you can download and leave with.

Together wins because it sits exactly where most teams need to be after the OpenAI wind-down: a managed API with none of the lock-in that made managed tuning risky. The catalog spans 270M to 480B parameters, from Gemma 3 270M up to Qwen3 Coder 480B, across Llama 3.x and 4.x (Scout and Maverick), Qwen 3 through 3.6, Gemma 3 and 4, DeepSeek, Mistral and Mixtral, Kimi K2, GLM 4.6 through 5.1, GPT-OSS, and NVIDIA Nemotron, and you can bring a model from the Hugging Face Hub that is not in the catalog. LoRA is the default training mode, full fine-tuning is available on a subset of the catalog, and both SFT and DPO are supported, with training context up to 262,144 tokens on select models. The decisive feature is the exit: final and intermediate checkpoints are downloadable, merged or as adapters for LoRA jobs, so you can serve on a Together dedicated endpoint or take the weights to your own vLLM cluster. Pricing is legible (per million training tokens, $4.00 job minimum), and entry costs are low enough to run honest experiments. The honest limits: no managed reinforcement fine-tuning, and the largest MoE families carry separate, much higher pricing.

Best for

  • Teams migrating off OpenAI fine-tuning who want a managed API without giving up the weights
  • Product teams tuning 1B to 100B open-weight models with SFT or DPO on a predictable per-token bill
  • Organizations that want the option to serve elsewhere later without retraining

Not for

  • Reinforcement fine-tuning or custom RL loops: Together's managed API covers SFT and DPO
  • Teams that need the tuned model served inside an existing non-Together inference contract from day one
Methods

LoRA (default) and full fine-tuning; SFT and DPO

Catalog

270M to 480B parameters, plus bring-your-own from Hugging Face

Weight export

Final and intermediate checkpoints, merged or adapter

Training context

Up to 262,144 tokens on select models

Entry cost

LoRA SFT from $0.48 per 1M tokens, $4.00 job minimum

Pricing

Per million training tokens: LoRA SFT $0.48, LoRA DPO $0.54, full SFT $1.20, full DPO $1.35 for models up to 16B; 17B to 69B runs $1.50 to $4.12 depending on method; 70B to 100B runs $2.90 to $8.00. Every job carries a $4.00 minimum. The largest MoE models (Qwen3.5-397B, DeepSeek, Kimi K2, GLM-5) are priced separately, with LoRA SFT from $8 to $40 per million tokens and job minimums from $20 to $60.

Fireworks AI

Fireworks AI

Fine-tuning fused to a production inference platform: SFT, DPO, and managed reinforcement fine-tuning that deploys where it will be served.

Fireworks is the pick when the tuned model's destination is production traffic and you want training and serving on one platform. Supervised and preference tuning bill per token at rates close to Together's at the small end (LoRA SFT $0.50 per million tokens up to 16B), and it is the only managed platform in this roundup with reinforcement fine-tuning as a first-class product: you supply a grader function that scores outputs, billing runs per GPU-hour at on-demand deployment rates, and grpo, dapo, and gspo-token loss functions are built in. The pricing page's standout commitment is that fine-tuned models serve at the same price as base models, and the docs support multi-LoRA deployments plus importing LoRA adapters trained elsewhere. The constraints are real, though. The docs state that on-demand dedicated deployments are the only supported method for serving fine-tuned models, which means the serving floor is GPU rental: $7.00 per H100 or H200 hour, $10.00 per B200 hour. LoRA rank caps at 32. And weight download is not addressed in the fine-tuning docs, so if exit portability is a hard requirement, get it in writing before committing the training budget.

Best for

  • Teams already serving on Fireworks who want tuning, deployment, and inference in one pipeline
  • Reinforcement fine-tuning against a grader without building RL infrastructure
  • Serving many task-specific adapters via multi-LoRA on dedicated deployments

Not for

  • Teams whose non-negotiable is downloading the trained weights: the docs do not document weight export
  • Low-traffic products that cannot justify a dedicated GPU deployment for serving
Methods

LoRA and full fine-tuning; SFT, DPO, and managed RFT

RFT

Grader-scored; grpo, dapo, gspo-token built in; billed per GPU-hour

Serving

On-demand dedicated deployments only; multi-LoRA; external LoRA import

LoRA rank

Powers of 2 up to 32, default 8

Dataset limits

3 to 3 million examples, OpenAI-compatible messages format

Pricing

Tuning bills per million training tokens: LoRA SFT $0.50 and full-parameter SFT $1.00 up to 16B, rising through $3.00 and $6.00 (16.1B to 80B) and $6.00 and $12.00 (80B to 300B) to $10.00 and $20.00 above 300B, with DPO at double the SFT rate in each tier. Reinforcement fine-tuning bills per GPU-hour (per second) at on-demand deployment rates: $7.00 per H100 or H200 hour, $10.00 per B200 hour.

Tinker

Thinking Machines Lab

A frontier-lab training stack for rent: four primitives, your own loops in Python, their GPUs, LoRA only, weights downloadable.

Tinker is the most interesting product in this category and the right choice when the training loop itself is your edge. Instead of a job API, it exposes four primitives (forward_backward, optim_step, sample, and save_state), and you write the actual training loop in Python on your laptop while Thinking Machines schedules it across their GPUs and owns the infrastructure reliability. That makes supervised learning, RL, DPO, RLHF, and distillation all expressible without owning a cluster. The catalog is curated and rotates: at verification it ran from the 4B Qwen3.5-4B up to the 550B-parameter Nemotron-3-Ultra MoE, including Kimi-K2.6, DeepSeek-V3.1, Qwen3.5-397B-A17B, and GPT-OSS, several with vision input. Any checkpoint you save is downloadable through the API for serving anywhere. It went generally available on December 12, 2025 with an OpenAI-compatible sampling interface. The trade-offs keep it at three for a general audience: it is LoRA-only by design (the lab's own LoRA Without Regret research argues LoRA matches full fine-tuning for supervised runs on small-to-medium datasets, and for RL even at small ranks), the catalog rotates on the vendor's schedule (older Llama, Qwen, DeepSeek, and Kimi variants retired June 12, 2026, and no Llama model was listed at verification), and you are writing real training code, which is the point, but not everyone's job.

Best for

  • Research-grade post-training (custom RL, distillation, novel objectives) without a GPU cluster
  • Teams that want loop-level control with managed distributed execution
  • Tuning very large MoE models (up to the 550B class) that are impractical to self-host for training

Not for

  • Teams that need full fine-tuning: Tinker is LoRA-only
  • Product teams that want a dataset-in, model-out managed job rather than writing training code
  • Anyone who needs a specific base model guaranteed available long-term: the catalog rotates
Model

Managed training primitives; LoRA only by design

Catalog

4B to 550B at verification (Nemotron-3-Ultra, Kimi-K2.6, DeepSeek-V3.1, Qwen3.5-397B, GPT-OSS); rotates

Weight export

Any saved checkpoint downloadable via API

Availability

GA since December 12, 2025; vision input; OpenAI-compatible sampling

Pricing note

Announced price increase effective July 17, 2026

Pricing

Per-token billing across four meters: prefill, cached prefill (80% discount), sample, and train. At verification the models page listed train rates from $0.36 per million tokens (GPT-OSS-20B) and $0.40 (Qwen3-8B) up to $6.00 (Qwen3.5-397B-A17B) at standard context lengths, with extended-context variants priced higher (the 128K Kimi-K2.6 trains at $15.40 per million). The page also announced an increase of roughly 50% on prefill and sample prices and 10% on train prices effective July 17, 2026. Storage is $0.10 per GB per month.

Axolotl (self-hosted)

Axolotl AI and open-source contributors

The open-source control answer: the widest method coverage in this roundup, one YAML per pipeline, on whatever GPUs you can get.

Axolotl is what you run when the platform question becomes an infrastructure question. It is Apache 2.0, at v0.17.0 as of June 3, 2026, with 12.2k GitHub stars, and its method coverage is the broadest here: full fine-tuning, LoRA, QLoRA, quantization-aware training (int8, int4, FP8, NVFP4, MXFP4), preference methods (DPO, IPO, KTO, ORPO), reinforcement learning (GRPO and GDPO), and reward modeling for outcome and process reward models. A single YAML config drives preprocessing, training, evaluation, quantization, and inference, and it scales from one GPU to multi-node via FSDP1 and FSDP2, DeepSpeed, Torchrun, and Ray, with Flash Attention 2, 3, and 4, Liger kernels, and sequence parallelism. Model support runs from GPT-OSS, Llama, Mistral, and Mixtral through vision-language models (Qwen2-VL, Pixtral, LLaVA, InternVL 3.5, GLM-4.6V) and audio models such as Voxtral. The cost is honest and structural: there is no platform fee because there is no platform. You bring GPUs, you debug OOMs and dataset schemas, and you own the failure modes. For regulated data, air-gapped environments, or teams training continuously enough that per-token markups compound, that trade is correct.

Best for

  • Compliance, data-residency, or air-gapped environments where training data cannot leave your infrastructure
  • Teams training continuously, where owning the pipeline beats paying per-token markups
  • Methods the managed platforms do not offer: QAT, GRPO/GDPO, reward modeling, audio and VLM tuning

Not for

  • Teams without ML engineering capacity to own distributed training failures
  • One-off or occasional jobs, where a managed per-token API is cheaper than the setup time
License / version

Apache 2.0; v0.17.0 (June 3, 2026); 12.2k GitHub stars

Methods

Full FT, LoRA, QLoRA, QAT, DPO/IPO/KTO/ORPO, GRPO/GDPO, reward models

Scale-out

FSDP1/FSDP2, DeepSpeed; multi-node via Torchrun and Ray

Performance

Flash Attention 2/3/4, Liger kernel, sequence parallelism

Interface

One YAML across preprocess, train, eval, quantize, inference

Pricing

Free, Apache 2.0. The bill is whatever your GPUs cost: at verification, on-demand H100s listed at $3.99 per hour on Together's GPU clusters and about $3.95 per hour on Modal, so the compute for a LoRA pass on a small model is a rental measured in single-digit dollars per hour, not a platform fee.

Modal

Modal Labs

The middle path: framework-level control on serverless GPUs, billed per second, with zero idle cost and no cluster to own.

Modal is not a fine-tuning product, and that is exactly its value: it removes the worst part of the self-hosted path (owning GPU infrastructure) while keeping all of the control. GPUs bill per second with no idle charge: an H100 at $0.001097 per second (about $3.95 per hour), an A100 80GB at $0.000694 per second (about $2.50 per hour), a B200 at $0.001736 per second (about $6.25 per hour). Modal's maintained examples cover the whole arc: LoRA fine-tuning with Unsloth (the published example tunes Qwen3-32B on L40S GPUs with model, dataset, and checkpoint storage in Modal Volumes), GRPO reinforcement training with both TRL and verl, and an OpenAI-compatible vLLM service for serving the result. The Starter plan is $0 per month with $30 of free monthly credits, which is genuinely enough to fine-tune a small model before you pay anything, and volumes at $0.09 per GiB per month hold your checkpoints. It ranks fifth not because it is weak but because it is a different layer: you still write and maintain training code, there is no managed job API, no evaluation UI, and no tuning-specific support. For teams with the engineering habit but not the hardware, it is often the best per-dollar answer on this page.

Best for

  • Running Axolotl, Unsloth, TRL, or custom training code without buying or reserving GPUs
  • Bursty fine-tuning workloads where per-second billing and zero idle cost dominate
  • Teams that want training and vLLM serving colocated in one serverless codebase

Not for

  • Teams that want a managed fine-tuning API with datasets in and models out
  • Organizations that cannot run training workloads on shared cloud infrastructure
GPU pricing

H100 about $3.95/hr, A100 80GB about $2.50/hr, B200 about $6.25/hr, per-second billing

Free tier

$30 in monthly credits on the $0 Starter plan

Fine-tuning path

Official examples: Unsloth LoRA tuning, GRPO with TRL and verl

Serving

OpenAI-compatible vLLM service example; deploy on Modal or export

Storage

Volumes at $0.09 per GiB per month

Pricing

Pure usage: H100 at $0.001097 per second (about $3.95 per hour), A100 80GB at $0.000694 per second (about $2.50 per hour), B200 at $0.001736 per second (about $6.25 per hour), plus CPU at $0.0000131 per core-second, memory at $0.00000222 per GiB-second, and volumes at $0.09 per GiB per month. Starter is $0 per month with $30 in free monthly credits; Team is $250 per month with $100 in credits and higher GPU concurrency.

When none of these is the answer

Most teams that think they need fine-tuning do not. Prompting against a strong base model, retrieval over your own data, and a disciplined evaluation harness solve the majority of quality problems at a fraction of the cost, and improving base models keep shrinking the set of cases where tuning pays. OpenAI shutting down its self-serve fine-tuning platform while its base models improve is the market saying the same thing. Fine-tune when you have evidence, not a hunch: a measured quality or cost gap that prompting cannot close, and enough representative examples to train on. If you have not built the evaluation harness that would produce that evidence, that is the project, not the training run.

When fine-tuning genuinely is the answer, the platform is rarely the hard part. The work that decides the outcome is upstream and downstream of the training job: curating and cleaning the dataset, choosing the base model and method, building evals that catch regressions, and wiring the tuned model into serving with fallbacks and monitoring. That is model engineering rather than platform selection, and it is work BearPlex does for clients end to end: data pipeline, training, evaluation, and deployment, with the platform chosen for your constraints rather than a leaderboard's. If you are budgeting a build, the project cost estimator gives ranges without a sales call.

See how BearPlex builds and tunes models
FAQ

Common questions

The dates first: organizations that never ran a fine-tuning job lost access on May 7, 2026; organizations without fine-tuned-model inference in the prior 60 days lost the ability to start new jobs on July 2, 2026; and every remaining customer loses new-job access on January 6, 2027. Inference on already-tuned models continues until the underlying base model is deprecated, so nothing breaks overnight. Plan for a retrain on an open-weight base (Llama 4, Qwen, Gemma, GPT-OSS) using your original training data rather than a port of the model itself, and favor platforms that let you download the result: Together and Tinker document weight export, and self-hosted routes make it a non-issue.

Run the cheap experiments first. Prompting with good examples, retrieval over your data, and structured outputs close most quality gaps, and they iterate in minutes rather than training runs. Fine-tuning earns its cost in specific situations: you need a small model to match a big one on a narrow task to cut inference cost, you need behavior that instructions cannot reliably produce (tone, format discipline, tool-call patterns), or you have thousands of labeled examples that prompting cannot exploit. If you cannot measure the gap with an evaluation set, you are not ready to fine-tune, because you will not be able to tell whether it worked.

Default to LoRA. Together's docs make it the default training mode. Thinking Machines built Tinker as LoRA-only, and its LoRA Without Regret research reports that LoRA performs the same as full fine-tuning for supervised runs on small-to-medium instruction and reasoning datasets, and matches it for reinforcement learning even at small ranks. The price gap is roughly 2x to 2.5x per token on the managed platforms (Together lists $0.48 versus $1.20 per million tokens for models up to 16B; Fireworks lists $0.50 versus $1.00). Full fine-tuning is worth the premium when you are making deep behavioral changes, doing continued pre-training on domain text, or when a careful LoRA run has measurably plateaued below target.

Less than most teams budget. On per-token platforms, a LoRA SFT pass over 50 million training tokens on a model up to 16B runs about $24 on Together ($0.48 per million) or $25 on Fireworks ($0.50 per million); Tinker's listed train rate for Qwen3-8B was $0.40 per million at verification, so the same volume lands around $20 before its July 17, 2026 repricing. Self-hosting on rented compute is the same order of magnitude: Modal's H100 works out to about $3.95 per hour, so a job that fits in a few GPU-hours costs tens of dollars. The real budget goes to iteration: data cleaning, multiple runs, and evaluation, not any single training pass.

It depends on the platform, and after the OpenAI wind-down it should be your first diligence question. Together documents downloading final and intermediate checkpoints, merged or as adapters for LoRA jobs. Tinker documents an API endpoint for downloading any checkpoint you have saved. Axolotl and Modal make it trivial because the weights are in your own storage from the start. Fireworks documents importing externally trained LoRA adapters but does not document exporting weights from its own fine-tuning jobs, so confirm portability in writing if that matters to you.

Three credible routes. Tinker gives you loop-level control: its primitives were designed so RL, RLHF, and DPO are expressible as your own Python, and the lab's research argues LoRA is especially well suited to RL. Fireworks offers managed reinforcement fine-tuning as a product: you supply a grader function, billing runs per GPU-hour at on-demand deployment rates, and grpo, dapo, and gspo-token loss functions are built in. Self-hosting covers the rest: Axolotl ships GRPO and GDPO plus outcome and process reward modeling, and Modal publishes GRPO training examples on both TRL and verl if you want that on rented GPUs. Managed SFT/DPO-only platforms like Together do not cover this today.

The open-weight menu is wide. Together's catalog runs from 270M to 480B parameters across Llama 3.x and 4.x, Qwen, Gemma 3 and 4, DeepSeek, Mistral, Kimi K2, GLM, GPT-OSS, and Nemotron, plus bring-your-own models from the Hugging Face Hub. Tinker's curated catalog ran from 4B up to the 550B Nemotron-3-Ultra MoE at verification (with Kimi-K2.6, DeepSeek-V3.1, and Qwen3.5-397B-A17B), though it rotates and listed no Llama models. Axolotl trains anything with open weights, including vision-language and audio models. The practical constraint is usually serving cost, not training support: pick the smallest base that hits your quality bar.

Only past a volume threshold. For occasional jobs, managed per-token pricing wins because you pay nothing for idle capacity or engineering time: a $24 Together job cannot be beaten by any setup that involves configuring a cluster. The math flips when training is continuous or data cannot leave your environment: rented H100s at roughly $3.95 to $3.99 per hour (Modal, Together GPU clusters, verified July 2026) with Axolotl on top remove the per-token markup, and owned hardware goes further at sustained utilization. Modal's per-second billing is the honest middle: framework-level control, zero idle cost, no cluster to babysit.

Get a recommendation tailored to your situation

BearPlex ships production systems on several of the options above. We'll tell you which fits your case in a 30-minute scoping call.