Views
No views yet
1from datasets import load_dataset
2
3# データセットの読み込み
4dataset = load_dataset("json", data_files="./evol_alpaca_dataset.json")
5
6# プロンプトフォーマットの定義と適用
7prompt = """### 指示\n{}\n### 回答\n{}"""
8def formatting_prompts_func(examples):
9 instruction = examples["instruction"]
10 if examples.get("input"):
11 instruction = f"{instruction}\n{examples['input']}"
12 text = prompt.format(instruction, examples["output"]) + EOS_TOKEN
13 return {"formatted_text": text}
14
15# データセットにフォーマットを適用
16dataset = dataset.map(
17 formatting_prompts_func,
18 num_proc=4
19)1import torch
2from unsloth import FastLanguageModel
3from tqdm import tqdm1max_seq_length = 512
2model, tokenizer = FastLanguageModel.from_pretrained(
3 model_name="[YOUR_USERNAME]/llm-jp-3-13b-it-b01-conservative_lora",
4 dtype=None,
5 load_in_4bit=True,
6 trust_remote_code=True,
7)
8
9FastLanguageModel.for_inference(model)1import json
2datasets = []
3with open("elyza-tasks-100-TV_0.jsonl", "r") as f:
4 item = ""
5 for line in f:
6 line = line.strip()
7 item += line
8 if item.endswith("}"):
9 datasets.append(json.loads(item))
10 item = ""
11
12results = []
13for dt in tqdm(datasets):
14 input = dt["input"]
15 prompt = f"""### 指示\n{input}\n### 回答\n"""
16
17 inputs = tokenizer([prompt], return_tensors="pt").to(model.device)
18 outputs = model.generate(
19 **inputs,
20 max_new_tokens=512,
21 use_cache=True,
22 do_sample=False,
23 repetition_penalty=1.2
24 )
25 prediction = tokenizer.decode(outputs[0], skip_special_tokens=True).split('\n### 回答')[-1]
26
27 results.append({
28 "task_id": dt["task_id"],
29 "input": input,
30 "output": prediction
31 })
32
33with open("llm-jp-3-13b-it-b01-conservative_output.jsonl", 'w', encoding='utf-8') as f:
34 for result in results:
35 json.dump(result, f, ensure_ascii=False)
36 f.write('\n')1@misc{llm-jp-3-13b-it-b01-conservative,
2 author = {[YOUR_NAME]},
3 title = {llm-jp-3-13b-it-b01-conservative: Instruction-tuned LLM-JP-3-13B},
4 year = {2024},
5 publisher = {Hugging Face},
6 journal = {Hugging Face Hub},
7 howpublished = {\url{https://huggingface.co/[YOUR_USERNAME]/llm-jp-3-13b-it-b01-conservative_lora}},
8}