細粒の矯正的な人間のフィードバックからの動作アライメントを介して信頼できるMLLMSに向けて
このリポジトリは、 RLHF-Vのコード、データ、およびモデルの重みをホストします。RLHF-Vは、細粒の補正ヒトフィードバックを介してマルチモーダル大手言語モデル(MLLM)動作を整列させる新しいフレームワークです。
モデル応答の幻覚セグメントを修正するように人間のアノテーターに依頼することにより、細い補正フィードバックデータを収集します。高いデータ効率の恩恵を受けると、8 A100 GPUで1時間しかかかりません。ベースモデルの幻覚率を34.8%削減します。具体的には、Unimm-chatで訓練されている画像の理解と推論に強い能力を持つMLLMであるマフィンで実験を実施します。
私たちを訪問しますか?プロジェクトページと?もっと探検するための紙!そして、私たちのインタラクティブなデモを試すことをお見逃しなく!
RLHF-V-DATASETを提示します。これは、細粒のセグメントレベルのヒト補正によって構築された人間の好みデータセットです。実際には、多様な詳細な説明指示と質問をする手順を含む合計1.4kの注釈付きデータを取得します。
抱きしめる顔にRLHF-Vモデルの重みをリリースします。
また、SFTの重みを提供します。これは、VQAV2データセットでマフィンを獲得した後のモデルチェックポイントです。
cd RLHF-V
git clone https://github.com/thunlp/muffin
cd Muffin
# Creating conda environment
conda create -n muffin python=3.10
conda activate muffin
# Installing dependencies
pip install -e .
# Install specific version of transformers to make sure you can reproduce the experimental results in our papers
git clone --recursive [email protected]:huggingface/transformers.git
cd transformers
git checkout a92e0ad2e20ef4ce28410b5e05c5d63a5a304e65
pip install .
cd ..トレーニングを行う必要がある場合は、追加のパッケージをインストールしてください。
git clone --recursive https://github.com/Dao-AILab/flash-attention.git
cd flash-attention
# Note: Uncomment the following line if you have CUDA version <= 11.4
# git checkout ad11394
MAX_JOBS=8 python setup.py install
cd ..オブジェクトハルベンチ評価を実行するには、次のパッケージも必要です。
jsonlines
nltk==3.8.1
spacy==3.7.0
# Download and install "en_core_web_trf" for spacy
# The wheel version we use can be downloaded from
# https://github.com/explosion/spacy-models/releases/tag/en_core_web_trf-3.7.2
# run pip install en_core_web_trf-3.7.2-py3-none-any.whl 次のスクリプトを実行して、Llavaベンチの結果を生成、評価、要約します。
# cd RLHF-V
bash ./script/eval/eval_muffin_llavabench.sh ./RLHF-V_weight ./results/RLHF-V {YOUR_OPENAI_API_KEY}オブジェクトハルベンチの評価は、COCO2014データセットからのキャプションとセグメンテーションの注釈に依存しています。まず、COCOデータセットの公式WebサイトからCOCO2014データセットをダウンロードしてください。
mkdir coco2014
cd coco2014
wget http://images.cocodataset.org/annotations/annotations_trainval2014.zip
unzip annotations_trainval2014.zip{YOUR_COCO2014_ANNOTATION_DIR}をCOCO2014アノテーションディレクトリのパス(例./coco2014/annotations COCO2014/Annotations)に置き換え、 {YOUR_OPENAI_API_KEY}を有効なOpenai Apkeyに置き換えてください。
# cd RLHF-V
bash ./script/eval_muffin_objhal.sh ./RLHF-V_weight ./results/RLHF-V {YOUR_COCO2014_ANNOTATION_DIR} {YOUR_OPENAI_API_KEY}ここからMMHAL評価データをダウンロードして、 eval/dataにファイルを保存してください。
# cd RLHF-V
bash ./script/eval_muffin_mmhal.sh ./RLHF-V_weight ./results/RLHF-V {YOUR_OPENAI_API_KEY}トレーニング環境を準備するには、インストールセクションの指示に従ってください。マフィンの最新コードベースにアップグレードしてください。
cd Muffin
git pull
pip install -e .
SFTモデルチェックポイントをダウンロードして、 Muffin/RLHF-V_SFT_weightに保存してください。
マフィンの最新コードベースにアップグレードしてください。マフィンの環境をインストールした後、次のようにモデルをトレーニングできます。このスクリプトは、Huggingfaceからオープンソースのトレーニングデータを自動的にダウンロードし、SFTモデルによってログを生成し、DDPOトレーニングを行います。
cd Muffin
ref_model=./RLHF-V_SFT_weight
bash ./script/train/run_RLHFV.sh
./RLHFV_checkpoints/dpo_exp
master
RLHFV
1.1
$ref_model
./RLHF-V-Dataset
RLHFV_SFT
2160
360
0.1
False
True使用およびライセンス通知:データ、コード、チェックポイントは、調査のみを意図し、ライセンスされています。また、Llama、Vicuna、およびChat GPTのライセンス契約に従う使用に限定されています。データセットはNC 4.0によるCC(非営利的な使用のみを可能にします)であり、データセットを使用してトレーニングされたモデルは、研究目的以外では使用しないでください。
モデル/コード/データ/ペーパーが役立つ場合は、私たちの論文を引用し、主演してくださいするまで
@article { yu2023rlhf ,
title = { Rlhf-v: Towards trustworthy mllms via behavior alignment from fine-grained correctional human feedback } ,
author = { Yu, Tianyu and Yao, Yuan and Zhang, Haoye and He, Taiwen and Han, Yifeng and Cui, Ganqu and Hu, Jinyi and Liu, Zhiyuan and Zheng, Hai-Tao and Sun, Maosong and others } ,
journal = { arXiv preprint arXiv:2312.00849 } ,
year = { 2023 }
}
@article { yu2024rlaifv ,
title = { RLAIF-V: Aligning MLLMs through Open-Source AI Feedback for Super GPT-4V Trustworthiness } ,
author = { Yu, Tianyu and Zhang, Haoye and Yao, Yuan and Dang, Yunkai and Chen, Da and Lu, Xiaoman and Cui, Ganqu and He, Taiwen and Liu, Zhiyuan and Chua, Tat-Seng and Sun, Maosong } ,
journal = { arXiv preprint arXiv:2405.17220 } ,
year = { 2024 } ,
}