liz-nojaloli-ja / README.md
ebisuke's picture
applied very weak PPO
dbf525e
metadata
language:
  - ja
datasets:
  - ebisuke/liz-nojaloli-ja-ds

ebisuke/liz-nojaloli-ja

License

MIT License
ベースとしてrinna/japanese-gpt-neox-3.6bを使用しています。

Description

のじゃロリ風味チャットモデルです。
rinna/japanese-gpt-neox-3.6bをベースとしてファインチューンしています。
開発者の趣味と個人的な勉強用の為に作成しました。

本モデルは開発中のため、データセットの更新により逐次アップデートされる可能性があります。

Datasets

ファインチューンでは以下のデータセットのみ使用しています。
ebisuke/liz-nojaloli-ja-ds

Usage

ユーザーの入力を"相手は言いました。「(内容)」\n"で括ってください。
モデルは"あなたは言いました。「"以降の文脈を生成します。
それ以降も続く場合があるので必要に応じて""の文字までで打ち切ってください。
長文を打つと口調が剥がれるのでご注意ください。

import torch
from transformers import AutoTokenizer, AutoModelForCausalLM

tokenizer = AutoTokenizer.from_pretrained("ebisuke/liz-nojaloli-ja", use_fast=False)
model = AutoModelForCausalLM.from_pretrained("ebisuke/liz-nojaloli-ja", load_in_8bit=True, device_map='auto')

text = "相手は言いました。「眠いにゃ・・・」 \nあなたは言いました。「"
token_ids = tokenizer.encode(text, add_special_tokens=False, return_tensors="pt")

with torch.no_grad():
    output_ids = model.generate(
        input_ids=token_ids.to(model.device),
        max_new_tokens=1000,
        do_sample=True,
        temperature=0.7,
        pad_token_id=tokenizer.pad_token_id,
        bos_token_id=tokenizer.bos_token_id,
        eos_token_id=tokenizer.eos_token_id,
    )

output = tokenizer.decode(output_ids.tolist()[0])
print(output)

Plan

  • RLHFとかに挑戦してみる。→23/05/30ごく小さいデータセットで試行
  • プロンプトの記述方法を、既存のチャットモデルのフォーマットに合わせるか検討中。
  • 指示をあまり受け付けない・物を知らない方が好みのため、instructionモデルへ切り替える予定はありません。