AI Blog

Prime Intellect vs HUD vs ART vs OpenAI RFT: you are choosing where the environment lives

Trainers and GPUs are rentable and the base model changes every quarter, so the only durable thing an RL project produces is the environment — the task distribution, the tool surface and the verifier that scores a run. These four platforms disagree about where that artifact lives and who writes the reward, and the one that offered to own the whole pipeline is closing to new users. Pick on portability of the environment and ownership of the verifier; the trainer comparison is the easy part.

By Agentic AI Wiki 16 min read

Everything in an RL project except one thing is rentable. The GPUs are rentable, the trainer is an open-source library, the base model will be replaced within two quarters, and the cluster goes back when you are done. What is left afterwards is the environment — the task distribution, the tool surface the agent acts through, and the verifier that decides whether a run succeeded — and that artifact is also, exactly, the eval you needed before you ever thought about training. These four platforms take different positions on where it lives and who writes the reward, and one of them is quietly closing to new users, which is the strongest argument in the comparison for keeping the artifact in a form you can carry out the door.

At a glance

Four ways to get from "my agent is unreliable at this task" to a trained policy, and they are not four versions of the same product — one is a package registry with a trainer attached, one turns your running software into an environment, one lives inside your application code, and one is a managed service in wind-down.

PlatformWhere the environment livesWho writes the rewardStatus
Prime IntellectAn installable Python package — verifiers module with its own pyproject.toml, published to the Environments HubYou, as a rubric in the environmentOpen library, hosted training and GPUs; thousands of community environments
HUDAn MCP server wrapping real software, run through a hosted gatewayYou, as a task-level reward on the wrapped systemOpen SDK plus cloud; maintains OSWorld-Verified and SheetBench
OpenPipe ARTYour own application code — the rollout is a function you already wroteA judge model ranking trajectories (RULER), or your ownOpen library; the company was acquired by CoreWeave, training available serverless
OpenAI RFTNowhere — you supply graders, not an environmentThe vendor's grader schema, filled in by youPart of the fine-tuning platform, closed to new users and winding down
Where each platform leans A four by four matrix. Rows are Prime Intellect, HUD, OpenPipe ART and OpenAI RFT. Columns are open-source core, portable environment artifact, wraps your real software, and open to new users. Prime Intellect is strong on an open core with the verifiers library, strong on portability because environments ship as installable Python wheels, medium on wrapping real software, and open to new users. HUD is strong on an open core with hud-python, medium on portability because environments are MCP servers run through a hosted gateway, strong on wrapping real software since that is its whole premise, and open to new users. OpenPipe ART is strong on an open core, weak on portability because the rollout is code inside your own application rather than a distributable artifact, strong on wrapping real software since it trains on your production task, and open to new users. OpenAI reinforcement fine-tuning is weak on an open core with nothing published, weak on portability because graders follow a proprietary schema, weak on wrapping real software since it grades outputs rather than running a tool loop, and closed to new users as the fine-tuning platform winds down. Where each one leans OPEN CORE PORTABLE ENV YOUR SOFTWARE OPEN TO NEW USERS Prime Intellect Strong · verifiers Strong · wheels Medium Yes HUD Strong · hud-python Medium · MCP Strong · the premise Yes OpenPipe ART Strong · ART, RULER Weak · in-app code Strong · your task Yes OpenAI RFT Weak · none Weak · own schema Weak · grades output No · winding down Strong Medium Weak Strong is not better — it marks where a platform commits, and every commitment costs something elsewhere.
Strong is not better. It marks where each platform commits, and every commitment costs something in another column.

One thing to hold on to before the details: none of these vendors will make your agent better. They make it cheaper to run the experiment that tells you whether a trained policy would be better, and three of the four also make it cheaper to measure the agent you already have. That second use is the one most teams should buy first.

What you are actually choosing

The agentic RL loop, and which box each vendor sells A cycle of four boxes. A policy inference pool generates tokens and hands a proposed action to the environment, drawn as the large accent box in the centre right: it executes the tool call against real software, returns an observation, and at the end of an episode runs a verifier that emits a scalar reward. Completed trajectories flow into a rollout buffer, and the trainer pool consumes the buffer to update weights, then publishes new weights back to the inference pool. Annotations mark that the inference pool and trainer pool are rented commodities, that the buffer is plumbing, and that the environment plus its verifier is the only box that survives a change of base model, trainer or cloud. A footer band notes that a single slow episode stalls a synchronous batch, which is why the inference and trainer pools are disaggregated and run concurrently. Inference pool generates the next action vLLM or SGLang, rented COMMODITY proposed tool call Environment executes against real software returns the observation resets deterministically verifier emits the scalar reward THE ONLY BOX THAT OUTLIVES THE RUN finished trajectories Rollout buffer decouples generation from training so one slow episode stalls nothing Trainer pool GRPO and descendants publishes new weights COMMODITY updated weights Rent the two commodity boxes. Write the accent one — it is the asset, and it is also your eval harness.
Two of these boxes are commodities you rent. One is plumbing. The accent box is the product of the project.

Look at the loop and the asset question answers itself. The inference pool is vLLM or SGLang on rented hardware. The trainer is GRPO and its descendants, published in a dozen open libraries. The buffer between them exists because agentic rollouts are heavy-tailed and one slow episode would otherwise stall a synchronous batch — real engineering, and not yours. The environment is the only box encoding anything specific to your business: which tasks matter, what the agent may touch, and what counts as done.

That asymmetry should drive the choice, and it usually does not, because the visible differences between these vendors are GPU pricing and trainer features. The questions that will matter in eighteen months are narrower. Can you take the environment to a different trainer without rewriting it? Is the reward a function you control or a schema you filled in? And if this vendor stopped taking new customers tomorrow, what would you still have? The last one is not hypothetical, as the fourth column of the table shows.

The engineering side of building the thing — rollout latency distributions, verifier precision, reset determinism, why timeouts must be scored rather than dropped — is the subject of environment engineering for agentic RL. This post is about who to buy it from.

Prime Intellect and HUD are opposite bets on where environments come from

Both are open at the core and both let you keep the artifact, but they answer "where does an environment come from" in almost exactly opposite ways, and the answer determines which one fits your problem.

Prime Intellect treats environments as a distributable package ecosystem. Its verifiers library defines an environment as a Python module with a dataset, a rollout function and a rubric, declaring dependencies in its own pyproject.toml and shipping as a wheel; the Environments Hub is, structurally, a package registry with thousands of community entries, and prime-rl installs them for training without modification. This is the most portable formulation in the group — an environment you write against the spec runs under your own trainer, on your own hardware, forever. The cost is that the abstraction is a general one, so wrapping messy real software means writing the adapter yourself, and the library's own churn is real: it moved from a v0 API to a rewritten v1 namespace during 2026 and not every community environment followed. Pin your versions.

HUD treats your running software as the environment. The premise is that you should not build a simulation of your product to train against; you should wrap the actual product — the real APIs, the real spreadsheet, the real desktop — as an MCP server with tasks and rewards attached, and run the agent against that. It maintains OSWorld-Verified and SheetBench as public benchmarks, which is a useful signal about where its attention is: computer-use and browser agents, where a faithful simulation is effectively impossible and the only honest environment is the software itself. The trade is direction of portability. Your environment is now an MCP server, which is an unusually good thing to own — it is the same interface your production agent speaks, so the wrapper is reusable outside training — but the scale-out path runs through HUD's hosted gateway rather than any trainer you choose.

The practical split: if your task is API-shaped and you can describe success programmatically, Prime Intellect's formulation gives you the more durable artifact. If your task is software-shaped — a legacy internal tool, a spreadsheet workflow, a browser flow with no API behind it — HUD is doing the hard part you would otherwise spend a quarter on, and the MCP framing means the work is not wasted even if you never train. Both are compatible with the sequencing this wiki keeps arguing for: build the environment as an eval first, and let training be a thing you can do afterwards rather than the reason you started.

ART's bet: the reward is the part you should not write

Three answers to who writes the reward Three columns comparing where the reward function comes from. In the first, you write a programmatic verifier that checks the artifact — tests pass, the row was written, the invariant holds; Prime Intellect and HUD both take this route, it gives the sharpest signal, and the labour is yours. In the second, drawn as the accent column, a judge model ranks a group of trajectories against each other rather than scoring them absolutely; OpenPipe's RULER works this way, it removes the hand-written reward and works on open-ended tasks, and the cost is that correctness now depends on a judge you have to calibrate. In the third, the vendor supplies the grader schema and you fill it in, as with OpenAI reinforcement fine-tuning; it is the least work and the least portable, and it grades outputs rather than a tool-using trajectory. You write it the tests pass the row was written the invariant holds PRIME INTELLECT / HUD sharpest signal available, and the labour is yours A judge ranks it group of trajectories, ordered no rubric, no labels works on open-ended tasks OPENPIPE RULER correctness now rests on a judge you must calibrate The vendor's schema graders in their format grades the output, not the run least work to start OPENAI RFT and the least portable thing you could have built
The middle column is the interesting claim, and it relocates the correctness problem rather than solving it.

OpenPipe's Agent Reinforcement Trainer starts from a different premise: that the environment already exists, because it is your application. You do not port your task into a framework; you wrap the agent loop you already run, and ART trains against it. That makes it the fastest of the four to a first run when the task lives inside a working product, and the weakest on portability, because "the rollout" is a function in your codebase rather than an artifact you can hand to another trainer.

Its more interesting contribution is RULER — Relative Universal LLM-Elicited Rewards. Rather than scoring each trajectory against a rubric, it asks a judge model to rank a group of trajectories against each other, which works because GRPO normalises within the group and only the ordering survives into the gradient. OpenPipe reports it matching or beating hand-crafted reward functions on most of its evaluation tasks while removing the labelled data and the reward engineering. Relative judgements are also genuinely easier for a judge than absolute ones, so the claim is mechanically plausible rather than just marketing.

What it costs is worth stating plainly, because it is easy to read RULER as free. It moves the definition of correctness from a program you can read into a model you have to calibrate, and every failure mode of an LLM judge comes with it — position bias, verbosity preference, drift when the judge model is upgraded underneath you. On a task where a programmatic check exists, write the check. RULER earns its place where no check exists: open-ended research, drafting, multi-tool work whose success is a judgement call. And if you use it, calibrate it like any other judge, with the machinery in judge calibration and meta-evaluation.

One structural note: OpenPipe was acquired by CoreWeave, and ART's serverless training path runs through that lineage. The library is open and the acquisition has not changed that, but a hosted training lane owned by a GPU provider has an obvious commercial gravity, and the portability question in this section is the one to ask about it.

The managed lane is closing, which is the whole argument

The fourth option is the one most teams assume exists: hand the task to the model vendor, supply graders, get a better model back. OpenAI's reinforcement fine-tuning does work like that — graders in its own schema, o-series reasoning models only, priced around $100 per hour of core training loop with model-graded tokens billed separately. It is by far the least work to start.

It is also going away. OpenAI notified developers in May 2026 that it is winding down the fine-tuning platform: organisations that had not previously run fine-tuning could no longer create training jobs from 7 May, the restriction tightened on 2 July, and existing customers lose the ability to create new jobs from 6 January 2027. Already-tuned models keep serving until their base models are deprecated, and no new models or platform features will be added during the wind-down.

Take the specific product out of it and the general lesson is the one worth carrying. A managed pipeline that owns the environment, the trainer and the weights leaves you with nothing transferable when it stops — not the environment, because you never built one, only graders in a proprietary schema; not the weights, because they are tied to a base model on someone else's deprecation calendar; and not the measurement, because grading outputs against a schema is not the same artifact as a task distribution with a verifier. Teams who took the other three routes still hold a runnable environment today. The comparison did not need to be won on features.

This is not an argument against managed services generally, and it is not a prediction that the others will last. It is an argument for a specific test: whatever you pick, check that the environment leaves the building with you. If the answer is no, price that in as lock-in the way build vs buy prices any other layer.

When to pick which

SituationPickBecause
Task is API-shaped with a programmatic success checkPrime IntellectThe environment ships as an installable package, so it runs under your own trainer and outlives the vendor relationship
Task lives in real software with no clean API — browser flows, spreadsheets, an internal legacy toolHUDWrapping the running system as an MCP server is the hard part, and the wrapper is reusable in production, not just in training
The agent already works inside a shipped product and you want a first RL run this monthOpenPipe ARTThe rollout is code you already have; nothing gets ported. Accept that the environment is not a portable artifact
Success is a judgement call with no programmatic checkART with RULERRelative ranking is a workable reward where a rubric is not — provided you calibrate the judge like any other judge
You want a better model without owning any of thisNone of them, yetThe managed lane is closing to new users; a stronger prompt, better tools and a model upgrade beat an RL project you cannot staff
You cannot state your agent's success rate on thirty real tasksBuild the eval firstNo verifier means no reward. Whichever platform you choose, that number is the prerequisite, and building it is most of the work anyway

What should not decide it: GPU price per hour, which matters less than your environment's throughput; and community environment counts, which measure a registry rather than the environment that represents your product.

FAQ

Do I need RL at all, or is this a prompt problem?

Most of the time it is a prompt, tool-design or context problem, and the ordering in prompt, fine-tune or RL is the right one: exhaust the cheap levers first. The useful thing about environment work is that it is not wasted either way — you cannot tell whether the cheap levers worked without the same task distribution and verifier that an RL run would need.

Why is the environment the asset rather than the trained weights?

Because weights are tied to a base model that will be superseded, usually within a couple of quarters, and re-running the training against a new base is cheap if you still have the environment. The environment encodes what your business considers correct, which does not change when the model does.

Can I use a community environment from the Environments Hub for my own task?

For infrastructure shakedown and for tasks nobody's revenue depends on, yes, and it is much faster than writing one. Two caveats: the verifier encodes someone else's definition of correct, which you inherit unread unless you read it; and a public environment is a plausible pre-training contaminant, so a strong score on it may be exposure rather than capability.

What does a training run actually cost?

Less than teams expect on GPUs and more than they expect on wall-clock, because the accelerators idle while environments execute. A single straggler episode stalls a synchronous batch, which is why the ecosystem converged on disaggregated inference and training pools with a buffer between them. Profile your environment's p99 episode duration before reserving anything; that number, not the GPU rate, sets the bill.

Is RULER good enough to replace a hand-written verifier?

Not where a programmatic check exists — a check that reads the artifact is sharper and cannot be talked into anything. RULER is for tasks where no check exists, and there it is a real option rather than a compromise. Either way, hand-score fifty trajectories and compare before you trust the reward, because a verifier that accepts wrong trajectories does not degrade training gently; it teaches the shortcut.

Further reading

On this wiki:

Project sources: