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

Mistral OCR + Weaviate: sökbara PDF:er snabbt

Rickard Andersson Partner, Nodenordic.se

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

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

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.

  1. Lägg till noden MCP Knowledge Endpoint och ställ in Path till c74c97f5-0197-45e3-b4dd-f3efbd4bab22.
  2. Ställ in Authentication till headerAuth och förbered er klient för att skicka de header-värden som krävs.
  3. Koppla Query Knowledge Store till MCP Knowledge Endpoint som ett AI-verktyg (detta är hämtning-endpointen som används av externa anropare).

Använd en unik Path och håll header-uppgifterna privata för att förhindra obehörig hämtning.

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.

  1. Lägg till PDF Upload Form och ställ in Form Title till Upload Documents to Knowledge Base.
  2. Ställ in Form Description till Upload PDF files to the knowledge base for AI-powered search and retrieval.
  3. I Form Fields lägger ni till ett filfält med Field Label PDF File och Accept File Types .pdf.
  4. Aktivera Button Label Upload Document och låt Response Mode vara inställt på lastNode.
  5. Koppla PDF Upload Form till OCR Text Extraction för att starta textextraktion vid uppladdning.

⚠️ Vanlig fallgrop: Uppladdningsfältet accepterar endast .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.

  1. Lägg till OCR Text Extraction och ställ in Binary Property till file.
  2. Inloggningsuppgifter krävs: Anslut era Mistral AI-uppgifter i OCR Text Extraction.
  3. Lägg till Assemble Document Payload och skapa följande tilldelningar:
  4. Ställ in filename till {{ $('PDF Upload Form').item.json.file.filename }}.
  5. Ställ in content till {{ $json.extractedText }}.
  6. Ställ in source till uploaded_pdf och upload_timestamp till {{ new Date().toISOString() }}.
  7. Koppla OCR Text Extraction till Assemble Document Payload.

Om OCR returnerar tom text, verifiera att PDF:en inte är en inskannad bild utan läsbara tecken, eller öka OCR-precisionens inställningar i ert Mistral-konto.

Steg 4: Konfigurera vektorlager och AI-hämtning

Lagra dokumentsegment i Weaviate och aktivera hämtning med Cohere-embeddingar och omrankning.

  1. Lägg till Persist to Vector Store med Mode inställt på insert.
  2. Inloggningsuppgifter krävs: Anslut era Weaviate-uppgifter i Persist to Vector Store och välj målkollektionen i Weaviate Collection.
  3. Lägg till Query Knowledge Store med Mode retrieve-as-tool, aktivera Use Reranker och ställ in Tool Description till Use this tool to search and retrieve information from the knowledge base containing various documents and resources.
  4. Ställ in Weaviate Collection i Query Knowledge Store till KnowledgeDocuments och låt Include Document Metadata vara false.
  5. Lägg till Cohere Vector Encoder med Model Name embed-multilingual-v3.0 och koppla den som embeddings-källa för både Query Knowledge Store och Persist to Vector Store.
  6. Lägg till Cohere Reorderer och koppla den till Query Knowledge Store som reranker.
  7. Lägg till Segment Text Blocks med Chunk Size 600 och Chunk Overlap 200, och koppla den sedan till Load Source Documents som textdelare.
  8. Lägg till Load Source Documents med Text Splitting Mode inställt på custom, och koppla den till Persist to Vector Store som dokumentladdare.

Inloggningsuppgifter krävs: Anslut era Cohere-uppgifter där Cohere Vector Encoder är konfigurerad som embeddings-modell. Denna embeddings-subnod driver både Query Knowledge Store och Persist to Vector Store.

⚠️ Vanlig fallgrop: Om ni lämnar Weaviate Collection tomt i Persist to Vector Store kommer infogningar att misslyckas. Säkerställ att kollektionen finns i Weaviate innan ni testar.

Steg 5: Testa och aktivera ert workflow

Verifiera både uppladdning-till-inläsning-flödet och hämtning-endpointen innan ni aktiverar workflowet.

  1. Klicka på Execute Workflow och skicka in en PDF via PDF Upload Form.
  2. 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.
  3. Verifiera att Persist to Vector Store skriver poster till er Weaviate-kollektion.
  4. 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.
  5. Växla workflowet till Active för att möjliggöra produktionsanvändning när testerna lyckas.
🔒

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

Få den kompletta implementeringsguiden + nedladdningsbar mall

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

Hur lång tid tar det att sätta upp den här Mistral OCR Weaviate-automationen?

Cirka en timme om dina API-nycklar och din Weaviate-kollektion är redo.

Behöver jag kunna koda för att automatisera sökbara PDF:er med Mistral OCR Weaviate?

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.

Är n8n gratis att använda för det här Mistral OCR Weaviate-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 in API-kostnader för Mistral, Cohere och Weaviate.

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

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.

Kan jag anpassa den här Mistral OCR Weaviate-automationen för uppladdningar från Google Drive i stället för ett formulär?

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.

Varför misslyckas min Weaviate-anslutning i det här flödet?

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.

Hur många dokument kan den här Mistral OCR Weaviate-automationen hantera?

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.

Är den här Mistral OCR Weaviate-automationen bättre än att använda Zapier eller Make?

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.

×

Använd mall

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

Launch login modal Launch register modal