fine-tuned-model-indonesian-2 is an enhanced version (v2) of the Indonesian Language Model based on Llama-3.1-8B, fine-tuned using Unsloth and Hugging Face's TRL library. This model offers improved conversational alignment, better handling of complex Indonesian sentence structures, and higher retrieval accuracy for Legal AI RAG (Retrieval-Augmented Generation) applications.
| Attribute | Details |
|---|---|
| Developer | hendrimardani |
| Base Model | unsloth/Llama-3.1-8B-unsloth-bnb-4bit |
| Fine-Tuning Method | SFT (Supervised Fine-Tuning v2) + PEFT/LoRA |
| Target Language | Indonesian (id) |
| License | Apache 2.0 |
| Pipeline Tag | text-generation / Conversational & RAG |
| Max Sequence Length | 2048 tokens |
To maintain optimal consistency and prevent language degradation, use the following generation parameters:
| Parameter | Recommended Value | Explanation |
|---|---|---|
do_sample |
True |
Enables token sampling for natural generation |
temperature |
0.3 |
Keeps responses deterministic and grounded in provided facts |
repetition_penalty |
1.15 |
Suppresses looping text without compromising legal terms |
max_new_tokens |
1024 |
Ensures adequate token budget for detailed responses |
transformersimport torch
from transformers import AutoTokenizer, AutoModelForCausalLM
model_id = "hendrimardani/fine-tuned-model-indonesian-2"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id,
device_map="auto",
torch_dtype=torch.bfloat16,
load_in_4bit=True
)
messages = [
{
"role": "system",
"content": "Anda adalah asisten AI profesional yang membantu menjawab pertanyaan hukum dan analisis dokumen dalam Bahasa Indonesia secara akurat dan lugas."
},
{
"role": "user",
"content": "Jelaskan prosedur pendaftaran perjanjian kerja waktu tertentu (PKWT) menurut peraturan ketenagakerjaan di Indonesia."
}
]
prompt = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
outputs = model.generate(
**inputs,
max_new_tokens=512,
do_sample=True,
temperature=0.3,
repetition_penalty=1.15,
eos_token_id=tokenizer.eos_token_id,
pad_token_id=tokenizer.pad_token_id if tokenizer.pad_token_id is not None else tokenizer.eos_token_id
)
response = tokenizer.decode(outputs[0][inputs["input_ids"].shape[-1]:], skip_special_tokens=True)
print(response)
from transformers import pipeline
from langchain_community.llms import HuggingFacePipeline
text_generation_pipeline = pipeline(
task="text-generation",
model=model,
tokenizer=tokenizer,
max_new_tokens=1024,
do_sample=True,
temperature=0.3,
repetition_penalty=1.15,
return_full_text=False,
eos_token_id=tokenizer.eos_token_id,
pad_token_id=tokenizer.pad_token_id if tokenizer.pad_token_id is not None else tokenizer.eos_token_id
)
llm = HuggingFacePipeline(pipeline=text_generation_pipeline)
Berdasarkan PP No. 35 Tahun 2021, pencatatan Perjanjian Kerja Waktu Tertentu (PKWT) dilakukan dengan ketentuan berikut:
1. Pengusaha wajib mencatatkan PKWT kepada kementerian yang menyelenggarakan urusan pemerintahan di bidang ketenagakerjaan.
2. Pencatatan dilakukan secara daring (online) paling lama 7 (tujuh) hari kerja sejak penandatanganan PKWT.
3. Apabila sistem pencatatan secara daring belum tersedia, pencatatan dilakukan secara tertulis di dinas ketenagakerjaan setempat.
This model is intended for informational assistance and document analysis. Generated content does not constitute formal legal advice. Users should verify any output against primary statutory legal sources.
model-00002-of-00004.safetensors 5.0 GBmodel-00001-of-00004.safetensors 5.0 GBmodel-00003-of-00004.safetensors 4.9 GBmodel-00004-of-00004.safetensors 1.2 GBadapter_model.safetensors 168 MBlast-checkpoint/adapter_model.safetensors 168 MBlast-checkpoint/optimizer.pt 87 MBlast-checkpoint/rng_state.pth 14.6 kBlast-checkpoint/training_args.bin 6.5 kBtraining_args.bin 6.5 kBlast-checkpoint/scheduler.pt 1.5 kBlast-checkpoint/scaler.pt 1.4 kBunsloth/Llama-3.1-8B-unsloth-bnb-4bitHave the files? Submit a torrent.
Submit a torrentHave the complete files and permission to share them? Replace the example folder path. The script checks the files, makes a torrent and submits its magnet and checksums. Keep your torrent client seeding. Get your community key from your settings, and read the script before running it.
curl -fsSL https://pirateface.co/package.sh | bash -s -- --repo hendrimardani/fine-tuned-model-indonesian-2 ./model-folder