Views
No views yet
Qwen/Qwen2.5-7B-Instruct, specifically trained to act as a legal assistant for Bangladeshi law. It understands both Bengali and English, providing accurate guidance on various legal scenarios, laws, and constitutional matters in Bangladesh.Qwen/Qwen2.5-7B-Instruct) and then apply these LoRA adapters using peft and transformers.1import torch
2from transformers import AutoTokenizer, AutoModelForCausalLM, BitsAndBytesConfig
3from peft import PeftModel
4
5# Define models
6LORA_MODEL = "himu1780/ainbondhu-legal-lora"
7BASE_MODEL = "Qwen/Qwen2.5-7B-Instruct"
8
9# 4-bit Quantization Config (Great for free Colab T4 GPUs)
10bnb_config = BitsAndBytesConfig(
11 load_in_4bit=True,
12 bnb_4bit_quant_type="nf4",
13 bnb_4bit_use_double_quant=True,
14 bnb_4bit_compute_dtype=torch.float16,
15)
16
17# Load Tokenizer & Base Model
18tokenizer = AutoTokenizer.from_pretrained(BASE_MODEL)
19base_model = AutoModelForCausalLM.from_pretrained(
20 BASE_MODEL,
21 quantization_config=bnb_config,
22 device_map="auto",
23)
24
25# Apply AinBondhu LoRA Adapters
26model = PeftModel.from_pretrained(base_model, LORA_MODEL)
27model.eval()
28
29# Chat with AinBondhu
30prompt = "বাংলাদেশে সাইবার বুলিং এর শাস্তি কি? বিস্তারিত বল।"
31messages = [
32 {"role": "system", "content": "You are AinBondhu, a helpful legal AI assistant for Bangladesh."},
33 {"role": "user", "content": prompt},
34]
35
36text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
37inputs = tokenizer(text, return_tensors="pt").to(model.device)
38
39with torch.no_grad():
40 out = model.generate(
41 **inputs,
42 max_new_tokens=512,
43 temperature=0.2, # Keep low for factual accuracy
44 top_p=0.9,
45 pad_token_id=tokenizer.eos_token_id,
46 )
47
48print("AinBondhu says:
49" + tokenizer.decode(out[0][inputs['input_ids'].shape[1]:], skip_special_tokens=True))unsloth/qwen2.5-7b-instruct-bnb-4bit (Qwen 2.5 7B Instruct)unsloth and trl.