MicrocosmWorksInnovoimassa ja Arkkitehtuuria Digitaalisessa Kosmoksessa
TietoaYhteystiedot
MicrocosmWorksInnovoimassa ja suunnittelemassa digitaalista kosmosta

Toimitamme IT-ratkaisuja, joilla on merkitystä. Olemme intohimoisia teknologiasta, turvallisuudesta ja autamme yrityksiä kasvamaan luotettavan, innovatiivisen IT-infrastruktuurin kautta.

[email protected]
+91 7011868196
New Delhi, India

AI Kasvuhubi

AI HubStartup-innovaatiotYrityskiihdyttämö

Ratkaisut

Kaikki ratkaisutHyvinvointi- ja kuntoilusovelluksetAI-videoplatformiAI-agenttikehitys

Resurssit

OivalluksetToimialan oppaatKäyttötapausmallitArkkitehtuurimallitTapaustutkimukset

Yritys

Tietoa meistäYhteystiedotTyömme

Palvelut

Digitaalinen konsultointiPilvi-infrastruktuuriSaaS-kehitysAI-kehitysVideoteknologia
ERP-kehitysZoho-mukautusOdoo-kehitysSalesforce-integraatioMukautettu CRM-kehitys
QuickBooks-integraatioIoT-ratkaisutLohkoketjukehitys
KyberturvallisuuskonsultointiIT-tuki - L3

© 2026 MicrocosmWorks. Kaikki oikeudet pidätetään.

TietosuojakäytäntöKäyttöehdot
Takaisin Tapaustutkimuksiin
Document IntelligenceJulkaistu June 18, 2026 · Päivitetty May 25, 2026

Paikallisesti ensisijainen dokumenttien RAG-järjestelmä hybridihauilla ja monimuototuella

Kehittäjätyökaluja rakentava tiimi tarvitsi täysin paikallisen, yksityisyyttä suojaavan dokumenttitiedon järjestelmän, joka kykeni käsittelemään useita tiedostomuotoja, rakentamaan haettavissa olevia tietokantoja ja vastaamaan luonnollisen kielen kyselyihin käyttäen Retrieval-Augmented Generation -tekniikkaa — lähettämättä mitään tietoja ulkoisille API-rajapinnoille.

Keskustele Projektistasi
local-rag-hybrid-search-pipeline.webp
Document Intelligence
Domain
8
Technologies
5
Key Results
Delivered
Status

Haaste

Nykyisillä RAG-ratkaisuilla oli merkittäviä rajoituksia yksityisyydestä huolehtivien ja kehittäjäkeskeisten käyttötapausten osalta:

  • Ulkoinen API-riippuvuus — Useimmat RAG-työkalut vaativat dokumenttien sisällön lähettämistä pilvipohjaisiin embedding-API-rajapintoihin, mikä rikkoi yksityisyysvaatimuksia
  • Rajoitettu tiedostomuototuki — Ratkaisut käsittelivät tyypillisesti vain pelkkää tekstiä tai PDF:ää, jättäen huomioimatta taulukkolaskentatiedostot, Word-dokumentit, HTML:n ja Markdownin
  • Heikko paloittelu (Chunking) — Naiivi tekstin jakaminen jätti huomiotta dokumentin rakenteen (sivut, taulukot, otsikot), luoden heikon kontekstin sisältäviä paloja
  • Avainsana-aukot — Pelkkään embeddingiin perustuva haku jätti huomiotta täsmälliset avainsanaosumat, jotka leksikaalinen haku havaitsisi
  • Taulukkolaskenta-sokeus — RAG-järjestelmät eivät kyenneet käsittelemään jäsenneltyä taulukkomuotoista dataa tai vastaamaan suodatus-/aggregaatiokyselyihin
  • Ei uudelleenjärjestelyä (Reranking) — Ensimmäisen vaiheen haku tuotti usein vain osittain relevantteja tuloksia ilman toisen vaiheen laatusuodatinta

Meidän Ratkaisumme

Rakensimme täydellisen paikallisesti ensisijaisen RAG-järjestelmän, jossa on monimuotoinen dokumenttien sisäänluku, rakennetietoinen paloittelu (chunking), paikallinen embeddingien generointi, hybridihakuputki (semanttinen + kokoteksti + ajankohtaisuus), cross-encoder-uudelleenjärjestely (reranking) ja verkkopohjainen käyttöliittymä — kaikki käynnissä kokonaan käyttäjän omalla koneella.

Arkkitehtuuri

  • Dokumenttien lataajat: Muotokohtaiset jäsentäjät PDF:lle, DOCX:lle, XLSX:lle, CSV:lle, HTML:lle, Markdownille ja pelkälle tekstille
  • Chunker: Rakennetietoinen jako, joka säilyttää sivujen, taulukoiden ja otsikoiden rajat
  • Embeddings: Paikallinen embedding-malli Transformers.js:n kautta (ei ulkoisia API-kutsuja)
  • Vektoritietokanta: LanceDB (palvelimeton, tiedostopohjainen) embeddingien tallennukseen ja samankaltaisuushakuun
  • Kokotekstihaku: Trigram-pohjainen indeksointi leksikaaliseen vastaavuuteen
  • Reranker: Cross-encoder-malli kontekstitietoiseen tulosten pisteytykseen
  • Kyselyanalysaattori: Tarkoituksen tunnistus reitittää semanttisten ja jäsenneltyjen kyselyjen välillä
  • Web-palvelin: Express.js API projektinhallinta- ja hakupäätepisteillä
  • Frontend: Verkkopohjainen käyttöliittymä dokumenttien lataukseen, hallintaan ja interaktiiviseen hakuun

Dokumenttien Käsittelyputki

Monimuotoiset lataajat

Rekisteröintimalli tunnistaa tiedostotyypin automaattisesti ja ohjaa sen asianmukaiseen jäsentäjään:

  • PDF — Tekstin poiminta sivutason segmentoinnilla
  • Word (.docx/.doc) — Otsikkotietoinen jäsentäminen säilyttäen dokumentin hierarkian
  • Excel/CSV — Taulukko-kohtainen jäsentäminen otsikoiden tunnistuksella ja rivitason sisällöllä
  • HTML — Tunnistetietoinen poiminta rakenteen säilyttäen
  • Markdown — Otsikkopohjainen osioiden jäsentäminen
  • Pelkkä teksti — Rivipohjainen segmentointi

Jokainen lataaja poimii metatiedot (otsikko, tekijä, luontipäivämäärä, sivu-/taulukkomäärä, sanamäärä) sisällön rinnalla, tuottaen jäsenneltyjä osioita lähdeviittauksineen.

Rakennetietoinen paloittelu (Chunking)

Toisin kuin naiivi tekstin jakaminen, chunker kunnioittaa dokumentin rajoja:

  • Säilyttää sivunvaihdot (PDF), taulukoiden rajat (taulukkolaskentatiedostot) ja otsikkohierarkian (Word/Markdown)
  • Token-pohjainen kokoaminen säädettävällä palakoolla ja päällekkäisyydellä
  • Hierarkkinen varajärjestelmä: jakaa ensin osioiden, sitten kappaleiden ja sitten lauseiden mukaan
  • Jokainen pala säilyttää lähdemetatiedot (sivunumero, taulukon nimi, otsikko) attribuutiota varten

Embedding ja indeksointi

Paikallinen Embedding-malli

  • Käynnissä kokonaan paikallisesti Transformers.js:n kautta — tietoja ei poistu koneelta
  • Kvantisoitu malli suorituskyvyn optimointia varten
  • Erä-embedding tehokkaaseen massakäsittelyyn
  • Automaattinen katkaisu sanarajojen kohdalta L2-normalisoinnilla

Vektorivarasto

LanceDB tarjoaa palvelimettoman vektorivaraston:

  • Tiedostopohjainen (ei erillistä tietokantapalvelinta tarvita)
  • Projektikohtainen eristys itsenäisillä indekseillä
  • SHA256-pohjaiset välimuistiavaimet duplikaattien poistamiseen
  • Metatiedot tallennetaan vektoreiden rinnalle suodatettua hakua varten

Hybridihakuputki

Hakukonputki yhdistää kolme ranking-signaalia parempien tulosten saavuttamiseksi kuin millään yksittäisellä lähestymistavalla:

Signaali 1: Embedding-haku (semanttinen)

Vektorisamankaltaisuushaku löytää palasia, joilla on toisiinsa liittyvä merkitys, vaikka käytettäisiin eri sanoja. Käsittelee parafraseerausta, synonyymejä ja käsitteellisiä kyselyjä.

Signaali 2: Kokotekstihaku (leksikaalinen)

Trigram-pohjainen indeksointi Jaccard-samankaltaisuudella havaitsee tarkat avainsanaosumat, jotka embedding-haku saattaisi jättää huomiotta — tärkeää teknisille termeille, nimille ja tunnisteille.

Signaali 3: Ajankohtaisuuskorostus

Eksponentiaalinen vaimennuspainotus suosii äskettäin käytettyjä tai muokattuja dokumentteja, varmistaen että ajantasainen tieto nousee esiin ensin.

Pistemäärän yhdistäminen

Signaalit yhdistetään määritettävissä olevilla painotuksilla (oletus: 50 % semanttinen, 25 % leksikaalinen, 25 % ajankohtaisuus), normalisoidaan ja suodatetaan minimipistemääräkynnyksen perusteella.

Cross-Encoder-uudelleenjärjestely (Reranking)

Alkuperäisen haun jälkeen cross-encoder-malli pisteyttää parhaat ehdokkaat uudelleen:

  • Kontekstitietoinen pisteytys ottaa huomioon kysely-dokumentti-parit yhdessä (ei itsenäisesti)
  • Avainsanatehostuksen laskenta termien päällekkäisyyden perusteella
  • Yhdistetty pisteytys (cross-encoder + avainsanasignaalit)
  • Tuottaa lopullisen järjestetyn luettelon, jonka tarkkuus on parempi kuin pelkän ensimmäisen vaiheen haun

Jäsennellyn datan tuki

Taulukkolaskentatiedostojen sisällön osalta järjestelmä tarjoaa lisäominaisuuksia:

  • Saraketyyppien automaattinen tunnistus (numeerinen, päivämäärä, boolen, merkkijono)
  • Luonnollisen kielen suodatus (esim. "insinööriosaston työntekijät, joiden palkka ylittää kynnyksen")
  • Aggregaatiotuki (laskenta, summa, keskiarvo, minimi, maksimi)
  • Kyselyanalyysaattori ohjaa jäsennellyt kyselyt erilliseen moottoriin embedding-haun sijaan

Verkkokäyttöliittymä

  • Projektinhallinta — Tietokantaprojektien luominen, päivittäminen ja poistaminen
  • Dokumentin lataaminen — Vedä ja pudota tiedostojen lataus automaattisella muodontunnistuksella
  • Dokumentin luonti — Luo dokumentteja tekstistä suoraan käyttöliittymässä
  • Interaktiivinen haku — Luonnollisen kielen kyselyrajapinta järjestettyjen tulosten kanssa
  • Tilastot — Indeksin koko, dokumenttimäärä ja tiedostomuotojen jakautuminen projektia kohden

Avainominaisuudet

  1. Täysin paikallinen — Kaikki käsittely laitteella; ei ulkoisia API-kutsuja embeddingeille tai haulle
  2. 9 syöttömuotoa — PDF, DOCX, DOC, XLSX, XLS, CSV, HTML, Markdown, pelkkä teksti
  3. Rakennetietoinen paloittelu (Chunking) — Säilyttää sivut, taulukot ja otsikot paloitteluina (chunk boundaries)
  4. Hybridihaku — Yhdistää semanttiset, leksikaaliset ja ajankohtaisuussignaalit paremman haun saavuttamiseksi
  5. Cross-Encoder-uudelleenjärjestely (Reranking) — Toisen vaiheen pisteytys tarkempien tulosten saavuttamiseksi
  6. Jäsennellyt kyselyt — Luonnollisen kielen suodatus ja aggregaatio taulukkolaskentatiedostoihin
  7. Palvelimeton Vektoritiertokanta — LanceDB tiedostopohjainen tallennus ilman infrastruktuurikustannuksia
  8. Dokumenttien kirjoittaminen — Vientitoiminnot PDF-, DOCX- ja XLSX-tiedostojen luomiseen
  9. Projektieristys — Itsenäiset tietokannat erillisillä indekseillä
  10. Web UI — Täydellinen käyttöliittymä dokumentinhallintaan ja interaktiiviseen hakuun

Tulokset

Haun viive: ~60 ms koko hybridihakuputkelle (semanttinen + FTS + reranking)
Embedding-nopeus: ~50 ms per pala (erä: ~2 s 100 palalle)
Tiedostomuotojen kattavuus: 9 syöttömuotoa käsitelty natiivisti ilman ulkoisia muuntimia

Teknologiapino

TypeScriptNode.jsExpress.jsTransformers.jsLanceDBVitestpnpmHTML/CSS/JS Frontend

caseStudyDetail.more Tapaustutkimukset

Tutustu lisää teknisiin toteutuksiimme

Document Intelligence

AI-pohjainen taulukko- ja dokumenttianalyysi moniagenttiorkestroinnilla ja dokumenttienvälisellä viittauksella

Yrityksen datatiimi tarvitsi analysoida, kysellä ja muokata suuria taulukko- ja dokumenttikokoelmia (Excel, CSV, Google Sheets, PDF:t, Word-dokumentit) luonnollisella kielellä – kyvyllä ristiviitata tietoja useista tiedostoista ja suorittaa monivaiheisia analyyttisiä työnkulkuja ilman manuaalista tiedonkäsittelyä.

Lue Tapaustutkimus
AI Accounting

AI-pohjainen laskujen käsittely OCR:n ja QuickBooks-integraation avulla

Keskisuuri yritys, joka käsitteli satoja toimittajalaskuja kuukausittain, halusi poistaa manuaalisen tiedonsyötön poimimalla laskutiedot automaattisesti AI/OCR:n avulla ja synkronoimalla ne suoraan QuickBooks-järjestelmään kirjanpitoa ja maksujen seurantaa varten.

Lue Tapaustutkimus

Valmis Muuttamaan Liiketoimintaasi?

Keskustellaan siitä, miten voimme soveltaa vastaavia ratkaisuja haasteisiisi.

Ota YhteyttäcaseStudyDetail.viewAllCaseStudies
Yksityisyys: Ei lainkaan ulkoisesti siirrettävää dataa — täydellinen paikallinen käsittely
Muistin kulutus: ~100 MB embedding-mallille, ~1 MB per 1 000 indeksoitua palaa
Video Encoding

Asiakaspuolen mainosten upotus (CSAI) SCTE-35-merkkien jäsennyksellä ja monialustaisen soittimen integroinnilla

Videoiden suoratoistoalustan piti toteuttaa Client-Side Ad Insertion (CSAI) verkko-, mobiili- ja Connected TV -sovellusten yli — mahdollistaen personoidut, laitekohtaiset mainoskokemukset täydellä mainosinteraktion tuella (klikkaavat peittokuvat, kumppanibannerit, ohituspainikkeet), joita server-side insertion ei voi tarjota.

Lue Tapaustutkimus

Usein kysytyt kysymykset

MicrocosmWorks rakensi local-first RAG -järjestelmän, jossa kaikki asiakirjojen sisäänotto, upotusten luonti, vektoritallennus ja LLM-inferenssi ajetaan kokonaan omassa infrastruktuurissasi ilman tietojen lähettämistä ulkoisille pilvipalvelujen API-rajapinnoille. Tämä arkkitehtuuri on olennainen organisaatioille, jotka käsittelevät salaisia asiakirjoja, asianajaja-asiakas-suhteeseen liittyviä luottamuksellisia materiaaleja tai arkaluonteista immateriaalioikeutta, joissa tietosuvereniteettivaatimukset kieltävät kaiken pilvipalvelukäsittelyn, jopa salauksen kanssa.

MicrocosmWorks implemented a hybrid retrieval pipeline that runs BM25 keyword search and dense vector semantic search in parallel, then uses reciprocal rank fusion to merge and re-rank the combined results before passing them to the LLM as context. This approach catches exact-match queries like product codes and legal citations that semantic search misses, while also retrieving conceptually related content that keyword search would never find.

MicrocosmWorks built format-specific parsers for PDF, DOCX, XLSX, PPTX, HTML, Markdown, and plain text, with an OCR pipeline using Tesseract for scanned PDFs and image-based documents. The system automatically detects whether a PDF contains selectable text or requires OCR, applies layout analysis to preserve table structures and reading order, and chunks documents using semantic boundaries rather than arbitrary character limits to improve retrieval quality.

MicrocosmWorks implemented incremental indexing that tracks document checksums and only re-processes files that have changed since the last ingestion run. Updated documents have their old chunks removed and new chunks inserted atomically, so the search index is never in an inconsistent state. The system also supports versioned document retrieval, allowing users to query against historical versions of documents when needed for audit or compliance purposes.

MicrocosmWorks optimized the local RAG pipeline to run on modest hardware, with the minimum recommended configuration being a machine with 32GB RAM, 8 CPU cores, and optionally a mid-range GPU for accelerated embedding generation. For organizations without GPU hardware, the system falls back to CPU-based embedding models with slightly higher latency, and the vector database is tuned for SSD storage to keep query response times under 200ms for corpora up to 1 million document chunks.