Przejdź do głównej treści

n8n: przewodnik z praktycznymi przykładami

Dowiedz się, jak korzystać z n8n, by zbudować agentów AI automatyzujących obsługę e‑maili oraz stworzyć agenta RAG do odpowiadania na pytania z dokumentów.
Zaktualizowano 18 maj 2026  · 12 min Czytać

n8n stał się popularnym i potężnym frameworkiem w agentic AI. Pozwala budować zautomatyzowane przepływy pracy bez potrzeby złożonego kodowania.

W tym artykule krok po kroku wyjaśnię, jak w pełni wykorzystać tę solidną platformę do automatyzacji dwóch różnych procesów:

  1. Najpierw przeprowadzę cię przez konfigurację agenta AI, który automatycznie przetwarza e‑maile z Gmaila, oszczędzając czas i ograniczając ręczną pracę.
  2. Następnie stworzymy inteligentnego agenta, który potrafi rozmawiać o dowolnym dokumencie, dając nam szybki dostęp do informacji na wyciągnięcie ręki.

Na bieżąco informujemy czytelników o nowościach w AI w The Median, naszym bezpłatnym piątkowym newsletterze, który rozkłada na czynniki pierwsze najważniejsze wydarzenia tygodnia. Zasubskrybuj i bądź na czasie w kilka minut tygodniowo:

Czym jest n8n?

n8n to narzędzie open source do automatyzacji, które pomaga łączyć różne aplikacje i usługi, aby tworzyć przepływy pracy, niczym cyfrową linię produkcyjną. Umożliwia wizualne projektowanie przepływów z węzłów, z których każdy reprezentuje kolejny krok procesu.

Z n8n możemy automatyzować zadania, zarządzać przepływem danych, a nawet integrować API — i to bez rozbudowanych umiejętności programistycznych. Oto przykład automatyzacji, którą zbudujemy w tym tutorialu:

przykładowy przepływ pracy w n8n

Bez wchodzenia w szczegóły, oto opis działania tej automatyzacji:

  1. Uzyskuje dostęp do naszego konta Gmail, aby sprawdzać nowe wiadomości.
  2. Nowe e‑maile są wysyłane do ChatGPT do przetworzenia przez AI.
  3. AI wyodrębnia istotne informacje, które następnie są zapisywane w arkuszu kalkulacyjnym.

Jak korzystać z n8n?

Mamy dwie opcje korzystania z n8n:

  1. Użyć ich interfejsu webowego tutaj. Wymaga to konta i płatnej subskrypcji, ale możesz skorzystać z 14‑dniowego bezpłatnego okresu próbnego, aby przerobić ten tutorial.
  2. Ponieważ to open source, możemy też uruchomić n8n lokalnie lub hostować je samodzielnie. To jest bezpłatne i daje dostęp do niemal wszystkich funkcji (kilka jest dostępnych tylko w płatnych planach chmurowych lub enterprise).

Obie opcje pozwalają przerobić ten tutorial bez kosztów. My uruchomimy n8n lokalnie, ale jeśli wolisz interfejs webowy, kroki są takie same.

Co nowego w n8n 2.0

Uwaga: n8n 2.0 wyszło pod koniec 2025 roku i wprowadziło system wersji roboczych/publikacji, autosejw (styczeń 2026), odświeżony panel edycji węzłów bez utraty kontekstu płótna oraz Task Runners, które izolują wykonywanie przepływów dla lepszego bezpieczeństwa.

Przepływy poniżej działają na 2.x — jeśli masz 1.x, rozważ aktualizację przed dalszą pracą.

Lokalna instalacja n8n

Oficjalne repozytorium n8n wyjaśnia, jak skonfigurować n8n lokalnie. Najprościej:

  1. Pobierz i zainstaluj Node.js z oficjalnej strony.

  2. Otwórz terminal i uruchom polecenie npx n8n.

I tyle! Po uruchomieniu komendy w terminalu zobaczysz coś takiego:

Uruchamianie n8n lokalnie

Aby otworzyć interfejs, naciśnij na klawiaturze „o” lub otwórz adres localhost wyświetlony w terminalu — u mnie to http://localhost:5678.

Zrozumieć n8n

Zanim zbudujemy pierwszą automatyzację, warto zrozumieć, jak działa n8n. Przepływ pracy w n8n to sekwencja węzłów. Zaczyna się od węzła wyzwalającego (trigger), który określa warunek uruchomienia przepływu.

węzły trigger w n8n

Węzły łączą się, aby przesyłać i przetwarzać dane. W tym przykładzie wyzwalacz Gmail łączy się z węzłem OpenAI. Oznacza to, że wiadomość e‑mail trafia do ChatGPT do przetworzenia. Na końcu wynik ChatGPT jest przekazywany do węzła Google Sheet, który łączy się z arkuszem w Google Drive i dopisuje nowy wiersz do arkusza kalkulacyjnego.

Ten konkretny przepływ używa ChatGPT do identyfikowania faktur do opłacenia i przypisuje w arkuszu wiersz z identyfikatorem faktury i kwotą.

przepływ danych w n8n

Przepływy w n8n mogą być znacznie bardziej złożone. n8n obsługuje ponad 400 oficjalnych integracji (węzły core), do tego 600+ węzłów społeczności i własne połączenia przez węzeł HTTP Request — nie da się więc omówić wszystkiego w jednym tutorialu.

Zamiast tego skupię się na ogólnym zrozumieniu działania i dam ci podstawy, by samodzielnie eksplorować. Jeśli jest narzędzie, z którego często korzystasz, najpewniej n8n je wspiera — a jeśli nie, możesz je zintegrować ręcznie.

Przykład 1: Automatyzacja przetwarzania faktur z e‑maila

W tej sekcji nauczymy się zbudować powyższy przepływ.

To realny przypadek użycia, którego używam do zarządzania moimi rachunkami za wynajem. Mam dom z kilkoma pokojami na wynajem. Rachunki dzielimy po równo między wszystkich najemców. Za każdym razem, gdy otrzymuję fakturę, muszę dodać sumę do arkusza współdzielonego z najemcami.

Mam osobny adres e‑mail, na który są przekazywane faktury za media. Dzięki temu wiem, że wszystkie wiadomości w tej skrzynce to faktury. Wysyłam treść e‑maila do ChatGPT, aby zidentyfikować numer faktury i łączną kwotę do zapłaty. Następnie te informacje trafiają do nowego wiersza we współdzielonym arkuszu.

Konfiguracja wyzwalacza e‑mail

Aby rozpocząć nowy przepływ, kliknij przycisk „Add first step...”

Start przepływu pracy w n8n

Ponieważ to pierwszy węzeł, musi być wyzwalaczem, więc pojawia się panel wyboru węzła wyzwalającego. Węzeł trigger definiuje warunki uruchomienia przepływu.

Węzły wyzwalające w n8n

Dostępnych jest wiele rodzajów wyzwalaczy. Wybierzmy Gmail trigger, wpisując „gmail” w wyszukiwarkę i klikając węzeł Gmail.

Wybór wyzwalacza Gmail w n8n

Następnie wybieramy jedyny dostępny trigger dla Gmaila: „On message received”.

Trigger „On message received” w n8n

To otworzy panel konfiguracji węzła, gdzie musimy dodać nasze dane logowania do Gmaila, by przepływ miał dostęp do konta. Kliknij „New credential”. Otworzy się następujące okno:

Konfiguracja poświadczeń Google OAuth w n8n

Po prawej stronie (1) jest instrukcja konfiguracji poświadczeń w Google Cloud. Poradniki n8n są dość wyczerpujące, więc nie będziemy ich powtarzać. Upewnij się też, że włączysz Gmail API w Google Cloud Console.

Gdy wszystko skonfigurujesz, skopiuj client ID (2) i client secret (3) z Google Cloud do konfiguracji poświadczeń w n8n.

Aby sprawdzić, czy konfiguracja jest poprawna, możemy przetestować węzeł, klikając „Fetch Test Event”.

Testowanie przepływu

Po teście w sekcji wyników powinniśmy zobaczyć najnowszego e‑maila z naszej skrzynki. Treść wiadomości to pole snippet.

Pole snippet przechowuje treść e‑maila. Widać, że moja kwietniowa faktura za internet jest dostępna. Podaje identyfikator faktury i łączną kwotę do zapłaty. To właśnie informacje, które chcemy dodać do arkusza. 

Na potrzeby testów polecam przypiąć wynik, klikając pinezkę w prawym górnym rogu:

Przypinanie wyniku węzła w n8n

To zablokuje wynik dla wyzwalacza — gdy uruchomimy przepływ, użyty zostanie ten sam output, co ułatwia testowanie, bo wyniki nie będą zależeć od nowych e‑maili. Odpniemy go, gdy przepływ będzie gotowy.

Na tym etapie nasz przepływ powinien mieć pojedynczy węzeł wyzwalający (poznasz go po małej ikonie błyskawicy po lewej).

Identyfikacja węzłów trigger w n8n

Pamiętaj, że ponieważ prawdopodobnie nie masz w skrzynce faktury, później ChatGPT może zwrócić odpowiedź bez sensu. Jeśli chcesz przetestować dokładnie ten przepływ, możesz wysłać sobie testowy e‑mail o następującej treści (albo podobnej):

Dear customer,

Your internet invoice number FT 2025**/****** for April is now available in the attachment.

Amount

€**.**
This invoice must be paid by 19/05/2025.

Po wysłaniu musisz odpiąć wynik, ponownie uruchomić węzeł Gmail i przypiąć nowy wynik.

Konfiguracja węzła ChatGPT

Kolejny krok to konfiguracja węzła OpenAI. Zacznij, klikając przycisk „+” po prawej stronie węzła Gmail trigger:

Łączenie węzłów w n8n

Wpisz „OpenAI” i wybierz odpowiednią opcję z listy.

Wyszukiwanie węzłów OpenAI w n8n

Następnie, w sekcji „Text Actions”, wybierz węzeł „Message a model”. Tego węzła używa się do rozmowy z LLM.

Tworzenie węzła „Message a model” w n8n

Jak wcześniej, musimy utworzyć poświadczenia do OpenAI. Poświadczenia po utworzeniu można ponownie używać w dowolnym przepływie — nie trzeba ich ustawiać za każdym razem.

Do poświadczeń OpenAI potrzebny jest klucz API. Jeśli go nie masz, możesz utworzyć go tutaj. Jeśli napotkasz trudności, n8n ma też przewodnik.

W konfiguracji musimy wybrać model AI i wiadomość, którą do niego wyślemy.

Jako model użyjemy GPT‑4.1. OpenAI wypuściło już rodzinę GPT‑5 (5.4, 5.4‑mini, 5.5) i wycofało 4.1 z ChatGPT, ale przez API nadal jest dostępny i w zupełności wystarczy do takiego prostego wydobywania informacji. 

Wybór modelu AI w n8n

W polu wiadomości musimy podać prompt. W tym przykładzie przekazujemy modelowi treść e‑maila i prosimy o wskazanie numeru faktury oraz łącznej kwoty do zapłaty. Oto prompt, którego użyłem:

Konfiguracja promptu agenta w n8n

Treść e‑maila jest przekazywana jako {{ $json.snippet }}. W n8n prompt może zawierać zmienne wypełniane z outputu poprzednich węzłów — w naszym przypadku z e‑maila. Listę dostępnych pól widać po lewej. Możemy wpisać je ręcznie lub przeciągnąć do promptu.

Aby to przetestować, klikamy u góry panelu konfiguracji „Test Step”. Wynik wyświetli się po prawej:

Wynik to string z odpowiedzią modelu. Chcielibyśmy mieć te dwa pola osobno, żeby nie trzeba było dalej parsować wiadomości. Możemy to osiągnąć, zmieniając output LLM na JSON:

Konfiguracja formatu wyjściowego w n8n

Ponownie testując ten krok, otrzymujemy dwa pola jako dane JSON:

Wysyłanie danych do Google Sheet

Ostatni krok tego przepływu to wysłanie ID faktury i kwoty do nowego wiersza w Google Sheet. Teraz musimy połączyć output węzła OpenAI z Google Sheets. Robimy to jak wcześniej, klikając „+” po lewej stronie węzła:

Dodawanie ostatniego węzła w n8n

Wpisujemy Google Sheets i wybieramy węzeł „Append row in sheet”:

Wybór węzła Google Sheets w n8n

Możemy użyć tych samych poświadczeń, co do dostępu Gmail. Musimy jednak włączyć następujące API w Google Cloud Console:

  • Google Sheets API
  • Google Drive API

Aby skonfigurować węzeł Google Sheets, musimy wskazać arkusz i wybrać wartości do wypełnienia pól. Arkusz powinien być utworzony ręcznie z dwiema kolumnami — jedna na ID faktury, druga na jej łączną kwotę.

Początkowy stan arkusza

Wartości te pobieramy z outputu węzła OpenAI. Możemy przeciągnąć je do odpowiednich kolumn.

Uruchamianie przepływu

Gotowe! Mamy przepływ, który automatycznie przetwarza faktury do Google Sheet. Możemy go przetestować, klikając „Test workflow” na dole:

Testowanie przepływu w n8n

Po uruchomieniu, w naszym Google Sheet zobaczymy nowy wiersz z danymi:

Domyślnie przepływ uruchamia się co minutę. W zależności od przypadku powinniśmy dobrać odpowiednią częstotliwość. W tym przykładzie raz na minutę to zdecydowanie za często. Raz dziennie będzie bardziej odpowiednie. 

Możemy to ustawić, dwukrotnie klikając węzeł wyzwalający i zmieniając wartość w polu „Poll Times”:

Zmiana częstotliwości uruchamiania przepływu w n8n

Przykład 2: Budowa agenta RAG

W tej sekcji zbudujemy bardziej złożony przepływ agenta RAG. RAG to retrieval-augmented generation, technika łącząca wyszukiwanie istotnych informacji z bazy lub dokumentu z generowaniem odpowiedzi przez model językowy na podstawie tego kontekstu.

To bardzo przydatne, gdy mamy specyficzną bazę wiedzy, np. długi dokument, i chcemy zbudować agenta AI, który odpowiada na pytania na jego temat. 

Lubię gry planszowe, ale ze znajomymi często spieramy się o zasady i marnujemy czas na ich szukanie zamiast grać — to frustrujące. Zbudowanie agenta RAG opartego na zasadach gry rozwiązuje problem: następnym razem po prostu spytamy agenta.

Aby go zbudować, przygotujemy dwa przepływy:

  1. Jeden uruchomimy tylko raz, by wgrać dane do bazy Pinecone.
  2. Drugi zasili agenta RAG i użyje bazy Pinecone do odpowiadania na pytania.

Ładowanie danych do Pinecone

Pinecone to baza danych operująca na wektorach. Taka baza idealnie nadaje się do naszego agenta RAG, bo pozwala szybko wyszukać i zrozumieć istotne informacje, zwiększając trafność odpowiedzi.

Ponieważ ten przepływ uruchamiamy tylko raz, możemy użyć manual trigger. To węzeł do ręcznego uruchamiania przepływu. 

Manual trigger w n8n

Połącz manual trigger z węzłem „Google Drive”, aby pobrać dane z Dysku Google. 

Węzeł pobierania z Google Drive w n8n

Użyj następującej konfiguracji:

Konfiguracja pobierania z Google Drive w n8n

Użyłem publicznie dostępnego pliku mtgrules.txt z zasadami gry karcianej Magic: The Gathering. Ty możesz użyć dowolnego pliku, o który chcesz pytać — przepływ pozostaje ten sam.

Aby skonfigurować Pinecone, zaloguj się do Pinecone, skopiuj klucz API i utwórz indeks przyciskiem „Create index”. Mój indeks nazwałem rules i wybrałem model text-embedding-3-small.

Tworzenie indeksu w Pinecone

Wracając do n8n, połącz output węzła Google Drive z węzłem Pinecone Vector Store i akcją „Add documents to vector store”:

Tworzenie węzła Pinecone w n8n 

Aby go skonfigurować, musimy utworzyć poświadczenia, wklejając klucz API, i wybrać indeks Pinecone, który właśnie stworzyliśmy. Pod węzłem Pinecone Vector Store widać dwie rzeczy do konfiguracji: model embedding i loader danych.

Konfiguracja Pinecone Vector Store w n8n

Dla embeddingu utwórz węzeł OpenAI Embedding z modelem text-embedding-3-small:

Konfiguracja embeddingu dla Pinecone

Dla loadera danych tworzymy węzeł Default Data Loader z typem danych binarnych:

Konfiguracja loadera danych Pinecone w n8n

Na końcu loader wymaga węzła Text Splitter, który określa, jak dzielić dane z pliku przy tworzeniu vector store. Używamy Recursive Character Text Splitter — zalecanego w większości przypadków.

Dodanie węzła text splitter

Konfigurujemy go na wielkość fragmentu 1000 i nakładanie 200:

Konfiguracja text splitter w n8n

Wybierając rozmiar fragmentów i nakładanie, rozważ większe fragmenty dla długich dokumentów, by uchwycić wystarczającą treść, oraz mniejsze nakładanie, by utrzymać kontekst między częściami bez nadmiaru.

Tak wygląda finalny przepływ:

Finalny przepływ ładowania danych w n8n

Uruchamiamy go, klikając „Test workflow”, a po zakończeniu możemy zweryfikować w Pinecone, że dane zostały wgrane.

Tworzenie agenta RAG

Oto finalny schemat agenta RAG:

Finalny przepływ agenta RAG w n8n

Jako ćwiczenie zachęcam cię, by spróbować go zrozumieć, a może nawet odtworzyć lokalnie, zanim czytasz dalej.

Zaczynamy od wyzwalacza „On chat message”. Służy on do tworzenia przepływu czatu.

Wyzwalacz On chat message w n8n

Następnie łączymy wyzwalacz czatu z węzłem „AI Agent” z domyślnymi opcjami.

Węzeł AI Agent w n8n

Poniżej AI Agenta możemy skonfigurować trzy rzeczy:

  • Model AI używany przez agenta.
  • Pamięć, która definiuje, jak agent zapamiętuje kontekst rozmowy
  • Narzędzia, do których agent ma dostęp. W tym przypadku dostarczymy bazę Pinecone jako narzędzie, aby agent mógł odpowiadać na pytania o nasz dokument.

Jako model AI wybieramy węzeł „OpenAI Chat Model” i używamy GPT‑4.1, jak wcześniej. Rodzina GPT‑5 jest obecnie najnowsza u OpenAI, ale 4.1 ma okno kontekstu 1M tokenów i dobrze sprawdza się w RAG.

Konfiguracja modelu AI w n8n

Jako pamięć używamy „Simple Memory” z oknem kontekstu długości 5. To znaczy, że agent będzie pamiętał i brał pod uwagę pięć poprzednich interakcji przy odpowiadaniu.

Na koniec jako narzędzie dodajemy „Pinecone Vector Store” z następującą konfiguracją:

Konfiguracja narzędzia Pinecone Vector Store dla agenta AI w n8n

W polu opisu ważne jest określenie, kiedy narzędzie powinno być używane. Agent wykorzysta to do decyzji, czy wywołać narzędzie.

Ostatnia rzecz to konfiguracja embeddingu używanego przez vector store. Jak wcześniej, używamy węzła OpenAI Embedding z modelem text-embedding-3-small:

Konfiguracja embeddingu w n8n

Przepływ jest kompletny i możemy rozmawiać z agentem. Oto przykład:

Rozmowa z agentem AI w n8n

Po prawej widać kroki, które agent wykonał, by odpowiedzieć na nasze pytanie. W szczególności sięgnął do bazy Pinecone po odpowiednie informacje o zasadach.

Szablony n8n

n8n oferuje funkcję, która może znacząco przyspieszyć tworzenie przepływów: bibliotekę szablonów n8n.

To kolekcja gotowych przepływów, tworzonych przez społeczność i ekspertów n8n. Niezależnie, czy automatyzujemy proste zadanie, czy złożony proces, istnieje duża szansa, że ktoś już przygotował odpowiedni przepływ.

Importowanie przepływu do naszej instancji n8n oznacza, że nie zawsze musimy zaczynać od zera. Możemy skorzystać z gotowych rozwiązań innych użytkowników. Po imporcie wystarczy podać własne poświadczenia i dostosować szczegóły do naszych potrzeb.

Dla niemal każdego zadania, które chcesz zautomatyzować — od przetwarzania e‑maili po zarządzanie social mediami — w bibliotece prawdopodobnie znajdziesz szablon.

Podsumowanie

n8n oferuje ogromny ekosystem integracji, pozwalając łączyć ponad tysiąc usług i narzędzi, by tworzyć agentów AI. W tym tutorialu jedynie zarysowaliśmy możliwości n8n. Eksplorując budowę agentów AI do automatyzacji codziennych zadań, dopiero zaczęliśmy wykorzystywać jego potencjał.

Tematy

Ucz się AI z tymi kursami!

Track

Tworzenie aplikacji AI

21 godz.
Naucz się tworzyć aplikacje oparte na AI z wykorzystaniem najnowszych narzędzi dla deweloperów AI, w tym OpenAI API, Hugging Face i LangChain.
Zobacz szczegółyRight Arrow
Rozpocznij kurs
Zobacz więcejRight Arrow