Behöver ert företag hjälp med att implementera AI? Kontakta oss och få prisoffert här →
AI Skolan
januari 22, 2026

Google Drive + Supabase: direkta produktsvar

Rickard Andersson Partner, Nodenordic.se

Din produktinfo finns ”någonstans i Google Drive”, vilket oftast betyder att den är ingenstans när en kund behöver ett svar direkt. Support pingar sälj, sälj pingar drift, och alla slösar tid på att leta efter samma specifikationsblad eller SKU-detaljer igen.

Den här Drive Supabase Q&A-setupen träffar supportansvariga först, men e-handelsansvariga och driftteam känner av samma friktion. Du får konsekventa, källstödda svar (med länkar) utan att behöva lära nya medarbetare var allt ligger.

Det här arbetsflödet hämtar produkt-JSON-filer från Google Drive, lagrar dem i Supabase för semantisk sökning och kör sedan en chatbot via Telegram eller en webbplats-webhook så att kunder (och ditt team) kan ställa frågor och få felfria, strukturerade svar.

Så fungerar den här automatiseringen

Hela n8n-arbetsflödet, från trigger till slutligt resultat:

n8n Workflow Template: Google Drive + Supabase: direkta produktsvar

Problemet: produktsvar finns på för många ställen

Om du säljer mer än en handfull produkter blir ”Vilket material är det?” snabbt en miniutredning. Specar ligger i en fil, bilder i en annan, och den senaste länken är begravd i en tråd från förra månaden. Det är inte bara långsamt. Det är riskabelt, eftersom medarbetare börjar gissa, kunder får motstridiga uppgifter och returerna smyger upp. Värst av allt: arbetet upprepas. Samma fem frågor dyker upp varje dag, och var och en triggar en ny runda av sökande och kopierande.

Friktionen byggs på. Små förseningar blir en backlog, och sedan lägger teamet sina bästa timmar på skattjakter.

  • Folk svarar utifrån minnet, och ”rätt” spec ändras beroende på vem som svarar.
  • Nyanställda behöver veckor för att lära sig var produktens ”sanning” faktiskt finns.
  • Kunder får vänta medan någon letar upp rätt SKU, bild eller URL till specifikationsblad.
  • Även när du hittar filen måste du fortfarande omformatera svaret till något läsbart.

Lösningen: Google Drive-inläsning + Supabase RAG-chatbot

Det här arbetsflödet gör dina produktfiler i Google Drive till en sökbar kunskapsbas i Supabase och lägger sedan ett Q&A-lager ovanpå som svarar på vanlig svenska med strukturerade detaljer och länkar. Först kör du en inläsningsomgång som listar produkt-JSON-filer i en Drive-mapp, laddar ner dem och normaliserar fälten så att de håller sig konsekventa. Sedan delar den upp innehållet i läsbara delar, skapar embeddings med en Mistral-modell och lagrar vektorerna i Supabase. Därefter kan chatbottensvara på frågor från Telegram eller en webbplats-webhook genom att söka i Supabase vektorlager och svara med produktnamn, attribut, bilder och URL:er. Om en produkt inte finns i katalogen säger agenten det artigt i stället för att hitta på.

Arbetsflödet har två ingångar: en manuell körning för att uppdatera kunskapsbasen och en livechatt-trigger för frågor. I mitten används Mistral för chattintelligens och embeddings, medan Supabase sköter semantisk sökning. Slutligen returnerar agenten ett formaterat svar till Telegram eller din webbplats, baserat på det som finns i products-datan som lagras i Supabase.

Vad du får: automatisering vs. resultat

Exempel: så här ser det ut

Säg att du får 20 produktfrågor om dagen via chatt och e-post, och att varje svar tar cirka 10 minuter för att hitta rätt Drive-fil, kopiera specar och klistra in länkar. Det är ungefär 3 timmar per dag av rent uppslagsarbete. Med det här arbetsflödet är ”arbetet” att ställa frågan i Telegram eller skicka den från din webbplats-webhook, vilket tar under en minut. Boten svarar på sekunder, och teamet kliver bara in vid specialfall. Det är cirka 2 timmar tillbaka de flesta dagar, utan att du behöver ändra hur ni hanterar produktfiler.

Det här behöver du

  • n8n-instans (prova n8n Cloud gratis)
  • Self-hosting-alternativ om du föredrar det (Hostinger fungerar bra)
  • Google Drive för att lagra dina produkt-JSON-filer
  • Supabase för att lagra vektorer och köra semantisk sökning
  • Mistral API-nyckel (hämta den i din Mistral Cloud-dashboard)

Kunskapsnivå: Medel. Du kopplar in autentiseringar, bekräftar din Drive-mapp och Supabase-tabell och testar prompts med några riktiga frågor.

Vill du inte sätta upp detta själv? Prata med en automatiseringsexpert (gratis 15-minuters konsultation).

Så fungerar det

Din kataloguppdatering startar på beställning. Du kör inläsnings-triggern i n8n när du vill fylla på eller uppdatera kunskapsbasen (nya produkter, uppdaterade specar, säsongskollektioner).

Google Drive-filer hämtas och normaliseras. Arbetsflödet listar filer i en Drive-mapp, laddar ner varje JSON, tolkar den och mappar sedan innehållet till korrekt formaterade fält så att den efterföljande sökningen blir stabil.

Mistral skapar embeddings, Supabase lagrar dem. Produkttext slås ihop och delas upp i överlappande chunkar (cirka 2 000 tecken), embeddings genereras och allt läggs in i din Supabase-vektortabell med metadata som titel, URL och chunk-index.

Frågor kommer in via chatt eller en webbplats-webhook. En Telegram-chatt-trigger eller en inkommande webhook skickar meddelandet till katalogagenten, som söker i Supabase efter relevanta chunkar och svarar med strukturerade produktdetaljer och länkar.

Du kan enkelt ändra Drive-mappen och utdataformateringen så att det matchar din butik och din tonalitet. Se den fullständiga implementationsguiden nedan för anpassningsalternativ.

Steg-för-steg-guide för implementering

Steg 1: Konfigurera trigger-noderna

Konfigurera arbetsflödets startpunkter för manuella körningar av ingestion och för chattförfrågningar som ska fråga kunskapsbasen.

  1. Öppna Manual Execution Start och behåll den som manuell trigger för körningar av dokumentingestion.
  2. Öppna Chat Message Trigger för att ta emot chattinmatning från n8n:s chattgränssnitt.
  3. Öppna Incoming Webhook Trigger och ställ in Path till b4c843be-698d-40c6-8e31-9370f5e165e0, HTTP Method till POST och Response Mode till responseNode.
  4. Bekräfta exekveringsflödet: Chat Message TriggerCatalog Support Agent och Incoming Webhook TriggerMap Chat FieldsCatalog Support Agent.

Sticky note Flowpast Branding är endast informativ och påverkar inte exekveringen.

Steg 2: Anslut Google Drive och konfigurera filidentifiering

Konfigurera Drive-åtkomst så att arbetsflödet kan hitta och iterera igenom filer som ska ingest:as.

  1. Öppna Retrieve Drive Files och ställ in Resource till fileFolder, Search Method till query och Limit till 150.
  2. I Retrieve Drive Files konfigurerar ni mappen i FilterfolderId och behåller OptionsFields med id, name, webViewLink, mimeType och *.
  3. Inloggningsuppgifter krävs: Anslut era googleDriveOAuth2Api-credentials i Retrieve Drive Files.
  4. Öppna Iterate Records för att bearbeta objekt i batchar; den tar emot objekt från Retrieve Drive Files och cyklar efter Delay Long.

⚠️ Vanlig fallgrop: Om mappfiltret är tomt eller ogiltigt kommer Retrieve Drive Files att returnera noll objekt och ingestion-loopen körs inte.

Steg 3: Härled metadata och ladda ner filer

Normalisera filmetadata, tilldela identifierare och ladda ner varje fil för parsning.

  1. Öppna Derive File Metadata och behåll JavaScript Code som bygger fileUrl från SharePoint-liknande metadata eller befintlig LinkingUrl.
  2. Öppna Assign File Identifiers och bekräfta tilldelningarna: file_id{{ $json.id }}, file_type{{ $json.mimeType }}, file_title{{ $json.name }}, file_url{{ $json.webViewLink }}, last_modified_date{{ $json.modifiedTime }}.
  3. Öppna Download Drive File och ställ in Operation till download, och ställ sedan in File ID till {{ $json.file_id }}.
  4. Inloggningsuppgifter krävs: Anslut era googleDriveOAuth2Api-credentials i Download Drive File.

Steg 4: Parsea och mappa dokumentinnehåll

Parsea den nedladdade filen och mappa nyckelfält till en standardiserad struktur före chunkning.

  1. Öppna Parse File Content och ställ in Operation till fromJson.
  2. Öppna Delay Short och ställ in Amount till 8 sekunder för att ge utrymme för nedströms bearbetning.
  3. Öppna Map Parsed Fields och bekräfta fältmappningarna: title{{ $json.data.page_title }} && {{ $json.data.title }}, summary{{ $json.data.comprehensive_summary }}, topics {{ $json.data.key_topics }}, process markdown{{ $json.data.processed_markdown }}, raw markdwon{{ $json.data.raw_markdown }}, cleaned markdown{{ $json.data.fit_markdown }}, URL{{ $json.data.url}}.

⚠️ Vanlig fallgrop: Fältnamnen topics och raw markdwon innehåller efterföljande/typo-text med avsikt. Om ni ändrar dessa bryts nedströms referenser.

Steg 5: Chunka, skapa embeddings och lagra vektorer i Supabase

Dela upp innehåll i chunkar, lägg till metadata och lagra embeddings i Supabase för återhämtning.

  1. Öppna Chunk Text Payload och behåll JavaScript-logiken som kombinerar summary, cleaned markdown och process markdown, och sedan splittrar med DEFAULT_CHUNK_SIZE = 2000 och DEFAULT_OVERLAP = 0.3.
  2. Öppna Store Vectors in Supabase och ställ in Mode till insert, Table Name till website_mark och Query Name till match_website_mark.
  3. Öppna Delay Long och ställ in Amount till 30 sekunder; exekveringen loopar sedan tillbaka till Iterate Records för nästa fil.
  4. Öppna Character Chunk Splitter och ställ in Chunk Size till 100000 för AI-dokumentpipen.
  5. Öppna Standard Document Loader och ställ in JSON Data till {{ $json.content }}, JSON Mode till expressionData och metavärden som source_url{{ $json.metadata.url }}, loc{{ $json.metadata.loc }}, title{{ $json.metadata.title }}, page_no{{ $json.metadata.page }} och topics{{ $('Map Parsed Fields').item.json['topics '] }}.
  6. Mistral Embeddings Generator är ansluten som embedding-modell för Store Vectors in Supabase—lägg till credentials i Store Vectors in Supabase, inte i embedding-subnoden.

Steg 6: Konfigurera retrieval och RAG-assistenten

Konfigurera vektor-retrieval och den konversationsagent som använder RAG för att besvara chattförfrågningar.

  1. Öppna Mistral Chat Model och ställ in Model till mistral-medium-latest och Temperature till 0.7.
  2. Öppna Supabase Vector Retrieval och ställ in Mode till retrieve-as-tool, Top K till 10, Tool Name till documents, Tool Description till Use RAG to look up information in the knowledgebase., Table Name till products och Query Name till match_product.
  3. Öppna Catalog Support Agent och ställ in Text till {{ $json.chatInput }}, Prompt Type till define och behåll systemprompten som instruerar agenten att fråga Supabase efter katalogförslag.
  4. Öppna Map Chat Fields och verifiera chatInput{{ $json.chatInput || $json.body?.chatInput || $json.body?.[0]?.chatInput }} och sessionId{{ $json.sessionId || $json.body?.sessionId || $json.body?.[0]?.sessionId }}.
  5. Öppna Conversation Memory Buffer och ställ in Context Window Length till 15; detta minne är kopplat till Catalog Support Agent.
  6. Mistral Embeddings Lookup är ansluten som embedding-modell för Supabase Vector Retrieval—lägg till credentials i Supabase Vector Retrieval, inte i embedding-subnoden.
  7. Conversation Memory Buffer är en subnod till Catalog Support Agent—lägg till credentials i Catalog Support Agent, inte i minnes-subnoden.

Steg 7: Testa och aktivera ert arbetsflöde

Verifiera dokumentingestion och chattsvar innan ni aktiverar arbetsflödet för produktion.

  1. Klicka på Execute WorkflowManual Execution Start för att ingest:a Drive-filer och bekräfta att Store Vectors in Supabase tar emot chunkat innehåll med metadata.
  2. Skicka ett testmeddelande via Chat Message Trigger eller POST:a till Incoming Webhook Trigger-sökvägen och bekräfta ett svar från Catalog Support Agent.
  3. Lyckad exekvering ska visa dataflöde från Retrieve Drive FilesIterate RecordsStore Vectors in Supabase och chattfrågor som hämtar resultat via Supabase Vector Retrieval.
  4. När allt är verifierat, växla arbetsflödet till Active för produktion.
🔒

Lås upp fullständig steg-för-steg-guide

Få den kompletta implementeringsguiden + nedladdningsbar mall

Vanliga fallgropar

  • Google Drive-autentisering kan löpa ut eller kräva specifika behörigheter. Om något slutar fungera, kontrollera först n8n:s credential-test och mappens delningsinställningar.
  • Om du använder Wait-noder eller extern bearbetning varierar timing. Det här arbetsflödet pausar mellan filer (inklusive en längre fördröjning på 30 sekunder), så öka väntetiden om Supabase-insertar misslyckas på grund av rate limits eller tomma payloads.
  • Standardprompter i AI-noder är generiska. Lägg in din varumärkeston tidigt, annars kommer du redigera utdata för alltid, särskilt kring enheter, storleksformuleringar och friskrivningar om ”det vi inte vet”.

Vanliga frågor

Hur lång tid tar det att sätta upp den här Drive Supabase Q&A-automatiseringen?

Cirka en timme om din Drive-mapp och ditt Supabase-projekt är redo.

Behöver jag kunna koda för att automatisera produkt-Q&A med den här Drive Supabase Q&A-automatiseringen?

Nej. Du kopplar konton, klistrar in en API-nyckel och justerar några fält. Den enda ”tekniska” delen är att verifiera din Supabase-tabell och testa med riktiga frågor.

Är n8n gratis att använda för det här Drive Supabase Q&A-arbetsflödet?

Ja. n8n har ett gratis self-hosted-alternativ och en gratis provperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volym. Du behöver också räkna med Mistral API-användning för chatt och embeddings, vilket kan lägga på en mindre kostnad när frågor och dokument skalar upp.

Var kan jag hosta n8n för att köra den här automatiseringen?

Två alternativ: n8n Cloud (hanterat, enklast setup) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och hanterar n8n bra. Self-hosting ger obegränsade körningar men kräver grundläggande serverhantering.

Kan jag anpassa det här Drive Supabase Q&A-arbetsflödet till mitt eget produktfilformat?

Ja, men räkna med att lägga lite tid på mappningen. Du uppdaterar steget ”Map Parsed Fields” så att dina JSON-nycklar (som ”Item Number” eller ”Spec Sheet URL”) hamnar i konsekventa fält. Du kan också justera chunking-beteendet i textdelningsdelen om dina filer är väldigt korta eller väldigt långa, och finjustera agentprompten så att svaren matchar din ton. Vanliga anpassningar är att bara returnera varianter som finns i lager, prioritera vissa kollektioner och alltid visa en rad med ”källänk”.

Varför misslyckas min Google Drive-anslutning i det här arbetsflödet?

Oftast beror det på att OAuth-åtkomst har löpt ut eller att Drive-kontot har tappat behörighet till mappen. Anslut Google Drive-credentialn igen i n8n och bekräfta sedan att mappen fortfarande är delad med det kontot. Om det bara fallerar på vissa filer, kontrollera om arbetsflödet försöker ladda ner filer som inte är JSON, eftersom parsningen skapar fel direkt efter nedladdning.

Hur många produktposter kan den här Drive Supabase Q&A-automatiseringen hantera?

Många, så länge din Supabase-tabell och din n8n-plan hänger med.

Är den här Drive Supabase Q&A-automatiseringen bättre än att använda Zapier eller Make?

För en RAG-chatbot är n8n oftast det mer praktiska valet. Du får mer flexibel logik, du kan self-hosta för obegränsade körningar och noder i LangChain-stil för embeddings, vektorlager och minne gör den här typen av setup betydligt mindre ihoptejpad. Zapier eller Make kan fungera om du gör enkla uppslag, men när du lägger till chunking, embeddings och ”svara bara från kunskapsbasen” blir det både klumpigt och dyrt. Den största vinsten är ärligt talat kontroll: du kan se varje steg och ändra det när ditt katalogformat utvecklas. Vill du ha hjälp att välja? Prata med en automatiseringsexpert.

När detta väl rullar slutar produktkunskap vara en skattjakt. Arbetsflödet tar hand om det repetitiva uppslagsarbetet så att du kan fokusera på riktig support och riktiga säljsamtal.

Kontakta oss

Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.

×

Använd mall

Få direkt tillgång till denna n8n-arbetsflödes JSON-fil

Launch login modal Launch register modal