<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://onnocenter.or.id/wiki/index.php?action=history&amp;feed=atom&amp;title=Cyber_Security%3A_Ollama%3A_startegi_analisa_log_JSONL</id>
	<title>Cyber Security: Ollama: startegi analisa log JSONL - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://onnocenter.or.id/wiki/index.php?action=history&amp;feed=atom&amp;title=Cyber_Security%3A_Ollama%3A_startegi_analisa_log_JSONL"/>
	<link rel="alternate" type="text/html" href="https://onnocenter.or.id/wiki/index.php?title=Cyber_Security:_Ollama:_startegi_analisa_log_JSONL&amp;action=history"/>
	<updated>2026-06-15T14:22:14Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.4</generator>
	<entry>
		<id>https://onnocenter.or.id/wiki/index.php?title=Cyber_Security:_Ollama:_startegi_analisa_log_JSONL&amp;diff=73584&amp;oldid=prev</id>
		<title>Onnowpurbo: Created page with &quot;## Metode terbaik: jangan kirim seluruh `alerts.json` langsung ke Ollama  Pipeline tercepat dan paling akurat adalah:  ```text alerts.json     ↓ Python: parsing, filter, agr...&quot;</title>
		<link rel="alternate" type="text/html" href="https://onnocenter.or.id/wiki/index.php?title=Cyber_Security:_Ollama:_startegi_analisa_log_JSONL&amp;diff=73584&amp;oldid=prev"/>
		<updated>2026-06-14T08:53:55Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;## Metode terbaik: jangan kirim seluruh `alerts.json` langsung ke Ollama  Pipeline tercepat dan paling akurat adalah:  ```text alerts.json     ↓ Python: parsing, filter, agr...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;## Metode terbaik: jangan kirim seluruh `alerts.json` langsung ke Ollama&lt;br /&gt;
&lt;br /&gt;
Pipeline tercepat dan paling akurat adalah:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
alerts.json&lt;br /&gt;
    ↓&lt;br /&gt;
Python: parsing, filter, agregasi, deduplikasi&lt;br /&gt;
    ↓&lt;br /&gt;
Ringkasan kecil dan terstruktur&lt;br /&gt;
    ↓&lt;br /&gt;
Ollama: interpretasi, prioritas risiko, dan rekomendasi&lt;br /&gt;
    ↓&lt;br /&gt;
Laporan Markdown + JSON&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
**Python menghitung fakta**, sedangkan **Ollama menjelaskan makna dan prioritasnya**. Dengan cara ini, Ollama cukup menerima satu ringkasan kecil dalam satu request, bukan membaca ratusan atau jutaan baris mentah.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
# Hasil awal file Anda&lt;br /&gt;
&lt;br /&gt;
Saya sudah memproses file `alerts.json` yang diunggah. &lt;br /&gt;
&lt;br /&gt;
| Informasi              |                Hasil |&lt;br /&gt;
| ---------------------- | -------------------: |&lt;br /&gt;
| Total alert valid      |              **333** |&lt;br /&gt;
| JSON rusak             |                **0** |&lt;br /&gt;
| Rentang waktu          | **sekitar 33 menit** |&lt;br /&gt;
| Level 3                |              **176** |&lt;br /&gt;
| Level 4                |                **2** |&lt;br /&gt;
| Level 7                |              **153** |&lt;br /&gt;
| Level 8                |                **2** |&lt;br /&gt;
| Agent `server`         |        **306 alert** |&lt;br /&gt;
| Agent `server-webtest` |         **27 alert** |&lt;br /&gt;
| Alert SCA/CIS          |              **281** |&lt;br /&gt;
| SCA passed             |              **118** |&lt;br /&gt;
| SCA failed             |              **119** |&lt;br /&gt;
| SCA not applicable     |               **42** |&lt;br /&gt;
| Rootcheck anomaly      |               **26** |&lt;br /&gt;
&lt;br /&gt;
## Temuan yang perlu diprioritaskan&lt;br /&gt;
&lt;br /&gt;
### 1. Rootcheck pada `server-webtest`&lt;br /&gt;
&lt;br /&gt;
Terdapat **26 alert level 7** yang menyebut beberapa file sistem sebagai kemungkinan *trojaned*, antara lain:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
/bin/ls&lt;br /&gt;
/usr/bin/ls&lt;br /&gt;
/bin/env&lt;br /&gt;
/usr/bin/env&lt;br /&gt;
/bin/cat&lt;br /&gt;
/usr/bin/cat&lt;br /&gt;
/bin/chmod&lt;br /&gt;
/usr/bin/chmod&lt;br /&gt;
/bin/passwd&lt;br /&gt;
/usr/bin/passwd&lt;br /&gt;
/bin/md5sum&lt;br /&gt;
/usr/bin/md5sum&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Ini **belum membuktikan bahwa server terkena malware**. Alert rootcheck berbasis pola dapat menghasilkan *false positive*, dan `/bin` serta `/usr/bin` pada Ubuntu modern dapat menunjuk ke file yang sama.&lt;br /&gt;
&lt;br /&gt;
Validasi pada `server-webtest`:&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
readlink -f /bin/ls&lt;br /&gt;
readlink -f /usr/bin/ls&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
`readlink -f` menampilkan lokasi file sebenarnya setelah seluruh symbolic link diselesaikan.&lt;br /&gt;
&lt;br /&gt;
Cari paket pemilik file:&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
dpkg -S /bin/ls /usr/bin/ls /usr/bin/passwd /usr/bin/md5sum&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
* `dpkg -S`: mencari paket Debian yang memiliki file tersebut.&lt;br /&gt;
* Beberapa path mungkin tidak langsung dikenali karena mekanisme merged `/usr`.&lt;br /&gt;
&lt;br /&gt;
Pasang alat pemeriksa integritas:&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
sudo apt update&lt;br /&gt;
sudo apt install debsums -y&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
* `debsums`: memeriksa checksum file paket Debian.&lt;br /&gt;
* `-y`: otomatis menyetujui instalasi.&lt;br /&gt;
&lt;br /&gt;
Periksa paket penting:&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
sudo debsums -s coreutils passwd&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
* `-s`: hanya menampilkan file yang gagal atau berubah.&lt;br /&gt;
* Tidak ada output umumnya berarti seluruh checksum yang tersedia cocok.&lt;br /&gt;
&lt;br /&gt;
Periksa juga dengan `dpkg`:&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
sudo dpkg -V coreutils passwd&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
* `-V`: memverifikasi atribut dan checksum file paket.&lt;br /&gt;
&lt;br /&gt;
### 2. User dan group `wazuh-dashboard` dibuat&lt;br /&gt;
&lt;br /&gt;
Terdapat dua alert level 8:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
New group added: wazuh-dashboard&lt;br /&gt;
New user added: wazuh-dashboard&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Alert muncul berdekatan dengan proses instalasi paket `wazuh-dashboard`, sehingga **kemungkinan besar merupakan aktivitas instalasi resmi**, bukan pembuatan akun interaktif oleh penyerang.&lt;br /&gt;
&lt;br /&gt;
User tersebut juga menggunakan:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
home=/nonexistent&lt;br /&gt;
shell=/bin/false&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Ini lazim untuk akun service. Tetap cocokkan waktunya dengan aktivitas administrator.&lt;br /&gt;
&lt;br /&gt;
### 3. Sebagian besar alert adalah compliance scan&lt;br /&gt;
&lt;br /&gt;
Sebanyak **281 dari 333 alert** berasal dari SCA/CIS. Jadi banyak alert level 7 bukan serangan aktif, melainkan hasil pemeriksaan konfigurasi, seperti:&lt;br /&gt;
&lt;br /&gt;
* `/tmp` belum menjadi partisi terpisah;&lt;br /&gt;
* opsi `nodev`, `nosuid`, atau `noexec` belum diterapkan;&lt;br /&gt;
* `/home`, `/var`, dan `/var/log` belum dipisahkan;&lt;br /&gt;
* beberapa kernel module belum dinonaktifkan.&lt;br /&gt;
&lt;br /&gt;
Ollama harus diberi tahu untuk membedakan:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
serangan aktif&lt;br /&gt;
compliance finding&lt;br /&gt;
perubahan sistem resmi&lt;br /&gt;
noise atau duplikasi&lt;br /&gt;
bukti kompromi&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
# Script siap pakai&lt;br /&gt;
&lt;br /&gt;
Saya sudah membuat script yang:&lt;br /&gt;
&lt;br /&gt;
* membaca JSONL secara streaming;&lt;br /&gt;
* tidak memasukkan seluruh file ke memori;&lt;br /&gt;
* menghitung severity, agent, rule, IP, user, dan SCA;&lt;br /&gt;
* mengelompokkan alert berulang;&lt;br /&gt;
* mengirim satu ringkasan kecil ke Ollama;&lt;br /&gt;
* meminta output JSON terstruktur;&lt;br /&gt;
* membuat laporan Markdown;&lt;br /&gt;
* melindungi prompt dari instruksi berbahaya yang mungkin berada di dalam log.&lt;br /&gt;
&lt;br /&gt;
Unduh:&lt;br /&gt;
&lt;br /&gt;
* [Script Wazuh–Ollama Analyzer](sandbox:/mnt/data/wazuh_ollama_analyzer.py)&lt;br /&gt;
* [Petunjuk penggunaan](sandbox:/mnt/data/README_wazuh_ollama.md)&lt;br /&gt;
* [Hasil preprocessing file Anda](sandbox:/mnt/data/hasil_wazuh_summary.json)&lt;br /&gt;
&lt;br /&gt;
Saya sudah menguji bagian parsing dan preprocessing terhadap file Anda. Semua **333 baris berhasil dibaca**. Pemanggilan Ollama harus dijalankan pada server Anda karena instance Ollama lokal Anda tidak tersedia dari lingkungan saya.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
# 1. Pilih model Ollama&lt;br /&gt;
&lt;br /&gt;
## Pilihan utama: `qwen3:8b`&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
ollama pull qwen3:8b&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Model tersebut berukuran sekitar **5,2 GB** dengan context window 40K. Ollama menyediakan Qwen3 dalam beberapa ukuran, termasuk 4B, 8B, dan 14B. ([Ollama][1])&lt;br /&gt;
&lt;br /&gt;
Cocok untuk:&lt;br /&gt;
&lt;br /&gt;
* analisis SOC;&lt;br /&gt;
* Bahasa Indonesia;&lt;br /&gt;
* klasifikasi temuan;&lt;br /&gt;
* pembuatan rekomendasi;&lt;br /&gt;
* reasoning yang lebih baik daripada model sangat kecil.&lt;br /&gt;
&lt;br /&gt;
## Pilihan lebih ringan dan cepat: `gemma3:4b`&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
ollama pull gemma3:4b&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
`gemma3:4b` berukuran sekitar **3,3 GB** dan mempunyai context window 128K. Model ini lebih ringan untuk CPU atau GPU dengan memori terbatas. ([Ollama][2])&lt;br /&gt;
&lt;br /&gt;
## Rekomendasi praktis&lt;br /&gt;
&lt;br /&gt;
| Kondisi server                                        | Model       |&lt;br /&gt;
| ----------------------------------------------------- | ----------- |&lt;br /&gt;
| CPU-only atau RAM terbatas                            | `gemma3:4b` |&lt;br /&gt;
| GPU/RAM cukup, seimbang                               | `qwen3:8b`  |&lt;br /&gt;
| Mengutamakan kualitas, tidak terlalu peduli kecepatan | `qwen3:14b` |&lt;br /&gt;
&lt;br /&gt;
Untuk hasil cepat, mulai dengan:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
qwen3:8b&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
# 2. Periksa Ollama&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
curl http://localhost:11434/api/tags&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Keterangan:&lt;br /&gt;
&lt;br /&gt;
* `curl`: mengirim request HTTP.&lt;br /&gt;
* `http://localhost:11434`: alamat default Ollama.&lt;br /&gt;
* `/api/tags`: menampilkan model yang tersedia.&lt;br /&gt;
&lt;br /&gt;
Apabila muncul daftar model, Ollama sudah aktif.&lt;br /&gt;
&lt;br /&gt;
Jika Ollama bukan service:&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
ollama serve&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Biarkan terminal tersebut tetap berjalan dan gunakan terminal lain untuk menjalankan analisis.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
# 3. Jalankan analisis&lt;br /&gt;
&lt;br /&gt;
Letakkan file berikut pada direktori yang sama:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
alerts.json&lt;br /&gt;
wazuh_ollama_analyzer.py&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Kemudian:&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
python3 wazuh_ollama_analyzer.py alerts.json \&lt;br /&gt;
  --model qwen3:8b \&lt;br /&gt;
  --output hasil_wazuh&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Penjelasan:&lt;br /&gt;
&lt;br /&gt;
* `python3`: menjalankan Python 3.&lt;br /&gt;
* `wazuh_ollama_analyzer.py`: script analisis.&lt;br /&gt;
* `alerts.json`: file input Wazuh.&lt;br /&gt;
* `--model qwen3:8b`: model yang digunakan Ollama.&lt;br /&gt;
* `--output hasil_wazuh`: awalan nama file hasil.&lt;br /&gt;
* `\`: melanjutkan perintah ke baris berikutnya.&lt;br /&gt;
&lt;br /&gt;
Hasilnya:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
hasil_wazuh_summary.json&lt;br /&gt;
hasil_wazuh.json&lt;br /&gt;
hasil_wazuh.md&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Fungsi masing-masing:&lt;br /&gt;
&lt;br /&gt;
* `hasil_wazuh_summary.json`: statistik yang dihitung Python;&lt;br /&gt;
* `hasil_wazuh.json`: hasil AI dalam struktur JSON;&lt;br /&gt;
* `hasil_wazuh.md`: laporan SOC yang mudah dibaca.&lt;br /&gt;
&lt;br /&gt;
Buka laporan:&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
less hasil_wazuh.md&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Keluar dari `less` dengan menekan:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
q&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
# 4. Mode sangat cepat tanpa AI&lt;br /&gt;
&lt;br /&gt;
Untuk mengecek isi file dan menghasilkan statistik tanpa memanggil Ollama:&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
python3 wazuh_ollama_analyzer.py alerts.json \&lt;br /&gt;
  --summary-only \&lt;br /&gt;
  --output hasil_wazuh&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
`--summary-only` berarti berhenti setelah preprocessing Python.&lt;br /&gt;
&lt;br /&gt;
Hasilnya:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
hasil_wazuh_summary.json&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Lihat hasil:&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
jq . hasil_wazuh_summary.json&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
# 5. Mempercepat respons Ollama&lt;br /&gt;
&lt;br /&gt;
Preload model agar request pertama tidak menunggu proses pemuatan model:&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
curl http://localhost:11434/api/chat \&lt;br /&gt;
  -d '{&lt;br /&gt;
    &amp;quot;model&amp;quot;: &amp;quot;qwen3:8b&amp;quot;,&lt;br /&gt;
    &amp;quot;keep_alive&amp;quot;: &amp;quot;30m&amp;quot;&lt;br /&gt;
  }'&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
* `-d`: mengirim data JSON ke API.&lt;br /&gt;
* `keep_alive: 30m`: mempertahankan model di memori selama 30 menit.&lt;br /&gt;
&lt;br /&gt;
Ollama mendukung preload melalui request kosong dan parameter `keep_alive` untuk mempertahankan model di memori. Secara bawaan, model disimpan sekitar lima menit setelah digunakan. ([Ollama Docs][3])&lt;br /&gt;
&lt;br /&gt;
Script juga menggunakan:&lt;br /&gt;
&lt;br /&gt;
```json&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;stream&amp;quot;: false,&lt;br /&gt;
  &amp;quot;think&amp;quot;: false,&lt;br /&gt;
  &amp;quot;keep_alive&amp;quot;: &amp;quot;30m&amp;quot;,&lt;br /&gt;
  &amp;quot;options&amp;quot;: {&lt;br /&gt;
    &amp;quot;temperature&amp;quot;: 0.1,&lt;br /&gt;
    &amp;quot;num_ctx&amp;quot;: 8192&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Artinya:&lt;br /&gt;
&lt;br /&gt;
* `stream: false`: menunggu satu respons lengkap;&lt;br /&gt;
* `think: false`: tidak menggunakan mode berpikir panjang, sehingga lebih cepat;&lt;br /&gt;
* `keep_alive`: model tidak dimuat ulang setiap analisis;&lt;br /&gt;
* `temperature: 0.1`: hasil lebih konsisten dan tidak kreatif;&lt;br /&gt;
* `num_ctx: 8192`: membatasi konteks agar konsumsi memori tetap terkendali.&lt;br /&gt;
&lt;br /&gt;
Ollama `/api/chat` mendukung output JSON atau JSON Schema, pengaturan `think`, serta `keep_alive`. ([Ollama Docs][4])&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
# 6. Bila Ollama berjalan dalam Docker&lt;br /&gt;
&lt;br /&gt;
Periksa container:&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
docker ps&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Cari container bernama seperti:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
ollama&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Pastikan port dipublikasikan:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
0.0.0.0:11434-&amp;gt;11434/tcp&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Kemudian jalankan:&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
python3 wazuh_ollama_analyzer.py alerts.json \&lt;br /&gt;
  --host http://127.0.0.1:11434 \&lt;br /&gt;
  --model qwen3:8b \&lt;br /&gt;
  --output hasil_wazuh&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Penjelasan:&lt;br /&gt;
&lt;br /&gt;
* `--host`: alamat API Ollama.&lt;br /&gt;
* `127.0.0.1`: komputer lokal.&lt;br /&gt;
* `11434`: port default Ollama.&lt;br /&gt;
&lt;br /&gt;
Apabila script dijalankan dari container lain pada Docker network yang sama:&lt;br /&gt;
&lt;br /&gt;
```bash&lt;br /&gt;
python3 wazuh_ollama_analyzer.py alerts.json \&lt;br /&gt;
  --host http://ollama:11434 \&lt;br /&gt;
  --model qwen3:8b \&lt;br /&gt;
  --output hasil_wazuh&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Di sini `ollama` merupakan nama service atau nama container.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
# Arsitektur produksi yang disarankan&lt;br /&gt;
&lt;br /&gt;
Untuk penggunaan rutin di SOC:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
Wazuh alerts.json&lt;br /&gt;
        ↓&lt;br /&gt;
Script dijalankan setiap 5–15 menit&lt;br /&gt;
        ↓&lt;br /&gt;
Filter hanya alert baru&lt;br /&gt;
        ↓&lt;br /&gt;
Grouping rule + agent + source IP&lt;br /&gt;
        ↓&lt;br /&gt;
Satu request ke Ollama&lt;br /&gt;
        ↓&lt;br /&gt;
Laporan Markdown/JSON&lt;br /&gt;
        ↓&lt;br /&gt;
TheHive, email, Telegram, atau dashboard&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Jangan menjalankan satu request Ollama untuk setiap alert. Lebih baik:&lt;br /&gt;
&lt;br /&gt;
```text&lt;br /&gt;
100 alert → 1 agregasi → 1 request Ollama&lt;br /&gt;
```&lt;br /&gt;
&lt;br /&gt;
Itulah pendekatan yang paling cepat, murah, dan lebih tahan terhadap halusinasi.&lt;br /&gt;
&lt;br /&gt;
[1]: https://ollama.com/library/qwen3 &amp;quot;qwen3&amp;quot;&lt;br /&gt;
[2]: https://ollama.com/library/gemma3 &amp;quot;gemma3&amp;quot;&lt;br /&gt;
[3]: https://docs.ollama.com/faq &amp;quot;FAQ - Ollama&amp;quot;&lt;br /&gt;
[4]: https://docs.ollama.com/api/chat &amp;quot;Generate a chat message - Ollama&amp;quot;&lt;/div&gt;</summary>
		<author><name>Onnowpurbo</name></author>
	</entry>
</feed>