Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

Ubuntu 22 LTSでOpenCALM をためす その3:ファインチューニングなるモン

前回までの実験で、とりあえずローカルでLLMが動いたものの……なんやらトンチカンな回答を返す妙なブラックボックスがプロセスに居座っているだけになっていました。
こいつを目的用に改造するには、ファインチューニングなるモンが必要なようです。

実際のところ

データセットの取得

今回目的としている高度人工無能に使えそうなのは

巷には、日本語会話のコーパスを集めてる人がいるようです。
フランクな会話をできるやつを、この中から探す感じでしょうか。
masahiro-mi.github.io/dialogue_corpus.md at master · masahiro-mi/masahiro-mi.github.io · GitHub

更に通な方は自分でデータセットを作るというような事もされるのだとか。
……大昔に学内誌の編集やったり、最近でも議事録起こしやったりした身には……。

レーニング部分

from transformers import Trainer, TrainingArguments

training_args = TrainingArguments(
    output_dir="./output",
    num_train_epochs=3,
    per_device_train_batch_size=8,
    warmup_steps=500,
    weight_decay=0.01,
    logging_dir="./logs",
)

trainer = Trainer(
    model=model,
    args=training_args,
    train_dataset=train_dataset,  # トレーニングデータセット
    eval_dataset=val_dataset,     # バリデーションデータセット
)

# ファインチューニングを実施(とても時間がかかる
trainer.train()