Pomiń do treści
Tutorial12 min czytania

Agent AI w n8n — zbuduj asystenta rozmawiającego z bazą danych

Zbuduj n8n agent AI z pamięcią i dostępem do Supabase. Tutorial krok po kroku — n8n chatbot który odpowiada na pytania o dane z Twojej bazy, bez pisania kodu.

PF
Patryk Filipowicz·10 maja 2026

Piszesz do bota: "Które zgłoszenia supportowe są nadal otwarte?" — i dostajesz odpowiedź z danymi z bazy. Bez klikania w Supabase, bez SQL-a, bez dashboardów.

W tym tutorialu zbudujesz n8n agent AI który rozumie pytania po polsku, odpytuje bazę Supabase przez HTTP Request skonfigurowany jako narzędzie, i pamięta kontekst rozmowy. Workflow ma 3 główne węzły i 20 minut konfiguracji.

Jeśli chcesz najpierw zrozumieć jak agenci AI działają w teorii, zacznij od artykułu o czym są agenci AI.


Co zbudujesz — n8n agent z bazą danych Supabase

Workflow ma jeden węzeł wyzwalający (Chat) i jeden centralny (AI Agent) z trzema podpiętymi komponentami: modelem językowym, pamięcią i narzędziem do Supabase.

Przegląd workflow — n8n agent AI z Supabase, OpenAI i pamięcią Źródło: zrzut ekranu z panelu n8n — opracowanie własne

Agent umie:

  • Odpowiadać na pytania o dane z bazy — tickety, klientów, statusy zgłoszeń
  • Pamiętać kontekst — "a z tych otwartych, które mają wysoki priorytet?" działa bez powtarzania
  • Sam konstruować zapytania do Supabase — opisujesz strukturę bazy, LLM resztą zajmuje się sam
  • Odmawiać gdy pytanie wykracza poza dostępne dane

Nie masz jeszcze n8n? → Instalacja n8n na mikr.us krok po kroku


Wymagania przed startem

  • n8n (self-hosted lub cloud)
  • Konto OpenAI z kluczem API
  • Baza Supabase — darmowe konto wystarczy
  • Dane w Supabase — w przykładzie używamy tabel customers, tickets i ticket_messages

Krok 1 — Chat Trigger

Kliknij Add first step…, wyszukaj Chat Trigger i dodaj go. Nazwij węzeł Chat. To wbudowany węzeł n8n który uruchamia okno czatu bezpośrednio w panelu — idealny do testów.

Domyślne ustawienia wystarczą. Węzeł przekazuje do następnego węzła trzy wartości: chatInput (treść wiadomości), sessionId (identyfikator sesji) i action.


Krok 2 — AI Agent

Dodaj węzeł AI Agent z kategorii AI i nazwij go Agent AI do bazy danych. To centralny węzeł — tutaj LLM dostaje narzędzia i pamięć i sam decyduje jak odpowiedzieć na pytanie.

Konfiguracja węzła AI Agent w n8n — Source for Prompt i chatInput Źródło: zrzut ekranu z panelu n8n — opracowanie własne

W konfiguracji ustaw:

  • Source for Prompt (User Message): Connected Chat Trigger Node
  • Prompt (User Message): {{ $json.chatInput }}

Pole Require Specific Output Format zostaw wyłączone — agent ma odpowiadać swobodnie, nie parsowanym JSON-em.


Krok 3 — Model językowy

Kliknij + przy Chat Model w węźle AI Agent i dodaj węzeł OpenAI Chat Model.

Konfiguracja OpenAI Chat Model z modelem o4-mini w n8n Źródło: zrzut ekranu z panelu n8n — opracowanie własne

Ustawienia:

  • Credential: wybierz swoje konto OpenAI
  • Model: o4-mini — model rozumujący dobry do pracy z danymi strukturalnymi

Widoczne w outputcie tokeny (promptTokens: 308, completionTokens: 108) pokazują że jedno pytanie to typowo kilkaset tokenów — koszt jest niski.


Krok 4 — Pamięć (n8n memory)

Bez pamięci każde pytanie to nowa rozmowa — agent nie wie co było przed chwilą. Kliknij + przy Memory i dodaj węzeł Simple Memory (Window Buffer Memory).

Konfiguracja pamięci Window Buffer Memory z sessionId w n8n Źródło: zrzut ekranu z panelu n8n — opracowanie własne

Ustaw:

  • Session ID: Connected Chat Trigger Node
  • Session Key From Previous Node: {{ $json.sessionId }}
  • Context Window Length: 5 — agent pamięta ostatnie 5 wymian

Węzeł n8n memory przechowuje kontekst lokalnie — wystarczy do testów i małych wdrożeń. Dla produkcji z wieloma użytkownikami rozważ Postgres Chat Memory podpięte do Supabase.


Newsletter AIzi.pl

Zostań na bieżąco z AI

Narzędzia, porady i aktualności ze świata AI.

500 promptów AI po polsku — ekskluzywnie dla subskrybentów.

Krok 5 — Supabase API jako narzędzie agenta

To serce całego workflow. Agent sam decyduje kiedy odpytać bazę i co zapytać — na podstawie opisu narzędzia który mu dajesz.

Kliknij + przy Tool w węźle AI Agent i dodaj węzeł HTTP Request.

Opis narzędzia — co agent "wie" o bazie

W polu Description węzła HTTP Request wpisz dokładny opis tabel i instrukcję użycia. Agent LLM czyta ten opis i na jego podstawie konstruuje zapytania:

Opis narzędzia Supabase API — tabele i instrukcje dla agenta w n8n Źródło: zrzut ekranu z panelu n8n — opracowanie własne

Narzędzie do pobierania danych z bazy Supabase.

Dostępne tabele:
- customers – klienci (kolumny: id, name, email, company, created_at)
- tickets – zgłoszenia supportowe (kolumny: id, customer_id, title, description, status, priority, created_at, resolved_at)
- ticket_messages – wiadomości w ticketach (kolumny: id, ticket_id, author, message, is_internal, created_at)

Jak używać:
- Aby pobrać wszystkie rekordy z tabeli: GET https://[twoj-projekt].supabase.co/rest/v1/NAZWA_TABELI
- Aby filtrować np. tylko otwarte tickety: GET https://[twoj-projekt].supabase.co/rest/v1/tickets?status=eq.open
- Aby pobrać tickety konkretnego klienta: GET https://[twoj-projekt].supabase.co/rest/v1/tickets?customer_id=eq.UUID

Używaj tego narzędzia gdy użytkownik pyta o dane, statystyki, liczbę zgłoszeń lub status ticketów.

Wstaw swój URL Supabase w miejsce [twoj-projekt]. URL znajdziesz w panelu Supabase → Settings → API.

Autentykacja

W ustawieniach węzła HTTP Request (zakładka Parameters) ustaw:

Autentykacja Supabase API przez credentials w n8n Źródło: zrzut ekranu z panelu n8n — opracowanie własne

  • URL: Defined automatically by the model — model sam buduje URL na podstawie opisu
  • Authentication: Predefined Credential Type
  • Credential Type: Supabase API
  • Supabase API: wybierz lub dodaj credentials swojego projektu Supabase

Dzięki "Defined automatically by the model" nie musisz ręcznie wpisywać URL ani parametrów — agent konstruuje je sam. To kluczowa różnica od zwykłego HTTP Request.


Krok 6 — Test

Kliknij Open chat na dole panelu n8n. Zadaj pytanie o dane.

Test agenta n8n — pytanie o tickety supportowe z odpowiedzią z Supabase Źródło: zrzut ekranu z panelu n8n — opracowanie własne

W zakładce Logs zobaczysz pełną ścieżkę wykonania: Chat → Agent → Pamięć → OpenAI → Supabase API → OpenAI → Pamięć. Agent odpytał Supabase, dostał dane i sformułował odpowiedź.

Przykładowe pytania testowe:

  • "Ile mamy otwartych zgłoszeń?"
  • "Które tickety mają wysoki priorytet?"
  • "A z tych — które są najstarsze?" ← test pamięci kontekstu

Jeśli agent nie używa narzędzia — sprawdź opis w polu Description. LLM musi wiedzieć kiedy i jak go użyć. Precyzyjniejszy opis = mniej pomyłek.


Jak rozbudować agenta

Podstawowy n8n chatbot z bazą danych działa. Co możesz dodać:

Podłącz do Telegrama Zamień Chat Trigger na Telegram Trigger i dodaj odpowiedź przez węzeł Telegram. Pełny tutorial: podłącz agenta do Telegrama.

Wiele narzędzi Dodaj kolejne węzły HTTP Request jako Tools — np. osobne dla odczytu i zapisu, albo dla różnych serwisów. Agent sam wybiera które narzędzie pasuje do pytania.

Ochrona danych wrażliwych Jeśli baza zawiera dane osobowe klientów (email, telefon), ogranicz co agent może zwracać. W opisie narzędzia dodaj: "Nie zwracaj pola email ani danych kontaktowych." Pamiętaj, że AI może się mylić — zawsze testuj co agent ujawnia przed wdrożeniem produkcyjnym i zweryfikuj czy możesz udostępniać dane z bazy przez AI.

Pamięć długoterminowa Zamień Simple Memory na Postgres Chat Memory podpięte do Supabase — rozmowy będą trwałe między sesjami i dostępne dla wielu użytkowników jednocześnie.


Najczęstsze pytania

Czym różni się n8n agent od zwykłego workflow?

Zwykły workflow n8n wykonuje kroki po kolei według ustalonej sekwencji. N8n agent ma LLM jako "mózg" który sam decyduje jakich narzędzi użyć i w jakiej kolejności — na podstawie pytania użytkownika. Możesz zadać pytanie w języku naturalnym i agent sam wywoła odpowiednie zapytanie do bazy.

Czy n8n chatbot z bazą danych wymaga znajomości SQL?

Nie. Agent sam konstruuje zapytania do Supabase REST API na podstawie pytania i opisu narzędzia. Musisz opisać strukturę tabel w języku naturalnym — resztą zajmuje się LLM.

Jak działa "Defined automatically by the model" w HTTP Request?

To specjalny tryb węzła HTTP Request w n8n przeznaczony dla narzędzi agenta. Zamiast stałego URL, LLM buduje go dynamicznie na podstawie opisu narzędzia i kontekstu pytania. Agent może więc odpytywać różne endpointy i z różnymi filtrami w zależności od potrzeby.

Ile kosztuje n8n agent z LLM?

Zależy od wybranego modelu i liczby zapytań. Jedno pytanie to zazwyczaj kilkaset tokenów — przy o4-mini koszty są niskie. Dokładne stawki sprawdź w aktualnym cenniku OpenAI.

Czy mogę użyć bazy innej niż Supabase?

Tak. Zamiast Supabase API credentials możesz użyć dowolnego REST API — MySQL przez PlanetScale, Airtable, Google Sheets API lub własny backend. Zmieniasz credentials i opis narzędzia.

Jak n8n memory działa między sesjami?

Simple Memory (Window Buffer Memory) trzyma kontekst tylko w ramach aktywnej sesji i lokalnie w n8n. Dla trwałości między sesjami użyj Postgres Chat Memory podpięte do bazy — historia zapisuje się per session_id.


Agent AI z dostępem do bazy to fundament pod asystenta supportu, narzędzie do analizy danych albo wewnętrzny chatbot firmowy. Kluczowy element to precyzyjny opis narzędzia — im lepiej opisujesz strukturę bazy i zasady użycia, tym trafniej agent odpowiada.

Nota redakcyjna: AIzi.pl jest niezależnym blogiem edukacyjnym. Nie jest powiązany, sponsorowany ani zatwierdzony przez OpenAI, Anthropic, n8n, Mistral AI ani żaden inny podmiot. Nazwy ChatGPT, Claude, n8n, Mistral i innych narzędzi są używane wyłącznie w celu informacyjnego wskazania omawianych produktów i należą do ich właścicieli. Wszelkie treści powstają na podstawie własnych doświadczeń autora.

Newsletter

Zostań na bieżąco z AI

Narzędzia, gotowe prompty i ciekawe rzeczy ze świata AI — bez spamu.

500 promptów AI po polsku — ekskluzywnie dla subskrybentów.