A self-hosted Philippine news intelligence system: 24 topic feeds, entity and knowledge-graph extraction, and decision briefs every 4 hours on my own GPUs, with no cloud APIs. Every summary and brief below came from a 2-4B model running on consumer hardware in my apartment.

The dashboard's front page. The counters are live: articles tracked, topics, refresh cycle, and the cloud bill.
The dashboard's front page. The counters are live: articles tracked, topics, refresh cycle, and the cloud bill.
Entity and triple extraction over the last 30 days: who did what to whom.
Entity and triple extraction over the last 30 days: who did what to whom.
The standing questions. Each card is a decision the pipeline re-answers every cycle, with the tier of its weakest source shown on the front.
The standing questions. Each card is a decision the pipeline re-answers every cycle, with the tier of its weakest source shown on the front.

24 topic feeds become daily digests and nine decision briefs

The feeds produce a deduped daily digest per topic and nine cross-topic briefs, each built around a real decision.

  • Topics: geopolitics, economy, tech, the Philippines, disinformation and entertainment.
  • Sources are tiered: Reuters and AP Tier 1, Rappler and Ars Technica Tier 2, YouTube Tier 3.
  • Each brief stores its literal question in the config, such as what a Middle East conflict does to Philippine energy costs.
  • Named-entity and triple extraction feed the entity trends and the graph view, for every topic including disinformation.

On 2026-07-12, both briefs pointed to buying now

Two briefs from the same unattended morning run, neither a headline I went looking for.

  • Hardware timing flagged SK Hynix's $26.5B Nasdaq IPO and a "biggest memory shortage in tech history" warning, against a 15% drop in Philippine market sentiment.
  • Its call: buy critical components now, wait on non-essential upgrades until the peso stabilizes.
  • Energy outlook caught Meralco's July rate hike from the Malampaya shutdown, the Visayas grid on red alert, and the Philippines as the world's fastest-growing rooftop solar market.
  • Its call: install solar now as the strongest hedge.

How it's built

Seven steps run on a 4-hour Windows Task Scheduler job:

  1. Pull articles: RSS, full text, YouTube transcripts
  2. Extract entities with spaCy plus a custom domain ruler
  3. Embed into ChromaDB
  4. Generate summaries and briefs with a local model
  5. Extract knowledge-graph triples
  6. Sync entity images
  7. Pre-warm the dashboard cache, so browsing never touches the network
  • All inference runs through llama-server.exe against GGUF models.
  • A watcher reads the logs every 10 minutes. On a real crash, Claude fixes the script.
  • A fix is kept only if it runs clean, at most five a day.

A 4B model beat a 14B on quality as well as speed

I did not expect the smaller model to win on quality.

  • 20 samples per model per task on a GTX 1660 Super and an RTX 5070 Ti, scored 0-100 with latency and watt-hours per call.
  • On the GTX 1660 Super, a 4B won summaries at 90.7 quality, 15 seconds and 107 watts.
  • On the RTX 5070 Ti, a different 4B won the harder insight-writing task at 89.2, ahead of every 14B. One 14B reasoning model was eliminated outright.
  • The production config cites these numbers where each model is chosen.