metadata
language:
- ja
- en
datasets:
- llm-jp/magpie-sft-v1.0
- kajuma/CC-news-2024-July-October-cleaned
- weblab-GENIAC/aya-ja-nemotron-dpo-masked
base_model:
- google/gemma-2-9b
- llm-jp/llm-jp-3-13b
東京大学松尾・岩澤研究室(松尾研)大規模言語モデル Deep Learning 応用講座 2024 におけるコンペティション提出物を配置するリポジトリです。
elyza/ELYZA-tasks-100 風の独自の問題に対する出力を競います。
Models
このリポジトリには複数のモデルが含まれています。
ファイル名の prefix に応じてベースモデル・ライセンス・トレーニングデータセットが異なります。
gemma2-9b-*
- ベースモデル: google/gemma-2-9b
- Gemma License
llm-jp-3-13b-*
- ベースモデル: llm-jp/llm-jp-3-13b
- CC BY-NC-SA 4.0 (CC BY-NC-SA のデータを学習に用いたため)
Training Dataset
gemma2-9b-*
- kajuma/CC-news-2024-July-October-cleaned (ODC-By)
- フィルタし本文部分を抽出して継続事前学習に利用
- llm-jp/magpie-sft-v1.0 (apache-2.0)
- サンプリングして指示チューニングに利用
- weblab-GENIAC/aya-ja-nemotron-dpo-masked (apache-2.0)
- サンプリングして選好チューニングに利用
llm-jp-3-13b-*
- ichikara-instruction-003 (CC BY-NC-SA)
- サンプリングして指示チューニングに利用
- llm-jp/magpie-sft-v1.0 (apache-2.0)
- サンプリングして指示チューニングに利用
実行方法(コンペ採点者の方向け)
事前準備
# lshw のインストール (ollama インストール時に GPU を検出するのに必要)
$ apt update && apt install -y lshw
# ollama (https://ollama.com/) のインストール & 起動
$ curl -fsSL https://ollama.com/install.sh | sh
$ ollama serve
# -- 以降は ollama サーバーが起動した状態で別ターミナルプロセスから実行 --
# モデルのダウンロード (2つ必要です)
$ ollama pull hf.co/pokutuna/llm2024-competition:gemma2-9b-v11.gguf
$ ollama pull hf.co/pokutuna/llm2024-competition:llm-jp-3-13b-v2-Q6_K.gguf
#
# Note.
# 各モデルのダウンロード後、success と出力されるのを確認して下さい。
# 演習環境で動作を確認済みですがネットワーク状況等により、
# timeout (context deadline exceeded) が発生することがあります。
# 何度か実行すれば走り切ります。
# 回答生成コードの pull
$ git clone https://github.com/pokutuna/llm2024-competition-runner.git
# 依存ライブラリのインストール
$ pip install -r llm2024-competition-runner/requirements.txt
出力の生成
jsonl 形式のタスクファイルをコマンドライン引数に渡してください
$ python ./llm2024-competition-runner/generate.py \
--tasks=./tasks.jsonl \
--outfile=./output-pokutuna.jsonl
--tasks=<path>
- タスクデータ、各行に
input
フィールドを持つ JSONL ファイルへのパス (elyza-tasks-100-TV_0.jsonl
と同じ構造を想定)
- タスクデータ、各行に
--outfile=<path>
- 結果の出力先、タスクデータの各行に対し
output
キーを出力結果として追加したもの
- 結果の出力先、タスクデータの各行に対し
演習環境でおよそ 25~35 分程度かかります
ステップ毎に outfile に書き出します、最後まで走りきらなくても提出物は生成されます