README_ja.md
March 7, 2025 · View on GitHub
データ概要
📊 データ公開
データの3つの部分を公開します:
- テストデータ:これはProactiveBenchのテストデータで、生成データと手動で収集されたデータが含まれています。すべての個人情報は削除されています。
- 報酬データ:これは3つの部分で構成されています。
test_data.jsonlは報酬モデルのテストデータ、train_data.jsonlは報酬モデルのトレーニングデータ、trainset_reward_llama.jsonはLLaMA-Factory互換の報酬モデルトレーニングデータです。 - エージェントデータ:これはProactive Agentのカスタムモデルをトレーニングするために使用されるデータです。
データアノテーションの実行
データアノテーションを実行するには、まずProactiveBenchのテストデータを./dataset/annotation/dataフォルダにコピーします。その後、以���のコマンドを実行します。
python dataset/annotation/main.py
次の出力が表示されます:
* Running on http://localhost:7860/ (Press CTRL+C to quit)
この時点で、ブラウザでhttp://localhost:7860を開くと、データをアノテートできるようになります。
アノテートされたデータは./dataset/annotation/resultフォルダに保存されます。
ヒント:
- デフォルトのログインパスワードは
passwordです。dataset/annotation/main.pyでパスワードを変更できます。アノテーターには識別のためにUUIDが割り当てられます。 - GUIはイベントトレースと対応するエージェントの応答を表示します。アノテーターは自分の好みに合ったタスクをチェックするか、適切なタスクがない場合は
Reject allを選択します。 - 現在のトレースが完了したら、
next_traceをクリックして新しい、アノテートされていないトレースを取得します。ウィンドウにCurrent trace done. Press [next trace]!!!と表示されている時に終了することで、アノテーションの完全性を確保します。
報酬モデルのトレーニングセットの構築
データをアノテートした後、報酬モデルのトレーニングセットを構築できます。 まず、以下のコマンドを使用してアノテートされたデータを抽出およびフィルタリングします。
cd dataset/annotation
python convert_annotations.py
これにより、./dataset/reward_dataフォルダにtest_data.jsonlとtrain_data.jsonlが作成されます。
次に、以下のコマンドを実行して報酬モデルのトレーニングセットを構築します。
python build_reward_trainset.py
build_reward_trainset.pyを実行する前に、スクリプト内のクライアント設定を自分の設定に変更してください。
client = openai.AsyncOpenAI(api_key="sk-xx",base_url="http://localhost:8000/v1/")
model = "your_model_name"
VLLMを使用してローカルサーバーで独自のモデルをホストし、base_urlを独自のサーバーアドレスに変更できます。
その後、生成されたトレーニングセットを使用してLLaMA-Factoryを使用して報酬モデルをトレーニングできます。
プロアクティブエージェントのトレーニングセットの構築
警告:以下のコマンドを実行する前にGYMを構成してください。
プロアクティブエージェントのトレーニングセットを構築するには、以下のことを行う必要があります:
- データ生成のためにGYMのシーンを構築します。
- GYMとシーン構成を使用してイベントを生成します。
- 生成されたイベントを使用してプロアクティブエージェントのトレーニングデータを生成します。
データ生成のためのシーンの構築
以下のコマンドを使用してGYMのシーンを構築できます(ルートフォルダで実行)。
python dataset/build_scenes.py --seedfile ./dataset/seedtask.yaml --savefile ./dataset/new_scenes.yaml
これにより、./datasetフォルダに新しいシーンファイルnew_scenes.yamlが生成されます。
すべてのシーンはdataset/agent_dataフォルダにもコピーされます。
GYMを使用したイベントの生成
以下のコマンドを使用してGYMでイベントを生成できます。
python dataset/run_datagen.py --scene_file ./dataset/new_scenes.yaml
これにより、イベントが生成され、./dataset/agent_dataフォルダに.jsonl形式で保存されます。
プロアクティブエージェントのトレーニングデータの生成
以下のコマンドを使用してプロアクティブエージェントのトレーニングデータを生成できます。
python build_agent_trainset.py
これにより、./dataset/agent_dataフォルダにagent_trainset.jsonlが作成されます。
これで、生成されたデータを使用してプロアクティブエージェントのカスタムモデルをトレーニングできます。