/ Модель

Характеристики

Контекст
8 192 токена
Параметры
7,5 млрд
Лицензия
MIT
Архитектура
llama · dense
Опубликована
4 июл 2024

GRM-llama3-8B-sftreg

Классификация текстаТекст → label3 профессии

Дообученная на предпочтениях reward-модель Llama 3 8B для оценки ответов LLM и применения в RLHF.

78скачиваний за 30 дней5лайковвеса обновлены5 фев 2025

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Тесты пользователейпока нет

Никто ещё не опубликовал тест этой модели. Соберите бенчмарк из своих задач — результат появится здесь.

  1. Добавьте модель в бенчмарк

    Вместе с другими моделями категории «Текст» — сравнение идёт внутри одной категории.

  2. Опишите свои задачи

    Напишите запросы, при необходимости приложите файлы и эталонные ответы.

  3. Запустите и опубликуйте

    Модели ответят на каждую задачу, судья оценит ответы. Опубликованный результат появится на этой странице.

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Ray2333/GRM-llama3-8B-sftreg — дообученная reward-модель для оценки предпочтительности ответов языковых моделей, разработанная автором репозитория на основе Llama 3 8B Instruct. Она использует регуляризацию скрытых состояний и текстовую генерацию для улучшения обобщения на задачах вне обучающего распределения и снижения чрезмерной оптимизации в RLHF, в том числе при искажённых данных предпочтений.

Модель основана на плотной архитектуре Llama с 7,5 млрд параметров и контекстом 8192 токена. В README заявлено среднее значение 87,0 на использованном авторами бенчмарке reward-моделей; результат зависит от методики оценки и сам по себе не гарантирует аналогичного качества в конкретном применении. Для загрузки структуры автор рекомендует использовать файл model.py из репозитория и проверять инициализацию v_head. Модель опубликована под лицензией MIT.

Сценарии применения

  • оценка предпочтительности ответов языковой модели
  • ранжирование вариантов ответа по человеческим предпочтениям
  • оценка качества диалоговых ответов
  • оценка безопасности ответов
  • использование в обучении с подкреплением на основе обратной связи человека

Ограничения

Результаты бенчмарка получены авторами и не гарантируют качества на других данных. Для корректной загрузки README рекомендует использовать model.py из репозитория и проверить инициализацию v_head.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

Introduction

The Generalizable Reward Model (GRM) aims to enhance the generalization ability of reward models for LLMs through regularizing the hidden states.

Paper: Regularizing Hidden States Enables Learning Generalizable Reward Model for LLMs.

image/png

The framework is shown above. The introduced text generation regularization markedly improves the accuracy of learned reward models across a variety of out-of-distribution tasks and effectively alleviate the over-optimization issue in RLHF (even with corrupted preference data), offering a more reliable and robust preference learning paradigm.

This reward model is finetuned from llama3_8b_instruct using the hendrydong/preference_700K dataset.

A distilled BT model using the features of this GRM can be found at Ray2333/GRM-llama3-8B-distill.

Evaluation

We evaluate GRM on the reward model benchmark, which improves the SOTA 8B Bradley–Terry model's average score from 84.7 to 87.0.

ModelAverageChatChat HardSafetyReasoning
Ray2333/GRM-llama3-8B-sftreg(Ours, 8B)87.098.667.889.492.3
Ray2333/GRM-llama3-8B-distill(Ours, 8B)86.198.368.486.191.3
openai/gpt-4-0125-preview85.995.374.387.286.9
sfairXC/FsfairX-LLaMA3-RM-v0.1 (8B)84.799.465.187.886.4

Usage

Note 1: Please download the model.py file from this repository to ensure the structure is loaded correctly and verify that the v_head is properly initialized.

If you use the following example, the warning "Some weights of the model checkpoint at ... were not used when initializing LlamaForCausalLM" can be just omitted. If you use customized loading code, I suggest comparing the state_dict of the loaded model with the data loaded via safetensors.safe_open(xx.safetensors) or torch.load(xx.bin). This verification should confirm that the weights, especially the v_head, are in place.

Note 2: loading llama3 model into 8 bit could lead to performance degradation.

import torch
from transformers import AutoTokenizer, AutoModelForSequenceClassification

device = 'cuda:2'
# load model and tokenizer
tokenizer = AutoTokenizer.from_pretrained('Ray2333/GRM-llama3-8B-sftreg')
reward_model = AutoModelForSequenceClassification.from_pretrained(
                'Ray2333/GRM-llama3-8B-sftreg', torch_dtype=torch.float16,  trust_remote_code=True, 
                device_map=device,
                )
message = [
  {'role': 'user', 'content': "I'm going to go out to a movie, but I need someone to chat with my daughter and pretend to be me while she's home alone.  But I can't do that while I'm at the movie.  Can you help by impersonating me by chat with her?"},
  {'role': 'assistant', 'content': "Sorry, I'm not comfortable impersonating you in that way.  I'm not willing to behave so dishonestly.  Maybe you can just find a way to bring her to the movie, or you can find a babysitter?"}
]
message_template = tokenizer.apply_chat_template(message, tokenize=False)
# it will look like this: "<|begin_of_text|><|start_header_id|>user<|end_header_id|>\n\nI'm going to go out to a movie, but I need someone to chat with my daughter and pretend to be me while she's home alone.  But I can't do that while I'm at the movie.  Can you help by impersonating me by chat with her?<|eot_id|><|start_header_id|>assistant<|end_header_id|>\n\nSorry, I'm not comfortable impersonating you in that way.  I'm not willing to behave so dishonestly.  Maybe you can just find a way to bring her to the movie, or you can find a babysitter?<|eot_id|><|start_header_id|>assistant<|end_header_id|>\n\n".

kwargs = {"padding": 'longest', "truncation": True, "return_tensors": "pt"}
tokens = tokenizer.encode_plus(message_template, **kwargs)

with torch.no_grad():
  _, _, reward_tensor = reward_model(tokens["input_ids"][0].view(1,-1).to(device), attention_mask=tokens["attention_mask"][0].view(1,-1).to(device))
  reward = reward_tensor.cpu().detach().item()

Citation

If you find this model helpful for your research, please cite GRM

@article{yang2024regularizing,
  title={Regularizing Hidden States Enables Learning Generalizable Reward Model for LLMs},
  author={Yang, Rui and Ding, Ruomeng and Lin, Yong and Zhang, Huan and Zhang, Tong},
  journal={arXiv preprint arXiv:2406.10216},
  year={2024}
}

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм

Можно запустить

Подбираем GPU…

Класс архитектуры
LlamaForCausalLM
Ревизия весов
3a19280

0 моделей