--- license: apache-2.0 language: - id - en tags: - text-generation - indonesian - lfm2.5 - liquid - fine-tuned - sft - instruction-tuning - closed-qa - reasoning pipeline_tag: text-generation base_model: OpenPathAI/Orbit-3-Nano datasets: - Irza/Dodol-15k-Indonesia --- # Orbit-3.2-Nano **Model Bahasa Indonesia berbasis LFM2.5 yang di-fine-tune untuk pemahaman konteks dan tanya jawab (closed QA).** --- ## Ringkasan Orbit-3.2-Nano adalah iterasi terbaru dari seri **Orbit-Nano** yang dikembangkan oleh **OpenPathAI**. Model ini dibangun di atas **Orbit-3-Nano** (yang merupakan turunan dari LFM2.5-2.6B) dan di-fine-tune menggunakan dataset **Dodol-15k-Indonesia** dataset closed QA Bahasa Indonesia dengan konteks. Model ini dirancang untuk: - Menjawab pertanyaan berdasarkan **konteks** yang diberikan - Memahami instruksi Bahasa Indonesia dengan baik - Menjawab pertanyaan faktual secara akurat berdasarkan dokumen - Membantu tugas **question answering** berbasis dokumen --- ## Spesifikasi Model | Komponen | Detail | |-----------|---------| | **Arsitektur** | Lfm2ForCausalLM | | **Model Type** | lfm2 | | **Hidden Size** | 2048 | | **Jumlah Layer** | 30 | | **Jumlah Attention Heads** | 32 | | **Vocab Size** | 128.000 | | **Max Position** | 131.072 token | | **Total Parameter** | ~2,6 Miliar | | **Bahasa** | Indonesia, Inggris | ### Arsitektur Hybrid LFM2.5 LFM2.5 menggunakan arsitektur **hybrid**: - **Short-Conv (LIV) layers** — efisiensi komputasi - **GQA (Grouped Query Attention) layers** — penalaran --- ## Base Model Model ini adalah versi **fine-tuned** dari: | Aspek | Detail | |-------|--------| | **Base Model** | [OpenPathAI/Orbit-3-Nano](https://huggingface.co/OpenPathAI/Orbit-3-Nano) | | **Model Asal** | [LiquidAI/LFM2.5-2.6B](https://huggingface.co/LiquidAI/LFM2.5-2.6B) | | **Pengembang Asal** | Liquid AI | | **Lisensi Base** | LFM Open License v1.0 | --- ## Detail Fine-Tuning | Parameter | Nilai | |-----------|-------| | **Dataset** | Irza/Dodol-15k-Indonesia | | **Jumlah Samples** | ~14.800 pasangan instruksi-konteks-respons | | **Metode** | SFT (Supervised Fine-Tuning) dengan QLoRA | | **LoRA Rank (r)** | 16 | | **LoRA Alpha** | 32 | | **LoRA Dropout** | 0,05 | | **Target Modules** | q_proj, k_proj, v_proj, o_proj, gate_proj, up_proj, down_proj | | **Epoch** | 3 | | **Learning Rate** | 2e-4 | | **Precision** | BF16 | --- ## Format Dataset Dataset **Dodol-15k-Indonesia** memiliki struktur: | Kolom | Deskripsi | |-------|-----------| | `instruction` | Pertanyaan yang harus dijawab | | `context` | Konteks/dokumen yang berisi jawaban | | `response` | Jawaban yang benar | | `category` | Kategori pertanyaan (closed_qa, dll) | Model dilatih dengan format: ``` Konteks: [context] Pertanyaan: [instruction] Jawaban: [response] ``` --- ## Cara Penggunaan ### Instalasi ```python !pip install -q --upgrade transformers>=5.2.0 torch accelerate huggingface_hub !pip uninstall -y torchvision torchaudio print("=" * 60) print("SETELAH INSTALL SELESAI:") print("1. Klik Runtime → Restart Session") print("2. Jalankan cell berikutnya") print("=" * 60) ``` Penggunaan Dasar ```python import os import torch import transformers from transformers import AutoModelForCausalLM, AutoTokenizer print(f"transformers: {transformers.__version__}") print(f"torch: {torch.__version__}") HF_TOKEN = "TOKEN_HF" MODEL_NAME = "OpenPathAI/Orbit-3.2-Nano" os.environ["HUGGING_FACE_HUB_TOKEN"] = HF_TOKEN os.environ["HF_TOKEN"] = HF_TOKEN print("\nLoading tokenizer...") tokenizer = AutoTokenizer.from_pretrained(MODEL_NAME, token=HF_TOKEN) print("✅ Tokenizer loaded!") print("Loading model...") model = AutoModelForCausalLM.from_pretrained( MODEL_NAME, torch_dtype=torch.float16, device_map="auto", token=HF_TOKEN, ) model.eval() print("✅ Model loaded!") def chat(pertanyaan, max_new_tokens=512, temperature=0.7): """Fungsi chat untuk transformers v5.""" messages = [{"role": "user", "content": pertanyaan}] inputs = tokenizer.apply_chat_template( messages, add_generation_prompt=True, return_tensors="pt", return_dict=True, ).to(model.device) with torch.no_grad(): outputs = model.generate( **inputs, max_new_tokens=max_new_tokens, temperature=temperature, top_p=0.9, do_sample=True, pad_token_id=tokenizer.eos_token_id, ) response = tokenizer.decode( outputs[0][inputs["input_ids"].shape[1]:], skip_special_tokens=True ) return response.strip() pertanyaan = "halo, kamu bisa bantu aku gak?" print("\n" + "=" * 60) print(f"📝 Pertanyaan: {pertanyaan}") print("=" * 60) print("🤖 Jawaban dari Orbit-3-Nano:") print(chat(pertanyaan)) print("=" * 60) ``` --- Keterbatasan Keterbatasan Deskripsi Ukuran Model 2,6B parameter kapasitas terbatas Akurasi Mungkin menghasilkan informasi yang tidak akurat Konteks Maksimal 131.072 token Reasoning Terbatas untuk tugas kompleks Model ini BUKAN untuk: - Keputusan medis, hukum, atau keuangan - Aplikasi produksi tanpa pengawasan - Tugas yang butuh akurasi tinggi --- Lisensi Model ini mengikuti LFM Open License v1.0. Ketentuan penting: - Bebas digunakan untuk penelitian dan pengembangan - Bebas dimodifikasi dan didistribusikan - Penggunaan komersial gratis hanya untuk entitas dengan pendapatan tahunan di bawah $10 juta USD - Jika pendapatan melebihi ambang batas, diperlukan lisensi komersial terpisah dari Liquid AI --- Atribusi Model ini dikembangkan oleh OpenPathAI sebagai turunan dari: - Base Model: OpenPathAI/Orbit-3-Nano - Model Asal: LiquidAI/LFM2.5-2.6B - Dataset: Irza/Dodol-15k-Indonesia --- Sitasi ```bibtex @misc{orbit-3-2-nano, author = {OpenPathAI}, title = {Orbit-3.2-Nano: Fine-tuned LFM2.5 for Indonesian Closed QA}, year = {2026}, publisher = {Hugging Face}, howpublished = {\url{https://huggingface.co/OpenPathAI/Orbit-3.2-Nano}}, note = {Fine-tuned from OpenPathAI/Orbit-3-Nano} } ``` --- Kontak - Website Details : https://openpath.web.id - Hugging Face OpenPathAI : https://huggingface.co/OpenPathAI - Email : Coming Soon - Discord : https://discord.gg/Qp3NyrVFjg - Base Model OpenPathAI/Orbit-3.2-Nano --- Dikembangkan oleh OpenPathAI Model ini adalah turunan dari LFM2.5-2.6B. Penggunaan tunduk pada LFM Open License v1.0.