File size: 2,818 Bytes
48ae0e9 573a2de e2bfc23 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 468e11c 48ae0e9 573a2de |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 |
---
license: mit
datasets:
- virattt/financial-qa-10K
language:
- en
metrics:
- accuracy
base_model:
- EleutherAI/pythia-410m
pipeline_tag: text-generation
tags:
- finance
---
---
--
## Model Details
### Model Descriptio
- **Developed by:** [Haq Nawaz Malik]
- **Model type:** [Lora_adapter]
- **Language(s) (NLP):** [Text_gen_for_financial_purposes]
- **Finetuned from model :** [EleutherAI/pythia-410m]
]
### Direct Use
```
from transformers import AutoTokenizer, AutoModelForCausalLM
from peft import PeftModel
import torch
# Load tokenizer
tokenizer = AutoTokenizer.from_pretrained("EleutherAI/pythia-410m")
tokenizer.pad_token = tokenizer.eos_token
# Load base model
base_model = AutoModelForCausalLM.from_pretrained("EleutherAI/pythia-410m").eval().to("cuda" if torch.cuda.is_available() else "cpu")
# Load LoRA fine-tuned adapter from Hugging Face Hub
lora_model = PeftModel.from_pretrained(
base_model,
"Omarrran/pythia-financial-lora"
).eval().to(base_model.device)
# Define prompt
prompt = "### Instruction:\n What are Tesla's main risk factors?\n\n### Response:\n"
inputs = tokenizer(prompt, return_tensors="pt").to(base_model.device)
# Generate from base model
with torch.no_grad():
base_output = base_model.generate(
**inputs,
max_new_tokens=1000,
do_sample=True,
temperature=0.7,
top_p=0.95,
repetition_penalty=1.1,
eos_token_id=tokenizer.eos_token_id
)
# Generate from fine-tuned model
with torch.no_grad():
lora_output = lora_model.generate(
**inputs,
max_new_tokens=1000,
do_sample=True,
temperature=0.7,
top_p=0.95,
repetition_penalty=1.1,
eos_token_id=tokenizer.eos_token_id
)
# Decode responses
base_text = tokenizer.decode(base_output[0], skip_special_tokens=True)
lora_text = tokenizer.decode(lora_output[0], skip_special_tokens=True)
# Clean output (remove prompt part)
base_response = base_text.split("### Response:")[-1].strip()
lora_response = lora_text.split("### Response:")[-1].strip()
# Display both outputs
print("\n" + "="*80)
print("๐ BEFORE Fine-Tuning (Base Pythia Model)")
print("="*80)
print(format_response(base_response))
print("\n" + "="*80)
print("๐ AFTER Fine-Tuning (LoRA Adapter from Hugging Face)")
print("="*1180)
print(format_response(lora_response))
```

<!-- These are the evaluation metrics being used, ideally with a description of why. -->

 |