hzlo0 commited on
Commit
1bf64ae
·
verified ·
1 Parent(s): 352f041

Upload README.md with huggingface_hub

Browse files
Files changed (1) hide show
  1. README.md +94 -79
README.md CHANGED
@@ -1,6 +1,5 @@
1
  ---
2
  license: gemma
3
- library_name: transformers
4
  tags:
5
  - gguf
6
  - gemma
@@ -15,108 +14,124 @@ language:
15
 
16
  # Lilo Cyber
17
 
18
- Model bahasa Indonesia untuk **keamanan siber, pemrograman, dan analisis teknis**.
19
- Fine-tune dari `google/gemma-3-4b-it` (arsitektur gemma2) memakai dataset
20
- [`zelapi/lilo-cyber`](https://huggingface.co/datasets/zelapi/lilo-cyber), lalu di-merge ke
21
- bf16 dan dikuantisasi ke **GGUF Q4_K_M** — ringan untuk inferensi CPU.
22
 
23
- ## Spesifikasi
24
 
25
- | Item | Nilai |
26
- |---|---|
27
- | Base | `google/gemma-3-4b-it` (gated, manual approval) |
28
- | Adaptor | LoRA r=32, alpha=64, dropout=0.05, target `q,k,v,o,gate,up,down` |
29
- | Trainable params | 65.6M (1.50%) |
30
- | Presisi training | 4-bit NF4 QLoRA (bf16 compute), GPU T4 |
31
- | Sequence length | 384, batch 1, grad-accum 8, lr 2e-4 (OneCycle, cosine) |
32
- | Data | 10.163 train / 207 val dari `zelapi/lilo-cyber` |
33
- | Merge | LoRA di-merge ke bf16 via `peft`, lalu `convert_hf_to_gguf.py --outtype f16` |
34
- | Kuantisasi | `llama-quantize … Q4_K_M` |
35
- | Ukuran file | ~2.4 GB |
36
-
37
- Adaptor LoRA mentah tersedia di repo [`zelapi/lilo-cyber-rasxlite-lora`](https://huggingface.co/zelapi/lilo-cyber-rasxlite-lora).
38
 
39
- ## Struktur data latih
40
 
41
- `zelapi/lilo-cyber` berisi kolom `messages` (list of `{role, content}`) dan `source`:
 
 
 
42
 
43
- | source | jumlah |
44
- |---|---|
45
- | `evol-instruct-id` | 3.000 |
46
- | `intisari-chat` | 3.000 |
47
- | `alpaca-gpt4-id` | 3.000 |
48
- | `slang-lexicon` | 988 |
49
- | `formalization` | 198 |
50
- | `lilo-cyber-cybersecurity-id` | 72 |
51
- | `lilo-cyber-chat-id` | 59 |
52
- | `lilo-cyber-coding-id` | 53 |
53
 
54
- Total: 10.163 baris train, 207 baris val.
55
 
56
- ## Pemakaian
 
 
 
 
 
 
 
57
 
58
- ### llama.cpp
59
 
60
- ```bash
61
- ./llama-cli -m lilo-cyber-Q4_K_M.gguf \
62
- -c 1024 -t 2 -n 256 \
63
- --chat-template gemma \
64
- -p "Buat checklist hardening untuk server Ubuntu"
65
- ```
66
 
67
- ### Ollama
 
 
 
 
 
 
 
 
68
 
69
- Buat `Modelfile`:
70
 
71
  ```
72
- FROM ./lilo-cyber-Q4_K_M.gguf
73
- PARAMETER stop "<start_of_turn>"
74
- PARAMETER stop "<end_of_turn>"
75
- PARAMETER num_ctx 1024
76
- PARAMETER num_thread 2
77
- PARAMETER num_batch 128
78
- PARAMETER temperature 0.7
79
- PARAMETER top_p 0.9
80
- PARAMETER repeat_penalty 1.1
81
- TEMPLATE """<start_of_turn>user
82
- {{ .Prompt }}<end_of_turn>
83
  <start_of_turn>model
84
- {{ .Response }}<end_of_turn>"""
85
  ```
86
 
87
- Lalu:
88
 
89
  ```bash
90
- ollama create lilo-cyber -f Modelfile
91
- ollama run lilo-cyber
92
  ```
93
 
94
- ### Prompt template (gemma)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
95
 
96
- ```
97
- <start_of_turn>user
98
- {prompt}<end_of_turn>
99
- <start_of_turn>model
100
- ```
101
 
102
- ## Pipeline yang dipakai
 
 
 
103
 
104
- 1. Dataset dari `zelapi/lilo-cyber` → pasangan user/assistant, dibersihkan whitespace, dibatasi panjang
105
- 2. QLoRA training di Colab T4 (burst pendek + checkpoint ke Hub, karena runtime sering di-recycle)
106
- 3. Merge adaptor LoRA ke base bf16
107
- 4. `convert_hf_to_gguf.py --outtype f16`
108
- 5. `llama-quantize … Q4_K_M`
109
 
110
- ## Catatan & batasan
111
 
112
- - `num_ctx 1024` sengaja rendah supaya tidak OOM di RAM kecil. Naikkan hanya jika RAM cukup.
113
- - `temperature 0.7`, `top_p 0.9` menjaga jawaban ringkas; naikkan `repeat_penalty` kalau model mengulang.
114
- - Q4_K_M sedikit menurunkan kualitas dibanding f16 — pertahankan versi f16 bila butuh kualitas maksimum.
115
- - Diuji pada CPU 2 vCPU, sehingga throughput rendah. Untuk produksi gunakan GPU dan `num_ctx` lebih besar.
116
- - Model ini bisa saja membuat rekomendasi keamanan yang keliru. Verifikasi selalu sebelum dipakai di sistem nyata.
117
 
118
- ## Lisensi & kredit
119
 
120
- - Base: [`google/gemma-3-4b-it`](https://huggingface.co/google/gemma-3-4b-it) — Gemma Terms of Use
121
- - Dataset: [`zelapi/lilo-cyber`](https://huggingface.co/datasets/zelapi/lilo-cyber)
122
- - Referensi style/identitas: [`rizkiagungid/rasxlite`](https://ollama.com/rizkiagungid/rasxlite)
 
 
1
  ---
2
  license: gemma
 
3
  tags:
4
  - gguf
5
  - gemma
 
14
 
15
  # Lilo Cyber
16
 
17
+ Model bahasa Indonesia yang fokus pada **keamanan siber, pemrograman, dan analisis teknis**.
18
+ Dikemas sebagai **GGUF Q4_K_M** dengan ukuran sekitar **2.4 GB**, jadi bisa dijalankan lokal
19
+ di CPU laptop tanpa GPU, dan tetap punya karakter jawaban yang singkat serta terstruktur.
 
20
 
21
+ ## Kenapa model ini dibuat
22
 
23
+ Model besar (27B, context 200K) memang bagus, tapi bobotnya berat: butuh GPU,
24
+ boros biaya API per token, dan tidak bisa dipakai offline saat jauh dari internet.
25
+ Di sisi lain, model kecil
26
+ generik sering ngaco di soal cybersecurity — memberi rekomendasi yang salah,
27
+ atau buru-buru menambahkan setting tanpa menjelaskan risikonya.
 
 
 
 
 
 
 
 
28
 
29
+ Lilo Cyber dibuat untuk mengisi celah itu:
30
 
31
+ - **Jalan di CPU, offline, gratis** — format GGUF Q4_K_M, context pendek, jumlah thread sedikit
32
+ - **Bahasa Indonesia** — istilah keamanan siber diterjemahkan natural, bukan literal translation
33
+ - **Jawaban ringkas dan actionable** — checklist, perintah, langkah bernomor, bukan paragraf panjang
34
+ - **Cukup pintar untuk coding & cyber** — code review, analisis log, config hardening, skrip
35
 
36
+ Untuk agent dengan budget terbatas, atau untuk siapa pun yang sering kerja
37
+ tanpa koneksi internet, ini titik masuk yang murah.
 
 
 
 
 
 
 
 
38
 
39
+ ## Fokus model
40
 
41
+ | Area | Contoh tugas |
42
+ |---|---|
43
+ | Hardening | Checklist Ubuntu/Debian, nginx, SSH, Docker |
44
+ | Audit & log | Analisis log auth, deteksi anomali, korelasi event |
45
+ | Pemrograman | Code review, debugging, menulis skrip, optimasi query |
46
+ | DevOps | CI/CD hardening, image scanning, secret management |
47
+ | Incident response | Containment, eradication, post-mortem ringkas |
48
+ | Threat modeling | STRIDE, abuse case, attack surface mapping |
49
 
50
+ ## Parameter runtime
51
 
52
+ Nilai-nilai ini dipilih supaya **nyaman di RAM kecil**:
 
 
 
 
 
53
 
54
+ | Parameter | Nilai | Alasan |
55
+ |---|---|---|
56
+ | `num_ctx` | 1024 | Batas context rendah = VRAM/RAM jauh lebih hemat |
57
+ | `num_thread` | 2 | CPU 2 vCPU adalah titik bottleneck yang paling sering ditemui |
58
+ | `num_batch` | 128 | Batch kecil → latensi lebih stabil di CPU |
59
+ | `temperature` | 0.7 | Cukup variatif tanpa terlalu liar |
60
+ | `top_p` | 0.9 | Memotong ekor distribusi token yang noise |
61
+ | `repeat_penalty` | 1.1 | Mengurangi pengulangan kalimat |
62
+ | `stop` | `<start_of_turn>`, `<end_of_turn>` | Gaya chat gemma, jadi berhenti rapi |
63
 
64
+ Prompt template (gemma):
65
 
66
  ```
67
+ <start_of_turn>user
68
+ {prompt}<end_of_turn>
 
 
 
 
 
 
 
 
 
69
  <start_of_turn>model
 
70
  ```
71
 
72
+ ### Contoh
73
 
74
  ```bash
75
+ ./llama-cli -m lilo-cyber-Q4_K_M.gguf -c 1024 -t 2 -n 256 --chat-template gemma \
76
+ -p "Buat checklist hardening untuk server Ubuntu"
77
  ```
78
 
79
+ ## Benchmark
80
+
81
+ Di bawah ini perbandingan indikator standar industri antara model ini dan model
82
+ generasi besar yang umumnya dipakai sebagai referensi (angka dari sumber publik
83
+ masing-masing model, jadi bersifat indikatif — **bukan hasil pengukuran langsung
84
+ atas model ini**):
85
+
86
+ | Atribut / Metrik | Claude Haiku 5.5 | Gemma 2 (27B) | Gemma 3 (27B) | **Lilo Cyber** |
87
+ |---|---|---|---|---|
88
+ | Penyedia / Sifat | Anthropic (proprietary) | Google (open weights) | Google (open weights) | **Open weights, lokal** |
89
+ | Arena AI (Text) | Sangat tinggi (#26 di Agent) | Menengah–tinggi | Tinggi | **Tidak masuk arena (model niche)** |
90
+ | MMLU | ~78–80% | 75.2% | ~79.5% | **Tidak dilaporkan** |
91
+ | HumanEval (coding) | Tinggi / unggul | 51.8% | ~56.4% | **Tidak dilaporkan** |
92
+ | Context window | 200.000 token | 8.192 token | 32.000 / 64.000 token | **1.024 token (aktif)** |
93
+ | Harga input / 1M token | $0.10 | Gratis lokal / variatif | $0.08 (API) | **Gratis, offline** |
94
+ | Harga output / 1M token | $0.50 | Gratis lokal / variatif | $0.16 (API) | **Gratis, offline** |
95
+ | Ukuran file | — | — | — | **~2.4 GB (Q4_K_M)** |
96
+ | Kebutuhan GPU | Tidak wajib (API) | Tidak wajib | Tidak wajib | **Tidak perlu** |
97
+
98
+ ### Poin analisis
99
+
100
+ - **Claude Haiku 5.5** unggul di workflow agentik, coding kompleks, dan dokumen
101
+ panjang berkat context 200K. Konsekuensinya: model proprietary, biaya per token, dan butuh internet.
102
+ - **Gemma 2 / 3 (27B)** unggul dari sisi biaya operasional — open weights, bisa lokal
103
+ gratis atau disewa API murah. Tapi ukuran model besar, jalankan nyaman di CPU.
104
+ - **Lilo Cyber** — trade-off-nya berbeda: ukurannya kecil (2.4 GB), bisa jalan
105
+ di CPU mana pun, sepenuhnya offline, dan spesialis di domain cyber/coding berbahasa Indonesia.
106
+ Ia **bukan** pengganti model 27B untuk pengetahuan umum atau dokumen panjang.
107
+
108
+ ### Kapan pakai yang mana
109
+
110
+ | Kebutuhan | Pilihan |
111
+ |---|---|
112
+ | Review kode panjang, dokumen besar, agentic workflow | Claude Haiku 5.5 |
113
+ | Knowledge base luas, chat umum, ribuan Q&A | Gemma 3 (27B) |
114
+ | Hardening server, analisis log, cyber ops, offline | **Lilo Cyber** |
115
+ | RAM terbatas (< 4 GB), tanpa GPU | **Lilo Cyber** |
116
 
117
+ ## Keterbatasan
 
 
 
 
118
 
119
+ - Context hanya 1.024 token — pertanyaan panjang harus dipecah
120
+ - Pengetahuan umum bukan fokus; angka MMLU/HumanEval sengaja tidak diklaim
121
+ - Memberi rekomendasi keamanan yang salah tetap mungkin — **verifikasi selalu sebelum dipakai** ke sistem nyata
122
+ - Kecepatan token/detik rendah di CPU dibanding model yang dijalankan di GPU
123
 
124
+ ## Cara pakai
 
 
 
 
125
 
126
+ **llama.cpp**
127
 
128
+ ```bash
129
+ ./llama-cli -m lilo-cyber-Q4_K_M.gguf -c 1024 -t 2 -n 256 --chat-template gemma
130
+ ```
 
 
131
 
132
+ **Ollama**
133
 
134
+ ```bash
135
+ ollama create lilo-cyber -f Modelfile
136
+ ollama run lilo-cyber
137
+ ```