7 n8n munkafolyamat sablon adattudományhoz kódokkal

Az automatizáció a modern adattudós legjobb barátja. Az n8n egy nyílt forráskódú eszköz. Lehetővé teszi komplex folyamatok építését minimális kódolással. Ebben a cikkben bemutatjuk a hét leghasznosabb n8n munkafolyamat sablon felépítését. Ezekkel kiválthatod az unalmas manuális munkát. A példákban JavaScript kódokat és n8n specifikus JSON beállításokat láthatsz.

1. Webes adatok gyűjtése és tisztítása

A web scraping gyakori feladat. Ezzel a sablonnal híreket vagy árakat gyűjthetsz automatikusan. A folyamat egy időzítővel indul és egy HTML elemzővel folytatódik.

A Code node segítségével így tisztíthatod meg a letöltött HTML tartalmat.

// A bemenő HTML feldolgozása
const $ = require('cheerio');
const html = items[0].json.data;
const parsed = $.load(html);

const cikkek = [];
parsed('.news-item').each((i, el) => {
  cikkek.push({
    cim: parsed(el).find('h2').text().trim(),
    link: parsed(el).find('a').attr('href'),
    datum: new Date().toISOString()
  });
});

return cikkek.map(cikk => ({ json: cikk }));

Ez a kód kinyeri a címeket és linkeket. Az eredményt azonnal Google Sheetbe vagy adatbázisba mentheted.

2. API adatok egyesítése

Gyakran több forrásból kell dolgozni. Ez a sablon lekéri az adatokat két különböző API-ból és összefésüli őket egy közös kulcs alapján.

A Merge node használata előtt így alakítsd át az adatokat hogy passzoljanak.

// Adatok normalizálása
return items.map(item => {
  return {
    json: {
      user_id: item.json.id,
      email: item.json.contact_info.email,
      status: 'active'
    }
  }
});

Az n8n vizuális felületén csak össze kell kötnöd a két ágat. A rendszer automatikusan párosítja az elemeket.

3. Érzeléselemzés nyelvi modellel

A beérkező üzenetek hangulatának elemzése fontos üzleti mutató. Ez a sablon egy Webhook segítségével fogadja az adatot majd elküldi egy nyelvi modellnek.

Így konfiguráld az HTTP Request node JSON paramétereit az OpenAI felé.

{
  "model": "gpt-4-turbo",
  "messages": [
    {
      "role": "system",
      "content": "Döntsd el hogy a következő szöveg pozitív vagy negatív. Csak a szót írd ki."
    },
    {
      "role": "user",
      "content": "={{ $json.uzenet }}"
    }
  ]
}

A válasz alapján egy Switch node dönti el hogy riasztani kell-e az ügyfélszolgálatot.

4. Napi jelentés automatizálása

A reggeli riportok készítése sok időt visz el. Ez a folyamat minden reggel 8-kor lefut. Lekérdezi az adatbázist és grafikont készít belőle.

A QuickChart API használatával így generálhatsz képet az adatokból.

const adatok = items.map(i => i.json.ertek);
const labels = items.map(i => i.json.datum);

const chartConfig = {
  type: 'line',
  data: {
    labels: labels,
    datasets: [{
      label: 'Napi bevétel',
      data: adatok
    }]
  }
};

return {
  json: {
    url: `https://quickchart.io/chart?c=${JSON.stringify(chartConfig)}`
  }
};

A kapott kép URL-jét ezután emailben vagy Slacken küldi el a rendszer.

5. Adatminőség ellenőrzése

A hibás adatok tönkretehetik a modelleket. Ez a sablon figyeli a beérkező rekordokat. Ha hiányzó értéket talál azonnal riaszt.

A validációs logika egyszerű JavaScript feltételekre épül.

const hibasok = [];

items.forEach(item => {
  const adatok = item.json;
  if (!adatok.email || !adatok.nev) {
    hibasok.push({
      json: {
        hiba: "Hiányzó mező",
        record_id: adatok.id
      }
    });
  }
});

return hibasok;

Ha a tömb nem üres a folyamat Slack üzenetet küld a mérnöknek.

6. Űrlap adatok adatbázisba mentése

Az adatgyűjtés legegyszerűbb módja egy online űrlap. Az n8n Webhook node képes fogadni a Typeform vagy Google Forms adatait.

A beérkező JSON adatokat így térképezd át PostgreSQL formátumra.

// Adatok előkészítése SQL beszúráshoz
const urlap = items[0].json.form_response;

return {
  json: {
    kerdes_1: urlap.answers[0].text,
    kerdes_2: urlap.answers[1].number,
    bekuldes_ideje: new Date()
  }
};

Ezután a Postgres node Insert műveletével véglegesítheted a mentést.

7. Modell újratanítás indítása

A gépi tanuló modellek idővel elavulnak. Ez a haladó sablon figyeli a modell pontosságát. Ha a hibaérték átlép egy küszöböt elindítja az újratanítást.

A döntési logika a következő.

const aktualis_pontossag = items[0].json.accuracy;
const kuszob = 0.85;

if (aktualis_pontossag < kuszob) {
  return [
    { json: { action: "trigger_retraining", model_id: "v2" } }
  ]; // 1. kimenet: Tanítás indítása
} else {
  return []; // 2. kimenet: Minden rendben
}

Ez a folyamat biztosítja hogy a rendszered mindig pontos maradjon emberi beavatkozás nélkül.

Sablonok összehasonlítása

A táblázat segít kiválasztani a megfelelőt a feladatodhoz.

Sablon neveNehézségFő komponensek
Web ScrapingKözepesHTML Parser, HTTP Request
API EgyesítésKezdőMerge Node, Set Node
ÉrzelemelemzésKözepesHTTP Request, Switch
Napi JelentésHaladóCron, QuickChart, Email
AdatminőségKezdőCode Node, Filter
Űrlap MentésKezdőWebhook, Postgres
Modell MonitorHaladóIf Node, External API

Az n8n ereje a rugalmasságban rejlik. A fenti kódok csak az alapokat jelentik. A hivatalos könyvtárban több száz kész megoldást találsz amit egy kattintással importálhatsz.

További sablonok és dokumentáció: n8n.io

Kérjük, ellenőrizd a mező formátumát, és próbáld újra.
Köszönjük, hogy feliratkoztál.

vagyunk.hu hírlevél

Hozzászólás

Az e-mail címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük