# Autonomiczny system AI do wiadomości: jak zastąpić siedem workflowów jedną architekturą
W ciągu półtora miesiąca rozdrobniony pipeline nowościowy z siedmiu n8n-workflowów przekształcił się w stabilny system z 160 źródłami, 11 workerami i 5 agentami AI. Teraz przetwarzanie 7127 wpisów w bazie odbywa się bez ręcznej interwencji, a lokalna LLM na mini-PC zastępuje chmurowe API. Rozbieramy architekturę, która eliminuje punkty awarii i zapewnia pracę 24/7.
Od siedmiu punktów awarii do jednolitego systemu
Początkowo pipeline nowościowy składał się z siedmiu niezależnych n8n-workflowów: zbieranie danych, filtrowanie, tłumaczenie, generowanie obrazów i publikacja. Każdy etap działał izolowanie, tworząc kaskadowe awarie. Typowy problem: workflow oznaczał zadanie jako „wykonane”, ale na wyjściu był pusty wynik. Ponieważ etapy nie miały jednolitego systemu monitoringu, diagnoza zajmowała godziny. Krytyczna luka — brak jednolitego statusu dla każdej wiadomości. Jeśli jeden workflow się zawieszał, inne kontynuowały przetwarzanie, generując niespójne dane.
Rozwiązanie przyszło po analizie z Perplexity i eksperymentach z Claude Code. Zamiast ręcznego przepisywania logiki w Pythonie asystent AI otrzymał oryginalne workflowy i wymagania architektoniczne. W godzinę wygenerował konteneryzowaną aplikację z wyraźnym podziałem odpowiedzialności. Kluczowa zmiana: przejście od workflowów wyzwalanych do pipeline'u zorientowanego na stany, gdzie każda wiadomość przechodzi ściśle określone etapy z zapisem statusu w bazie danych.
Lokalne przetwarzanie: po co Qwen 3.5 na mini-PC
Tłumaczenie wiadomości przez chmurowe API okazało się ekonomicznie nieopłacalne: 160 źródeł z aktualizacją co 15 minut wymagałoby dziesiątek tysięcy zapytań dziennie. Rozwiązanie — umieszczenie lokalnej LLM na domowym mini-PC z Ubuntu i optymalizacja pod Vulkan za pomocą llama.cpp. Wybrano model Qwen 3.5 (qwen3.5-9b-q5_k_m.gguf) ze względu na balans prędkości i jakości dla języka rosyjskiego.
Konfiguracja obejmowała:
- Dostrojenie pod architekturę procesora za pomocą Cursor
- Kalibrację liczby wątków w celu minimalizacji opóźnień
- Konfigurację buforowania wyników pośrednich
System przetwarza do 50 zapytań na minutę bez przeciążenia CPU. Dane nie opuszczają lokalnej sieci, co jest kluczowe przy przetwarzaniu źródeł z ograniczeniami na klucze API. Dla porównania: chmurowe tłumaczenie kosztowałoby ~$120/miesiąc przy obecnym wolumenie, lokalne — $0 po początkowej konfiguracji.
Architektura pipeline'u: jak działają 11 workerów
System jest zbudowany na zasadzie „jeden proces — jedna task”. Każdy worker jest izolowany, co eliminuje kaskadowe awarie. Przepływ przetwarzania:
collector → scraper → deduplicator → ai_filter → translator
→ llm_editor → image_worker → publisher
collector uruchamia się co 15 minut, parsuje RSS/API z 160 źródeł (w tym Arxiv, TechCrunch, GitHub). scraper wyciąga pełny tekst za pomocą lokalnej instancji Jina Reader — to usunęło limity chmurowego serwisu. deduplicator stosuje semantyczne porównanie na podstawie embeddingów, a nie dokładnego dopasowania tekstu. ai_filter przypisuje relevance_score (0-100), odrzucając materiały poniżej 75 punktów.
Szczególna uwaga na etapie llm_editor. Tam MiniMax M2.7 formatuje tekst pod styl kanału: dodaje emoji do nagłówków, strukturyzuje treści, dodaje atrybucje. Model jest wyszkolony na historycznych danych kanału, co zapewnia spójność formatowania. Wszyscy workerzy komunikują się przez kolejkę wiadomości z gwarancją dostarczenia, co pozwala wznawiać przetwarzanie po awariach od ostatniego punktu zatrzymania.
Zarządzanie przez agentów AI: od komend Telegram do działań
Koordynator oparty na OpenClaw zastępuje ręczne zarządzanie. Mieszka na tym samym mini-PC i ma dostęp do narzędzi przez API. System wykorzystuje 5 wyspecjalizowanych agentów:
- AgentLLMEditor: koryguje tekst co 20 minut
- AgentPipelineManager: rozdziela posty po slotach 4 razy na dobę
- AgentSourceAuditor: wyłącza niesprawne źródła co tydzień
- AgentAnalyst: generuje analitykę o 21:05
- Koordynator: zarządza pozostałymi agentami
Komenda w Telegram „Koordynator, obniż limit publikacji do 8 na dzień” jest przekształcana w wywołanie API do pipeline managera. Agent sprawdza bieżące ustawienia, wprowadza zmiany i potwierdza wykonanie. To eliminuje potrzebę dostępu SSH i znajomości składni plików konfiguracyjnych. Dla krytycznych operacji (np. wyłączenia źródła) system wymaga potwierdzenia przez human-in-the-loop (hitl) workera.
Dashboard: monitoring w czasie rzeczywistym
Interfejs łączy 9 zakładek: przegląd, agenci, źródła, kolejka, workerzy, sloty, opublikowane, ustawienia, GitHub Discovery. Kluczowe metryki:
- Pass rate po źródłach: Anthropic News (100%) vs iXBT.com (14%)
- Czas przetwarzania etapu: tłumaczenie (4 min) vs filtrowanie (2 min)
- Stan workerów: aktywne/闲置 procesy
Po wykryciu anomalii (np. zablokowanej kolejki tłumaczeń) dashboard automatycznie tworzy zadanie w grupie roboczej Telegram. Integracja z GitHub Discovery śledzi repozytoria z gwałtownym wzrostem gwiazdek — te dane są wyświetlane na oddzielnej zakładce z wykresem aktywności. System ostrzega o problemach zanim wpłyną na publikacje: np. przy spadku pass rate źródła poniżej 10% w tygodniu.
Oszczędności przez selekcję: od 1000 wiadomości do 8 postów na dzień
System nie publikuje wszystkiego po kolei. W tygodniu przetwarza ~1000 materiałów, ale na antenę trafia tylko 56 postów (8 na dzień). Kryteria selekcji:
- relevance_score ≥ 80 (ai_filter)
- Zatwierdzenie przez LLM-edytora (status approved)
- Dopasowanie do slotu czasowego
Harmonogram jest sztywno powiązany z strefami czasowymi:
- Rano (08:00–11:00): 2 posty
- Dzień (12:00–16:00): 2 posty
- Wieczór (18:00–22:00): 2 posty
- Noc (00:00–06:00): 2 posty
Wcześniej publikowano 28 postów na dzień, ale analityka pokazała: użytkownicy czytają tylko ostatnie 1-2 materiały. Teraz redukcja wolumenu zwiększyła retencję o 37% — czytelnicy przeglądają wszystkie publikacje w slocie. Pass rate źródeł pozwala tygodniowo korygować listę: 20 małoefektywnych kanałów RSS już wyłączono.
Co ważne
- Jednolity system stanów zastępuje izolowane workflowy: każda wiadomość ma jasny status, co przyspiesza diagnozę awarii 5-krotnie.
- Lokalne LLM oszczędzają do $120/miesiąc na tłumaczeniu i edycji, przy czym opóźnienia nie przekraczają 4 minut dla 50 równoległych zadań.
- Agenci AI eliminują ręczne zarządzanie: komendy w Telegram przekształcają się w wywołania API bez udziału operatora.
- Surowa selekcja treści (8 postów/dzień zamiast 28) zwiększyła retencję odbiorców o 37% dzięki redukcji szumu.
— Editorial Team
Brak komentarzy.