Intended use:

This model is a LORA fine-tuned version based on the ShoAnn/legalqa_klinik_hukumonline dataset, specifically designed for use in RAFT. You need to integrate this model into your own retrieval system for the context input.

How To Use

pip install torch transformers accelerate unsloth
from transformers import AutoTokenizer, AutoModelForCausalLM, LogitsProcessor
from unsloth import FastLanguageModel
import torch
import re
from IPython.display import Markdown, display

# Load model and tokenizer (no Unsloth)
model_path = "avisena/legalqa-llama3-1b-klinik-hukumonline-16bit"
tokenizer = AutoTokenizer.from_pretrained(model_path)
# Ensure the model is loaded to the correct device as well
model, tokenizer = FastLanguageModel.from_pretrained(
    model_name = model_path, # Load from the saved path
    max_seq_length = 2048,
    load_in_4bit = False,
    load_in_8bit = False,
    full_finetuning = False,
)

# Ensure the model is on the correct device
model.to("cuda")

# EOS bias processor to encourage stopping
class EOSBiasProcessor(LogitsProcessor):
    def __init__(self, eos_token_id, bias=6.54):
        self.eos_token_id = eos_token_id
        self.bias = bias

    def __call__(self, input_ids, scores):
        scores[:, self.eos_token_id] += self.bias
        return scores


# Sample question
question = "Kini banyak content creator yang nekat buat video di tengah jalan atau sekedar foto di tengah jalan hingga mengganggu lalu lintas dan membahayakan keselamatan pengguna jalan. Adakah hukumnya mereka yang buat video konten di jalan?"

# Context from RAG system
context = [
  {
    "full_text": "Setiap orang yang melakukan perbuatan yang mengakibatkan gangguan pada fungsi jalan, sebagaimana dimaksud dalam Pasal 28 ayat (1), dipidana dengan pidana penjara paling lama 1 (satu) tahun atau denda paling banyak Rp24.000.000,00 (dua puluh empat juta rupiah).",
    "name": "Pasal 63 ayat (6) Undang-Undang Nomor 22 Tahun 2009 tentang Lalu Lintas dan Angkutan Jalan"
  },
  {
    "full_text": "Setiap orang dilarang melakukan perbuatan yang mengakibatkan kerusakan dan/atau gangguan fungsi jalan.",
    "name": "Pasal 28 ayat (1) Undang-Undang Nomor 22 Tahun 2009 tentang Lalu Lintas dan Angkutan Jalan"
  },
  {
    "full_text": "Setiap orang dilarang melakukan perbuatan yang membahayakan keamanan, keselamatan, ketertiban, dan kelancaran lalu lintas dan angkutan jalan.",
    "name": "Pasal 115 huruf a Undang-Undang Nomor 22 Tahun 2009 tentang Lalu Lintas dan Angkutan Jalan"
  },
  {
    "full_text": "Barang siapa dengan sengaja menimbulkan bahaya bagi lalu lintas umum di jalan, dipidana dengan pidana penjara paling lama satu tahun empat bulan atau pidana denda.",
    "name": "Pasal 274 Kitab Undang-Undang Hukum Pidana (KUHP)"
  }
]

# Prepare prompt
prompt = f"""### Question:\n{question}\n\n### Context:\n{context}"""

#Reduce the bias value for longer output
eos_bias_processor = EOSBiasProcessor(tokenizer.convert_tokens_to_ids("<|eot_id|>"), bias=6.54)

# Tokenize
inputs = tokenizer(prompt, return_tensors="pt")
inputs = {k: v.to("cuda") for k, v in inputs.items()}

# Generate
with torch.no_grad():
    outputs = model.generate(
        **inputs,
        max_new_tokens=2200,
        do_sample=True,
        temperature=0.4,
        top_k=22,
        top_p=0.95,
        no_repeat_ngram_size=9,
        repetition_penalty=1.1,
        early_stopping=True,
        eos_token_id=tokenizer.convert_tokens_to_ids("<|eot_id|>"),
        logits_processor=[eos_bias_processor],
    )

# Decode and extract answer
decoded_output = tokenizer.decode(outputs[0], skip_special_tokens=True)
match = re.search(r"### Answer:\s*(.*)", decoded_output, re.DOTALL)
answer = match.group(1).strip() if match else "❌ No answer found."

# Show in Markdown
display(Markdown(f"### 🧾 Extracted Answer:\n\n{answer}"))

Uploaded finetuned model

  • Developed by: avisena
  • License: apache-2.0
  • Finetuned from model : unsloth/Llama-3.2-1B-Instruct

This llama model was trained 2x faster with Unsloth and Huggingface's TRL library.

Downloads last month
8
Safetensors
Model size
1.24B params
Tensor type
BF16
·
F16
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Dataset used to train avisena/legalqa-llama3-1b-klinik-hukumonline-16bit