About the Model
LLama-2 7B is finetuned using SFT to generate summaries from conversations.
Useage with Transformers
from transformers import AutoTokenizer, AutoModelForCausalLM
import transformers
from peft import PeftModel
# Quantization config
bnb_config = BitsAndBytesConfig(
    load_in_4bit=True,
    bnb_4bit_quant_type="nf4",
    bnb_4bit_compute_dtype="float16",
)
model_name = "TinyPixel/Llama-2-7B-bf16-sharded"
# loading the model with quantization config
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    quantization_config=bnb_config,
    trust_remote_code=True,
    device_map='auto'
)
tokenizer = AutoTokenizer.from_pretrained(model_name, trust_remote_code=True , return_token_type_ids=False)
tokenizer.pad_token = tokenizer.eos_token
model = PeftModel.from_pretrained(model,"shenoy/DialogSumLlama2_qlora", device_map="auto")
text = """### Instruction: 
Write a concise summary of the below input text.Return your response in bullet points which covers the key points of the text. 
### Input: 
#Person1#: Ms. Dawson, I need you to take a dictation for me.
#Person2#: Yes, sir...
#Person1#: This should go out as an intra-office memorandum to all employees by this afternoon. Are you ready?
#Person2#: Yes, sir. Go ahead.
#Person1#: Attention all staff... Effective immediately, all office communications are restricted to email correspondence and official memos. The use of Instant Message programs by employees during working hours is strictly prohibited.
#Person2#: Sir, does this apply to intra-office communications only? Or will it also restrict external communications?
#Person1#: It should apply to all communications, not only in this office between employees, but also any outside communications.
#Person2#: But sir, many employees use Instant Messaging to communicate with their clients.
#Person1#: They will just have to change their communication methods. I don't want any - one using Instant Messaging in this office. It wastes too much time! Now, please continue with the memo. Where were we?
#Person2#: This applies to internal and external communications.
#Person1#: Yes. Any employee who persists in using Instant Messaging will first receive a warning and be placed on probation. At second offense, the employee will face termination. Any questions regarding this new policy may be directed to department heads.
#Person2#: Is that all?
#Person1#: Yes. Please get this memo typed up and distributed to all employees before 4 pm.
### Response :"""
inputs = tokenizer(text, return_tensors="pt")
outputs = model.generate(input_ids=inputs['input_ids'], attention_mask=inputs['attention_mask'], max_new_tokens=100 ,repetition_penalty=1.2)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
Training procedure
Training Configuration:
- per_device_train_batch_size: 4
- gradient_accumulation_steps: 4
- optim: "paged_adamw_8bit"
- learning_rate: 2e-4
- lr_scheduler_type: "linear"
- save_strategy: "epoch"
- logging_steps: 10
- num_train_epochs: 2
- max_steps: 50
- fp16: True
LORA Configuration:
- lora_alpha: 16
- lora_dropout: 0.05
- target_modules: ["q_proj", "v_proj"]
- r: 8
- bias: "none"
- task_type: "CAUSAL_LM"
The following bitsandbytes quantization config was used during training:
- load_in_8bit: False
- load_in_4bit: True
- llm_int8_threshold: 6.0
- llm_int8_skip_modules: None
- llm_int8_enable_fp32_cpu_offload: False
- llm_int8_has_fp16_weight: False
- bnb_4bit_quant_type: nf4
- bnb_4bit_use_double_quant: False
- bnb_4bit_compute_dtype: float16
Framework versions
- accelerate0.21.0
- peft0.4.0
- bitsandbytes0.40.2
- transformers4.30.2
- trl0.4.7
 
       
      