Skip to main content
With the LLM human preference editor, you can create human preference data for model comparison or RLHF (reinforcement learning with human feedback). You can compare model outputs side-by-side and select the most favorable model output on a conversational text thread by assigning the model output a classification.
This editor solves two important problems that are critical to ensuring responsible AI aligned with human preferences:
  • Model comparison: Conduct the evaluation and comparison of model configurations for a given use case and decide which one to pick.
  • RLHF: Create preference data for training a reward model for RLHF based on multiple outputs from a single model.

Supported classifications for model response classification

Set up an LLM human preference project

For this version of the model comparison editor, Labelbox assumes you already have a large language model set up in your own environment that you can use to generate preliminary model responses on your conversational text data.

Step 1: Import conversation data & model responses

Import using your conversation data & model responses. To import secured URLs, we recommend setting up your IAM delegated access integration. For instructions on setting this up, see IAM integration.
  1. In your cloud bucket, create a JSON file for each conversational text data row. Each JSON file should contain the model output. You may import content as markdown or text. Use this sample as a guide for creating the JSON files for each conversational text thread and the model output on that thread.
  1. In a separate JSON file, put the URLs to the cloud-hosted JSON files containing the conversation text data and model outputs. This is the file you will import to Labelbox. Use the sample file below as a guide for formatting your import file.
  1. Upload your data via Python SDK
To send your data to Labelbox, refer to our guidelines on conversational text upload To learn how to upload the URLs to your cloud-hosted JSON files (and import human preference prelabels with Model-assisted labeling) via the Python SDK, see this developer guide.

Alternative data types

You can also make this editor multi-modal (image, video, audio) by adding HTML to your JSON payload. Image
Using the markdown view, your images will be rendered in the editor.

video

Using the markdown view, your videos will be rendered in the editor.
audio
Using the markdown view, your audio will be rendered in the editor.

Step 2: Create an LLM human preference project

After you have imported your data, go to Annotate and click + New project. Select LLM human preference. Provide a name and optional description for your project and configure your quality mode settings.

Step 3: Select data rows from Catalog

During the project setup, click Add data. This will bring you to Catalog, where you can select the data rows you wish to label in this project. Use the Catalog filters to query your data rows.

Step 4: Create the project ontology

Create an ontology for classifying the model responses on each data row. Below is an example of an ontology for an LLM human preference project.

Step 5: Classify model responses

You have two options for assigning classifications to model responses.
  1. Label from scratch: Upload model outputs and have your team assign classifications in the editor from scratch.
  2. Import pre-labels via Model-assisted labeling: Upload classification predictions to your model outputs via Model-assisted labeling to give your labeling team a warm start. To learn how to import pre-labels, see Import LLM human preference annotations.

Toggle markdown view

You can render your content in markdown or text format. Use this toggle in the editor to switch the view. This option also allows you to have other types of media, including images and videos to render.