Model Card for Model ID
Model Details
Final competition report for weblab.t.u-tokyo.ac.jp/lecture/course-list/large-language-model/ Using finetuning and some other methods to have better result for elyza-tasks-100-TV_0 With the optimization Technolkogy of Quantamize, PEFT.
Model Description
https://drive.google.com/drive/folders/1TcEpKngy72fbxXcu4VxoVUbPfvg8Z1z0
This is the model card of a 🤗 transformers model that has been pushed on the Hub. This model card has been automatically generated.
- **Developed by:Yohei.KObayashi with modification by Hiroshi Hayashi
- Funded by [optional]: [More Information Needed]
- Shared by [optional]: [More Information Needed]
- **Model type: llm-jp/llm-jp
- **Language(s) (NLP): Japanese
- **License: CC-BY-NC-SA
- **Finetuned from model [optional]:Quantamize, PEFT
Model Sources [optional]
llm-jp-3 1.8B, 3.7B, 13B
- **Repository:-- [More Information Needed]
- Paper [optional]: [More Information Needed]
- Demo [optional]: [More Information Needed]
Uses
Learn and get experience to use fine tuning technology and learn how to inplement such fine tuning technologies
Direct Use
No intension to be used with such case
Downstream Use [optional]
[More Information Needed]
Out-of-Scope Use
This code is only for students and trainee fo AI implementation. Not fully tested for the actual project use case
Bias, Risks, and Limitations
This program and updated file is generated by the code by Yohei Kobayashi for training coase by Matsuo-lab @ Tokyo university. https://weblab.t.u-tokyo.ac.jp/lecture/course-list/large-language-model/ Please contact Matsuo-Lab if you plan to use this code and any files related to this project.
Recommendations
Any students who tries using LLM, this is very useful to understand and get started fromthe perspective of academic perpose
Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations.
How to Get Started with the Model
Use the code below to get started with the model.
from transformers import ( AutoModelForCausalLM, AutoTokenizer, BitsAndBytesConfig, ) from peft import PeftModel import torch from tqdm import tqdm import json
HF_TOKEN = "Hugging Face Token"
model_id = "" # < Model folder path adapter_id = "" # Hugging Face ID
QLoRA config
bnb_config = BitsAndBytesConfig( load_in_4bit=True, bnb_4bit_quant_type="nf4", bnb_4bit_compute_dtype=torch.bfloat16, )
Load model
model = AutoModelForCausalLM.from_pretrained( model_id, quantization_config=bnb_config, device_map="auto", token = HF_TOKEN )
Load tokenizer
tokenizer = AutoTokenizer.from_pretrained(model_id, trust_remote_code=True, token = HF_TOKEN)
model = PeftModel.from_pretrained(model, adapter_id, token = HF_TOKEN)
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 data in tqdm(datasets):
input = data["input"] prompt = f"""### Direction {input}
Answers
"""
input_ids = tokenizer(prompt, return_tensors="pt").to(model.device) 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, "output": output})
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) attention_mask = torch.ones_like(tokenized_input) with torch.no_grad(): outputs = model.generate( tokenized_input, attention_mask=attention_mask, max_new_tokens=100, do_sample=False, repetition_penalty=1.2, pad_token_id=tokenizer.eos_token_id )[0] output = tokenizer.decode(outputs[tokenized_input.size(1):], skip_special_tokens=True)
results.append({"task_id": data["task_id"], "input": input, "output": output})
import re jsonl_id = re.sub(".*/", "", adapter_id) with open(f"./{jsonl_id}-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')
Training Details
Used "Ichikara Instruction" ichikara-instruction-003-001-1.json
Training Data
https://liat-aip.sakura.ne.jp/wp/llmのための日本語インストラクションデータ作成/llmのための日本語インストラクションデータ-公開/
Training Procedure
PEFT LoRA rank : 16 Scaling factor : lora_alpha 32 Dropout ratio : 0.05 No Bias
Preprocessing [optional]
[More Information Needed]
Training Hyperparameters
Speeds, Sizes, Times [optional]
36:53 864/864 Epoch 0/1
Evaluation
elyza-tasks-100-TV_0.jsonl
Testing Data, Factors & Metrics
elyza-tasks-100 with latest TV and TV show related information
Testing Data
[More Information Needed]
Factors
[More Information Needed]
Metrics
accuracy with limiteation of model execution time
[More Information Needed]
Results
[More Information Needed]
Summary
Model Examination [optional]
[More Information Needed]
Environmental Impact
CPU memory : 48GB GPU: L4 (24G)
Carbon emissions can be estimated using the Machine Learning Impact calculator presented in Lacoste et al. (2019).
- Hardware Type: [More Information Needed]
- Hours used: [More Information Needed]
- Cloud Provider: [More Information Needed]
- Compute Region: [More Information Needed]
- Carbon Emitted: [More Information Needed]
Technical Specifications [optional]
Model Architecture and Objective
[More Information Needed]
Compute Infrastructure
[More Information Needed]
Hardware
[More Information Needed]
Software
Python 3.10.6
Citation [optional]
BibTeX:
[More Information Needed]
APA:
[More Information Needed]
Glossary [optional]
[More Information Needed]
More Information [optional]
[More Information Needed]
Model Card Authors [optional]
[More Information Needed]
Model Card Contact
[More Information Needed]
Model tree for PonsukeUrayama/llm-jp-3-13b-finetune
Base model
llm-jp/llm-jp-3-13b