Du har redan svaren. De är bara instängda i PDF:er, utspridda i Drive-mappar, gamla e-posttrådar och bilagor som heter “final_v7”. Folk fortsätter ställa samma frågor eftersom det är långsamt, opålitligt eller ärligt talat omöjligt att söka i de filerna.
Den här Mistral OCR Weaviate-automationen träffar marknadsteam hårt när de behöver snabba budskapspåståenden och källcitat. Driftsansvariga märker det när processdokument bor i PDF:er som ingen läser. Och kundnära konsulter tröttnar på att jaga det där enda stycket som styrker ett svar.
Det här arbetsflödet gör PDF:er till ett sökbart kunskapsbibliotek, så att du kan ställa en fråga och få tillbaka rätt avsnitt på sekunder. Nedan ser du hur det fungerar, vad du behöver och vilka resultat du kan förvänta dig.
Så fungerar den här automatiseringen
Hela n8n-flödet, från trigger till slutresultat:
n8n Workflow Template: Mistral OCR + Weaviate: sökbara PDF:er snabbt
flowchart LR
subgraph sg0["MCP Knowledge Server Flow"]
direction LR
n0@{ icon: "mdi:vector-polygon", form: "rounded", label: "Cohere Embeddings", pos: "b", h: 48 }
n1@{ icon: "mdi:robot", form: "rounded", label: "Document Loader", pos: "b", h: 48 }
n2@{ icon: "mdi:robot", form: "rounded", label: "Cohere Reranker", pos: "b", h: 48 }
n3@{ icon: "mdi:play-circle", form: "rounded", label: "MCP Knowledge Server", pos: "b", h: 48 }
n4@{ icon: "mdi:cube-outline", form: "rounded", label: "Search Knowledge Base", pos: "b", h: 48 }
n5@{ icon: "mdi:robot", form: "rounded", label: "Text Splitter", pos: "b", h: 48 }
n6["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/form.svg' width='40' height='40' /></div><br/>Upload PDF"]
n7["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/mistralAi.svg' width='40' height='40' /></div><br/>Extract Text from PDF"]
n8@{ icon: "mdi:swap-vertical", form: "rounded", label: "Prepare Document Data", pos: "b", h: 48 }
n9@{ icon: "mdi:cube-outline", form: "rounded", label: "Store in Vector Database", pos: "b", h: 48 }
n6 --> n7
n5 -.-> n1
n2 --> n4
n1 -.-> n9
n0 -.-> n4
n0 -.-> n9
n7 --> n8
n8 --> n9
n4 -.-> n3
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n3,n6 trigger
class n1,n2,n5 ai
class n4,n9 ai
class n0 ai
classDef customIcon fill:none,stroke:none
class n6,n7 customIcon
Problemet: PDF:er fungerar inte som en kunskapsbas
PDF:er är där information går för att gömma sig. Du kanske har onboardingguider, varumärkesdeck, avtal, research, SOP:er och produktdokumentation… men när någon behöver ett svar frågar de ändå en person. Sedan tappar någon annan 20 minuter på att skumma, kopiera utdrag och tveka kring om dokumentet är aktuellt. Multiplicera det med några frågor om dagen och det blir en konstant skatt på teamets uppmärksamhet. Ännu värre: “svaret” glider över tid när folk sammanfattar ur minnet i stället för att citera källan.
Det växer snabbt. Här är var det faller isär i verkligheten.
- Sökning i PDF:er missar nyckelfraser när filen är skannad, märkligt formaterad eller uppdelad i kolumner.
- Folk återskapar samma förklaringar eftersom det inte finns något snabbt sätt att hämta bästa stycket och länka tillbaka till dokumentet.
- Manuella “kunskapsbas”-insatser dör eftersom taggning och uppladdning tar för lång tid för att hinna med nya dokument.
- När du inte kan lita på sökresultaten slutar du använda dem, vilket gör att teamet lutar ännu mer på Slack-pingar och möten.
Lösningen: OCR:a PDF:er, skapa embeddingar och gör dem sökbara
Det här arbetsflödet bygger ett PDF-till-vektor “kunskapsbibliotek” med n8n som limmet. Det startar när någon laddar upp en PDF via en enkel formulärtrigger, vilket passar interna team som inte vill röra mappar eller pipelines. n8n skickar PDF:en till Mistral OCR för att extrahera text, även när dokumentet är skannat eller bildtungt. Sedan rensar och paketerar flödet innehållet med grundläggande metadata som filnamn, källa och uppladdningstid. Därefter delas texten upp i chunkar som är lättare att söka i och lagras i Weaviate som vektorer. Därifrån hämtar semantisk sökning (driven av Cohere-embeddingar och reranking) tillbaka de bästa träffarna när du ställer en fråga, och en MCP-endpoint exponerar kunskapsbasen som ett verktyg för AI-assistenter.
Arbetsflödet startar med en PDF-uppladdning, kör sedan OCR och förbereder en strukturerad payload. Därefter chunkar det texten och skriver in den i Weaviate för återhämtning. Slutligen gör MCP-serverdelen att andra system kan fråga din kunskapslagring och få underbyggda resultat från dokumenten.
Det här får du: automation vs. resultat
| Vad det här arbetsflödet automatiserar | Resultat du får |
|---|---|
|
|
Exempel: så här kan det se ut
Säg att teamet lägger till 10 PDF:er i veckan (SOP-uppdateringar, leverantörsdokument, interna playbooks). Tidigare tog varje dokument ungefär 15 minuter att “göra användbart”: ladda upp till en mapp, döpa om, sammanfatta och berätta för teamet var det ligger, vilket är cirka 2,5 timmar per vecka. Sedan kommer sökandet: kanske 5 frågor om dagen med 10 minuters grävande per fråga, alltså runt 4 timmar i veckan. Med det här flödet tar uppladdningen ungefär en minut och indexeringen körs i bakgrunden, så du behåller i stort sett 6+ timmar och slipper svara på samma saker om och om igen.
Det här behöver du
- n8n-instans (testa n8n Cloud gratis)
- Alternativ för self-hosting om du föredrar det (Hostinger fungerar bra)
- Mistral AI för OCR och textextraktion
- Weaviate för att lagra och söka i vektorer
- Cohere API-nyckel (hämta den i din Cohere-dashboard)
Kompetensnivå: Medel. Du kommer att koppla API:er, namnge en Weaviate-kollektion (som “KnowledgeDocuments”) och testa ett par sökvägar.
Vill du inte sätta upp detta själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
PDF-uppladdning startar allt. En formulärtrigger tar emot en PDF, vilket gör inläsningen enkel för icke-tekniska kollegor. Du kan standardisera detta som “Släpp dokument här” och slippa jaga filer mellan verktyg.
OCR gör filen till text du kan lita på. Mistral OCR extraherar innehåll från PDF:en så att skannade sidor och udda layouter inte saboterar sökningen. Flödet fångar också grundläggande metadata (filnamn, källa och tidsstämpel) så att resultat går att spåra senare.
Chunkning och embeddingar gör den sökbar. Texten delas upp i mindre block, och sedan skapar Cohere embeddingar för dessa chunkar. Det är den här delen som möjliggör “betydelsebaserad” sökning, inte bara nyckelordsmatchning.
Weaviate lagrar och levererar kunskapen. Chunkar och metadata sparas i en Weaviate-kollektion, och en sökväg hämtar de bästa matchningarna. Med Cohere reranking är toppresultaten oftast de avsnitt du själv skulle välja efter att ha skummat.
Du kan enkelt ändra var PDF:erna kommer ifrån (en Drive-mapp, en e-postinkorg) så att det matchar ert inflöde. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: Konfigurera MCP-triggern
Konfigurera endpointen för kunskapshämtning så att externa verktyg kan fråga vektorlagret.
- Lägg till noden MCP Knowledge Endpoint och ställ in Path till
c74c97f5-0197-45e3-b4dd-f3efbd4bab22. - Ställ in Authentication till
headerAuthoch förbered er klient för att skicka de header-värden som krävs. - Koppla Query Knowledge Store till MCP Knowledge Endpoint som ett AI-verktyg (detta är hämtning-endpointen som används av externa anropare).
Steg 2: Anslut formuläret för PDF-uppladdning
Skapa ett användarvänligt formulär så att PDF:er kan laddas upp till kunskapsbasen.
- Lägg till PDF Upload Form och ställ in Form Title till
Upload Documents to Knowledge Base. - Ställ in Form Description till
Upload PDF files to the knowledge base for AI-powered search and retrieval. - I Form Fields lägger ni till ett filfält med Field Label
PDF Fileoch Accept File Types.pdf. - Aktivera Button Label
Upload Documentoch låt Response Mode vara inställt pålastNode. - Koppla PDF Upload Form till OCR Text Extraction för att starta textextraktion vid uppladdning.
.pdf. Om användare laddar upp andra filtyper kommer formuläret att neka inskickningen.Steg 3: Sätt upp OCR och bygg dokumentets payload
Extrahera text från PDF:en och strukturera den till en payload som är redo för vektorlagring.
- Lägg till OCR Text Extraction och ställ in Binary Property till
file. - Inloggningsuppgifter krävs: Anslut era Mistral AI-uppgifter i OCR Text Extraction.
- Lägg till Assemble Document Payload och skapa följande tilldelningar:
- Ställ in filename till
{{ $('PDF Upload Form').item.json.file.filename }}. - Ställ in content till
{{ $json.extractedText }}. - Ställ in source till
uploaded_pdfoch upload_timestamp till{{ new Date().toISOString() }}. - Koppla OCR Text Extraction till Assemble Document Payload.
Steg 4: Konfigurera vektorlager och AI-hämtning
Lagra dokumentsegment i Weaviate och aktivera hämtning med Cohere-embeddingar och omrankning.
- Lägg till Persist to Vector Store med Mode inställt på
insert. - Inloggningsuppgifter krävs: Anslut era Weaviate-uppgifter i Persist to Vector Store och välj målkollektionen i Weaviate Collection.
- Lägg till Query Knowledge Store med Mode
retrieve-as-tool, aktivera Use Reranker och ställ in Tool Description tillUse this tool to search and retrieve information from the knowledge base containing various documents and resources. - Ställ in Weaviate Collection i Query Knowledge Store till
KnowledgeDocumentsoch låt Include Document Metadata varafalse. - Lägg till Cohere Vector Encoder med Model Name
embed-multilingual-v3.0och koppla den som embeddings-källa för både Query Knowledge Store och Persist to Vector Store. - Lägg till Cohere Reorderer och koppla den till Query Knowledge Store som reranker.
- Lägg till Segment Text Blocks med Chunk Size
600och Chunk Overlap200, och koppla den sedan till Load Source Documents som textdelare. - Lägg till Load Source Documents med Text Splitting Mode inställt på
custom, och koppla den till Persist to Vector Store som dokumentladdare.
Steg 5: Testa och aktivera ert workflow
Verifiera både uppladdning-till-inläsning-flödet och hämtning-endpointen innan ni aktiverar workflowet.
- Klicka på Execute Workflow och skicka in en PDF via PDF Upload Form.
- Bekräfta att OCR Text Extraction returnerar extraherad text och att Assemble Document Payload skapar fält för filename, content, source och upload_timestamp.
- Verifiera att Persist to Vector Store skriver poster till er Weaviate-kollektion.
- Skicka en förfrågan till MCP Knowledge Endpoint med den header-autentisering som krävs och bekräfta att Query Knowledge Store returnerar resultat.
- Växla workflowet till Active för att möjliggöra produktionsanvändning när testerna lyckas.
Vanliga fallgropar
- Weaviate-inloggning kan löpa ut eller kräva specifika behörigheter. Om det skapar fel, kontrollera först dina Weaviate API-nyckelinställningar och kollektionsbehörigheter.
- Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om nedströmsnoder fallerar på tomma svar.
- Standardprompter i AI-noder är generiska. Lägg in er tonalitet tidigt, annars kommer du redigera output för alltid.
Vanliga frågor
Cirka en timme om dina API-nycklar och din Weaviate-kollektion är redo.
Nej. Du kopplar mest in behörigheter och klistrar in konfigurationsvärden på rätt ställen. Den “svåra delen” är att bestämma vilka dokument du vill indexera först.
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 in API-kostnader för Mistral, Cohere och Weaviate.
Två alternativ: n8n Cloud (hanterat, enklast att sätta upp) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och hanterar n8n bra. Self-hosting ger dig obegränsat antal körningar men kräver grundläggande serveradministration.
Ja, men du byter trigger. Ersätt triggern “PDF Upload Form” med en Google Drive-trigger (ny fil i mapp) och mata sedan filen in i samma OCR- och “Assemble Document Payload”-logik. Vanliga anpassningar är att lägga till en tagg för “källmapp”, skriva en inläsningslogg till Google Sheets och styra vissa PDF:er till en annan Weaviate-kollektion.
Oftast beror det på en ogiltig API-nyckel eller att endpoint-URL:en är lite fel. Dubbelkolla Weaviate-host, autentiseringsmetod och att kollektionsnamnet matchar det din instans förväntar sig (den här mallen använder “KnowledgeDocuments”). Om du nyligen ändrat ditt schema kan gamla properties också orsaka skrivfel. Och om du massuppladdar många PDF:er samtidigt kan rate limits eller timeouts dyka upp.
På n8n Cloud Starter får du en månatlig körningsgräns, och vid self-hosting beror det på din server. I praktiken indexerar team ofta hundratals PDF:er utan problem, och skalar sedan upp genom att köra i batchar och hålla chunk-storlekar rimliga.
För det här flödet har n8n några fördelar: mer komplex logik med obegränsad branching utan extra kostnad, ett self-hosted-alternativ för obegränsade körningar och inbyggda vektor-/AI-komponenter som är krångliga att återskapa någon annanstans. Zapier eller Make kan fungera om du bara behöver flytta filer och skicka notifieringar. Men när du lägger till OCR, chunkning, embeddingar och återhämtning märks begränsningarna snabbt. Ärligt talat beror “bästa” valet på volym och hur mycket kontroll du vill ha. Prata med en automationsexpert om du är osäker på vad som passar.
När dina PDF:er blir sökbara tystnar de ständiga avbrotten. Flödet sköter repetitiv inläsning och återhämtning, och du får tillbaka din tid (och trygghet).
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.