Gosoft Connect - tekoälychat, joka nojaa omiin dokumentteihinne
Monivuokraajainen widget-palvelu, jonka tekoälychat vastaa kunkin asiakkaan omasta tietopohjasta - koko hakupino itse ylläpidettynä yhdellä CPU-nodella.
Mikä se on
Gosoft Connect on monivuokraajainen SaaS, jonka olen suunnitellut ja rakentanut yksin GoSoftilla, omassa yhtiössäni: upotettavia verkkosivuwidgettejä - tekoälychat, livechat, lomakkeet, popupit - ja hallintaportaali. Jokaisella asiakastyötilalla on tietopohja, jota täytetään neljällä tavalla: liittämällä tekstiä, noutamalla URL, lataamalla tiedostoja tai indeksoimalla kokonainen sivukartta. Asiakkaan sivuston tekoälychat vastaa kävijöiden kysymyksiin tähän tietopohjaan nojaten, striimattuna token kerrallaan, ja sillä on työkalut yritystietojen hakuun, liidien keräämiseen ja keskustelun siirtoon ihmiselle. Chatin ympärillä ovat koostesähköpostit, lomakevastausten tekoälytiivistelmät, keskustelujen luokittelu, öiset raportit kysymyksistä joihin botti ei osannut vastata, sekä sisään- ja ulostulon moderointi.
Hakuputki
Vastaukset pohjautuvat hybridihakuun: tiheät vektorit ja tekstihaun pisteytys yhdistetään reciprocal rank fusion -menetelmällä, minkä jälkeen cross-encoder järjestää tulokset uudelleen, dokumenttikohtaisella monimuotoisuusrajalla ja kielitietoisella haulla suomen-, ruotsin- ja englanninkieliseen sisältöön. Paloittelu on kappaletietoista kontekstiotsikoineen, ja sisältöhashien ansiosta muuttumattomia dokumentteja ei koskaan upoteta uudelleen.
Stack & infrastruktuuri
Tarkoituksella pieni, jälleen: kaikki pyörii yhdellä Linux-nodella, pelkällä CPU:lla. Upotusmalli (bge-m3) ja uudelleenjärjestäjä (bge-reranker-v2-m3) ajetaan paikallisesti ONNX:llä - ei GPU:ta, ei embedding-APIa. Asiakkaan dokumentit poistuvat koneelta täsmälleen yhtä asiaa varten: itse LLM-kutsua (OpenAI, malli valittavissa työtilakohtaisesti). Vektorivarasto on tavallinen PostgreSQL pgvectorilla - yksi tietokanta kaikelle. Bun ja Hono taustalla, Solid.js-portaali, nginx edessä.
Insinöörityö
Luvut jotka voin julkaista ovat insinöörilukuja. Uudelleenjärjestäjän kvantisointi pudotti haun 14 sekunnista 4,1:een CPU:lla, itse järjestysvaiheen 5,6:sta 1,1:een. Varhainen kuormitustesti pudotti 2 kymmenestä samanaikaisesta chatista ja kaatoi prosessin 10,4 GB:n muistissa; inferenssisemaforin ja eräpaloittelun jälkeen sama testi palveli 10/10 huipun ollessa 6,8 GB, ilman yhtäkään uudelleenkäynnistystä. Tuotannossa kesäkuusta 2026.