Przejdź do treści

01 — Architecture

Insurance Intelligence System


Diagram systemu

┌─────────────────────────────────────────────────────────────────┐
│                     ŹRÓDŁA DANYCH                               │
│  YouTube  │  KNF  │  PIU  │  NBP  │  Podcasty  │  Media        │
└─────────────────────────┬───────────────────────────────────────┘
                          │
                          ▼
┌─────────────────────────────────────────────────────────────────┐
│  AGENT 1 — Collector                                            │
│  • Zbiera dane z wszystkich źródeł                              │
│  • Uruchamiany cyklicznie (scheduler dzienny)                   │
│  • Zapisuje surowe dane do tabeli raw_signals                   │
│  • Nie filtruje — zbiera szeroko                                │
└─────────────────────────┬───────────────────────────────────────┘
                          │ raw_signals
                          ▼
┌─────────────────────────────────────────────────────────────────┐
│  AGENT 2 — Classifier (Hybryda: Reguły + Claude API)            │
│  • Warstwa 1: Reguły (słowa sygnałowe, wykluczenia) — szybkie  │
│  • Warstwa 2: Claude API — tylko przypadki graniczne            │
│  • Przypisuje: segment, relevance_score, is_noise               │
│  • Zapisuje do tabeli classified_signals                        │
└─────────────────────────┬───────────────────────────────────────┘
                          │ classified_signals
                          ▼
┌─────────────────────────────────────────────────────────────────┐
│  AGENT 3 — Analyst                                              │
│  • Pracuje na sklasyfikowanych danych                           │
│  • Wyciąga insights, łączy sygnały między źródłami             │
│  • Wykrywa trendy i anomalie                                    │
│  • Generuje weekly/monthly briefing                             │
│  • Zapisuje do tabeli insights                                  │
└─────────────────────────┬───────────────────────────────────────┘
                          │ insights
                          ▼
┌─────────────────────────────────────────────────────────────────┐
│  AGENT 4 — Reporter                                             │
│  • Dashboard HTML (dynamiczny)                                  │
│  • Raporty PDF na żądanie                                       │
│  • Benchmarking TU                                              │
│  • Alerty o ważnych sygnałach                                   │
└─────────────────────────────────────────────────────────────────┘

Komponenty techniczne

Komponent 1 — Intelligence Gathering

  • Technologia: Python, MCP Servers, FastMCP
  • Lokalizacja: VPS /opt/youtube-mcp/ (i kolejne /opt/knf-mcp/ itp.)
  • Uruchomienie: systemd (autostart), port 8000
  • Harmonogram: cron job lub Claude API scheduler

Komponent 2 — Baza danych

  • Technologia: PostgreSQL na VPS
  • Lokalizacja: VPS, ten sam serwer
  • Schemat: patrz 02_DATA_MODEL.md

Komponent 3 — Dashboard & Reporting

  • Technologia: HTML/JS (statyczny) serwowany przez nginx
  • Dane: REST API z PostgreSQL
  • Lokalizacja: VPS, nginx

Komponent 4 — Agent Orchestration

  • Technologia: Claude API (claude-sonnet-4-6)
  • Rola: Classifier (Agent 2) i Analyst (Agent 3)
  • Ekonomia: Hybryda reguły + API — minimalizacja kosztów

Segmenty danych (pionowy podział)

Segment Opis Priorytet
ceo_cfo_tu Wywiady z zarządami TU P1
financials_tu Wyniki finansowe, raporty P1
regulators KNF, PIU, NBP, UFG P1
conferences Konferencje, panele branżowe P2
bancassurance Banki jako kanał dystrybucji P2
intermediaries Multiagenci, brokerzy, OFWCA P2
expert_analysis Podcasty, analizy, consulting P2
eu_groups Grupy europejskie (kontekst PL) P3

Infrastruktura VPS

  • Provider: Hostinger
  • OS: Ubuntu 24.04.3 LTS
  • IP: 76.13.15.1
  • Użytkownik: root
  • Ścieżki aplikacji:
  • /opt/youtube-mcp/ — MCP Server YouTube (aktywny)
  • /opt/insurance-db/ — konfiguracja bazy (planowane)
  • /opt/insurance-dashboard/ — dashboard (planowane)

Zasady architektoniczne

  1. Ekonomiczność — Claude API tylko tam gdzie reguły nie wystarczą
  2. Przejrzystość — każdy agent ma jedną odpowiedzialność (Single Responsibility)
  3. Iterowalność — system zbiera szeroko w Fazie 1, filtruje w kolejnych
  4. Dokumentowalność — każda zmiana architektury aktualizuje te pliki
  5. Separacja segmentów — dane TU, bancassurance i multiagenci nigdy się nie mieszają