Views
No views yet
1from transformers import AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig
2from peft import PeftModel
3import torch
4from tqdm import tqdm
5import json
6
7# Load model and tokenizer
8model_id = "yuhkis/llm-jp-3-13b-finetune"
9bnb_config = BitsAndBytesConfig(
10 load_in_4bit=True,
11 bnb_4bit_quant_type="nf4",
12 bnb_4bit_compute_dtype=torch.bfloat16,
13)
14
15model = AutoModelForCausalLM.from_pretrained(
16 model_id,
17 quantization_config=bnb_config,
18 device_map="auto",
19 token=HF_TOKEN
20)
21tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True, token=HF_TOKEN)
22
23# Generate outputs
24results = []
25for data in tqdm(datasets):
26 input = data["input"]
27 prompt = f"""### 指示
28 {input}
29 ### 回答
30 """
31
32 tokenized_input = tokenizer.encode(prompt, add_special_tokens=False, return_tensors="pt").to(model.device)
33 attention_mask = torch.ones_like(tokenized_input)
34
35 with torch.no_grad():
36 outputs = model.generate(
37 tokenized_input,
38 attention_mask=attention_mask,
39 max_new_tokens=100,
40 do_sample=False,
41 repetition_penalty=1.2,
42 pad_token_id=tokenizer.eos_token_id
43 )[0]
44 output = tokenizer.decode(outputs[tokenized_input.size(1):], skip_special_tokens=True)
45
46 results.append({"task_id": data["task_id"], "output": output})
47
48# Save results to JSONL file
49with open("results.jsonl", 'w', encoding='utf-8') as f:
50 for result in results:
51 json.dump(result, f, ensure_ascii=False)
52 f.write('\n'){"task_id": 0, "output": "応答テキスト"}
### Out-of-Scope Use
This model should not be used for:
- Commercial applications due to license restrictions
- Critical decision-making without human oversight
- Applications requiring strict reliability guarantees
## Bias, Risks, and Limitations
- The model inherits biases from its training data
- Output quality may vary depending on input complexity
- The model should not be used for making critical decisions without human oversight
### Recommendations
Users should be aware of the model's limitations and verify outputs when used in applications.
## Training Details
### Training Data
- Dataset: Ichikara Instruction Dataset
### Training Procedure
- **Training regime:** bf16 mixed precision
- **Library:** 🤗 Transformers
- **Optimization:** LoRA (Low-Rank Adaptation)
## Technical Specifications
### Model Architecture
- Base model: LLM-jp-3-13b
- Adaptation method: LoRA
## Citation
**BibTeX:**
```bibtex
@misc{shiraishi2024llm,
title={LLM-jp-3-13b-finetune: Instruction-tuned Japanese Language Model},
author={Yuhki Shiraishi},
year={2024},
publisher={Hugging Face},
howpublished={\url{https://huggingface.co/yuhkis/llm-jp-3-13b-finetune}}
}1@misc{llm-jp2024,
2 title={LLM-jp-3: Large Language Model for Japanese},
3 author={LLM-jp Project Team},
4 year={2024},
5 publisher={Hugging Face},
6 howpublished={\url{https://huggingface.co/llm-jp/llm-jp-3-13b}}
7}関根聡, 安藤まや, 後藤美知子, 鈴木久美, 河原大輔, 井之上直也, 乾健太郎.
ichikara-instruction: LLMのための日本語インストラクションデータの構築.
言語処理学会第30回年次大会(2024)