[{"data":1,"prerenderedAt":651},["ShallowReactive",2],{"blog-synthetic-test-data-rag-evals-hu":3},{"slug":4,"published":5,"minutes":6,"category":7,"tags":8,"keywords":14,"about":27,"sources":36,"cover":73,"og":74,"expertise":75,"locales":76,"lang":79,"title":80,"description":81,"coverAlt":82,"metaTitle":83,"takeaways":84,"faq":90,"toc":106,"blocks":140,"others":402},"synthetic-test-data-rag-evals","2026-10-17",10,"rag",[9,10,11,12,13],"RAG","Evaluation","Synthetic data","Retrieval","Testing",[15,16,17,18,19,20,21,22,23,24,25,26],"synthetic test data RAG","RAG evaluation dataset","question generation from chunks","hard negatives retrieval evaluation","answerability filter","RAG test set generation","synthetic QA pairs","RAG eval data contamination","multilingual RAG evaluation German Hungarian","retrieval metrics recall ndcg","LLM judge human spot check","unanswerable questions RAG",[28,31,33],{"name":29,"url":30},"Retrieval-augmented generation","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FRetrieval_augmented_generation",{"name":11,"url":32},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FSynthetic_data",{"name":34,"url":35},"Information retrieval","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FInformation_retrieval",[37,40,43,46,49,52,55,58,61,64,67,70],{"title":38,"url":39},"Red Hat Developers: Synthetic data for RAG evaluation (Feb 23, 2026)","https:\u002F\u002Fdevelopers.redhat.com\u002Farticles\u002F2026\u002F02\u002F23\u002Fsynthetic-data-rag-evaluation-why-your-rag-system-needs-better-testing",{"title":41,"url":42},"Ragas docs: Testset Generation for RAG","https:\u002F\u002Fdocs.ragas.io\u002Fen\u002Fstable\u002Fgetstarted\u002Frag_testset_generation\u002F",{"title":44,"url":45},"Ragas docs: Testset generation concepts (query types, scenarios)","https:\u002F\u002Fdocs.ragas.io\u002Fen\u002Fstable\u002Fconcepts\u002Ftest_data_generation\u002Frag\u002F",{"title":47,"url":48},"NVIDIA Technical Blog: Evaluating and Enhancing RAG Pipeline Performance Using Synthetic Data","https:\u002F\u002Fdeveloper.nvidia.com\u002Fblog\u002Fevaluating-and-enhancing-rag-pipeline-performance-using-synthetic-data\u002F",{"title":50,"url":51},"DeepEval docs: Datasets and the Synthesizer","https:\u002F\u002Fdeepeval.com\u002Fdocs\u002Fevaluation-datasets",{"title":53,"url":54},"Rajpurkar, Jia, Liang: Know What You Don't Know: Unanswerable Questions for SQuAD (ACL 2018)","https:\u002F\u002Farxiv.org\u002Fabs\u002F1806.03822",{"title":56,"url":57},"Rahmani et al.: Towards Understanding Bias in Synthetic Data for Evaluation (CIKM 2025)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2506.10301",{"title":59,"url":60},"Cheng et al.: A Survey on Data Contamination for Large Language Models","https:\u002F\u002Farxiv.org\u002Fabs\u002F2502.14425",{"title":62,"url":63},"Xu et al.: Infini-gram mini: Exact n-gram Search at the Internet Scale (EMNLP 2025)","https:\u002F\u002Faclanthology.org\u002F2025.emnlp-main.1268\u002F",{"title":65,"url":66},"Panickssery, Bowman, Feng: LLM Evaluators Recognize and Favor Their Own Generations","https:\u002F\u002Farxiv.org\u002Fabs\u002F2404.13076",{"title":68,"url":69},"Enevoldsen et al.: MMTEB, Massive Multilingual Text Embedding Benchmark (ICLR 2025)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2502.13595",{"title":71,"url":72},"Evidently AI: How to align an LLM judge with human labels (Nov 2025)","https:\u002F\u002Fwww.evidentlyai.com\u002Fblog\u002Fhow-to-align-llm-judge-with-human-labels","\u002Fimages\u002Fblog\u002Fsynthetic-test-data-rag-evals\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fsynthetic-test-data-rag-evals\u002Fog.jpg","ai-engineer",[77,78,79],"en","de","hu","Szintetikus tesztadatok generálása a RAG-értékeléshez","Kérdésgenerálás blokkokból, hard negatívok, válaszolhatósági címkék, német és magyar lefedettség, kontamináció és emberi ellenőrzések.","Hatlépcsős pipeline dokumentumblokkokból kérdéssé, kifejtett lekérdezzé, alapozott válasszal, groundedness szűrővel és arany kontextussal, elágazó hard negatívokkal.","Szintetikus tesztadatok RAG-értékeléshez · Balázs Csorba",[85,86,87,88,89],"A saját blokkokból, a termelési chunkolással generálj; a kérdés, a válasz és az arany kontextus minden rekordban együtt marad.","A hard negatívok és a megválaszolhatatlan tételek miatt tud egyáltalán megbukni a készlet.","A németet és a magyart nyelvenként generáld, ne egy angol kérdéslista fordításával fedd le.","Védekezz a kontamináció ellen: tartsd privátnak a készletet, dokumentumokat vonj ki, ne blokkokat, és nézd a n-gram átfedést az arany blokkal.","Értékeld tovább a generátort: 30-50 stratifikált emberi címke, a modell vagy a prompt minden módosítása után újra.",[91,94,97,100,103],{"q":92,"a":93},"Milyen nagynak kell lennie egy szintetikus RAG-eval készletnek?","Kicsiben kezdj, és addig növelsd, amíg a mért szám nem ugrál többé. A Ragas quickstart 10 tételt generál, hogy bebizonyítsa a pipeline működik; a használható készlet nagyobb, de a jó méret az, amelynél az új kérdések már nem változtatják meg két retriever összehasonlítását. A lefedettség a nyelvek, kérdéstípusok és címkeformák mentén fontosabb, mint a darabszám.",{"q":95,"a":96},"A szintetikus adat teljesen helyettesítheti a kézi címkézést?","Nem. A szintetikus tesztgyűjteményekről szóló kutatás azt mutatja, hogy az LLM-generált adatokon mért abszolút teljesítmény torzított, míg a rendszerek relatív összehasonlítása jóval stabilabb. A szintetikus készlettel konfigurációkat hasonlíts össze, és tarts meg egy kis emberi címkézett szeletet kalibrációként, ezen méred a generátor judge-ját is.",{"q":98,"a":99},"Ugyanaz a modell generálja és értékelje az adatot?","Inkább ne. Az LLM-értékelők felismerik és preferálják a saját generációikat, a kísérletek pedig lineáris korrelációt mutatnak az önfelismerés és a self-preference bias erőssége között. Generálj egy modellcsaláddal, értékelj egy másikkal, és a judge egyezését mérd emberi címkékhez, ne feltételezd.",{"q":101,"a":102},"Elég egy angol tesztkészletet németre és magyarra fordítani?","Az jó kiindulópont, de fordított szöveget tesztel, nem azt, amit a felhasználók gépelnek. Generáld a kérdéseket nyelvenként ugyanazokból a blokkokból, jelöld meg a lekérdezés és a dokumentum nyelvét, és a cross-lingual szeletet külön értékeld, mert ott a szóösszetételek és a ragok megváltoztatják a keresés viselkedését.",{"q":104,"a":105},"Mikor kell újragenerálni az eval készletet?","Amikor az tudásbázis lényegesen megváltozott, amikor a prompt vagy a generátor modell módosult, vagy amikor a tételekhez tárolt corpus hash már nem egyezik. A statikus tesztkészletek gyorsan elavulnak: versionáld a készletet a corpus mellett, és az újragenerálást új alapvonalnak kezeld, amit összehasonlítás előtt mintavétellel ellenőrizni kell.",[107,110,113,116,119,122,125,128,131,134,137],{"id":108,"title":109},"why-hand-labeled","Miért fogynak el a kézzel címkézett készletek",{"id":111,"title":112},"generation-pipeline","A generálási pipeline",{"id":114,"title":115},"question-shapes","Mely kérdéstípusok érik meg a generálást",{"id":117,"title":118},"hard-negatives","Hard negatívok: tesztek, amelyek bukhatnak",{"id":120,"title":121},"answerability-labels","Válaszolhatósági címkék",{"id":123,"title":124},"multilingual-coverage","Német és magyar lefedettség",{"id":126,"title":127},"contamination","A készlet kontaminációmentesen tartása",{"id":129,"title":130},"human-spot-checks","Emberi ellenőrzések, amelyek skálázhatók",{"id":132,"title":133},"metrics","Mit kell mérniük a számoknak",{"id":135,"title":136},"repeatable-job","Ismételhető feladattá tétele",{"id":138,"title":139},"sources","Források",[141,145,148,151,154,157,158,161,170,173,176,177,180,225,228,229,232,235,237,238,241,244,251,252,255,264,265,268,271,272,275,278,279,287,328,331,332,335,342,344,357,358],{"type":142,"content":143},"paragraph",[144],"Minden RAG-csapat ugyanabba a falba ütközik: a kód gyorsan kikerül a termékbe, az értékelési adathalmaz nem. Kérdést, választ és arany kontextust kézzel címkézni hetekbe telik, és mire a készlet elkészült, a tudásbázis már tovább is lépett. A Red Hat 2026 februári írása a szokásos állapotot írja le: a csapatok embeddingeket, retrievert, chunkolást és promptokat hangolnak, miközben továbbra is kézi ellenőrzésekre, kis kézzel címkézett adathalmazokra vagy általános LLM-as-a-judge értékekre támaszkodnak, és a rendszer látszólag működik, amíg meg nem érkezik a valós forgalom.",{"type":142,"content":146},[147],"A szintetikus tesztadat az, amiben az iparág megállapodott: kérdéseket, válaszokat és arany kontextusokat generálni a saját blokkokból, kiszűrni, amit a generátor elrontott, és megtartani egy kis emberi mintát, amely magát a generátort értékeli. Ez a bejegyzés végigjárja az utat: a pipeline-t, a megérő kérdéstípusokat, a hard negatívokat, a válaszolhatósági címkéket, a német és magyar lefedettséget, a kontaminációt, az ellenőrzéseket és azokat a metrikákat, amelyekből CI-gate lesz, nem pedig irányítótábla.",{"type":149,"level":150,"id":108,"text":109},"heading",2,{"type":142,"content":152},[153],"A RAG-értékelés unalomig ismert okból nehezebb, mint egy modell önmagában mért értékelése: egyszerre bukik két komponens. Arany kontextus hiányában nem lehet eldönteni, hogy a retriever hozta rosszul a dokumentumokat, vagy a generátor hallucinált helyes kontextus mellett, a hibakeresés pedig találgatássá válik. A szintetikus tripletek pontosan ezt oldják meg: mert a kérdés egy adott blokkból épült, tudjuk, melyik blokknak kell nyernie, így a lekérdezés és a generálás külön értékelhető, nem egy elmosódott összpontszámon vitatkozunk.",{"type":142,"content":155},[156],"A Red Hat felsorolja a statikus, kézzel készült készletek további hibáit: drágák és lassan állnak elő, ritkán hordoznak arany kontextust, a dokumentumok változásával azonnal elavulnak, és a generikus kérdések épp azokat a doménspecifikus hibákat hagyják ki, amelyek számítanak. Van egy fenntartás is. Rahmani és kollégái a CIKM 2025ön mutatták meg, hogy az LLM-generált tesztgyűjteményeken számolt értékelési eredmények abszolút teljesítménynél torzítottak, míg a rendszerek relatív összehasonlítása jóval jobban áll. A szintetikus számot trendvonalaként olvasd, nem jegyként.",{"type":149,"level":150,"id":111,"text":112},{"type":142,"content":159},[160],"Minden komoly generátor ugyanazt a formát követi. A Red Hat nyílt forráskódú SDG Hubja hatlépcsős RAG-evaluation flow-t szállít: téma kinyerés az értékelés horgonyaként, kérdésgenerálás egy dokumentumvázlat vezérlésével, a kérdések fejlesztése valós felhasználói lekérdezésekké, szigorúan a forrásban alapozott válaszgenerálás, a gyenge párokat eltávolító groundedness szűrő, és a kontextuskinyerés, amely izolálja a válaszhoz szükséges minimális blokkot. A bemeneti szerződés szándékos: egy oszlop a dokumentumnak, amelynek a termelési chunkolási stratégiával kell egyeznie, és egy rövid, szándékszintű vázlatforma, mert a jó vázlat az, ami megakadályozza, hogy a modell sablonpótló kérdéseket írjon.",{"type":162,"attrs":163,"inner":167,"caption":168},"diagram",{"viewBox":164,"role":165,"aria-labelledby":166},"0 0 720 150","img","srte1-t srte1-d","\u003Ctitle id=\"srte1-t\">Szintetikus eval adat pipeline\u003C\u002Ftitle>\u003Cdesc id=\"srte1-d\">A dokumentumok és a vázlatcímke a témakinyereségen, a kérdésgeneráláson, a kérdésfejlesztésen, az alapozott válaszgeneráláson, a groundedness szűrőn és a kontextuskinyeresésen át kérdés, válasz és arany kontextus rekordokká áll össze.\u003C\u002Fdesc>\u003Cdefs>\u003Cmarker id=\"srte1-ah\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\">\u003Cpath d=\"M0 0L10 5L0 10z\" class=\"d-head\" \u002F>\u003C\u002Fmarker>\u003C\u002Fdefs>\u003Ctext x=\"360\" y=\"24\" text-anchor=\"middle\" class=\"d-label\">dokumentumok + vázlatcímke\u003C\u002Ftext>\u003Crect x=\"4\" y=\"44\" width=\"102\" height=\"66\" rx=\"10\" class=\"d-box\" \u002F>\u003Ctext x=\"55\" y=\"72\" text-anchor=\"middle\" class=\"d-text\">Téma\u003C\u002Ftext>\u003Ctext x=\"55\" y=\"92\" text-anchor=\"middle\" class=\"d-small\">kinyerés\u003C\u002Ftext>\u003Cpath d=\"M106 77H124\" class=\"d-line\" marker-end=\"url(#srte1-ah)\" \u002F>\u003Crect x=\"126\" y=\"44\" width=\"102\" height=\"66\" rx=\"10\" class=\"d-sky\" \u002F>\u003Ctext x=\"177\" y=\"72\" text-anchor=\"middle\" class=\"d-text\">Kérdés\u003C\u002Ftext>\u003Ctext x=\"177\" y=\"92\" text-anchor=\"middle\" class=\"d-small\">blokkból\u003C\u002Ftext>\u003Cpath d=\"M228 77H246\" class=\"d-line\" marker-end=\"url(#srte1-ah)\" \u002F>\u003Crect x=\"248\" y=\"44\" width=\"102\" height=\"66\" rx=\"10\" class=\"d-box\" \u002F>\u003Ctext x=\"299\" y=\"72\" text-anchor=\"middle\" class=\"d-text\">Fejleszt\u003C\u002Ftext>\u003Ctext x=\"299\" y=\"92\" text-anchor=\"middle\" class=\"d-small\">felhasználói stílus\u003C\u002Ftext>\u003Cpath d=\"M350 77H368\" class=\"d-line\" marker-end=\"url(#srte1-ah)\" \u002F>\u003Crect x=\"370\" y=\"44\" width=\"102\" height=\"66\" rx=\"10\" class=\"d-gold\" \u002F>\u003Ctext x=\"421\" y=\"72\" text-anchor=\"middle\" class=\"d-text\">Válasz\u003C\u002Ftext>\u003Ctext x=\"421\" y=\"92\" text-anchor=\"middle\" class=\"d-small\">alapozott\u003C\u002Ftext>\u003Cpath d=\"M472 77H490\" class=\"d-line\" marker-end=\"url(#srte1-ah)\" \u002F>\u003Crect x=\"492\" y=\"44\" width=\"102\" height=\"66\" rx=\"10\" class=\"d-box\" \u002F>\u003Ctext x=\"543\" y=\"72\" text-anchor=\"middle\" class=\"d-text\">Szűrő\u003C\u002Ftext>\u003Ctext x=\"543\" y=\"92\" text-anchor=\"middle\" class=\"d-small\">groundedness\u003C\u002Ftext>\u003Cpath d=\"M594 77H612\" class=\"d-line\" marker-end=\"url(#srte1-ah)\" \u002F>\u003Crect x=\"614\" y=\"44\" width=\"102\" height=\"66\" rx=\"10\" class=\"d-mint\" \u002F>\u003Ctext x=\"665\" y=\"72\" text-anchor=\"middle\" class=\"d-text\">Arany\u003C\u002Ftext>\u003Ctext x=\"665\" y=\"92\" text-anchor=\"middle\" class=\"d-small\">kontextus\u003C\u002Ftext>\u003Ctext x=\"360\" y=\"134\" text-anchor=\"middle\" class=\"d-small\">kérdés + válasz + arany kontextus rekordonként\u003C\u002Ftext>",[169],"A szűrő lépés nem opcionális: a gyenge kérdés-válasz párok a metrikákba jutnak, ha itt senki nem távolítja el őket.",{"type":142,"content":171},[172],"A Ragas ugyanezt az eredményt más irányból építi meg. A dokumentumokat knowledge graphggé alakítja egy document splitterrel, entity- és kifejezéskinyerőkkel és relationship builderekkel, majd szenáriókat választ, azaz csúcsokat, lekérdezési hosszt, stílust és személyiséget, mielőtt egy synthesizer megírná a kérdést és a referencia választ. Az alapértelmezett lekérdezés-eloszlás 0,5 single-hop specific, 0,25 multi-hop abstract és 0,25 multi-hop specific. A DeepEval Synthesizere az egyenes utat választja: goldene-eket generál dokumentumokból vagy kontextusokból, nehezebb formákra fejleszti őket, és adathalmazként menti, amelyre pytest-et futtathatunk.",{"type":174,"code":175},"code","from ragas.testset import TestsetGenerator\nfrom ragas.testset.synthesizers import default_query_distribution\n\ngenerator = TestsetGenerator(llm=generator_llm, embedding_model=generator_embeddings)\ndist = default_query_distribution(generator_llm)\n# [(SingleHopSpecific, 0.5), (MultiHopAbstract, 0.25), (MultiHopSpecific, 0.25)]\ntestset = generator.generate(testset_size=100, query_distribution=dist)\n\ndf = testset.to_pandas()\n# columns you actually need downstream: query, reference_contexts, reference\ndf.to_json(\"evals\u002Frag-set-v1.jsonl\", orient=\"records\", lines=True)",{"type":149,"level":150,"id":114,"text":115},{"type":142,"content":178},[179],"Ne csak egyfajta kérdést generálj. Egy kizárólag mi-ez típusú tételekből álló készlet gond nélkül átmegy, miközben soha nem jelennek meg azok a hibák, amelyek a termékben csapódnak le: a két dokumentumon átívelő összehasonlítás, a kulcsszót nem megosztó parafrázis és az a kérdés, amelyet a korpusz egyszerűen nem tud megválaszolni. A Ragas két tengelyen oszt, single-hop az egyik, multi-hop a másik oldalon, specific és abstract mentén, a szenáriói pedig lekérdezési hosszt, stílust és személyiséget adnak hozzá, hogy a megfogalmazások ne egyetlen hangnemben érkezzenek.",{"type":181,"head":182,"rows":189},"table",[183,185,187],[184],"Típus",[186],"Elvárás a lekérdezéssel szemben",[188],"Referenciacímke",[190,197,204,211,218],[191,193,195],[192],"Single-hop, specific",[194],"Egy blokk tartalmazza a választ",[196],"arany kontextus + válasz",[198,200,202],[199],"Single-hop, abstract",[201],"Egy blokk, átfogalmazott érveléssel",[203],"arany kontextus + rubrika",[205,207,209],[206],"Multi-hop",[208],"Két vagy több blokk, entitással összekötve",[210],"rendezett arany kontextusok",[212,214,216],[213],"Megválaszolhatatlan",[215],"A korpusz egyik része sem fedi le",[217],"válaszolhatóság nem, elvárt elzárkózás",[219,221,223],[220],"Hard negatív próba",[222],"Az arany blokk hasonmások között van",[224],"arany kontextus + decoy azonosítók",{"type":142,"content":226},[227],"A nehézség a második tengely, és mérhető. Az NVIDIA szintetikus adatokra épülő pipeline-ja embedding modellt használ judge-ként a kérdések nehézségére: a generált kérdéseket a kontextusdokumentumokhoz való koszinusz hasonlóság szerint szűri, az alacsonyabb küszöb pedig nehezebb készletet ad. Az FiQA benchmarken az NVIDIA csapata a kézzel címkézett lekérdezésekhez kalibrálta ezt a szűrőt, és 4,57 százalékos átlagos eltérést mért a Recall@5-nél a 70. percentilis küszöbön, 5,65 százalékost a 75. percentilisen, 0,91-es korrelációval az összehasonlított embedding modellek között. Ez a mércé: a szintetikus készleted ugyanabba a sorba rendezze két retrievert, mint egy kézzel címkézett.",{"type":149,"level":150,"id":117,"text":118},{"type":142,"content":230},[231],"Egy kérdés plusz arany blokk csak azt bizonyítja, hogy a jó blokk megtalálható. A hard negatívok azt bizonyítják, hogy a rossz blokkot elutasítják, és ez az oka annak, hogy egy szintetikus készlet egyáltalán bukhat. Az NVIDIA definíciója szerint a hard negatívok olyan dokumentumok, amelyek embeddingje közel van a kérdéshez, de a szövegük nem tartalmazza a választ: a szomszédos árlista, a szabályzat előző verziója, ugyanaz a cikk a másik nyelven. A véletlenszerű negatívok erre használhatatlanok, mert egy modern embedding térben a kérdés és a relevánsatlan dokumentum távolsága már amúgy is nagy.",{"type":142,"content":233},[234],"Képzési párokhoz az NVIDIA három kiválasztási stratégiát dokumentál, és mindhárom érvényes az eval adatokra is: top-K kiválasztás a kérdéshez való koszinusz hasonlóság szerint, küszöb-alapú kiválasztás, amely csak minimum és maximum hasonlósági sávba eső negatívokat fogad el, és pozitív-tudatos bányászat, amely a negatív hasonlóságot a pozitív hasonlóság százalékában korlátozza. A NV-Retriever cikkben végzett ablatáció ezt a korlátot a pozitív érték 95 százalékában állítja be a hamis negatívok kiszűrésére. Evalnél ugyanez azt jelenti: válaszd ki azokat a decoyokat, amelyeket a retriever a legnagyobb valószínűséggel téveszt az arany blokkal össze, és tárold az azonosítóikat a címke mellett, hogy egy hiba konkrét tévesztésre mutasson, nem egy homályos értékcsökkenésre.",{"type":174,"code":236},"import numpy as np\n\ndef hard_negatives(question, chunks, gold_idx, k=4, cap=0.95):\n    \"\"\"Decoys the retriever ranks near the gold chunk, capped below the gold score.\"\"\"\n    q = embed(question)\n    sims = np.array([cosine(q, c.embedding) for c in chunks])\n    gold = sims[gold_idx]\n    order = np.argsort(-sims)\n    picked = [i for i in order if i != gold_idx and sims[i] \u003C= cap * gold]\n    return picked[:k]  # store chunk ids as hard_negatives on the record",{"type":149,"level":150,"id":120,"text":121},{"type":142,"content":239},[240],"A megválaszolhatatlan tételek választják el a keresési tesztet az elzárkózási teszttől. A SQuAD 2.0 szabvánnyá tette a mintát azzal, hogy több mint 50 000, crowdworkerek által szándékosan úgy megírt kérdést adott hozzá, amely hasonlított a megválaszolhatókra: egy erős neurális rendszer, amely a SQuAD 1.1-en 86 százalék F1-et ért el, a SQuAD 2.0-n 66 százalékra esett, mert el kellett döntenie azt is, mikor nem támasztja alá a bekezdés a választ. Egy RAG-eval készletnek ugyanez a keverék kell, a kérdések dokumentált arányával, ahol a helyes viselkedés az, hogy közöljük: a korpusz nem fedi le a témát.",{"type":142,"content":242},[243],"Az NVIDIA válaszolhatósági szűrője jó sablon magához a címkéhez. Az emberi annotátorok A-t adtak egy generált lekérdezésre, ha a blokk teljesen megválaszolta, B-t, ha kulcsinformáció hiányzott, C-t, ha a lekérdezés releváns volt, de a kontextus nem válaszolta meg, és D-t, ha a lekérdezés nem volt releváns a kontextushoz; a nem önálló lekérdezéseket egyáltalán nem értékelték. Ezzel a rubrikával egy Llama-3.1-70b-Instruct judge 94 százalékos precisiont és 90 százalékos recallt ért el. Négy fokozat itt jobb, mint egy booleai, mert a részben megválaszolható valós termelési eset, és éppen az, amely magabiztos, félig helyes válaszokat ad.",{"type":245,"variant":246,"title":247,"body":248},"callout","warn","A blokkból megválaszolható, nem a modell emlékezetéből",[249],[250],"A modell, amelytől egy blokkhoz kérdést kérnek, örömmel ír olyat, amelyet a pretrainingből meg tud válaszolni, a blokk csak díszítésként. Ezért a groundedness szűrő külön pipeline-lépés: a választ csak az arany kontextus támaszthatja alá, és a válaszolhatósági címkét a blokkot a judge elé téve kell eldönteni, nem a modell saját tudásával szemben. Tartsd expliciten a megválaszolhatatlanok arányát a konfigurációban, és a negatívok és elzárkózások nélküli készletet hibásnak tekintd: ami nem tud megbukni, az nem mér semmit.",{"type":149,"level":150,"id":123,"text":124},{"type":142,"content":253},[254],"Ha a termék németül és magyarul válaszol, németül és magyarul generálj. Egy angol kérdéskészlet lefordítása angol szószerkezetet ad német szavakkal, és az nem az, amit az emberek gépelnek; ráadásul elrejti azokat a keresési problémákat, amelyek nyelvenként jellemzők: a német összetett szavakat, amelyek máshogy válnak el, mint a lekérdezés, a magyar agglutinációt, amely több ragozást fűz egy tőhöz, és azt az esetet, amikor egy magyar kérdésnek egy német dokumentumot kell eltalálnia. Minden tételt jelölj a lekérdezés és a dokumentum nyelvével, és a cross-lingual szeletet külön értékeld.",{"type":142,"content":256},[257,258,263],"A nyilvános többnyelvű benchmarkok ellenőrzésre valók, nem helyettesítésre. Az MMTEB, az MTEB ICLR 2025-ön elfogadott közösségi bővítése több mint 500 minőségellenőrzött feladatot fed le több mint 250 nyelven, és azt is megmutatja, mennyit számít a feladatválasztás: a retrieval feladatokat hard negatívok mintavételezésével optimalizálják, kisebb split-eket építve, amelyek megőrzik a modell rangsorát. A MTEB nemzeti bővítései németül és több más nyelven is léteznek, és segítenek az embedding modell választásakor; magyarul főként a saját generált készletedre támaszkodsz, ezért is érdemes azt becsületesen tartani. A lekérdezési oldala ennek a ",{"tag":259,"to":260,"children":261},"link","\u002Fblog\u002Fmultilingual-rag-german-hungarian",[262],"német és magyar többnyelvű RAG"," bejegyzésben van.",{"type":149,"level":150,"id":126,"text":127},{"type":142,"content":266},[267],"A kontamináció kétszer harap. Az első harapás a nyilvános benchmarkoké: ha az eval tételei egy modell tanítási adataiban szerepelnek, a szám kitalált. A klasszikus detektor az n-gram átfedés, a módszer, amellyel a GPT-3 cikk megjelölte azokat az értékelési készletekben, ahol több mint 13 token egyezik a tanítóadatokkal, és az EMNLP 2025-ös Infini-gram mini tanulmány 83 terabájnyi internetes szövegen végzett pontos n-gram keresést, és súlyosan kontaminált alapbenchmarkokat talált, akár 74,2 százalékot GSM8K-nál. Egy 2025-ös áttekintés a védelmet adatfrissítésbe, adatátírásba és megelőzésbe rendezi, a detektálási módszereket pedig white-box, gray-box és black-box kategóriákba.",{"type":142,"content":269},[270],"A második harapás privát: a saját generált készleted szivárog abba a rendszerbe, amelyet mérsz. Három szabály lefedi. Ne hangolj promptot vagy chunkolási szabályt az eval készleten, és utána ne arról a készletről számolj be számot, vagyis a hangoláshoz egész dokumentumokat vonj ki, nem blokkokat, és az eval tételeket tartsd távol attól a indexétől, amely a promptkísérleteket szolgálja. Nézd meg az átfedést az egyes generált kérdések és azok arany blokkja között, mert a blokk szövegéről átmásolt kérdés jobbá teszi a keresőt a valósnál. És generálj újra, amikor a korpusz lényegesen megváltozik, corpus hash-et tárolva minden tételen, hogy a régi szám visszakövethető maradjon.",{"type":149,"level":150,"id":129,"text":130},{"type":142,"content":273},[274],"Az ellenőrzésekkel értékeled a generátort, és a olcsó változat működik. Az emberi címkékhez igazított judge gyakorlati útmutatója azt javasolja, 30-50 címkézett példával kezdj, a címkéket tartsd binárisan vagy kevés osztályban egy 1-től 10-ig tartó skála helyett, és a judge-t accuracy-vel, precisionnel, recall-lal és Cohen Kappa értékkel mérd. A saját kipróbált példájukban az első judge prompt csak a címkék 67 százalékában értett egyet a szakértőkkel, és prompt- és modelliteráció kellett, amíg a judge használható lett. Tervezd bele ezt az iterációt, ne tekintsd véglegesnek az első judge promptot.",{"type":142,"content":276},[277],"Stratifikáltan mintázz, ne véletlenszerűen: fedd le minden nyelvet, minden címkeformát és a megválaszolhatatlan szeletet, és minden generátormodelld vagy promptja módosítása után ellenőrizd újra. Van egy konkrét torzítás is, amire vigyázni kell. Panickssery, Bowman és Feng megmutatta, hogy az LLM-értékelők felismerik és preferálják a saját generációikat, és a finomhangolási kísérletek lineáris korrelációt adnak az önfelismerési képesség és a self-preference bias erőssége között. Gyakorlatilag: soha ne értékeld a kérdéseket és válaszokat azzal a modellcsaláddal, amely megírta őket, és a judge egyezését mért számként frissítsd, nem feltételezett tulajdonságként.",{"type":149,"level":150,"id":132,"text":133},{"type":142,"content":280},[281,282,286],"Arany kontextusok birtokában a metrika lista rövid, és minden tétel megnevez egy réteget, ez a készlet építésének lényege. A lekérdezés a Recall@k-t, az MRR-t és az nDCG-t kapja, plusz a context precisiont és recallt, ha a válaszszakaszokat is ismerjük, nem csak a blokkazonosítókat. A generálás a faithfulnesst, azaz hogy a választ alátámasztja-e a lekérdezett kontextus, az answer relevancet és a megválaszolhatatlan tételek felett számolt abstention accuracyt kapja. Egy olyan számot, amelyet nem lehet a két réteg egyikéhez sem rendelni, irányítótáblának hívunk, nem diagnózisnak; a szélesebb taxonómia a ",{"tag":259,"to":283,"children":284},"\u002Fblog\u002Frag-evaluation-metrics",[285],"RAG értékeléséről szóló bejegyzésben"," van.",{"type":181,"head":288,"rows":295},[289,291,293],[290],"Metrika",[292],"Réteg",[294],"Amit a szintetikus készlettől igényel",[296,303,309,316,322],[297,299,301],[298],"Recall@k, MRR, nDCG@10",[300],"Lekérdezés",[302],"arany kontextus-azonosító kérdésenként",[304,306,307],[305],"Context precision és recall",[300],[308],"arany szakaszok, nem csak azonosítók",[310,312,314],[311],"Faithfulness",[313],"Generálás",[315],"válasz plusz lekérdezett kontextus",[317,319,320],[318],"Answer relevance",[313],[321],"kérdés plusz referencia válasz",[323,325,326],[324],"Abstention accuracy",[313],[327],"megválaszolhatatlan tételek címkéi",{"type":142,"content":329},[330],"Két szokás tartja becsületesen a számokat. A relatív összehasonlítást, a konfiguráció A és B ugyanazon a készleten, jelentsd elsődleges eredményként, mert a CIKM 2025-ös elemzés azt találta, hogy a szintetikus gyűjtemények abszolút teljesítménye a törékeny szám. És tartsd meg tartósan egy kis emberi címkézett szeletet: ez az a kalibrációs súly, amely megmutatja, hogy a szintetikus készlet eltávolodott-e attól, amit a felhasználók valóban kérdeznek, és egyben a judge regressziós készlete is.",{"type":149,"level":150,"id":135,"text":136},{"type":142,"content":333},[334],"A szintetikus adat csak akkor térül meg, ha unalmas: ugyanaz a pipeline, ugyanazok a promptok és ugyanazok a szűrők, amelyek akkor futnak, amikor a korpusz elég nagyot változott. Minden tétel kapjon corpus hash-t, generátor-modell-azonosítót és prompt-verziót, így egy nem reprodukálható szám visszavezethető a változásra, amely okozta. Az alábbi hurk a teljes gyakorlat: generálás, szűrés, stratifikált minta kézi ellenőrzése, az értékelés lefuttatása, összehasonlítás a korábbi alapvonallal, és csak akkor újragenerálás, amikor az adatok elmozdultak.",{"type":162,"attrs":336,"inner":339,"caption":340},{"viewBox":337,"role":165,"aria-labelledby":338},"0 0 720 190","srte2-t srte2-d","\u003Ctitle id=\"srte2-t\">Ismételhető eval adat hurok\u003C\u002Ftitle>\u003Cdesc id=\"srte2-d\">Rekordok generálása, groundedness szűrés, stratifikált minta emberi ellenőrzése, az értékelés lefuttatása, összehasonlítás a korábbi alapvonallal, és újragenerálás csak akkor, ha a korpusz elmozdult.\u003C\u002Fdesc>\u003Cdefs>\u003Cmarker id=\"srte2-ah\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\">\u003Cpath d=\"M0 0L10 5L0 10z\" class=\"d-head\" \u002F>\u003C\u002Fmarker>\u003Cmarker id=\"srte2-rh\" viewBox=\"0 0 10 10\" refX=\"9\" refY=\"5\" markerWidth=\"7\" markerHeight=\"7\" orient=\"auto-start-reverse\">\u003Cpath d=\"M0 0L10 5L0 10z\" class=\"d-head-accent\" \u002F>\u003C\u002Fmarker>\u003C\u002Fdefs>\u003Crect x=\"5\" y=\"34\" width=\"126\" height=\"70\" rx=\"10\" class=\"d-box\" \u002F>\u003Ctext x=\"68\" y=\"64\" text-anchor=\"middle\" class=\"d-text\">Generálás\u003C\u002Ftext>\u003Ctext x=\"68\" y=\"86\" text-anchor=\"middle\" class=\"d-small\">blokkokból\u003C\u002Ftext>\u003Cpath d=\"M131 69H149\" class=\"d-line\" marker-end=\"url(#srte2-ah)\" \u002F>\u003Crect x=\"151\" y=\"34\" width=\"126\" height=\"70\" rx=\"10\" class=\"d-sky\" \u002F>\u003Ctext x=\"214\" y=\"64\" text-anchor=\"middle\" class=\"d-text\">Szűrés\u003C\u002Ftext>\u003Ctext x=\"214\" y=\"86\" text-anchor=\"middle\" class=\"d-small\">groundedness\u003C\u002Ftext>\u003Cpath d=\"M277 69H295\" class=\"d-line\" marker-end=\"url(#srte2-ah)\" \u002F>\u003Crect x=\"297\" y=\"34\" width=\"126\" height=\"70\" rx=\"10\" class=\"d-gold\" \u002F>\u003Ctext x=\"360\" y=\"64\" text-anchor=\"middle\" class=\"d-text\">Minta\u003C\u002Ftext>\u003Ctext x=\"360\" y=\"86\" text-anchor=\"middle\" class=\"d-small\">stratifikált\u003C\u002Ftext>\u003Cpath d=\"M423 69H441\" class=\"d-line\" marker-end=\"url(#srte2-ah)\" \u002F>\u003Crect x=\"443\" y=\"34\" width=\"126\" height=\"70\" rx=\"10\" class=\"d-box\" \u002F>\u003Ctext x=\"506\" y=\"64\" text-anchor=\"middle\" class=\"d-text\">Eval fut\u003C\u002Ftext>\u003Ctext x=\"506\" y=\"86\" text-anchor=\"middle\" class=\"d-small\">lekérdezés + gen\u003C\u002Ftext>\u003Cpath d=\"M569 69H587\" class=\"d-line\" marker-end=\"url(#srte2-ah)\" \u002F>\u003Crect x=\"589\" y=\"34\" width=\"126\" height=\"70\" rx=\"10\" class=\"d-mint\" \u002F>\u003Ctext x=\"652\" y=\"64\" text-anchor=\"middle\" class=\"d-text\">Hasonl.\u003C\u002Ftext>\u003Ctext x=\"652\" y=\"86\" text-anchor=\"middle\" class=\"d-small\">alapvonalhoz\u003C\u002Ftext>\u003Cpath d=\"M652 104V150H68V110\" class=\"d-dash\" marker-end=\"url(#srte2-rh)\" \u002F>\u003Ctext x=\"360\" y=\"172\" text-anchor=\"middle\" class=\"d-label\">csak akkor generálj újra, ha a korpusz elmozdult\u003C\u002Ftext>",[341],"A visszanyíl az, amit a csapatok kihagynak, és éppen ez tartja érvényesnek az alapvonalat, miután a tudásbázis megváltozott.",{"type":174,"code":343},"{\n  \"id\": \"hu-0042\",\n  \"corpus_hash\": \"8f3c1a9\",\n  \"generator\": \"\u003Cmodel id>\",\n  \"prompt_version\": \"qgen-v4\",\n  \"query_lang\": \"hu\",\n  \"doc_lang\": \"de\",\n  \"question\": \"\u003Cgenerated question>\",\n  \"answer\": \"\u003Canswer grounded in the gold context>\",\n  \"gold_context\": \"chunk-118\",\n  \"hard_negatives\": [\"chunk-117\", \"chunk-203\"],\n  \"answerability\": \"answerable\",\n  \"checked_by\": \"human\"\n}",{"type":142,"content":345},[346,347,351,352,356],"Ez az utolsó nyíl az, amit a csapatok kihagynak. Egy szintetikus készletnek lejárati dátuma van, amely a tudásbázishoz kötődik, és az a drift-érv, amely a termelési dokumentumokra igaz, a tesztadatokra ugyanúgy igaz: a statikus készletek szinte azonnal elavulnak. A CI-ben a relatív számokra építs kaput, egy Recall@5- vagy faithfulness-csökkenésre az előző futáshoz képest, és csak akkor buktasd a buildet, ha az emberi minta megerősíti, hogy ténylegesen változott valami. A körülöttük lévő összekötés, küszöbök és CI-huzalozás a témája a ",{"tag":259,"to":348,"children":349},"\u002Fblog\u002Fllm-evals-for-product-features",[350],"termékfunkciókhoz készített LLM-evalök"," bejegyzésnek, és a ",{"tag":259,"to":353,"children":354},"\u002Ftools\u002Fragas",[355],"Ragas",", a DeepEval és a Red Hat SDG Hub-ja a három generátor, amelyhez először nyúlok.",{"type":149,"level":150,"id":138,"text":139},{"type":359,"ordered":360,"items":361},"list",true,[362,366,369,372,376,379,382,385,389,392,395,398],[363],{"tag":364,"href":39,"children":365},"a",[38],[367],{"tag":364,"href":42,"children":368},[41],[370],{"tag":364,"href":45,"children":371},[44],[373],{"tag":364,"href":48,"children":374},[375],"NVIDIA Technical Blog: Evaluating and Enhancing RAG Pipeline Performance Using Synthetic Data (Apr 7, 2025)",[377],{"tag":364,"href":51,"children":378},[50],[380],{"tag":364,"href":54,"children":381},[53],[383],{"tag":364,"href":57,"children":384},[56],[386],{"tag":364,"href":60,"children":387},[388],"Cheng et al.: A Survey on Data Contamination for Large Language Models (2025)",[390],{"tag":364,"href":63,"children":391},[62],[393],{"tag":364,"href":66,"children":394},[65],[396],{"tag":364,"href":69,"children":397},[68],[399],{"tag":364,"href":72,"children":400},[401],"Evidently AI: How to align an LLM judge with human labels (Nov 14, 2025)",[403,474,532,590],{"slug":404,"published":5,"minutes":405,"category":7,"tags":406,"keywords":411,"about":424,"sources":432,"cover":468,"og":469,"expertise":75,"locales":470,"lang":79,"title":471,"description":472,"coverAlt":473},"embedding-model-selection-2026",9,[407,9,408,409,410],"Embeddings","MTEB","Vector search","Model selection",[412,413,414,415,416,417,418,419,420,421,422,423],"best embedding model 2026","how to choose an embedding model","embedding model comparison","MTEB leaderboard explained","RTEB benchmark","open source embedding model","multilingual embedding model","voyage-4 vs openai embeddings","Qwen3-Embedding","EmbeddingGemma","embedding model for RAG","switching embedding models re-embed",[425,428,429],{"name":426,"url":427},"Word embedding","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FWord_embedding",{"name":34,"url":35},{"name":430,"url":431},"Discounted cumulative gain","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FDiscounted_cumulative_gain",[433,435,438,441,444,447,450,453,456,459,462,465],{"title":434,"url":69},"Enevoldsen et al.: MMTEB, Massive Multilingual Text Embedding Benchmark (2025)",{"title":436,"url":437},"Hugging Face: Introducing RTEB, a new standard for retrieval evaluation (Oct 2025)","https:\u002F\u002Fhuggingface.co\u002Fblog\u002Frteb",{"title":439,"url":440},"OpenAI: Vector embeddings guide","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fguides\u002Fembeddings",{"title":442,"url":443},"OpenAI: API pricing","https:\u002F\u002Fdevelopers.openai.com\u002Fapi\u002Fdocs\u002Fpricing",{"title":445,"url":446},"Voyage AI: The Voyage 4 model family, shared embedding space with MoE architecture (Jan 2026)","https:\u002F\u002Fblog.voyageai.com\u002F2026\u002F01\u002F15\u002Fvoyage-4\u002F",{"title":448,"url":449},"Voyage AI: Text embeddings documentation","https:\u002F\u002Fdocs.voyageai.com\u002Fdocs\u002Fembeddings",{"title":451,"url":452},"Voyage AI: Pricing","https:\u002F\u002Fdocs.voyageai.com\u002Fdocs\u002Fpricing",{"title":454,"url":455},"Google: Gemini API embeddings documentation","https:\u002F\u002Fai.google.dev\u002Fgemini-api\u002Fdocs\u002Fembeddings",{"title":457,"url":458},"Google: Gemini API pricing","https:\u002F\u002Fai.google.dev\u002Fgemini-api\u002Fdocs\u002Fpricing",{"title":460,"url":461},"Cohere: Embed models documentation","https:\u002F\u002Fdocs.cohere.com\u002Fdocs\u002Fcohere-embed",{"title":463,"url":464},"Qwen: Qwen3-Embedding-8B model card","https:\u002F\u002Fhuggingface.co\u002FQwen\u002FQwen3-Embedding-8B",{"title":466,"url":467},"Google Developers Blog: Introducing EmbeddingGemma (Sep 2025)","https:\u002F\u002Fdevelopers.googleblog.com\u002Fen\u002Fintroducing-embeddinggemma\u002F","\u002Fimages\u002Fblog\u002Fembedding-model-selection-2026\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fembedding-model-selection-2026\u002Fog.jpg",[77,78,79],"Embedding-modell választása 2026-ban: ranglisták, költségek és összehasonlító teszt a saját adatokon","Hogyan válassz embedding-modellt RAG-hoz 2026-ban: mit mond az MTEB és az RTEB, API vagy nyílt súlyok, árak, dimenziók és egy egyhetes összehasonlító teszt.","Három oszlop egymásra rakott kockákból, középen a legmagasabb, mindegyik rövid sávval mérve.",{"slug":475,"published":5,"minutes":6,"category":7,"tags":476,"keywords":480,"about":492,"sources":501,"cover":526,"og":527,"expertise":75,"locales":528,"lang":79,"title":529,"description":530,"coverAlt":531},"contextual-retrieval-late-chunking",[9,477,407,478,479],"Chunking","Contextual retrieval","Late chunking",[481,482,483,484,485,486,487,488,489,490,491],"contextual retrieval","anthropic contextual retrieval","late chunking","contextual chunk embeddings","contextual embeddings rag","contextual bm25","chunk context rag","voyage-context-3","voyage-context-4","late chunking vs contextual retrieval","rag chunking context loss",[493,495,498],{"name":29,"url":494},"https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FRetrieval-augmented_generation",{"name":496,"url":497},"Okapi BM25","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FOkapi_BM25",{"name":499,"url":500},"Sentence embedding","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FSentence_embedding",[502,505,508,511,514,517,520,523],{"title":503,"url":504},"Anthropic: Introducing Contextual Retrieval (Sep 2024)","https:\u002F\u002Fwww.anthropic.com\u002Fnews\u002Fcontextual-retrieval",{"title":506,"url":507},"Günther et al.: Late Chunking, Contextual Chunk Embeddings Using Long-Context Embedding Models (2024, rev. 2025)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2409.04701",{"title":509,"url":510},"Jina AI: Late Chunking in Long-Context Embedding Models (Aug 2024)","https:\u002F\u002Fjina.ai\u002Fnews\u002Flate-chunking-in-long-context-embedding-models\u002F",{"title":512,"url":513},"Voyage AI: Introducing voyage-context-3 (Jul 2025)","https:\u002F\u002Fblog.voyageai.com\u002F2025\u002F07\u002F23\u002Fvoyage-context-3\u002F",{"title":515,"url":516},"Voyage AI: voyage-context-4 (Jun 2026)","https:\u002F\u002Fblog.voyageai.com\u002F2026\u002F06\u002F29\u002Fvoyage-context-4\u002F",{"title":518,"url":519},"Voyage AI: Contextualized chunk embeddings documentation","https:\u002F\u002Fdocs.voyageai.com\u002Fdocs\u002Fcontextualized-chunk-embeddings",{"title":521,"url":522},"Anthropic: Claude API pricing","https:\u002F\u002Fplatform.claude.com\u002Fdocs\u002Fen\u002Fabout-claude\u002Fpricing",{"title":524,"url":525},"Qu, Tu and Bao: Is Semantic Chunking Worth the Computational Cost? (2024)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2410.13070","\u002Fimages\u002Fblog\u002Fcontextual-retrieval-late-chunking\u002Fcover.webp","\u002Fimages\u002Fblog\u002Fcontextual-retrieval-late-chunking\u002Fog.jpg",[77,78,79],"Kontextuális visszakeresés és késleltetett chunkolás: a RAG-chunkok visszakapják a kontextusukat","A chunkok elveszítik a dokumentumukat. Hogyan javít ezen a contextual retrieval, a late chunking és a kontextusos embedding, mennyibe kerül, és mikor hagyd ki.","Négy szabad négyzet, alul széles kapocs fogja össze, mindegyik felfelé egy nagy laphoz kapcsolódik.",{"slug":533,"published":5,"minutes":405,"category":7,"tags":534,"keywords":538,"about":551,"sources":559,"cover":584,"og":585,"expertise":75,"locales":586,"lang":79,"title":587,"description":588,"coverAlt":589},"rag-access-control-permissions",[9,535,536,537,409],"Access control","Security","Multi-tenancy",[539,540,541,542,543,544,545,546,547,548,549,550],"rag access control","permission aware rag","document level security rag","rag multi tenancy","vector database access control","pgvector row level security","security trimming azure ai search","openfga rag authorization","qdrant multitenancy","pinecone namespaces multitenancy","owasp llm08 vector and embedding weaknesses","rag data leakage",[552,555,558],{"name":553,"url":554},"Access-control list","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FAccess-control_list",{"name":556,"url":557},"Multitenancy","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FMultitenancy",{"name":29,"url":494},[560,563,566,569,572,575,578,581],{"title":561,"url":562},"OWASP GenAI Security Project: LLM08:2025 Vector and Embedding Weaknesses","https:\u002F\u002Fgenai.owasp.org\u002Fllmrisk\u002Fllm082025-vector-and-embedding-weaknesses\u002F",{"title":564,"url":565},"PostgreSQL documentation: Row Security Policies","https:\u002F\u002Fwww.postgresql.org\u002Fdocs\u002Fcurrent\u002Fddl-rowsecurity.html",{"title":567,"url":568},"pgvector README: filtering and iterative index scans","https:\u002F\u002Fgithub.com\u002Fpgvector\u002Fpgvector",{"title":570,"url":571},"Qdrant: Multitenancy and partitions guide","https:\u002F\u002Fqdrant.tech\u002Fdocumentation\u002Fguides\u002Fmultiple-partitions\u002F",{"title":573,"url":574},"Pinecone: Implement multitenancy using namespaces","https:\u002F\u002Fdocs.pinecone.io\u002Fguides\u002Findex-data\u002Fimplement-multitenancy",{"title":576,"url":577},"Microsoft Learn: Document-level access control in Azure AI Search","https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fazure\u002Fsearch\u002Fsearch-document-level-access-overview",{"title":579,"url":580},"OpenFGA: RAG authorization use case","https:\u002F\u002Fopenfga.dev\u002Fdocs\u002Fuse-cases\u002Frag-authorization",{"title":582,"url":583},"Morris et al.: Text Embeddings Reveal (Almost) As Much As Text (EMNLP 2023)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2310.06816","\u002Fimages\u002Fblog\u002Frag-access-control-permissions\u002Fcover.webp","\u002Fimages\u002Fblog\u002Frag-access-control-permissions\u002Fog.jpg",[77,78,79],"Hozzáférés-kezelés RAG-hoz: jogosultságtudatos visszakeresés dokumentumszivárgás nélkül","Hogyan szivárogtatnak dokumentumot a RAG-asszisztensek, és hogyan állítsd meg: ACL minden chunkon, előszűrés, sorszintű biztonság pgvectorban, jogszinkron.","Hét kártya sorban, haton lakat jelvény, a csupasz kártya nyilat küld kifelé.",{"slug":591,"published":5,"minutes":6,"category":7,"tags":592,"keywords":597,"about":609,"sources":617,"cover":644,"og":645,"expertise":646,"locales":647,"lang":79,"title":648,"description":649,"coverAlt":650},"rag-product-catalog-pim-data",[9,593,594,595,596],"PIM","Product data","B2B e-commerce","Metadata filtering",[598,599,600,601,602,603,604,605,606,607,608],"rag product catalog","rag pim data","llm product data","product catalog chatbot","akeneo rag","pimcore ai search","rag structured data","metadata filtering rag","product attributes embeddings","b2b product assistant","etim classification ai",[610,613,614],{"name":611,"url":612},"Product information management","https:\u002F\u002Fen.wikipedia.org\u002Fwiki\u002FProduct_information_management",{"name":29,"url":494},{"name":615,"url":616},"ETIM (standard)","https:\u002F\u002Fwww.etim-international.com\u002Fclassification\u002F",[618,621,624,627,629,632,635,638,641],{"title":619,"url":620},"Akeneo API: Products, product values, metric values and product models","https:\u002F\u002Fapi.akeneo.com\u002Fconcepts\u002Fproducts.html",{"title":622,"url":623},"Akeneo Help Center: What about products with variants?","https:\u002F\u002Fhelp.akeneo.com\u002Fserenity-take-the-power-over-your-products\u002Fserenity-what-about-products-with-variants",{"title":625,"url":626},"Pimcore documentation: Classification Store","https:\u002F\u002Fdocs.pimcore.com\u002Fplatform\u002FPimcore\u002FObjects\u002FObject_Classes\u002FData_Types\u002FClassification_Store\u002F",{"title":628,"url":616},"ETIM International: Classification",{"title":630,"url":631},"ETIM International: ETIM releases and the IXF format","https:\u002F\u002Fetim-international.com\u002F?p=754",{"title":633,"url":634},"Reddy et al.: Shopping Queries Dataset, a large-scale ESCI benchmark for improving product search (2022)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2206.06588",{"title":636,"url":637},"Amazon Science: esci-data repository","https:\u002F\u002Fgithub.com\u002Famazon-science\u002Fesci-data",{"title":639,"url":640},"Qdrant documentation: Filtering","https:\u002F\u002Fqdrant.tech\u002Fdocumentation\u002Fconcepts\u002Ffiltering\u002F",{"title":642,"url":643},"Sui et al.: Table Meets LLM, can large language models understand structured table data? (WSDM 2024)","https:\u002F\u002Farxiv.org\u002Fabs\u002F2305.13062","\u002Fimages\u002Fblog\u002Frag-product-catalog-pim-data\u002Fcover.webp","\u002Fimages\u002Fblog\u002Frag-product-catalog-pim-data\u002Fog.jpg","b2b-ecommerce-developer",[77,78,79],"RAG termékkatalógusra: PIM-adatokból megbízható válaszok","A termékadat strukturált, ezért a PDF-szerű chunkolás itt elbukik. Hogyan sorosítsd a PIM-attribútumokat, és hogyan küldd a specifikációs kérdéseket szűrőkhöz.","Kilenc négyzetből álló keret apró jelekkel, alatta tölcsér egyetlen kártyához.",1792245343954]