38 lines
1.5 KiB
Markdown
38 lines
1.5 KiB
Markdown
---
|
|
license: apache-2.0
|
|
language:
|
|
- en
|
|
base_model: thesreedath/slm-125m-base
|
|
pipeline_tag: text-generation
|
|
library_name: transformers
|
|
tags:
|
|
- legal
|
|
- finance
|
|
- instruction-tuned
|
|
- slm
|
|
---
|
|
|
|
# slm-125m-legal-instruct
|
|
|
|
A 125M-parameter Llama-architecture small language model, instruction-tuned for
|
|
grounded legal & financial question answering.
|
|
|
|
- **Base:** [thesreedath/slm-125m-base](https://huggingface.co/thesreedath/slm-125m-base) (125M, pretrained on legal/financial + web text, 10 epochs)
|
|
- **Fine-tuning:** SFT on ~7,760 RAFT-style grounded Q&A pairs across 4 task types
|
|
(grounded QA, summarization, extraction, rewriting), synthesized with Gemini and
|
|
quality-filtered (LLM judge + embedding dedup).
|
|
- **Chat format:** `<|system|>` / `<|user|>` / `<|assistant|>`; terminate with `<|eos|>` (id 1).
|
|
- **Context length:** 1024 tokens. Answer-only loss (context + question -> answer).
|
|
|
|
## Usage
|
|
```python
|
|
from transformers import AutoModelForCausalLM, AutoTokenizer
|
|
tok = AutoTokenizer.from_pretrained("Ashish-Ranjan/slm-125m-legal-instruct")
|
|
model = AutoModelForCausalLM.from_pretrained("Ashish-Ranjan/slm-125m-legal-instruct")
|
|
sys = "You are a helpful legal and financial assistant. Answer using only the provided context."
|
|
prompt = "<|system|>" + sys + "<|user|>" + context + "\n\n" + question + "<|assistant|>"
|
|
ids = tok(prompt, return_tensors="pt").input_ids
|
|
out = model.generate(ids, max_new_tokens=200, do_sample=True, temperature=0.7, eos_token_id=1)
|
|
print(tok.decode(out[0][ids.shape[1]:], skip_special_tokens=True))
|
|
```
|