Introducing Agent Hub: Put AI Agents Directly Into Your Annotation Workflows.
Learn More

Automate Your Data-to-Model Workflows with SuperAnnotate & Fireworks AI

Thank you for subscribing to our newsletter!
Oops! Something went wrong while submitting the form.

Platforms like Fireworks AI make it easier to run inference and customize generative AI models. But the old machine learning adage still applies: garbage in, garbage out. No matter how advanced the base model, its performance depends on the quality of the data used for Supervised Fine-Tuning (SFT) and Reinforcement Fine-Tuning (RFT).

SuperAnnotate makes it simple to build efficient, human-in-the-loop data and evaluation pipelines, helping teams create the high-quality datasets needed to train better models. With our new Fireworks AI integration, you can now move from trusted data to customized, ready-to-deploy models in minutes.

In this guide, you’ll learn how to:

  1. Export Q&A data from SuperAnnotate to Fireworks
  2. Fine-tune a base model using SFT
  3. Align model behavior through RFT

Automating Workflows with Orchestrate

As AI projects grow, managing data flow and task coordination becomes harder to do manually. Orchestrate solves this by automating workflows inside SuperAnnotate. It links project events to actions, helping teams achieve consistent and repeatable processes. You can combine built-in steps with your own Python code and trigger them automatically when events occur – like a dataset update, annotation completion, or stage change.

There are a few key ideas to understand before building with Orchestrate.

  • Custom Actions: Bits of Python code you write and run inside SuperAnnotate. Each action executes in an isolated container whenever the pipeline triggers it.
  • Secrets: Secure environment variables (like API keys or tokens) that your actions can access at runtime. They let you keep sensitive values out of your code and logs.
  • Manual Inputs: Parameters you provide at runtime when manually triggering a pipeline. They let you override or add values (like a dataset ID or project name) without hardcoding them into your action or secrets.

You can read more about Orchestrate, Custom Actions, Secrets, and Manual inputs in our documentation.

We’ll now look at three production-ready custom actions you can publish. Each section explains:

  • What the action does.
  • The environment variables (secrets) needed.
  • The manual inputs you should provide at runtime.
  • Key template details to help you adapt it to your workflows.

1. Uploading Datasets to Fireworks AI

You’ve built a high-quality dataset in SuperAnnotate, now it’s time to get that data into Fireworks AI so you can start fine-tuning your models.

This prebuilt custom action automates the entire process:

  • Retrieve annotations from the SuperAnnotate project of your choice
  • Convert them into the chat message format Fireworks expects
  • Create or update a Fireworks dataset (append if it already exists)

How to Add This Action to Your Project

Inside SuperAnnotate, go to Orchestrate → Actions → New Action → Create Action, then select Upload to Fireworks AI. Once created, you can customize the details and use it in your pipelines.

This action assumes that you have question_area and answer_area fields in your project. If your fields have different names, you need to either change them in the code or in your project.

Configuration

This action needs two things: environment variables (set once) and manual inputs (passed when you run it).

uploading datasets to fireworks ai

Template Highlights

  • Formatter converts question_area / answer_area instances to:
    {"messages":[{"role": "user", "content":"<Q>"},{"role" :"assistant", "content":"<A>"}]}
  • Upload uses either Fireworks REST (: upload) or the Python SDK Dataset.from_list(...).sync() (idempotent).
  • If you see 409 Conflict, treat it as “already exists / in-flight create”, log and continue the upload.

2. Supervised Fine-Tuning on Fireworks AI

If you work through multiple rounds of model training – fine-tuning, evaluating, updating the dataset, then fine-tuning again – switching between platforms can slow you down. This action lets you launch a Supervised Fine-Tuning (SFT) job in Fireworks directly from your SuperAnnotate workflow.

How to Add This Action to Your Project

Inside SuperAnnotate, go to Orchestrate → Actions → New Action → Create Action, then select Fireworks AI- Supervised Finetuning. Once created, you can customize the details and use it in your pipelines.

Configuration

This action needs two things: environment variables (set once) and manual inputs (passed when you run it).

supervised fine-tuning on fireworks ai


Template Highlights

  • Builds payload with dataset, outputModel, baseModel, and training params (epochs, LR, LoRA rank, etc.).
  • Returns the Fireworks API response text for tracking.

3. Reinforcement Fine-Tuning on Fireworks AI

Once you’ve fine-tuned your base model with supervised data, the next step is often aligning its behavior with your specific policies, preferences, or reward signals. That’s where Reinforcement Fine-Tuning (RFT) comes in.

This custom action lets you start an RFT job in Fireworks directly from your SuperAnnotate workflow:

  • Use your prepared dataset to begin alignment training
  • Add a custom evaluator (reward function) to guide model outputs
  • Automatically reserve evaluation data to track performance during training

You don’t need to manually upload datasets, configure jobs in Fireworks, or manage API calls. Running this action lets you move from supervised to reinforcement fine-tuning in one connected workflow. 

How to Add This Action to Your Project

Inside SuperAnnotate, go to Orchestrate → Actions → New Action → Create Action, then select Fireworks AI - Reinforcement Finetuning. Once added, you can edit parameters like base model, learning rate, and evaluator ID to fit your use case.

Configuration

This action needs two things: environment variables (set once) and manual inputs (passed when you run it).

reinforcement fine-tuning on fireworks ai

Template Highlights

  • Constructs trainingConfig with baseModel, outputModel, learningRate, and epochs.
  • Includes evalAutoCarveout: true to reserve eval data automatically.

Tips & Troubleshooting

Even with prebuilt templates, it’s common to hit small issues when setting up pipelines or scaling to larger datasets. Here are a few possible errors and how you can manage them to keep your workflows stable: 

  • 409 Conflicts: If you create a dataset/job that already exists, interpret as idempotent – log and continue to the next step.
  • SuperAnnotate Schema Mismatches: If your instances lack className or different keys (e.g., classTitle), adjust the formatter safely (use .get(...) and skip non-matching instances).
  • Variable Errors: Set up all environment variables and required inputs correctly and make sure they are precisely parsed in the code.
  • Large files (>150MB): Use Fireworks signed URL flow (:getUploadEndpoint → PUT →:validateUpload); otherwise, direct: upload is the simplest.
  • Observability: Add logging around payloads and response bodies.

Closing Notes

​​Bringing SuperAnnotate and Fireworks AI together creates a smoother path from data to deployment. SuperAnnotate handles data and quality control, Fireworks handles the training infrastructure, and Orchestra automates the data-to-model workflows. Instead of managing each step by hand, teams can rely on clear, automated flows that keep projects moving and models improving with every new batch of data.

Vignesh Sridhar

Partner ML Solutions Engineer

Recommended for you

Stay connected

Subscribe to receive new blog posts and latest discoveries in the industry from SuperAnnotate
Thank you for subscribing to our newsletter!
Oops! Something went wrong while submitting the form.