Uploaded model

  • Developed by: yusuke0505
  • License: apache-2.0
  • Finetuned from model : llm-jp/llm-jp-3-13b

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

#Sample Use !pip install -U bitsandbytes !pip install -U transformers !pip install -U accelerate !pip install -U datasets

!pip install ipywidgets --upgrade

from transformers import ( AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig, ) import torch from tqdm import tqdm import json

Hugging Faceで取得したTokenをこちらに貼る。

HF_TOKEN = "your-token"

自分の作成したモデルのIDをこちらに貼る。

model_name = "yusuke0505/llm-jp-3-13b-it"

QLoRA config

bnb_config = BitsAndBytesConfig( load_in_4bit=True, bnb_4bit_quant_type="nf4", bnb_4bit_compute_dtype=torch.bfloat16, bnb_4bit_use_double_quant=False, )

from transformers import AutoModelForCausalLM, AutoTokenizer

モデル名を指定

model_name = "yusuke0505/llm-jp-3-13b-it"

量子化設定(例として4ビット量子化)

bnb_config = { "load_in_4bit": True # 必要に応じて変更 }

モデルをロード

model = AutoModelForCausalLM.from_pretrained( model_name, quantization_config=bnb_config, device_map="auto", use_auth_token="your-token" # Hugging Faceトークンを指定(必要な場合) )

トークナイザをロード

tokenizer = AutoTokenizer.from_pretrained( model_name, use_auth_token="your-token" )

import json # 必要なモジュールをインポート

データセットの読み込み。

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 = ""

from tqdm import tqdm

gemma

results = [] for data in tqdm(datasets):

input_text = data["input"]
prompt = f"""### 指示

{input_text}

回答:

"""

# トークナイズ処理
input_ids = tokenizer(prompt, return_tensors="pt").to(model.device)
input_ids.pop("token_type_ids", None)  # GPT系モデルでは不要な "token_type_ids" を削除

# モデルでテキスト生成
outputs = model.generate(
    **input_ids,
    max_new_tokens=512,
    do_sample=False,
    repetition_penalty=1.2,
)

# 出力をデコード
output = tokenizer.decode(
    outputs[0][input_ids["input_ids"].size(1):], skip_special_tokens=True
)

# 結果をリストに追加
results.append({"task_id": data["task_id"], "input": input_text, "output": output})

結果を確認(オプション)

print(results)

import torch # torchをインポート from tqdm import tqdm # tqdmをインポート(プログレスバー用)

llmjp

results = [] for data in tqdm(datasets):

input = data["input"]

prompt = f"""### 指示 {input}

回答:

"""

tokenized_input = tokenizer.encode(prompt, add_special_tokens=False, return_tensors="pt").to(model.device) with torch.no_grad(): outputs = model.generate( tokenized_input, max_new_tokens=100, do_sample=False, repetition_penalty=1.2 )[0] output = tokenizer.decode(outputs[tokenized_input.size(1):], skip_special_tokens=True)

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

jsolの生成

import re model_name = re.sub(".*/", "", model_name) with open(f"./{model_name}-outputs.jsonl", 'w', encoding='utf-8') as f: for result in results: json.dump(result, f, ensure_ascii=False) # ensure_ascii=False for handling non-ASCII characters f.write('\n')

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 yusuke0505/llm-jp-3-13b-it

Finetuned
(1124)
this model