Vectorize szemantikus kereső — RAG saját dokumentumokon
Tölts fel saját MD/TXT/CSV/HTML, kérdezz magyarul, kapj szemantikus találatokat. bge-m3 multilingual embedderrel.
A Vectorize plugin RAG-as-a-service: a saját dokumentumaidból csinálunk egy szemantikus search-API-t, bge-m3 multilingual embedderrel (magyar OK).
1. Mi az a “szemantikus kereső”?
A klasszikus full-text-keresés kulcsszó-egyezést keres. A szemantikus kereső értelem-egyezést: a “kutya séta” találja az “eb-sétáltatás”-t is, mert a jelentés közel van.
Use-case-ek:
- Ügyvédi iroda: jogi-precedensek, iratminták indexelése
- Tanácsadó: saját case-study-k, korábbi ajánlatok
- Oktatás: tananyagok, kérdés-feltevés ChatGPT-stílusban a saját anyagaidra
- Webshop: termékleírás-search, “olyan terméket keresek ami…“
2. Aktiválás
/app/plugins → Vectorize szemantikus kereső → ”+ Aktiválom”.
Tier: free (1 index / 100 dok / 1k query/hó) · start 1990 Ft · pro 4990 Ft.
3. Index létrehozása
/app/vectorize-search → ”➕ Új index”:
- Név (UI-only, pl. “Jogi precedensek”)
- Slug (URL-friendly,
legal,case-studies)
Egy user maximum a tier-szerinti index-számot tarthat.
4. Dokumentum-feltöltés
A /app/vectorize-search/<id> oldalon ”📄 Új dokumentum feltöltése”:
Támogatott formátumok (MVP): .md, .txt, .csv, .json, .html, .htm — max 2 MB. (PDF/DOCX a következő iterációban.)
A feltöltés után automatikusan:
- Szöveg-kinyerés (HTML → tag-strip)
- Chunking: 800 char / chunk, 100 char overlap, max 200 chunk / dok
- Embedding: bge-m3 batch-elve (50/batch)
- Insert Vectorize-ba (NDJSON)
Hossz: ~15-60 mp (dok-méret szerint).
5. Query
A UI-on:
🔍 Szemantikus query
[ Mi a vis maior felelőssége egy webshop esetén? ]
Top-K: [5]
Vagy REST-en:
curl -X POST https://promnet.hu/api/vectorize-search/<index_id>/query \
-H "Cookie: pn_session=..." \
-H "Content-Type: application/json" \
-d '{"query":"vis maior felelősség","top_k":5}'
Válasz:
{
"ok": true,
"matches": [
{
"id": "vdc_abc..._c12",
"score": 0.876,
"doc_id": "vdc_abc...",
"filename": "ASZF-2024.md",
"text": "A vis maior eseteit külön szakasz tárgyalja..."
},
...
]
}
A score 0-1 közötti, magasabb = jobb találat.
6. RAG-pipeline (Retrieval-Augmented Generation)
A találatokat passzold a Llama text-gen plugin-be a system prompt-ban:
# 1. lépés: keresés
MATCHES=$(curl -s -X POST .../vectorize-search/<id>/query \
-d '{"query":"vis maior","top_k":3}' | jq -r '.matches[].text' | tr '\n' ' ')
# 2. lépés: Llama válasz a kontextus alapján
curl -X POST https://promnet.hu/api/ai-tools/generate-text \
-H "Authorization: Bearer promnet_pat_..." \
-H "Content-Type: application/json" \
-d "{
\"system\": \"Magyar jogi-asszisztens vagy. Csak a kontextusból válaszolj. Idézd a forrást.\",
\"prompt\": \"Kontextus: $MATCHES\n\nKérdés: Mi a vis maior felelőssége egy webshop esetén?\",
\"max_tokens\": 1024
}"
7. Dok-törlés
A /app/vectorize-search/<id> oldalon doc-onként “Törlés” gomb. Ez törli a
dokumentum összes chunk-vector-ját is a Vectorize-ból.
8. Limit-ek
- Doc-méret: 2 MB / fájl
- Chunk: 800 char (kb 400-600 magyar token)
- Max chunk / dok: 200 (= 160 KB feldolgozott szöveg)
- Embedding-dim: 1024 (bge-m3)
- Query-felső: top 20 hit