|
--- |
|
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](https://weblab.t.u-tokyo.ac.jp/lecture/course-list/large-language-model/) におけるコンペティション提出物を配置するリポジトリです。 |
|
[elyza/ELYZA-tasks-100](https://huggingface.co/datasets/elyza/ELYZA-tasks-100) 風の独自の問題に対する出力を競います。 |
|
|
|
## Models |
|
|
|
このリポジトリには複数のモデルが含まれています。 |
|
ファイル名の prefix に応じてベースモデル・ライセンス・トレーニングデータセットが異なります。 |
|
|
|
- `gemma2-9b-*` |
|
- ベースモデル: [google/gemma-2-9b](https://huggingface.co/google/gemma-2-9b) |
|
- [Gemma License](https://ai.google.dev/gemma/terms) |
|
- `llm-jp-3-13b-*` |
|
- ベースモデル: [llm-jp/llm-jp-3-13b](https://huggingface.co/llm-jp/llm-jp-3-13b) |
|
- [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/) (CC BY-NC-SA のデータを学習に用いたため) |
|
|
|
|
|
## Training Dataset |
|
|
|
### gemma2-9b-* |
|
|
|
- [kajuma/CC-news-2024-July-October-cleaned](https://huggingface.co/datasets/kajuma/CC-news-2024-July-October-cleaned) (ODC-By) |
|
- フィルタし本文部分を抽出して継続事前学習に利用 |
|
- [llm-jp/magpie-sft-v1.0](https://huggingface.co/datasets/llm-jp/magpie-sft-v1.0) (apache-2.0) |
|
- サンプリングして指示チューニングに利用 |
|
- [weblab-GENIAC/aya-ja-nemotron-dpo-masked](https://huggingface.co/datasets/weblab-GENIAC/aya-ja-nemotron-dpo-masked) (apache-2.0) |
|
- サンプリングして選好チューニングに利用 |
|
|
|
|
|
### llm-jp-3-13b-* |
|
|
|
- [ichikara-instruction-003](https://liat-aip.sakura.ne.jp/wp/llm%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AE%E6%97%A5%E6%9C%AC%E8%AA%9E%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%A9%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%87%E3%83%BC%E3%82%BF%E4%BD%9C%E6%88%90/llm%E3%81%AE%E3%81%9F%E3%82%81%E3%81%AE%E6%97%A5%E6%9C%AC%E8%AA%9E%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%A9%E3%82%AF%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%87%E3%83%BC%E3%82%BF-%E5%85%AC%E9%96%8B/) (CC BY-NC-SA) |
|
- サンプリングして指示チューニングに利用 |
|
- [llm-jp/magpie-sft-v1.0](https://huggingface.co/datasets/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 形式のタスクファイルをコマンドライン引数に渡してください |
|
|
|
```sh |
|
$ 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 に書き出します、最後まで走りきらなくても提出物は生成されます |