Uploaded model: yusukeurakami/llm-jp-3-13b-it

  • Developed by: yusukeurakami
  • Finetuned from model : llm-jp/llm-jp-3-13b

This llama model was trained 2x faster with Unsloth and Huggingface's TRL library.

概要

これはllm-jp/llm-jp-3-13bをファインチューニングしたモデルです。

松尾研大規模言語モデル講座2024のコンペ用の提出モデル作成の一環として作成・公開しています。

推論方法

松尾研大規模言語モデル講座2024のコンペのタスクの推論方法を以下に記載します。

  1. 環境に以下のパッケージをインストールしますして推論の準備をします。
pip install unsloth
pip uninstall unsloth -y && pip install --upgrade --no-cache-dir "unsloth[colab-new] @ git+https://github.com/unslothai/unsloth.git"
  1. 以下のようなPythonファイルをelyza_tasks_100_tv.pyとして作成します。また、elyza-tasks-100-TV_0.jsonlを同じディレクトリに配置します。
from unsloth import FastLanguageModel
import torch
import json
from tqdm import tqdm

model_name = "yusukeurakami/llm-jp-3-13b-it"
max_seq_length = 2048
dtype = None
load_in_4bit = True

model, tokenizer = FastLanguageModel.from_pretrained(
    model_name = model_name,
    max_seq_length = max_seq_length,
    dtype = dtype,
    load_in_4bit = load_in_4bit,
    token = "HF token",
)
FastLanguageModel.for_inference(model)

# データセットの読み込み。
# omnicampusの開発環境では、左にタスクのjsonlをドラッグアンドドロップしてから実行。
datasets = []
with open("./elyza-tasks-100-TV_0.jsonl", "r") as f:
    item = ""
    for line in f:
      line = line.strip()
      item += line
      if item.endswith("}"):
        datasets.append(json.loads(item))
        item = ""

# 推論
results = []
for dt in tqdm(datasets):
  input = dt["input"]

  prompt = f"""### 指示\n{input}\n### 回答\n"""

  inputs = tokenizer([prompt], return_tensors = "pt").to(model.device)

  outputs = model.generate(**inputs, max_new_tokens = 512, use_cache = True, do_sample=False, repetition_penalty=1.2)
  prediction = tokenizer.decode(outputs[0], skip_special_tokens=True).split('\n### 回答')[-1]

  results.append({"task_id": dt["task_id"], "input": input, "output": prediction})

# outputを保存
with open(f"./output.jsonl", 'w', encoding='utf-8') as f:
    for result in results:
        json.dump(result, f, ensure_ascii=False)
        f.write('\n')
  1. 以下のように推論を実行します。推論が完了するとデフォルトでは実行ファイルと同じディレクトリのoutput.jsonlに回答が保存されます。
python elyza_tasks_100_tv.py
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model is not currently available via any of the supported Inference Providers.
The model cannot be deployed to the HF Inference API: The model has no pipeline_tag.

Model tree for yusukeurakami/llm-jp-3-13b-it

Finetuned
(1122)
this model