Svi projekti

Voice-AI agent za enterprise telefoniju

Multi-tenant voice AI platforma za europsku softversku tvrtku koja opslužuje 20.000+ obrtničkih poduzeća. Obrađuje dolazne pozive od početka do kraja, na infrastrukturi usklađenoj s GDPR-om.

Godina
2026 - present
Stack
TypeScriptFastifyWebSocketsTelnyxAzureVuePostgreSQLpgvectorRAGPrisma
VO
Voice-AI agent za enterprise telefoniju

Problem

Klijent je europska softverska tvrtka koja međunarodno opslužuje 20.000+ obrtničkih poduzeća, ličilaca, vodoinstalatera, električara, dekoratera. Tip obrta čiji vlasnici uglavnom sami obavljaju posao.

Tu je ograničenje: svaki poziv na koji odgovore je vrijeme u kojem ne rade. Svaki propušteni poziv je ponuda koja ide konkurenciji. Generički call centri i IVR izbornici to nisu riješili: pozivatelji u obrtu postavljaju specifična pitanja ("možete li ugraditi novi bojler do petka?"), očekuju pravi razgovor i neće prolaziti kroz izbornike u stilu telefonskog stabla.

Klijent je htio AI agenta koji može odgovarati na te pozive 24/7, voditi prirodan razgovor, prikupljati zahtjeve za ponudom i povratnim pozivom, i ostati strogo na temi, preko tisuća neovisnih obrtničkih poduzeća, svako sa svojim uslugama, cijenama i bazom znanja.

Brief je bio multi-tenant po definiciji. Izvedba je morala biti GDPR-čista, enterprise razine i upotrebljiva za netehničke krajnje korisnike.

Pristup

Specificirali smo cijelu arhitekturu i predložili izgradnju u četiri faze, gdje svaka faza nadograđuje prethodnu: baza podataka, modeli i apstrakcije definirani u Stage 1 tako da Stage 2-4 ne zahtijevaju re-arhitekturu. Prijedlog je prihvaćen u roku od 24 sata od poziva za predstavljanje.

GDPR kao pokretač arhitekture. Svaka vanjska ovisnost procijenjena je prema principima rezidentnosti podataka i minimalne treće strane. Telnyx za telefoniju (developer-friendly, EU-region routing). Azure OpenAI za STT, LLM i TTS, uz korištenje Data Zone Standard kako bi svi modeli inferirali unutar EU, čak i kad Azure preraspoređuje load preko regija. Mailgunova EU regija za transakcijski email s sažecima poziva. Podaci ne napuštaju EU ni na jednom sloju stacka.

Real-time voice pipeline. Fastify backend preko WebSocketsa obrađuje uživo audio stream: audio pozivatelja se transkribira, šalje LLM-u s relevantnim kontekstom tenanta, a odgovor se streama natrag kroz TTS, sve unutar latencijskih budgeta za prirodan razgovor. Voice activity detection (VAD), barge-in obrada, sprječavanje dvostrukog govora i detekcija granice "razmišlja li pozivatelj ili je završio s govorom?", sve to kalibrirano je empirijski, što je posao koji odlučuje hoće li agent zvučati prirodno ili robotski.

Tenant-scoped RAG nad bazom znanja. Svaki tenant učitava vlastito znanje: PDF-ove, URL-ove, opise usluga. Sadržaj se chunka i embedda u indeks na pgvectoru. Pri pozivu, pitanje pozivatelja se uspoređuje s chunkovima tog tenanta preko cosine similarity, i samo najrelevantniji kontekst šalje se LLM-u. To čuva promptove malima (trošak), odgovore na temi (kvaliteta), a inpute strogo unutar tenanta (bez curenja između tenanta). Similarity threshold podešen je specifično za granicu trošak/kvaliteta.

Kompletan multi-tenant SaaS za upravljanje. Dva dashboarda: super-admin pogled za upravljanje brendovima i tenantima klijenta, i tenant pogled za sama obrtnička poduzeća. RBAC s 4 uloge (super admin, brand admin, tenant admin, tenant user). Po-tenant konfiguracija AI pozdrava, GDPR obavijesti i CTA teksta, tri stvari koje agent kaže odmah po preuzimanju poziva. Radno vrijeme konfigurabilno po tenantu i prosljeđeno AI-u kao kontekst. Cjenovni model s uključenim minutama plus naplatom po minuti preko, izračunato i vidljivo po tenantu. Logovi poziva s punim transkriptima, AI-generiranim sažecima, klasifikacijama (zahtjev za ponudom, povratni poziv, općenito pitanje) i konfigurabilnim email obavijestima.

Izgrađeno za ono što dolazi. Arhitektura je adapter-style kroz cijeli sustav: zamijeniš jedan LLM drugim, jedan STT/TTS provajdera drugim, ubaciš bilo koji broj ERP-ova. Sustav je već pripremljen za ERP integraciju u kasnijoj fazi, što omogućuje pozive za provjeru statusa ("kada se radi moj posao?") i automatsko kreiranje radnih naloga. Interaktivne skripte automatiziraju Azure provisioning od kraja do kraja.

Rezultat

Stage 1 izašao je u produkciju s AI agentom koji obrađuje stvarne dolazne pozive na dva jezika od početka. Do prvog demoa, klijent je imao 20 beta tenanta spremnih. Nakon završetka Stagea 1, klijent je odmah ubrzao Stage 2, mjesecima ispred originalnog rasporeda.

Agent odgovara na pozive 24/7, ostaje strogo na temi svakog tenantskog poslovanja, ne halucinira preko baze znanja tenanta, prikuplja zahtjeve za ponudom i povratnim pozivom, i prosljeđuje sažetke poziva pravim ljudima.

Sljedeće faze: proširenje na dodatne zemlje, ERP integracija za pozive o statusu posla u stvarnom vremenu, i prošireno višejezično pokrivanje.

Sljedeći projekt

Sentinel - platforma za trading strategije

Pročitaj case study