Launch: Train and Deploy RF-DETR Models with Roboflow
RF-DETR is a state-of-the-art object detection model architecture developed by Roboflow. The model architecture is designed both to train well on data from different domains – from manufacturing to agriculture – and run fast on the edge. On an NVIDIA T4, RF-DETR can run at over 100 FPS.
We are excited to announce that you can now train and deploy RF-DETR with Roboflow. You can train RF-DETR models in the cloud with Roboflow Train, deploy your models on the edge with Roboflow Inference, and build edge-ready computer vision applications with Roboflow Workflows.
The Roboflow platform trains from a custom checkpoint that results in more accurate models than those trained with the public COCO checkpoint.
RF-DETR models are licensed under an Apache 2.0 license.
In this guide, we will walk through how to train and deploy RF-DETR with Roboflow.
Without further ado, let’s get started!
What is RF-DETR?
Released in March 2025, RF-DETR is a state-of-the-art object detection model. RF-DETR is the first model to achieve over 60 AP on the Microsoft COCO benchmark, while being fast enough to run in real time on the edge.
RF-DETR also achieves state-of-the-art performance on RF100-VL, a new object detection benchmark that measures model domain adaptability to real world problems. RF100-VL was designed by researchers from Roboflow and Carnegie Mellon University.
RF-DETR was released with base weights trained using the Microsoft COCO dataset. You can use these weights to fine-tune an RF-DETR model to detect custom objects. You can either fine-tune models on your own hardware or in the Roboflow platform. Whichever way you train, you can run your models on edge devices like the NVIDIA Jetson.
By training on our platform with Roboflow Train, you can leverage our custom-trained, optimised checkpoint for use in training. We have found this checkpoint leads to higher mAP scores when compared to the public RF-DETR COCO checkpoint.
Train an RF-DETR Model on Roboflow
To train an RF-DETR model, first you will need a dataset in Roboflow. If you don’t already have a dataset in Roboflow, check out our Getting Started guide to prepare a custom dataset for use in training.
Once you have a dataset ready, click on the “Versions” tab in the left sidebar of your dataset dashboard. From this page, you can create a dataset version – a snapshot of your dataset that is frozen in time. You can use dataset versions to train models.
Configure your dataset version with the preprocessing and augmentation steps you need, then click “Create” to generate a dataset version.
When your dataset version has been generated, click the “Custom Train” button. A window will appear in which you can configure your training job.
Choose the RF-DETR model architecture:
Then, choose a model size. We currently support one size: RF-DETR Base. Base models can run at over 100 FPS on an NVIDIA T4 GPU, and at 25 FPS on up-to-date NVIDIA Jetson devices.
Next, choose the base weights to use for training. By default, Roboflow Train will train from our custom RF-DETR checkpoint. You can also train from previous RF-DETR models trained on the same dataset using transfer learning.
Choose to train from our Public checkpoint:
The "Public Checkpoint" uses our custom-made checkpoint for training.
Once you have chosen a checkpoint, click “Start Training” to start your training job. You will receive an estimate for how long the training job is expected to take. The amount of time your training job will take will depend on the number of images in your dataset.
When your model starts training, you will be able to view the training graphs that shows how your model is performing as it trains:
When your model is ready to deploy, a series of deploy options will appear.
Use RF-DETR with Workflows
With a trained model, the next step is to deploy your model. RF-DETR is fully supported in both Roboflow Workflows and Roboflow Inference. Workflows is a web-based vision AI application builder with which you can build multi-step apps. Workflows has support for a range of vision tools, from running object detection models to tracking objects to smoothing predictions.
Roboflow Inference is an open source inference server that you can use to run vision models on the edge. Inference has full support for Workflows. You can deploy any application built in Workflows with Inference.
To use your trained model in Workflows, click "Workflows" in the left sidebar of your Roboflow dashboard. Then, click "Create a Workflow". A blank Workflow will open in which you can start building your application.
To add your model, add a Model:
Choose “Object Detection Model”:
Then, select the "Model ID" field and choose your model:
By default, the Workflow will return coordinates of our predictions. We can visualize these using the Visualization blocks. Add two blocks to your Workflow:
- Bounding Box Visualization
- Label Visualization
These will automatically connect to use the results from your model. Your final Workflow should look like this:
Click "Test Workflow" in the top right corner of the Workflows web editor. Then, drag an image on which you want to test your Workflow into the "Upload Image" section of the web page:
Then, click "Run".
Your Workflow will be configured, then will run on your input image.
Here is the result from a Workflow built with a model to identify metal defects:
Our model successfully identified the location of the shipping containers, and our Workflow plotted the results from our model on the input image.
To deploy your model, click "Deploy Workflow".
You will receive a code snippet that you can run on your own hardware. When this snippet runs on your device for the first time, your model weights will be cached. Then, inference will be run on your device.
The code snippet will look something like this:
from inference_sdk import InferenceHTTPClient
client = InferenceHTTPClient(
api_url="http://localhost:9001", # use local inference server
api_key="YOUR_API_KEY"
)
result = client.run_workflow(
workspace_name="YOUR_WORKSPACE",
workflow_id="YOUR_WORKFLOW_ID",
images={
"image": "YOUR_IMAGE.jpg"
}
)
The output from the code snippet will contain the coordinates from our detection, as well as a NumPy array that represents the input image with detections plotted like we saw earlier.
You can use Workflows to build complex vision applications. Workflows has support for techniques like:
- Cropping regions of an image, then running those regions through a classification model.
- Tracking objects between frames in a video.
- Calibrating a camera for use in a manufacturing environment.
- Connecting your Workflow to output systems like Microsoft SQL Server, MQTT, and more.
You can run your Workflow in the cloud, on your device in real-time, or on batches of images or videos.
To run your Workflow on batches of images, go to your Roboflow dashboard, click Deployments in the sidebar, then select “Batch Jobs”:
Click “New Job”. A window will appear in which you can configure your batch job:
Choose the Workflow you want to run:
Then, upload the images or videos you want to process. Click “Create Batch Job” to start the job.
Batch Processing will run your Workflow on your input images or videos, then return the results as a file where each line contains JSON representations of your Workflow output.
To learn more about Batch Processing, refer to our Batch Processing guide.
We encourage you to explore to see what you can build!
Conclusion
RF-DETR is a state-of-the-art computer vision model developed by Robfolow. You can fine-tune RF-DETR to detect custom objects.
RF-DETR achieves state-of-the-art performance on both the Microsoft COCO and RF100-VL benchmarks, the former measuring model performance on a single dataset and the latter measuring performance using a composition of 100 datasets from a wide variety of domains.
In this guide, we walked through how to train RF-DETR models on the Roboflow platform and deploy them with Roboflow Workflows and Inference.
To learn more about RF-DETR, refer to our model announcement, as well as the open source GitHub repository.