Artificiell intelligens i våra projekt
Vi integrerar AI där det tillför verkligt värde: automatisering av repetitiva processer, utvinning av information ur dokument, generering av kontextanpassat innehåll och intelligent hjälp för användare. Våra implementationsbeslut bygger på ROI, inte på trender.
LLM-integration — Claude API och OpenAI
Vi använder Claude (Anthropic) som huvudmodell för uppgifter med komplext resonemang, dokumentanalys och generering av långt innehåll — ett kontextfönster på 200k tokens gör det möjligt att bearbeta ett helt juridiskt ärende eller en finansiell rapport i ett enda anrop. GPT-4o väljs för multimodala uppgifter (bild + text) och när OpenAI-ekosystemet (Whisper, DALL-E) behövs.
Tool use (function calling) låter LLM:en interagera med interna API:er: söka i databasen, trigga åtgärder i befintliga system och returnera strukturerad data validerad med Pydantic. Streamade svar minskar den upplevda latensen i konversationsgränssnitt — användaren ser texten växa fram stegvis i stället för att vänta 5–10 s.
- Prompt caching (Anthropic) sänker kostnaden med 90 % för återkommande kontext (system prompts, referensdokument)
- Structured outputs (JSON mode) för typsäkra svar utan regex på fri text
- Automatisk fallback Claude → GPT-4o → Gemini vid tillgänglighetsfel
- Kostnadsspårning per användare och per funktion — LLM-användningen syns i admin-dashboarden
RAG — AI med kunskap från kundens data
Retrieval-Augmented Generation (RAG) låter LLM:en svara utifrån kundspecifika dokument (kontrakt, manualer, lagstiftning, e-post) utan att tränas om. Dokumenten delas upp i chunks, embeddas med text-embedding-3-large (OpenAI) eller embed-english-v3 (Cohere), lagras i pgvector (ett PostgreSQL-tillägg) och hämtas via cosinuslikhet.
RAG-pipelinen omfattar: dokumentinläsning (PDF, DOCX, HTML), intelligent chunking (med överlapp för kontext), re-ranking med Cohere Rerank för högre relevans, injicering i LLM-kontexten och källhänvisning med sidnummer. Resultatet är en chatbot som svarar exakt utifrån verkliga dokument, med verifierbara källor.
- pgvector för vektorlikhetssökning direkt i PostgreSQL — utan Pinecone/Weaviate
- Hybridsökning: täta vektorer + gles BM25 (nyckelord) → RRF-fusion
- RAG-utvärdering med RAGAS — precision, recall och faithfulness mäts automatiskt
- Metadatafiltrering för multi-tenant: användare A ser inte användare B:s dokument
Datorseende och dokumentbearbetning
För att utvinna data ur skannade eller fotograferade dokument (fakturor, kontrakt, id-handlingar) använder vi en kombinerad pipeline: bildförbehandling (deskew, brusreducering med OpenCV), OCR med Google Document AI eller Amazon Textract (strukturerad, inte rå OCR) och efterbearbetning med LLM för normalisering och validering. Noggrannhet >98 % på typiska affärsdokument.
Bildklassificering (produkter, kategorier, NSFW-detektion) görs med modeller finjusterade på CLIP eller EfficientNet, driftsatta som FastAPI-mikrotjänster med valfri GPU-inferens (CUDA). För projekt utan GPU-budget erbjuder moln-API:er (Google Vision, AWS Rekognition) 95 %+ noggrannhet till marginell kostnad.
- Automatisk datautvinning ur PDF-/bildfakturor → strukturerad databas
- Identitetsverifiering: OCR av dokument + selfie med liveness detection
- Moderering av användargenererat innehåll med moln-API:er + LLM-fallback
- Speech-to-text med Whisper large-v3 för transkribering av ljud från möten
Fördelar och begränsningar
Fördelar
- Automatiserar repetitiva processer: datautvinning, klassificering, support.
- RAG svarar utifrån kundens dokument, med verifierbara källor.
- Prompt caching sänker kostnaden med upp till 90 % på återkommande kontext.
- Fallback mellan modeller (Claude → GPT-4o → Gemini) för tillgänglighet.
Begränsningar
- LLM:er kan hallucinera — all kritisk output kräver validering och källor.
- Kostnaden per token stiger snabbt vid stora volymer utan noggrann cachning.
- Känsliga data som skickas till tredjeparts-API:er väcker sekretessfrågor.
- Latensen för ett genererat svar kan uppgå till några sekunder.
Kort slutsats
Integrera AI där det ger verklig ROI: automatisering, RAG över dokument, datautvinning. Undvik AI för AI:ns egen skull i uppgifter där en enkel regel eller en klassisk sökning räcker.
Specifikationstabell
| Förmåga | Gräns / tröskel | Typisk användning | |
|---|---|---|---|
| LLM-kontext | Upp till 200k tokens (Claude) | Stor kontext ökar kostnad och latens | Analys av långa dokument, rapporter |
| RAG | pgvector, hybridsökning, re-ranking | Kvaliteten beror på chunking och källor | Chatbot över egna dokument |
| Datorseende | Strukturerad OCR, noggrannhet > 98 % | GPU-inferens höjer kostnaden | Utvinning ur fakturor, id-kontroll |
| Typisk kostnad | Debiteras per token / per API-anrop | Ökar med volymen utan cachning | Från chatbot till komplett pipeline |
RAG jämfört med finjustering
| Kriterium | RAG | Finjustering |
|---|---|---|
| Uppdatering av kunskap | Omedelbart (du lägger till dokument) | Kräver omträning |
| Verifierbara källor | Ja, med källhänvisning | Nej |
| Initial kostnad | Låg | Hög (data + GPU) |
Vanliga frågor
Vad är RAG och när använder jag det?
RAG (Retrieval-Augmented Generation) låter AI:n svara utifrån dina dokument (kontrakt, manualer, lagstiftning) utan omträning. Du använder det när du vill ha exakta svar med källor, baserade på egen data.
RAG eller finjustering?
RAG för kunskap som ändras ofta och för verifierbara källor — du uppdaterar genom att lägga till dokument. Finjustering för fast stil eller format, med högre initial kostnad. I de flesta affärsfall är RAG rätt val.
Hur kontrollerar ni AI-hallucinationer?
Vi använder RAG med källhänvisning, structured outputs (JSON) validerade med Pydantic och mänsklig validering av kritisk output. AI:n svarar utifrån verkliga dokument, inte ur minnet, och varje påstående har en bifogad källa.
Förblir mina data konfidentiella?
Känsliga data kan isoleras per tenant och vid behov bearbetas med egenhostade modeller eller API:er med no-training-klausuler. För reglerade fall väljer vi leverantörer som inte använder data för träning.