Navigation

AI i Odoo: arc_ai_helpers och virtuella anställda

AI som kollega, inte som gimmick

Alla pratar om AI. De flesta menar chatbotar som svarar ”Hur kan jag hjälpa dig idag?” på webbsidor. Det jag byggde är något annat. arc_ai_helpers är virtuella anställda som faktiskt jobbar i Odoo – läser e-post, klassificerar ärenden, föreslår svar och analyserar kunddata.

Det är inte ett marknadsföringstrick. Det är ett verktyg som sparar mig timmar varje vecka.

Arkitekturen

Systemet har tre delar: Odoo (där datan och affärslogiken finns), n8n (som orkestrerar arbetsflöden) och Claude API (som gör det tunga tänkandet). Qdrant fungerar som vektorminne – en databas optimerad för semantisk sökning.

Inkommande e-post
    → n8n workflow
        → Claude API (klassificering)
        → Odoo RPC (skapa ärende)
        → Qdrant (spara i minnet)
        → Claude API (föreslå svar)
    → Handläggare granskar och skickar

Varje steg i kedjan är ett separat n8n-node. Det gör det enkelt att felsöka (varje steg loggar sin input och output) och att modifiera (lägg till ett steg utan att röra resten).

E-postklassificering

Varje inkommande e-post till PlastShop analyseras av Claude. Modellen avgör vad det handlar om: ny offertförfrågan, reklamation, teknisk fråga, statusfråga på befintlig order eller skräppost. Klassificeringen är rätt i ungefär 95% av fallen.

Baserat på klassificeringen skapas automatiskt ett ärende i CTS (från arc_industrial_ops) med rätt typ och prioritet. En offertförfrågan på 50 000 kr får högre prioritet än en teknisk fråga om standard materialegenskaper.

Claude får kontext från Qdrant – tidigare interaktioner med samma kund, deras orderhistorik och klassificering. Det gör att svarsförslagen blir relevanta. ”Kund X har beställt polykarbonat tre gånger tidigare och hade ett kvalitetsärende i oktober” är bra kontext att ha när du ska svara på deras nya e-post.

Svarsförslag

AI:n skriver inte svar som skickas automatiskt. Det vore farligt. Istället genererar den ett förslag som handläggaren granskar, eventuellt justerar och sedan skickar. Det ger hastigheten av AI med kontrollen av en människa.

Svarsförslagen baseras på tre saker: e-postens innehåll, kundens historik (från Qdrant) och PlastShops tonalitet och regler (definierade i systemprompten). Resultatet är ett utkast som låter som PlastShop, inte som en generisk AI-bot.

n8n som orkestrator

n8n är limmet som håller ihop allt. Det är ett open source workflow-verktyg som jag kör i Docker på samma server som Odoo. Just nu har jag 19 aktiva workflows som hanterar allt från e-postklassificering till prisuppdateringar.

Varför n8n istället för att bygga allt i Python? Två anledningar. Först: visuell debugging. Jag ser varje steg i ett workflow, vad som gick in och vad som kom ut. Det slår print-statements i Python. Sedan: n8n har färdiga kopplingar till tjänster jag använder – Groq, Slack, Notion, GitHub och fler.

En viktig detalj: n8n:s Code Node kör i en sandbox. Du kan inte använda require(’fs’), require(’path’) eller require(’child_process’). Det är en säkerhetsfunktion som ibland är irriterande men oftast är rätt.

Qdrant som minne

Vektorminnet är det som gör AI-assistenterna intelligenta över tid. Varje interaktion sparas som en vektor i Qdrant med metadata (kund, datum, typ, resultat). När en ny förfrågan kommer in söker systemet efter liknande tidigare ärenden.

Jag kör Qdrant i Docker med separata collections per domän: plastshop_memory, arcgruppen_memory och heartpro_memory. Varje collection använder 3072 dimensioner som matchar Googles gemini-embedding-001 modell.

Det praktiska resultatet: om en kund frågar om temperaturbeständighet hos polykarbonat och vi svarade på samma fråga för tre månader sedan hittar systemet det svaret och använder det som grund. Konsistent kundkommunikation utan att handläggaren behöver leta i e-posthistoriken.

Groq för de enkla jobben

Inte allt behöver Claude. För enklare uppgifter – översättning, kategorisering av produktdata, generering av produktbeskrivningar – använder jag Groq som kör open source-modeller gratis. Llama 3.3 70B via Groq är snabbt och bra nog för repetitiva uppgifter.

Det handlar om att använda rätt verktyg för rätt jobb. Claude för komplexa resonemang och kundkommunikation. Groq för volymjobb som inte kräver samma kvalitet.

Vad AI inte kan göra

AI:n ersätter inte mänskligt omdöme. Den vet inte att Kund X:s VD var på dåligt humör vid senaste mötet. Den förstår inte att en order på 1000 kr kan vara starten på en relation värd 100 000 kr om året. Den ser data, inte relationer.

Det är därför svarsförslagen alltid granskas manuellt. AI:n är en assistent, inte en ersättare. Den gör det tunga lyftandet – klassificering, datahämtning, utkast – så att människan kan fokusera på det som kräver omdöme och empati.

arc_ai_helpers är den modul jag är mest stolt över. Inte för att tekniken är avancerad (den är det inte, det är API-anrop och workflows) utan för att den faktiskt sparar tid varje dag. Det är skillnaden mellan AI som demo och AI som verktyg.

Vad tycker du?

Jag vill gärna höra dina tankar. Kommentera nedan eller nå mig på LinkedIn.

0 0 röster
Article Rating
Prenumerera
Meddela vid
guest
0 Kommentarer
Äldsta
Senaste Mest omröstade
Inline feedback
Visa alla kommentarer

Relaterade inlägg

Vad är ett förlossningsbrev och varför är det bra att ha?
Vård
Vad är ett förlossningsbrev?

Inför en förlossning är det en strålande iidé att skriva ett förlossningsbrev! En förlossning är en av livets mest intensiva upplevelser. Det är också en

Chrille Hedberg logotyp
Chrille Hedberg

Använd gärna detta formulär för att komma i kontakt med mig.

0
Lämna gärna en kommentarx
()
x