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 + Postgres: sökbara dokument, alltid redo

Rickard Andersson Partner, Nodenordic.se

Dina dokument ligger ”någonstans i Drive”, men att hitta rätt stycke vid rätt tillfälle blir en liten skattjakt. Någon laddar ner en fil, söker manuellt, kopierar ett citat till Slack och gör sedan om samma sak nästa vecka eftersom ingenting är indexerat.

Det här är den sortens röra som marknadsansvariga känner av när de snabbt behöver godkända budskap. Ops-chefer stöter på det när SOP:ar är nedgrävda. Och byråägare hatar det eftersom varje kundfråga blir en tidstjuv. Med automatisering för Drive Postgres search blir nya filer ”frågebara” utan att du lyfter ett finger.

Det här arbetsflödet bevakar en Google Drive-mapp, gör nya dokument till OpenAI-embeddings, lagrar dem i Postgres (PGVector) och flyttar sedan filen så att du inte bearbetar den två gånger. Du får se vad det löser, vad det skapar och vad du behöver för att köra det stabilt.

Så fungerar automatiseringen

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

n8n Workflow Template: Google Drive + Postgres: sökbara dokument, alltid redo

Problemet: Drive-dokument är inte faktiskt sökbara

Google Drive är bra på att lagra filer. Det är inte bra på att besvara frågor. Visst kan du söka på titlar och kanske några nyckelord, men det verkliga arbetet finns inuti långa PDF:er, stökiga JSON-exporter och textnoteringar som ”final_v7” som aldrig blev korrekt formaterade. Så folk faller tillbaka på det sämsta systemet: att fråga den som ”kanske minns”. Det kostar tid, avbryter fokusarbete och skapar i det tysta inkonsekvenser eftersom alla citerar en lite olika version av sanningen.

Det eskalerar snabbt. Här är var det faller isär när din mapp blir ett levande bibliotek i stället för ett prydligt arkiv.

  • Team öppnar samma PDF om och om igen bara för att hitta en mening de använde förra månaden.
  • Viktigt sammanhang försvinner eftersom Drive-sökningen inte kan hitta ”liknande betydelse”, bara matchande ord.
  • Manuell indexering blir aldrig av, och när den väl gör det blir den inaktuell inom en vecka.
  • Dubbletter smyger sig in eftersom ingen kan se vad som redan har bearbetats och lagrats någon annanstans.

Lösningen: autovektorisera Drive-filer till Postgres

Det här n8n-arbetsflödet gör din Google Drive-mapp till en stabil ingest-pipeline för semantisk sökning. Det körs enligt schema (03:00 som standard) eller manuellt när du trycker ”Test workflow”, och tittar sedan i en vald Drive-mapp efter nya filer. Varje fil laddas ner, routas efter typ (PDF, TXT eller JSON) och parsas till strukturerad text. Därefter delar arbetsflödet upp innehållet i chunkar, skapar OpenAI-embeddings med modellen text-embedding-3-small och skriver in allt i Postgres med PGVector så att det direkt är redo att frågas mot för RAG, intern sök eller en AI-agent. Efter en lyckad insert flyttas filen till en ”vectorized”-mapp så att pipelinen hålls prydlig och deduplicerad.

Arbetsflödet startar med en Drive-mappskanning och bearbetar sedan filer i batchar så att det inte kvävs av en stor uppladdning. Det extraherar text baserat på MIME-typ, genererar embeddings, lagrar dem i din PGVector-tabell och flyttar till sist källfilen för att markera att den är klar.

Det här får du: automatisering vs. resultat

Exempel: så här ser det ut i praktiken

Säg att ditt team lägger 20 nya dokument i veckan i en delad Drive-mapp (en blandning av PDF:er, mötesanteckningar och JSON-exporter). Manuell hantering innebär ofta att någon lägger cirka 10 minuter per dokument på att ladda ner, skumma och plocka ut rätt utdrag när frågor dyker upp, vilket blir ungefär 3 timmar i veckan. Med det här arbetsflödet handlar det snarare om 5 minuter att lägga dokumentet i rätt mapp och sedan glömma det, medan nattkörningen ingesterar allt automatiskt. Nästa dag är svaren bara en databasfråga bort.

Det här behöver du

  • n8n-instans (testa n8n Cloud gratis)
  • Alternativ för självhosting om du föredrar det (Hostinger fungerar bra)
  • Google Drive för att lagra filer och bevaka mappar.
  • Postgres med PGVector för att lagra embeddings för sökning.
  • OpenAI API-nyckel (hämta den från OpenAI API-dashboarden).

Kunskapsnivå: Medel. Du kopplar in inloggningar, klistrar in mapp-ID:n och bekräftar inställningarna för din Postgres/PGVector-tabell.

Vill du inte sätta upp det här själv? Prata med en automationsspecialist (gratis 15-minuters konsultation).

Så fungerar det

Ett schema (eller en manuell körning) drar igång. Du kan köra det varje natt (03:00 är standard) eller klicka ”Test workflow” när du vill ingestera filer direkt.

Arbetsflödet hittar filer i din valda Drive-mapp. Det slår upp mappen och itererar sedan igenom objekt i batchar, vilket håller körningarna stabila även när någon dumpar in en stor backlog.

Varje fil laddas ner och konverteras till text. En filtypsrouter skickar PDF:er till PDF-parsern, ren text till en text-parser och JSON till en JSON-parser så att du får konsekvent text på andra sidan.

Embeddings skapas och lagras i Postgres (PGVector). Innehållet chunkas, vektorer skapas med OpenAI:s embedding-modell och skrivs sedan in i din konfigurerade PGVector-samling för semantisk sökning.

Du kan enkelt utöka stödda filtyper till exempelvis DOCX eller Markdown utifrån dina behov. Se hela implementationsguiden nedan för alternativ för anpassning.

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

Steg 1: Konfigurera manuella och schemalagda triggers

Ställ in de två triggers som kan starta arbetsflödet manuellt eller enligt schema.

  1. Öppna Manual Execution Start och behåll den som on-demand-trigger för testning och manuella körningar.
  2. Öppna Scheduled Automation Trigger och ställ in schemaregeln så att den körs var 4:e timme (IntervalhoursHours Interval = 4).
  3. Verifiera att båda triggers är kopplade till Find Drive Folder så att oavsett startpunkt går flödet vidare i samma bearbetningsväg.

Steg 2: Anslut Google Drive och lokalisera filer

Konfigurera åtkomst till Google Drive och definiera var arbetsflödet ska leta efter filer att bearbeta.

  1. Öppna Find Drive Folder och sätt Resource till fileFolder, Return All till true och Options → Fields till name och id.
  2. Sätt Filter → Folder ID till källmappen med [YOUR_ID] och What to Search till files.
  3. I Iterate Item Batches behåller ni standardinställningarna för att bearbeta filerna en och en från mappresultaten.
  4. Öppna Retrieve Drive File och sätt Operation till download med File ID satt till {{ $json.id }}.
  5. Inloggningsuppgifter krävs: Anslut era googleDriveOAuth2Api-inloggningsuppgifter i Find Drive Folder, Iterate Item Batches (om ni blir ombedda) och Retrieve Drive File.

⚠️ Vanlig fallgrop: Ersätt [YOUR_ID] i Find Drive Folder med det faktiska mapp-ID:t i Google Drive, annars returneras inga filer.

Steg 3: Rutta filer och extrahera innehåll

Använd en filtypsrouter för att skicka varje fil till rätt parser innan vektorisering.

  1. Öppna Route by File Type och bekräfta att de tre reglerna matchar MIME-typer med {{ $binary["data"].mimeType }} med rätt värden application/pdf, text/plain och application/json.
  2. Säkerställ att Route by File Type skickar vidare till Parse PDF Content, Parse Text Content och Parse JSON Content baserat på matchande MIME-typ.
  3. Ställ in Parse PDF Content till Operation pdf, Parse Text Content till Operation text och Parse JSON Content till Operation fromJson.

Steg 4: Konfigurera AI-bearbetning och vektorlagring

Chunk:a, berika, skapa embeddings och lagra det extraherade innehållet i PGVector.

  1. Konfigurera Recursive Text Chunker med Chunk Overlap satt till 50.
  2. Öppna Standard Data Loader och verifiera att värdena för metadata-mappning är satta till {{ $('Retrieve Drive File').item.json.name }} för filename och {{ $('Retrieve Drive File').item.json.id }} för id.
  3. Öppna PGVector Storage Insert och sätt Mode till insert, Table Name till collection_vectors och Collection Name till workflow_generator med Collection Table Name embedding_collections.
  4. Bekräfta att OpenAI Embedding Generator är ansluten som embedding-modell för PGVector Storage Insert.
  5. Inloggningsuppgifter krävs: Anslut era postgres-inloggningsuppgifter i PGVector Storage Insert.
  6. Inloggningsuppgifter krävs: Anslut era openAiApi-inloggningsuppgifter i OpenAI Embedding Generator (den här noden levererar embeddings till PGVector Storage Insert).

Tips: Standard Data Loader och Recursive Text Chunker är en del av AI-kedjan som matar PGVector Storage Insert, så säkerställ att deras kopplingar är intakta innan ni testar.

Steg 5: Konfigurera flytt av filer efter bearbetning

Flytta filer till en målmapp när de har lagts in i PGVector.

  1. Öppna Relocate Drive File och sätt Operation till move.
  2. Sätt File ID till {{ $('Iterate Item Batches').item.json.id }} och välj Drive ID My Drive.
  3. Sätt Folder ID till målmappen med [YOUR_ID] (cachelagrat namn vectorized).
  4. Inloggningsuppgifter krävs: Anslut era googleDriveOAuth2Api-inloggningsuppgifter i Relocate Drive File.

⚠️ Vanlig fallgrop: Om [YOUR_ID] i Relocate Drive File inte uppdateras kommer bearbetade filer inte att flyttas och blir kvar i källmappen.

Steg 6: Testa och aktivera ert arbetsflöde

Validera hela flödet och aktivera sedan automatisering för produktionsbruk.

  1. Klicka på Manual Execution Start och kör arbetsflödet för att testa med en exempelfil från källmappen.
  2. Bekräfta att en lyckad körning visar att Route by File Type väljer rätt parser och att PGVector Storage Insert skriver in i collection_vectors.
  3. Verifiera att filen flyttas av Relocate Drive File till målmappen.
  4. När ni är nöjda, aktivera arbetsflödet så att Scheduled Automation Trigger körs automatiskt var 4:e timme.
🔒

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

Få den kompletta implementeringsguiden + nedladdningsbar mall

Vanliga fallgropar

  • Google Drive-inloggningar kan löpa ut eller kräva specifika behörigheter. Om det slutar fungera, kontrollera först Google Drive OAuth-anslutningen i n8n under Credentials.
  • Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om efterföljande noder misslyckas på grund av tomma svar.
  • OpenAI-anrop kan misslyckas på grund av kvot- eller betalningsproblem, och det är lätt att missa. Om embeddings plötsligt slutar skapas, kontrollera dina användningsgränser i OpenAI API och säkerställ att nyckeln i Embeddings-noden matchar det aktiva projektet.

Vanliga frågor

Hur lång tid tar det att sätta upp den här Drive Postgres search-automatiseringen?

Cirka en timme om din åtkomst till Drive och Postgres redan är klar.

Behöver jag kunna koda för att automatisera Drive Postgres search?

Nej. Du kommer mest att klistra in ID:n, koppla konton och testköra.

Är n8n gratis att använda för det här Drive Postgres search-arbetsflödet?

Ja. n8n har ett gratis alternativ för självhosting och en gratis provperiod på n8n Cloud. Cloud-planer börjar på $20/månad för högre volym. Du behöver också räkna med kostnader för OpenAI API, vilket oftast är några cent per dokument beroende på längd.

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

Två alternativ: n8n Cloud (managed, enklast att komma igång) eller självhosting på en VPS. För självhosting är Hostinger VPS prisvärd och hanterar n8n bra. Självhosting ger dig obegränsade körningar men kräver grundläggande serverhantering.

Kan jag anpassa det här Drive Postgres search-arbetsflödet för DOCX och skannade PDF:er?

Ja, men du behöver lägga till ett eller två extraktionssteg. Du kan routa DOCX genom att utöka logiken i ”Route by File Type” och lägga till ytterligare en ”Extract from File”-parser för den MIME-typen. För skannade PDF:er lägger du normalt in ett OCR-steg före ”Parse PDF Content” och skickar sedan OCR-texten in i samma chunking- och embedding-flöde. Vanliga justeringar är också att ändra chunk-storlek i text-splittern och att skriva extra metadatafält (som avdelning, kund eller dokumenttyp) i PGVector-posterna.

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

Oftast beror det på utgånget OAuth-medgivande eller att fel Google-konto är kopplat. Anslut Google Drive-inloggningen igen i n8n och bekräfta sedan att kontot har åtkomst till både källmappen och ”vectorized”-mappen. Om det fortfarande misslyckas, kontrollera att mapp-ID:n i Find/Search/Move Drive-noderna är korrekta och att Drive API inte är begränsat av din workspace-administratör.

Hur många dokument kan den här Drive Postgres search-automatiseringen hantera?

Många, så länge servern och databasen hänger med. I n8n Cloud beror körvolymen på din plan, medan självhosting tar bort hårda körgränser och flyttar flaskhalsen till CPU/RAM och Postgres-prestanda. I praktiken börjar de flesta team med en liten batchstorlek, ingesterar en backlog över natten och låter sedan nattkörningen hantera nya filer framåt. Om du planerar att ingestera tusentals stora PDF:er behöver du finjustera batchning och se till att PGVector-index är korrekt uppsatta.

Är den här Drive Postgres search-automatiseringen bättre än att använda Zapier eller Make?

För just det här arbetsflödet har n8n några fördelar: mer komplex logik med obegränsad förgrening utan extra kostnad, möjlighet till självhosting för obegränsade körningar och inbyggda byggblock i LangChain/PGVector-stil som många no-code-verktyg inte hanterar särskilt snyggt. Batchningen är också viktig när du ingesterar backlogs, eftersom du kan styra genomströmningen i stället för att tajma ut. Zapier eller Make kan fortfarande fungera om du bara behöver ”ny fil → skicka notis”, men embeddings plus en databas-insert är där det börjar kännas klumpigt. Om du är osäker, prata med en automationsspecialist och kvalitetssäkra bästa vägvalet. Att välja fel verktyg här blir ärligt talat dyrt senare.

När det här väl rullar slutar nya Drive-filer vara ”saker du laddade upp” och blir i stället en sökbar kunskapskälla som dina verktyg faktiskt kan använda. Sätt upp det en gång och låt sedan mappen vara redo.

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