Add LLM judge to retrieval eval; switch chat to pypdf with 2000/400 chunks
- eval_retrieval.py: --judge MODEL lets an OpenAI model decide whether the top-5 chunks answer each question, regardless of source and page; reports Answer@5, answer-level MRR and agreement with the page check; verdicts are cached in eval/judge_cache.json - On the curated goldset, gpt-6-luna rates pypdf and Docling equal (Answer@5 0.93 each, MRR 0.90 vs 0.92), so the chat stays on pypdf for now - local_rag.py: chunks 2000/400, chunk headers off by default, OpenAI model gpt-6-luna; server.py loads ./vectorstore_pypdf_2000 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
+1
-1
@@ -13,7 +13,7 @@ from local_rag import CHUNK_OVERLAP, CHUNK_SIZE, PDF_LOADER, PROCESSED_DIR, Loca
|
||||
# Folder to scan for PDFs (recursively).
|
||||
DATA_ROOT = Path("/Users/Philipp/Desktop/workspace/python/gpt_publikationen/data_vs")
|
||||
|
||||
# The chat (server.py) currently loads ./vectorstore_docling_hdr; pass --index to build that one.
|
||||
# The chat (server.py) currently loads ./vectorstore_pypdf_2000; pass --index to build that one.
|
||||
VECTORSTORE_PATH = "./vectorstore"
|
||||
|
||||
# If True: delete the existing vector store folder, then index all PDFs from scratch.
|
||||
|
||||
@@ -0,0 +1,436 @@
|
||||
{
|
||||
"266bb27d6f8e7d4cb64e17edd5b468052676977996eabb62130ff4a8838c6119": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 sagt ausdrücklich, dass Kafkas Familie seiner literarischen Produktion auch nach seinem Tod gleichgültig gegenüberstand."
|
||||
},
|
||||
"cb5c8c54437ec284091f811706a844a4402d20d7c90138b50dd7b16ef58e8716": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 sagt ausdrücklich, dass die Aussagen des Prokuristen Gregors Selbstbild widersprechen und Zweifel an seinen Verkaufserfolgen wecken."
|
||||
},
|
||||
"3260dadc5e841fbc17a2e47e2a6d8764273d7cdef4d6514974d92d49682de331": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 benennt ausdrücklich den Widerspruch zwischen Gregors Selbstbild und der Beurteilung seiner beruflichen Leistungen durch den Prokuristen, der Gregors Verkaufserfolge infrage stellt."
|
||||
},
|
||||
"4f52d4c66284fdd8f3f74367c8ee14b8cc6481b3517065169703a2b85dba8366": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 nennt ausdrücklich Band 2 der Griechischen Kulturgeschichte und führt dort den Abschnitt „Die Verwandlungen“ auf."
|
||||
},
|
||||
"f88f9cbe0ca34958369abaaf6c9f91bd4007b5cd95e4f02e95eac34bfc6384cd": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5
|
||||
],
|
||||
"begruendung": "Die Auszüge beschreiben Gestik und Mimik als vieldeutige Ausdrucksformen, die innere Zustände knapp verkörpern und von Figuren beobachtet und gedeutet werden."
|
||||
},
|
||||
"2c9539570f327b896aa3e2f8fbee72bef509855a4782ddc89ba56fd53361243e": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5
|
||||
],
|
||||
"begruendung": "Die Auszüge beschreiben Bildgestaltung bei Kafka sowohl als erzählerische Bilder und Bildkontraste beziehungsweise übertragene Rede als auch als realitätsnah oder abstrakt verselbständigte Bilder."
|
||||
},
|
||||
"77a3c046481e87973308209885702008a6ab481d64542c9e0f193fce171c92fe": {
|
||||
"auszuege": [],
|
||||
"begruendung": "Keiner der Auszüge deutet die drei Untermieter ausdrücklich aus biblischer Perspektive; der biblische Apfelbezug in [2] betrifft eine andere Szene."
|
||||
},
|
||||
"39d4c0563db533f83edd35029645a41f76ab1de721fa76786edb9556e81ee9b5": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
5
|
||||
],
|
||||
"begruendung": "Die Auszüge 1, 2, 3 und 5 verknüpfen Gregors körperlichen Ekel beziehungsweise seine abstoßende Gestalt ausdrücklich mit Demütigung und Selbsterniedrigung; Auszug 4 behandelt Ekel, stellt diesen Zusammenhang aber nicht her."
|
||||
},
|
||||
"126ef040bb8581c5e607ca7cac042065dfb1a9da496094159c301abfc31f593b": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3
|
||||
],
|
||||
"begruendung": "Die Auszüge 1 und 2 deuten die Dame als unerreichbares Ideal und als demütigenden Kontrast zu Gregors Gestalt; Auszug 3 beschreibt das Bild als menschliches Kulturgut und deutet seine Verbindung von Mensch und Tier."
|
||||
},
|
||||
"808472b80a58cd99d9df561e249c312479b70ed68f451773ef1b7e295904c3c4": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 sagt ausdrücklich, dass Gregors Tod ihm als „letzte Sohnespflicht“ bleibt."
|
||||
},
|
||||
"255a2a69fcdd9f654e5ce441265be10271bb78487ec7f5a3a4fe689ea8142585": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Nur Auszug 1 nennt ausdrücklich den Ort: Die Eltern erfahren die Nachricht aufrecht sitzend im Ehebett."
|
||||
},
|
||||
"a66116aaae6acda6de49ac1a5fe1dff05c0a55ecc065fe37108edf8735dfacfd": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 gibt Binders Erklärung ausdrücklich wieder: Kafka leite sich von „kajke“, einer niederdeutschen Koseform von Jakob, ab."
|
||||
},
|
||||
"7e5e1db0e6c948606950b538c571ed3f72a5093111f05668c50ae152a140a717": {
|
||||
"auszuege": [
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5
|
||||
],
|
||||
"begruendung": "Diese Auszüge belegen Tschechisch als Kafkas Umgangssprache und nennen konkrete mündliche Kommunikation, wobei Auszug 5 seine aktive Verwendung vorsichtiger formuliert."
|
||||
},
|
||||
"15f73e21f5ffb5b5a2bbd9cca715d24293df1db936d31d20146d3c1f4f25800d": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 nennt Kafkas Nichten ausdrücklich Marianne und Vera."
|
||||
},
|
||||
"9f704dd38b3e3fd77fd4e0e2085657e106bbefe1dd1a7d5c14fde9f045108f06": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
4
|
||||
],
|
||||
"begruendung": "[1] und [2] sagen ausdrücklich, dass Kafka mit seinen Nichten Tschechisch sprach; [4] stützt dies mit einem tschechischen Beispiel an seine Nichte Vera."
|
||||
},
|
||||
"625b0f0b60e802ecb1e84344bbc88f768316274f4dda29d485580a54c2fdc898": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
4,
|
||||
5
|
||||
],
|
||||
"begruendung": "Die Auszüge beschreiben die lautliche und buchstabenmäßige Entsprechung von Kafka und Samsa, insbesondere gleiche Vokalfolge beziehungsweise Buchstabenpositionen und einen Konsonantentausch; [4] ergänzt Kafkas Vorbehalt, Samsa sei kein vollständiges Kryptogramm für Kafka."
|
||||
},
|
||||
"d3f1476111efdf1d888ee6c5181cec65882fb25ff58e3db80519a5aa01d799f5": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 sagt ausdrücklich, dass das tschechische Wort „Kafka“ auf Deutsch „Dohle“ bedeutet."
|
||||
},
|
||||
"d4f3f3d74e6d3788c1b5695830048571cd4c539ba947fc95157b01742fe05ef5": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4
|
||||
],
|
||||
"begruendung": "Die Auszüge 1 bis 4 bezeichnen das Geschäft des Vaters als Galanteriewaren- beziehungsweise Kurzwarenhandlung, während Auszug 5 das Thema nicht beantwortet."
|
||||
},
|
||||
"53173d0b42df1056dcb885343e9a07e5c4ad816ce77fefca3a68ecba2fccaf65": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5
|
||||
],
|
||||
"begruendung": "Alle Auszüge verorten Hermann Kafka in einem ärmlichen tschechisch-jüdischen ländlichen Milieu und nennen seine Herkunft als Sohn eines Fleischhauers beziehungsweise als wandernder Hausierer."
|
||||
},
|
||||
"de91e131ad6f54c06ae5d749d9da10a685c4e318563af2e5693c30f22df2c101": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 sagt ausdrücklich, dass Bachmann die Namengebung von Thomas Mann, Franz Kafka und James Joyce vergleicht."
|
||||
},
|
||||
"db6101aa6299e9a1b46b4a98aeee50e749967e497476b8b547681f79050a03e0": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2
|
||||
],
|
||||
"begruendung": "[1] erläutert unmittelbar das ständige Schweben und Zurücknehmen von Aussagen, [2] nennt ergänzend Summierung und Verfremdung als notwendige Verfahren zur Darstellung der Totalität."
|
||||
},
|
||||
"2608dc0fae4f66648a0de419ff613a714bd5d730b1218598c206fe6a1c5c1669": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
5
|
||||
],
|
||||
"begruendung": "Die Auszüge 1, 2 und 5 nennen ausdrücklich den Band 22/23 der Reihe „Der jüngste Tag“."
|
||||
},
|
||||
"da142c5a92236cebf507cbc3dbca18b33cae1002981ab03b8154914911edb6f2": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2
|
||||
],
|
||||
"begruendung": "Beide Auszüge sagen ausdrücklich, dass „Die Verwandlung“ seit Anfang 1913 abgeschlossen vorlag und erst 1915 veröffentlicht wurde."
|
||||
},
|
||||
"e88e68366655c39d57b75d83b7273c413d5400676ac3269765d824c9cd4bdce6": {
|
||||
"auszuege": [
|
||||
1,
|
||||
3,
|
||||
5
|
||||
],
|
||||
"begruendung": "Die Auszüge 1, 3 und 5 beschreiben Kafkas Helden als kleinbürgerlich geprägte, machtlose oder schwache Menschen, die an ihrem konflikthaften Verhältnis zur Gesellschaft scheitern."
|
||||
},
|
||||
"ff82906a55326c84ea32faa8d65afe5c1772a2ae14d504ca8c542e3dd4770720": {
|
||||
"auszuege": [
|
||||
2,
|
||||
4
|
||||
],
|
||||
"begruendung": "Beide Auszüge legen nahe, den Rigorismus zu korrigieren, indem man gesellschaftliche Lebensumstände und ihren Einfluss auf individuelles Versagen berücksichtigt, statt allein den Einzelnen zu verurteilen."
|
||||
},
|
||||
"f9fad44780948b61fa5731834bef581d96af1e4ba3bb78a527ebca31fda6a397": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 ordnet ausdrücklich Kafkas Erzählung „Die Verwandlung“ der Gattung der Großstadterzählung beziehungsweise -novelle zu."
|
||||
},
|
||||
"26131d6cb95d12f987f2780f651214ca4bc05eab1b94fb8c2a41a07fe6013e9b": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4
|
||||
],
|
||||
"begruendung": "Diese Auszüge nennen Gregor Samsa ausdrücklich als Protagonisten oder Helden der Erzählung."
|
||||
},
|
||||
"61843a26b7146112bedf6782cbb7c290f714a1bbb2ad24250667650c94301acf": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5
|
||||
],
|
||||
"begruendung": "Alle Auszüge bezeichnen Gregors Gestalt ausdrücklich als Insekt beziehungsweise ungeheueres Ungeziefer; keiner legt eine eindeutige Tierart fest."
|
||||
},
|
||||
"af0bdc4808d5bb162b7e212e495f0cc48a1b528aaf9b369a99a96854e218f011": {
|
||||
"auszuege": [],
|
||||
"begruendung": "Keiner der Auszüge schildert, wie Gregor von seiner Familie aufgefunden wird; Auszug 3 erwähnt nur seinen Tod und das Verhalten der Familie danach."
|
||||
},
|
||||
"752052072e6ca9d584f02899bc658f34b121a46bcd15b44f486ce65ae49e15f4": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2
|
||||
],
|
||||
"begruendung": "[1] schildert die Umkehr vom versorgenden Familienmitglied zum Ausgeschlossenen, [2] Gregors Wandel von Rücksichtnahme zu Gleichgültigkeit und Angriffslust gegenüber seiner Familie."
|
||||
},
|
||||
"f312aa1204eeab8dc336aca210ef6a696c84e754f5cab2b05f0ad543f93adc56": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 sagt ausdrücklich, dass Kafkas Familie seiner literarischen Produktion auch nach seinem Tod gleichgültig gegenüberstand."
|
||||
},
|
||||
"88380bd4d7e5900780d52288e15ff00419629a51db94bb03e919cb0602ea915a": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 sagt ausdrücklich, dass die Beurteilung des Vorgesetzten Gregors Selbstbild widerspricht und Zweifel an seinen Verkaufserfolgen weckt."
|
||||
},
|
||||
"8473d77f22a6ef34d98563dc93be81d01a132d78154bd9c6f0b6848618b7c0dd": {
|
||||
"auszuege": [
|
||||
1,
|
||||
4
|
||||
],
|
||||
"begruendung": "Beide Auszüge benennen den Widerspruch zwischen Gregors Selbstbild und der Einschätzung des Prokuristen, der Gregors wenige Abschlüsse kritisiert und dessen fachliche Kompetenz von Gregor selbst als maßgeblich anerkannt wird."
|
||||
},
|
||||
"6bd0fc3a3eb2bf0398c469f36751b45f378e4021e71c3ce1ddd154046efec73d": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2
|
||||
],
|
||||
"begruendung": "Auszug 1 nennt den zweiten Band ausdrücklich, und Auszug 2 bestätigt Band 2 mit dem Anhang „Die Verwandlungen“."
|
||||
},
|
||||
"889f4f9fe48e953aca88e5044f62f4f13118ba4621f79ed06c0b6e5d4ba33897": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5
|
||||
],
|
||||
"begruendung": "Alle Auszüge beschreiben konkrete Formen oder Funktionen von Gestik und Mimik bei Kafka, etwa ihre erzählerische Ökonomie, Deutung aus der Perspektive der Figuren, szenische Wirkung und Vieldeutigkeit."
|
||||
},
|
||||
"6db1ac7381c30cb3d867141c0dde839362190535503d8563368ba80709860eaa": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
5
|
||||
],
|
||||
"begruendung": "Diese Auszüge beschreiben konkrete Merkmale und Funktionen von Kafkas Bildformen, etwa ihr Verhältnis zu realistischer Darstellung, ihre symbolische Bedeutung, ein erweitertes Bildverständnis und werkübergreifende Bildgeflechte; Auszug 4 bleibt allgemein."
|
||||
},
|
||||
"1a57746f66670fccec00b100b37f48c9f0b7c66f6d0359155d5c97ad9b840fa8": {
|
||||
"auszuege": [],
|
||||
"begruendung": "Keiner der Auszüge deutet die drei Untermieter ausdrücklich aus einer biblischen Perspektive; ihre Dreizahl allein reicht für eine zutreffende Antwort nicht aus."
|
||||
},
|
||||
"2352e0d76305783f7d968a3e9d1f38ce4e6543dff09f6cdaafdf74ece8e92669": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 verknüpft ausdrücklich körperlichen Ekel mit Demütigung und Selbstdemütigung und erläutert den Zusammenhang am Kontrast zwischen der Dame im Pelz und Gregors entstelltem Körper."
|
||||
},
|
||||
"23b0c1227ca6ce0812b58c5d8756f7a47b5a832ecdaf8cc3a8756dec65d95f5c": {
|
||||
"auszuege": [
|
||||
1,
|
||||
5
|
||||
],
|
||||
"begruendung": "[1] deutet die Dame als unerreichbare Verkörperung eleganter Weltläufigkeit im Kontrast zu Gregor, [5] als Sinnbild libidinöser Verlockung."
|
||||
},
|
||||
"1d5bc038e540afd590b202a9498f520819ef6408aa3cc085f4cf8b975c5380f4": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 sagt ausdrücklich, Gregors Tod könne als seine „letzte Sohnespflicht“ gelten."
|
||||
},
|
||||
"ce529a5ad8384f681e8da68608ed35ef65227f1155696a8c0c2f8f7d75d89d3d": {
|
||||
"auszuege": [
|
||||
2
|
||||
],
|
||||
"begruendung": "Nur Auszug 2 nennt ausdrücklich den Ort: Die Eltern erfahren die Nachricht im aufrecht sitzenden Zustand im Ehebett."
|
||||
},
|
||||
"43093f44348571f34bf5e13d6c84ba200ec558410fdefe8f5be5a9cab446ada8": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2
|
||||
],
|
||||
"begruendung": "Beide Auszüge nennen Binders Erklärung des Familiennamens Kafka aus „kajke“, einer niederdeutschen Diminutivform des Namens Jakob."
|
||||
},
|
||||
"5a6c5baf12785c2293824698ed705734fcd564e7d0fd160c0fa21d31896bfda6": {
|
||||
"auszuege": [
|
||||
1,
|
||||
5
|
||||
],
|
||||
"begruendung": "[1] sagt ausdrücklich, Kafka habe fast fehlerlos Tschechisch gesprochen, und [5] beschreibt seine Kommunikation auf Tschechisch im häuslichen Umfeld."
|
||||
},
|
||||
"887a03aff9884d2080db6ee9faddf57927068db65b8c847346a0a44c544fd650": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 nennt Kafkas Nichten ausdrücklich Marianne und Vera."
|
||||
},
|
||||
"95de9bbc505fbb913878bf7072618417b459cb1df9550b476e6e21f37f18ddee": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
5
|
||||
],
|
||||
"begruendung": "Die Auszüge 1 und 2 sagen ausdrücklich, dass Kafka mit seinen Nichten Tschechisch sprach; Auszug 5 bestätigt dies für die Kinder der Familien Valli und Ottla."
|
||||
},
|
||||
"d64b726dd60280ed45abc0f8dcbedb2ee83c17677ce71556a65e80b82dec1747": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
5
|
||||
],
|
||||
"begruendung": "Diese Auszüge beschreiben eine formale Abstimmung der Namen durch gleiche Buchstabenzahl sowie entsprechende Buchstabenpositionen, Vokalgleichklang oder Konsonantentausch."
|
||||
},
|
||||
"327dedb20feb52be2449f752db0e345aeb4c63d4df85c2bb9c7f0705442e3627": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 sagt ausdrücklich, dass „Kafka“ ein tschechisches Wort ist und auf Deutsch „Dohle“ bedeutet."
|
||||
},
|
||||
"94b863088e7f75c795ae3df7fe3bd9c64a02ff968173199857b60abfb41425e8": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3
|
||||
],
|
||||
"begruendung": "Die Auszüge 1 und 2 nennen ausdrücklich ein Galanteriewarengeschäft beziehungsweise einen Galanteriewarenladen, und Auszug 3 bezeichnet den Vater als Galanteriewarenhändler."
|
||||
},
|
||||
"5e5512ba26a215132af3d9b71ed863bec808cf1ead7c2a5d7c2ab0abfc3cf76b": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4
|
||||
],
|
||||
"begruendung": "Die Auszüge 1–4 verorten Hermann Kafka in ärmlichen tschechisch-jüdischen Verhältnissen beziehungsweise im Provinzproletariat und nennen ihn als Sohn eines Fleischhauers oder wandernden Hausierer, während Auszug 5 nur seinen späteren Status als jüdischer Mittelständler beschreibt."
|
||||
},
|
||||
"a255cba7a525c368c59fae8c9c2668787cddeeb1a1640ae7057067fb7b381668": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 nennt ausdrücklich Thomas Mann, Franz Kafka und James Joyce als die Schriftsteller, deren Namengebung Bachmann vergleicht."
|
||||
},
|
||||
"e633b9b62814f3540764c63478cd250d98a36e6c678c11ed710516b35022f5ca": {
|
||||
"auszuege": [
|
||||
1,
|
||||
4
|
||||
],
|
||||
"begruendung": "Auszug 1 erläutert unmittelbar, dass die Form durch das ständige Korrigieren begrenzter Sprach- und Bildformen auf das Universelle ein Schweben und eine Entgrenzung erzeugt; Auszug 4 nennt dazu Summierung und Verfremdung als notwendige Voraussetzungen von Kafkas künstlerischer Methode."
|
||||
},
|
||||
"cdf6b6d768b853344281dfe999aeed405dc8c214a32ca09fe50a33d6608cca42": {
|
||||
"auszuege": [
|
||||
1,
|
||||
4,
|
||||
5
|
||||
],
|
||||
"begruendung": "Diese Auszüge nennen ausdrücklich Band 22/23 beziehungsweise Nr. 22/23 der Reihe „Der jüngste Tag“."
|
||||
},
|
||||
"95f5730a4c379018998c7c04fd5e1ead5ebe8f380fef47e199fbee01d1474c10": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 sagt ausdrücklich, dass „Die Verwandlung“ seit Anfang 1913 abgeschlossen vorlag und erst 1915 veröffentlicht wurde."
|
||||
},
|
||||
"eb6617010f4a314856cdabc02189fe8fa74728ebc18fb06528e1a50099150d64": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5
|
||||
],
|
||||
"begruendung": "Alle Auszüge charakterisieren Kafkas Helden als Menschen, die sich in einer entfremdeten bürgerlichen Gesellschaft einsam, hilflos oder unterworfen erleben und an deren Lebensbedingungen scheitern."
|
||||
},
|
||||
"1ce9a81e5898beb700ba0b34aef0dc3c2bf56229d344f07d3f9d5c56af312c0e": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 nennt ausdrücklich einen Ansatz zur Korrektur: Bei der Beurteilung von Schuld auch die Umwelt zu berücksichtigen und eine Besserung sowie Wiedereingliederung zu ermöglichen."
|
||||
},
|
||||
"b8a61ffae0862f59279d9a176326b37134d2f1495678d4d128181984984d35c1": {
|
||||
"auszuege": [
|
||||
1
|
||||
],
|
||||
"begruendung": "Auszug 1 ordnet „Die Verwandlung“ ausdrücklich der Gattung der Großstadterzählung beziehungsweise Großstadtnovelle zu."
|
||||
},
|
||||
"7935b921838a7c54dc36f66233534e4bb46ad6355e16cd4341e21d2a4cbb188d": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
5
|
||||
],
|
||||
"begruendung": "Die Auszüge 1, 2 und 5 nennen Gregor Samsa ausdrücklich als Protagonisten beziehungsweise Helden, und Auszug 3 bezeichnet den Helden als Samsa; Auszug 4 nennt keinen konkreten Protagonisten."
|
||||
},
|
||||
"82235540a0f6fb8351ba94d4d1ce2a045a8b0ac4eec393cac7b55ea88e60cf7e": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5
|
||||
],
|
||||
"begruendung": "Alle Auszüge nennen Gregors Verwandlung in Ungeziefer; Auszug 1 bezeichnet ihn außerdem als Käfer."
|
||||
},
|
||||
"27b3e2adc6e4905ff899ef4f7972ea5031778e97c1dff23ff1f0d0eba2f3bec9": {
|
||||
"auszuege": [],
|
||||
"begruendung": "Keiner der Auszüge schildert, in welchem Zustand oder unter welchen Umständen die Familie Gregor am Ende auffindet; Auszug 5 erwähnt nur, dass die Bedienstete seinen Tod meldet."
|
||||
},
|
||||
"75cd420d947ce5c46821e8709337faf8523821b41b24f0f3d3dec223aff5351c": {
|
||||
"auszuege": [
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
5
|
||||
],
|
||||
"begruendung": "Diese Auszüge beschreiben die zunehmende Entfremdung und Umkehrung der Beziehungen: Gregor wird zunächst rücksichtsloser und gleichgültiger, während seine Familie ihn zunehmend ausgrenzt und einschließt."
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,126 @@
|
||||
====================================================================
|
||||
Retrieval-Auswertung — 2026-10-08 09:00
|
||||
====================================================================
|
||||
|
||||
Konfiguration
|
||||
Vektorspeicher ./vectorstore_docling_2000_hdr
|
||||
Embedding-Modell BAAI/bge-m3
|
||||
Chunk-Größe 2000 (Overlap 400)
|
||||
Loader docling, Kopfzeilen an
|
||||
Query-Zusatztext aus
|
||||
Suche hybrid, Reranker BAAI/bge-reranker-v2-m3
|
||||
Seitentoleranz ±1
|
||||
Fragen 30
|
||||
|
||||
Ergebnis
|
||||
Recall@5 0.70 (21 von 30)
|
||||
Recall@10 0.70 (21 von 30)
|
||||
Recall@20 0.77 (23 von 30)
|
||||
MRR 0.58
|
||||
|
||||
Nach Korpus
|
||||
primär Recall@5 0.00 MRR 0.02 (4 Fragen)
|
||||
sekundär Recall@5 0.81 MRR 0.67 (26 Fragen)
|
||||
|
||||
Einzelne Fragen (Rang = Position des ersten korrekten Treffers)
|
||||
Rang 1 sekundär Wie stand Kafkas Familie seiner literarischen Tätigkeit nach Kafkas Tod gegenüber?
|
||||
Rang 1 sekundär In welchem Band von Jacob Burckhardts Griechischer Kulturgeschichte gibt es ein eigenes Kapitel über Metamorphosen?
|
||||
Rang 1 sekundär In welchem Zusammenhang stehen körperlicher Ekel und Selbstdemütigung in "Die Verwandlung"?
|
||||
Rang 1 sekundär Wie kann das Bild der eleganten Dame in Gregors Zimmer gedeutet werden?
|
||||
Rang 1 sekundär Was kann als "letzte Sohnespflicht" Gregors gedeutet werden?
|
||||
Rang 1 sekundär Wie erklärt Binder die Etymologie des Familiennamens Kafka?
|
||||
Rang 1 sekundär Wie heißen die beiden Nichten von Kafka?
|
||||
Rang 1 sekundär Welche Sprache spricht Kafka mit seinen Nichten?
|
||||
Rang 1 sekundär Was bedeutet das tschechische Wort "Kafka" auf Deutsch?
|
||||
Rang 1 sekundär Welche Namen vergleicht Ingeborg Bachmann in ihrem Essay hinsichtlich der Namensgebung?
|
||||
Rang 1 sekundär Wie interpretiert Emrich das Besondere an der Kafkaschen Form?
|
||||
Rang 1 sekundär In welchem Band der Reihe "Der jüngste Tag" wurde "Die Verwandlung" veröffentlicht?
|
||||
Rang 1 sekundär Seit wann lag "Die Verwandlung" abgeschlossen vor, ohne veröffentlicht zu sein?
|
||||
Rang 1 sekundär Wie könnte man Kafkas ethischen Rigorismus korrigieren?
|
||||
Rang 1 sekundär Welche Erzählung von Franz Kafka ist der Gattung der Großstadterzählung beziehungsweise Großstadtnovelle zuzuordnen?
|
||||
Rang 2 sekundär Was kann man zu Bildformen in Kafkas Werken sagen?
|
||||
Rang 2 sekundär Wo erfahren die Eltern die Nachricht von Gregors Tod?
|
||||
Rang 2 sekundär Welche Art von Laden führte Kafkas Vater?
|
||||
Rang 3 sekundär Inwiefern sind die Namen Kafka und Samsa aufeinander abgestimmt?
|
||||
Rang 3 sekundär Aus welchem sozialen Milieu stammte Kafkas Vater genau?
|
||||
Rang 5 sekundär Was kann man zu Formen der Gestik und Mimik in Kafkas Werken sagen?
|
||||
Rang 14 primär In welche Art von Tier verwandelt sich Gregor Samsa?
|
||||
Rang 18 sekundär Sprach Kafka Tschechisch?
|
||||
Rang – sekundär Was sagen die Aussagen seines Vorgesetzten über Gregors berufliche Leistung aus?
|
||||
Rang – sekundär Inwiefern steht Gregors Selbstwahrnehmung seiner beruflichen Leistung im Widerspruch zu den Aussagen seines Vorgesetzten?
|
||||
Rang – sekundär Wie können die drei Untermieter der Familie Kafka aus einer biblischen Perspektive gedeutet werden?
|
||||
Rang – sekundär Welche Art von Helden in einer Gesellschaft zeichnet Kafka in seinen Geschichten?
|
||||
Rang – primär Wer ist der Protagonist von "Die Verwandlung"?
|
||||
Rang – primär Unter welchen Umständen wird Gregor am Ende der Erzählung von seiner Familie aufgefunden?
|
||||
Rang – primär Wie verändert sich Gregors Verhältnis zu seiner Familie im Verlauf der Erzählung?
|
||||
|
||||
7 Frage(n) ohne Treffer unter den ersten 20.
|
||||
Prüfen: Steht die Fundstelle wirklich dort? Stimmt der Dateiname?
|
||||
Ist das Dokument überhaupt im Index (rag.list_documents())?
|
||||
|
||||
Antwort im Kontext (Prüfung durch gpt-6-luna, erste 5 Treffer)
|
||||
Antwort@5 0.93 (28 von 30)
|
||||
MRR (Antwort) 0.92
|
||||
Abgleich mit Seitenprüfung: beide ja 21, nur Modell ja 7, nur Seite ja 0
|
||||
|
||||
Einzelne Fragen (Treffer = erster Auszug, der die Frage beantwortet; Seite = Rang laut Fundstelle)
|
||||
Treffer 1 | Seite 1 | Wie stand Kafkas Familie seiner literarischen Tätigkeit nach Kafkas Tod gegenüber?
|
||||
Auszug 1 sagt ausdrücklich, dass Kafkas Familie seiner literarischen Produktion auch nach seinem Tod gleichgültig gegenüberstand.
|
||||
Treffer 1 | Seite – | Was sagen die Aussagen seines Vorgesetzten über Gregors berufliche Leistung aus?
|
||||
Auszug 1 sagt ausdrücklich, dass die Beurteilung des Vorgesetzten Gregors Selbstbild widerspricht und Zweifel an seinen Verkaufserfolgen weckt.
|
||||
Treffer 1 | Seite – | Inwiefern steht Gregors Selbstwahrnehmung seiner beruflichen Leistung im Widerspruch zu den Aussagen seines Vorgesetzten?
|
||||
Beide Auszüge benennen den Widerspruch zwischen Gregors Selbstbild und der Einschätzung des Prokuristen, der Gregors wenige Abschlüsse kritisiert und dessen fachliche Kompetenz von Gregor selbst als maßgeblich anerkannt wird.
|
||||
Treffer 1 | Seite 1 | In welchem Band von Jacob Burckhardts Griechischer Kulturgeschichte gibt es ein eigenes Kapitel über Metamorphosen?
|
||||
Auszug 1 nennt den zweiten Band ausdrücklich, und Auszug 2 bestätigt Band 2 mit dem Anhang „Die Verwandlungen“.
|
||||
Treffer 1 | Seite 5 | Was kann man zu Formen der Gestik und Mimik in Kafkas Werken sagen?
|
||||
Alle Auszüge beschreiben konkrete Formen oder Funktionen von Gestik und Mimik bei Kafka, etwa ihre erzählerische Ökonomie, Deutung aus der Perspektive der Figuren, szenische Wirkung und Vieldeutigkeit.
|
||||
Treffer 1 | Seite 2 | Was kann man zu Bildformen in Kafkas Werken sagen?
|
||||
Diese Auszüge beschreiben konkrete Merkmale und Funktionen von Kafkas Bildformen, etwa ihr Verhältnis zu realistischer Darstellung, ihre symbolische Bedeutung, ein erweitertes Bildverständnis und werkübergreifende Bildgeflechte; Auszug 4 bleibt allgemein.
|
||||
Treffer 1 | Seite 1 | In welchem Zusammenhang stehen körperlicher Ekel und Selbstdemütigung in "Die Verwandlung"?
|
||||
Auszug 1 verknüpft ausdrücklich körperlichen Ekel mit Demütigung und Selbstdemütigung und erläutert den Zusammenhang am Kontrast zwischen der Dame im Pelz und Gregors entstelltem Körper.
|
||||
Treffer 1 | Seite 1 | Wie kann das Bild der eleganten Dame in Gregors Zimmer gedeutet werden?
|
||||
[1] deutet die Dame als unerreichbare Verkörperung eleganter Weltläufigkeit im Kontrast zu Gregor, [5] als Sinnbild libidinöser Verlockung.
|
||||
Treffer 1 | Seite 1 | Was kann als "letzte Sohnespflicht" Gregors gedeutet werden?
|
||||
Auszug 1 sagt ausdrücklich, Gregors Tod könne als seine „letzte Sohnespflicht“ gelten.
|
||||
Treffer 1 | Seite 1 | Wie erklärt Binder die Etymologie des Familiennamens Kafka?
|
||||
Beide Auszüge nennen Binders Erklärung des Familiennamens Kafka aus „kajke“, einer niederdeutschen Diminutivform des Namens Jakob.
|
||||
Treffer 1 | Seite – | Sprach Kafka Tschechisch?
|
||||
[1] sagt ausdrücklich, Kafka habe fast fehlerlos Tschechisch gesprochen, und [5] beschreibt seine Kommunikation auf Tschechisch im häuslichen Umfeld.
|
||||
Treffer 1 | Seite 1 | Wie heißen die beiden Nichten von Kafka?
|
||||
Auszug 1 nennt Kafkas Nichten ausdrücklich Marianne und Vera.
|
||||
Treffer 1 | Seite 1 | Welche Sprache spricht Kafka mit seinen Nichten?
|
||||
Die Auszüge 1 und 2 sagen ausdrücklich, dass Kafka mit seinen Nichten Tschechisch sprach; Auszug 5 bestätigt dies für die Kinder der Familien Valli und Ottla.
|
||||
Treffer 1 | Seite 3 | Inwiefern sind die Namen Kafka und Samsa aufeinander abgestimmt?
|
||||
Diese Auszüge beschreiben eine formale Abstimmung der Namen durch gleiche Buchstabenzahl sowie entsprechende Buchstabenpositionen, Vokalgleichklang oder Konsonantentausch.
|
||||
Treffer 1 | Seite 1 | Was bedeutet das tschechische Wort "Kafka" auf Deutsch?
|
||||
Auszug 1 sagt ausdrücklich, dass „Kafka“ ein tschechisches Wort ist und auf Deutsch „Dohle“ bedeutet.
|
||||
Treffer 1 | Seite 2 | Welche Art von Laden führte Kafkas Vater?
|
||||
Die Auszüge 1 und 2 nennen ausdrücklich ein Galanteriewarengeschäft beziehungsweise einen Galanteriewarenladen, und Auszug 3 bezeichnet den Vater als Galanteriewarenhändler.
|
||||
Treffer 1 | Seite 3 | Aus welchem sozialen Milieu stammte Kafkas Vater genau?
|
||||
Die Auszüge 1–4 verorten Hermann Kafka in ärmlichen tschechisch-jüdischen Verhältnissen beziehungsweise im Provinzproletariat und nennen ihn als Sohn eines Fleischhauers oder wandernden Hausierer, während Auszug 5 nur seinen späteren Status als jüdischer Mittelständler beschreibt.
|
||||
Treffer 1 | Seite 1 | Welche Namen vergleicht Ingeborg Bachmann in ihrem Essay hinsichtlich der Namensgebung?
|
||||
Auszug 1 nennt ausdrücklich Thomas Mann, Franz Kafka und James Joyce als die Schriftsteller, deren Namengebung Bachmann vergleicht.
|
||||
Treffer 1 | Seite 1 | Wie interpretiert Emrich das Besondere an der Kafkaschen Form?
|
||||
Auszug 1 erläutert unmittelbar, dass die Form durch das ständige Korrigieren begrenzter Sprach- und Bildformen auf das Universelle ein Schweben und eine Entgrenzung erzeugt; Auszug 4 nennt dazu Summierung und Verfremdung als notwendige Voraussetzungen von Kafkas künstlerischer Methode.
|
||||
Treffer 1 | Seite 1 | In welchem Band der Reihe "Der jüngste Tag" wurde "Die Verwandlung" veröffentlicht?
|
||||
Diese Auszüge nennen ausdrücklich Band 22/23 beziehungsweise Nr. 22/23 der Reihe „Der jüngste Tag“.
|
||||
Treffer 1 | Seite 1 | Seit wann lag "Die Verwandlung" abgeschlossen vor, ohne veröffentlicht zu sein?
|
||||
Auszug 1 sagt ausdrücklich, dass „Die Verwandlung“ seit Anfang 1913 abgeschlossen vorlag und erst 1915 veröffentlicht wurde.
|
||||
Treffer 1 | Seite – | Welche Art von Helden in einer Gesellschaft zeichnet Kafka in seinen Geschichten?
|
||||
Alle Auszüge charakterisieren Kafkas Helden als Menschen, die sich in einer entfremdeten bürgerlichen Gesellschaft einsam, hilflos oder unterworfen erleben und an deren Lebensbedingungen scheitern.
|
||||
Treffer 1 | Seite 1 | Wie könnte man Kafkas ethischen Rigorismus korrigieren?
|
||||
Auszug 1 nennt ausdrücklich einen Ansatz zur Korrektur: Bei der Beurteilung von Schuld auch die Umwelt zu berücksichtigen und eine Besserung sowie Wiedereingliederung zu ermöglichen.
|
||||
Treffer 1 | Seite 1 | Welche Erzählung von Franz Kafka ist der Gattung der Großstadterzählung beziehungsweise Großstadtnovelle zuzuordnen?
|
||||
Auszug 1 ordnet „Die Verwandlung“ ausdrücklich der Gattung der Großstadterzählung beziehungsweise Großstadtnovelle zu.
|
||||
Treffer 1 | Seite – | Wer ist der Protagonist von "Die Verwandlung"?
|
||||
Die Auszüge 1, 2 und 5 nennen Gregor Samsa ausdrücklich als Protagonisten beziehungsweise Helden, und Auszug 3 bezeichnet den Helden als Samsa; Auszug 4 nennt keinen konkreten Protagonisten.
|
||||
Treffer 1 | Seite – | In welche Art von Tier verwandelt sich Gregor Samsa?
|
||||
Alle Auszüge nennen Gregors Verwandlung in Ungeziefer; Auszug 1 bezeichnet ihn außerdem als Käfer.
|
||||
Treffer 1 | Seite – | Wie verändert sich Gregors Verhältnis zu seiner Familie im Verlauf der Erzählung?
|
||||
Diese Auszüge beschreiben die zunehmende Entfremdung und Umkehrung der Beziehungen: Gregor wird zunächst rücksichtsloser und gleichgültiger, während seine Familie ihn zunehmend ausgrenzt und einschließt.
|
||||
Treffer 2 | Seite 2 | Wo erfahren die Eltern die Nachricht von Gregors Tod?
|
||||
Nur Auszug 2 nennt ausdrücklich den Ort: Die Eltern erfahren die Nachricht im aufrecht sitzenden Zustand im Ehebett.
|
||||
Treffer – | Seite – | Wie können die drei Untermieter der Familie Kafka aus einer biblischen Perspektive gedeutet werden?
|
||||
Keiner der Auszüge deutet die drei Untermieter ausdrücklich aus einer biblischen Perspektive; ihre Dreizahl allein reicht für eine zutreffende Antwort nicht aus.
|
||||
Treffer – | Seite – | Unter welchen Umständen wird Gregor am Ende der Erzählung von seiner Familie aufgefunden?
|
||||
Keiner der Auszüge schildert, in welchem Zustand oder unter welchen Umständen die Familie Gregor am Ende auffindet; Auszug 5 erwähnt nur, dass die Bedienstete seinen Tod meldet.
|
||||
@@ -0,0 +1,126 @@
|
||||
====================================================================
|
||||
Retrieval-Auswertung — 2026-10-08 08:44
|
||||
====================================================================
|
||||
|
||||
Konfiguration
|
||||
Vektorspeicher ./vectorstore_pypdf_2000
|
||||
Embedding-Modell BAAI/bge-m3
|
||||
Chunk-Größe 2000 (Overlap 400)
|
||||
Loader pypdf, Kopfzeilen aus
|
||||
Query-Zusatztext aus
|
||||
Suche hybrid, Reranker BAAI/bge-reranker-v2-m3
|
||||
Seitentoleranz ±1
|
||||
Fragen 30
|
||||
|
||||
Ergebnis
|
||||
Recall@5 0.70 (21 von 30)
|
||||
Recall@10 0.73 (22 von 30)
|
||||
Recall@20 0.83 (25 von 30)
|
||||
MRR 0.69
|
||||
|
||||
Nach Korpus
|
||||
primär Recall@5 0.00 MRR 0.02 (4 Fragen)
|
||||
sekundär Recall@5 0.81 MRR 0.79 (26 Fragen)
|
||||
|
||||
Einzelne Fragen (Rang = Position des ersten korrekten Treffers)
|
||||
Rang 1 sekundär Wie stand Kafkas Familie seiner literarischen Tätigkeit nach Kafkas Tod gegenüber?
|
||||
Rang 1 sekundär In welchem Band von Jacob Burckhardts Griechischer Kulturgeschichte gibt es ein eigenes Kapitel über Metamorphosen?
|
||||
Rang 1 sekundär Was kann man zu Formen der Gestik und Mimik in Kafkas Werken sagen?
|
||||
Rang 1 sekundär In welchem Zusammenhang stehen körperlicher Ekel und Selbstdemütigung in "Die Verwandlung"?
|
||||
Rang 1 sekundär Wie kann das Bild der eleganten Dame in Gregors Zimmer gedeutet werden?
|
||||
Rang 1 sekundär Was kann als "letzte Sohnespflicht" Gregors gedeutet werden?
|
||||
Rang 1 sekundär Wo erfahren die Eltern die Nachricht von Gregors Tod?
|
||||
Rang 1 sekundär Wie erklärt Binder die Etymologie des Familiennamens Kafka?
|
||||
Rang 1 sekundär Wie heißen die beiden Nichten von Kafka?
|
||||
Rang 1 sekundär Welche Sprache spricht Kafka mit seinen Nichten?
|
||||
Rang 1 sekundär Inwiefern sind die Namen Kafka und Samsa aufeinander abgestimmt?
|
||||
Rang 1 sekundär Was bedeutet das tschechische Wort "Kafka" auf Deutsch?
|
||||
Rang 1 sekundär Welche Art von Laden führte Kafkas Vater?
|
||||
Rang 1 sekundär Aus welchem sozialen Milieu stammte Kafkas Vater genau?
|
||||
Rang 1 sekundär Welche Namen vergleicht Ingeborg Bachmann in ihrem Essay hinsichtlich der Namensgebung?
|
||||
Rang 1 sekundär Wie interpretiert Emrich das Besondere an der Kafkaschen Form?
|
||||
Rang 1 sekundär In welchem Band der Reihe "Der jüngste Tag" wurde "Die Verwandlung" veröffentlicht?
|
||||
Rang 1 sekundär Seit wann lag "Die Verwandlung" abgeschlossen vor, ohne veröffentlicht zu sein?
|
||||
Rang 1 sekundär Wie könnte man Kafkas ethischen Rigorismus korrigieren?
|
||||
Rang 1 sekundär Welche Erzählung von Franz Kafka ist der Gattung der Großstadterzählung beziehungsweise Großstadtnovelle zuzuordnen?
|
||||
Rang 5 sekundär Welche Art von Helden in einer Gesellschaft zeichnet Kafka in seinen Geschichten?
|
||||
Rang 7 sekundär Wie können die drei Untermieter der Familie Kafka aus einer biblischen Perspektive gedeutet werden?
|
||||
Rang 11 primär In welche Art von Tier verwandelt sich Gregor Samsa?
|
||||
Rang 15 sekundär Sprach Kafka Tschechisch?
|
||||
Rang 16 sekundär Was kann man zu Bildformen in Kafkas Werken sagen?
|
||||
Rang – sekundär Was sagen die Aussagen seines Vorgesetzten über Gregors berufliche Leistung aus?
|
||||
Rang – sekundär Inwiefern steht Gregors Selbstwahrnehmung seiner beruflichen Leistung im Widerspruch zu den Aussagen seines Vorgesetzten?
|
||||
Rang – primär Wer ist der Protagonist von "Die Verwandlung"?
|
||||
Rang – primär Unter welchen Umständen wird Gregor am Ende der Erzählung von seiner Familie aufgefunden?
|
||||
Rang – primär Wie verändert sich Gregors Verhältnis zu seiner Familie im Verlauf der Erzählung?
|
||||
|
||||
5 Frage(n) ohne Treffer unter den ersten 20.
|
||||
Prüfen: Steht die Fundstelle wirklich dort? Stimmt der Dateiname?
|
||||
Ist das Dokument überhaupt im Index (rag.list_documents())?
|
||||
|
||||
Antwort im Kontext (Prüfung durch gpt-6-luna, erste 5 Treffer)
|
||||
Antwort@5 0.93 (28 von 30)
|
||||
MRR (Antwort) 0.90
|
||||
Abgleich mit Seitenprüfung: beide ja 21, nur Modell ja 7, nur Seite ja 0
|
||||
|
||||
Einzelne Fragen (Treffer = erster Auszug, der die Frage beantwortet; Seite = Rang laut Fundstelle)
|
||||
Treffer 1 | Seite 1 | Wie stand Kafkas Familie seiner literarischen Tätigkeit nach Kafkas Tod gegenüber?
|
||||
Auszug 1 sagt ausdrücklich, dass Kafkas Familie seiner literarischen Produktion auch nach seinem Tod gleichgültig gegenüberstand.
|
||||
Treffer 1 | Seite – | Was sagen die Aussagen seines Vorgesetzten über Gregors berufliche Leistung aus?
|
||||
Auszug 1 sagt ausdrücklich, dass die Aussagen des Prokuristen Gregors Selbstbild widersprechen und Zweifel an seinen Verkaufserfolgen wecken.
|
||||
Treffer 1 | Seite – | Inwiefern steht Gregors Selbstwahrnehmung seiner beruflichen Leistung im Widerspruch zu den Aussagen seines Vorgesetzten?
|
||||
Auszug 1 benennt ausdrücklich den Widerspruch zwischen Gregors Selbstbild und der Beurteilung seiner beruflichen Leistungen durch den Prokuristen, der Gregors Verkaufserfolge infrage stellt.
|
||||
Treffer 1 | Seite 1 | In welchem Band von Jacob Burckhardts Griechischer Kulturgeschichte gibt es ein eigenes Kapitel über Metamorphosen?
|
||||
Auszug 1 nennt ausdrücklich Band 2 der Griechischen Kulturgeschichte und führt dort den Abschnitt „Die Verwandlungen“ auf.
|
||||
Treffer 1 | Seite 1 | Was kann man zu Formen der Gestik und Mimik in Kafkas Werken sagen?
|
||||
Die Auszüge beschreiben Gestik und Mimik als vieldeutige Ausdrucksformen, die innere Zustände knapp verkörpern und von Figuren beobachtet und gedeutet werden.
|
||||
Treffer 1 | Seite – | Was kann man zu Bildformen in Kafkas Werken sagen?
|
||||
Die Auszüge beschreiben Bildgestaltung bei Kafka sowohl als erzählerische Bilder und Bildkontraste beziehungsweise übertragene Rede als auch als realitätsnah oder abstrakt verselbständigte Bilder.
|
||||
Treffer 1 | Seite 1 | In welchem Zusammenhang stehen körperlicher Ekel und Selbstdemütigung in "Die Verwandlung"?
|
||||
Die Auszüge 1, 2, 3 und 5 verknüpfen Gregors körperlichen Ekel beziehungsweise seine abstoßende Gestalt ausdrücklich mit Demütigung und Selbsterniedrigung; Auszug 4 behandelt Ekel, stellt diesen Zusammenhang aber nicht her.
|
||||
Treffer 1 | Seite 1 | Wie kann das Bild der eleganten Dame in Gregors Zimmer gedeutet werden?
|
||||
Die Auszüge 1 und 2 deuten die Dame als unerreichbares Ideal und als demütigenden Kontrast zu Gregors Gestalt; Auszug 3 beschreibt das Bild als menschliches Kulturgut und deutet seine Verbindung von Mensch und Tier.
|
||||
Treffer 1 | Seite 1 | Was kann als "letzte Sohnespflicht" Gregors gedeutet werden?
|
||||
Auszug 1 sagt ausdrücklich, dass Gregors Tod ihm als „letzte Sohnespflicht“ bleibt.
|
||||
Treffer 1 | Seite 1 | Wo erfahren die Eltern die Nachricht von Gregors Tod?
|
||||
Nur Auszug 1 nennt ausdrücklich den Ort: Die Eltern erfahren die Nachricht aufrecht sitzend im Ehebett.
|
||||
Treffer 1 | Seite 1 | Wie erklärt Binder die Etymologie des Familiennamens Kafka?
|
||||
Auszug 1 gibt Binders Erklärung ausdrücklich wieder: Kafka leite sich von „kajke“, einer niederdeutschen Koseform von Jakob, ab.
|
||||
Treffer 1 | Seite 1 | Wie heißen die beiden Nichten von Kafka?
|
||||
Auszug 1 nennt Kafkas Nichten ausdrücklich Marianne und Vera.
|
||||
Treffer 1 | Seite 1 | Welche Sprache spricht Kafka mit seinen Nichten?
|
||||
[1] und [2] sagen ausdrücklich, dass Kafka mit seinen Nichten Tschechisch sprach; [4] stützt dies mit einem tschechischen Beispiel an seine Nichte Vera.
|
||||
Treffer 1 | Seite 1 | Inwiefern sind die Namen Kafka und Samsa aufeinander abgestimmt?
|
||||
Die Auszüge beschreiben die lautliche und buchstabenmäßige Entsprechung von Kafka und Samsa, insbesondere gleiche Vokalfolge beziehungsweise Buchstabenpositionen und einen Konsonantentausch; [4] ergänzt Kafkas Vorbehalt, Samsa sei kein vollständiges Kryptogramm für Kafka.
|
||||
Treffer 1 | Seite 1 | Was bedeutet das tschechische Wort "Kafka" auf Deutsch?
|
||||
Auszug 1 sagt ausdrücklich, dass das tschechische Wort „Kafka“ auf Deutsch „Dohle“ bedeutet.
|
||||
Treffer 1 | Seite 1 | Welche Art von Laden führte Kafkas Vater?
|
||||
Die Auszüge 1 bis 4 bezeichnen das Geschäft des Vaters als Galanteriewaren- beziehungsweise Kurzwarenhandlung, während Auszug 5 das Thema nicht beantwortet.
|
||||
Treffer 1 | Seite 1 | Aus welchem sozialen Milieu stammte Kafkas Vater genau?
|
||||
Alle Auszüge verorten Hermann Kafka in einem ärmlichen tschechisch-jüdischen ländlichen Milieu und nennen seine Herkunft als Sohn eines Fleischhauers beziehungsweise als wandernder Hausierer.
|
||||
Treffer 1 | Seite 1 | Welche Namen vergleicht Ingeborg Bachmann in ihrem Essay hinsichtlich der Namensgebung?
|
||||
Auszug 1 sagt ausdrücklich, dass Bachmann die Namengebung von Thomas Mann, Franz Kafka und James Joyce vergleicht.
|
||||
Treffer 1 | Seite 1 | Wie interpretiert Emrich das Besondere an der Kafkaschen Form?
|
||||
[1] erläutert unmittelbar das ständige Schweben und Zurücknehmen von Aussagen, [2] nennt ergänzend Summierung und Verfremdung als notwendige Verfahren zur Darstellung der Totalität.
|
||||
Treffer 1 | Seite 1 | In welchem Band der Reihe "Der jüngste Tag" wurde "Die Verwandlung" veröffentlicht?
|
||||
Die Auszüge 1, 2 und 5 nennen ausdrücklich den Band 22/23 der Reihe „Der jüngste Tag“.
|
||||
Treffer 1 | Seite 1 | Seit wann lag "Die Verwandlung" abgeschlossen vor, ohne veröffentlicht zu sein?
|
||||
Beide Auszüge sagen ausdrücklich, dass „Die Verwandlung“ seit Anfang 1913 abgeschlossen vorlag und erst 1915 veröffentlicht wurde.
|
||||
Treffer 1 | Seite 5 | Welche Art von Helden in einer Gesellschaft zeichnet Kafka in seinen Geschichten?
|
||||
Die Auszüge 1, 3 und 5 beschreiben Kafkas Helden als kleinbürgerlich geprägte, machtlose oder schwache Menschen, die an ihrem konflikthaften Verhältnis zur Gesellschaft scheitern.
|
||||
Treffer 1 | Seite 1 | Welche Erzählung von Franz Kafka ist der Gattung der Großstadterzählung beziehungsweise Großstadtnovelle zuzuordnen?
|
||||
Auszug 1 ordnet ausdrücklich Kafkas Erzählung „Die Verwandlung“ der Gattung der Großstadterzählung beziehungsweise -novelle zu.
|
||||
Treffer 1 | Seite – | Wer ist der Protagonist von "Die Verwandlung"?
|
||||
Diese Auszüge nennen Gregor Samsa ausdrücklich als Protagonisten oder Helden der Erzählung.
|
||||
Treffer 1 | Seite – | In welche Art von Tier verwandelt sich Gregor Samsa?
|
||||
Alle Auszüge bezeichnen Gregors Gestalt ausdrücklich als Insekt beziehungsweise ungeheueres Ungeziefer; keiner legt eine eindeutige Tierart fest.
|
||||
Treffer 1 | Seite – | Wie verändert sich Gregors Verhältnis zu seiner Familie im Verlauf der Erzählung?
|
||||
[1] schildert die Umkehr vom versorgenden Familienmitglied zum Ausgeschlossenen, [2] Gregors Wandel von Rücksichtnahme zu Gleichgültigkeit und Angriffslust gegenüber seiner Familie.
|
||||
Treffer 2 | Seite – | Sprach Kafka Tschechisch?
|
||||
Diese Auszüge belegen Tschechisch als Kafkas Umgangssprache und nennen konkrete mündliche Kommunikation, wobei Auszug 5 seine aktive Verwendung vorsichtiger formuliert.
|
||||
Treffer 2 | Seite 1 | Wie könnte man Kafkas ethischen Rigorismus korrigieren?
|
||||
Beide Auszüge legen nahe, den Rigorismus zu korrigieren, indem man gesellschaftliche Lebensumstände und ihren Einfluss auf individuelles Versagen berücksichtigt, statt allein den Einzelnen zu verurteilen.
|
||||
Treffer – | Seite – | Wie können die drei Untermieter der Familie Kafka aus einer biblischen Perspektive gedeutet werden?
|
||||
Keiner der Auszüge deutet die drei Untermieter ausdrücklich aus biblischer Perspektive; der biblische Apfelbezug in [2] betrifft eine andere Szene.
|
||||
Treffer – | Seite – | Unter welchen Umständen wird Gregor am Ende der Erzählung von seiner Familie aufgefunden?
|
||||
Keiner der Auszüge schildert, wie Gregor von seiner Familie aufgefunden wird; Auszug 3 erwähnt nur seinen Tod und das Verhalten der Familie danach.
|
||||
+102
-6
@@ -1,10 +1,16 @@
|
||||
#!/usr/bin/env python3
|
||||
"""Bewertet die Retrieval-Qualität gegen einen Satz Referenzfragen. Kein LLM beteiligt.
|
||||
"""Bewertet die Retrieval-Qualität gegen einen Satz Referenzfragen.
|
||||
|
||||
Das Skript stellt jede Frage aus eval/goldset.csv an den Vektorspeicher und prüft,
|
||||
ob die erwartete Fundstelle unter den ersten k Treffern auftaucht. Ergebnis sind
|
||||
Recall@k und MRR, ausgegeben auf dem Bildschirm und in eval/baseline.txt.
|
||||
|
||||
Optional (--judge MODELL) beurteilt zusätzlich ein Sprachmodell über die OpenAI-API,
|
||||
ob die Antwort in den ersten JUDGE_K Treffern steht — gleich in welchem Buch und auf
|
||||
welcher Seite. Das misst, was für den Chat zählt, und wertet gleichwertige Stellen
|
||||
aus anderen Quellen nicht als Fehler. Braucht OPENAI_API_KEY; die Urteile werden in
|
||||
eval/judge_cache.json zwischengespeichert, damit Wiederholungen nichts kosten.
|
||||
|
||||
Aus dem Projektordner starten: python eval_retrieval.py
|
||||
|
||||
Fragen, Index und Bericht lassen sich auf der Kommandozeile überschreiben, z. B.
|
||||
@@ -34,7 +40,7 @@ GOLDSET_PATH = Path("eval/goldset.csv")
|
||||
REPORT_PATH = Path("eval/baseline.txt")
|
||||
|
||||
# Muss mit server.py übereinstimmen, sonst wird ein anderer Index gemessen.
|
||||
VECTORSTORE_PATH = "./vectorstore_docling_hdr"
|
||||
VECTORSTORE_PATH = "./vectorstore_pypdf_2000"
|
||||
|
||||
# Für diese k-Werte wird Recall@k berechnet.
|
||||
K_VALUES = [5, 10, 20]
|
||||
@@ -51,8 +57,27 @@ PAGE_OFFSET = 1
|
||||
# gelten noch als Treffer. 0 verlangt die exakte Seite.
|
||||
PAGE_TOLERANCE = 1
|
||||
|
||||
# Wie viele Treffer das Sprachmodell bei --judge zu sehen bekommt (wie RETRIEVAL_K im Chat).
|
||||
JUDGE_K = 5
|
||||
JUDGE_CACHE = Path("eval/judge_cache.json")
|
||||
|
||||
JUDGE_PROMPT = """Du prüfst eine Literatursuche zu Franz Kafka. Unten stehen eine Frage und \
|
||||
{n} nummerierte Textauszüge aus Primär- und Sekundärliteratur (teils mit OCR-Fehlern).
|
||||
|
||||
Entscheide für jeden Auszug, ob er die Frage beantwortet: ganz oder in ihrem wesentlichen \
|
||||
Kern, so dass man allein mit diesem Auszug eine zutreffende Antwort geben könnte. Ein Auszug, \
|
||||
der nur das Thema berührt, zählt nicht. Nutze kein eigenes Wissen über Kafka, nur die Auszüge.
|
||||
|
||||
Antworte ausschließlich mit JSON in dieser Form:
|
||||
{{"auszuege": [Nummern der Auszüge, die die Frage beantworten], "begruendung": "ein Satz"}}
|
||||
|
||||
Frage: {frage}
|
||||
|
||||
{auszuege}"""
|
||||
|
||||
RETRIEVAL_SETUP = "" # wird in main() gesetzt und im Bericht vermerkt
|
||||
INDEX_INFO = {} # Einstellungen, mit denen der Index gebaut wurde (index_info.json)
|
||||
JUDGE_MODEL = None # wird in main() aus --judge gesetzt
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
|
||||
@@ -141,13 +166,74 @@ def evaluate(rag, goldset, max_k):
|
||||
rank = position
|
||||
break
|
||||
|
||||
results.append({**item, "rank": rank})
|
||||
results.append({**item, "rank": rank, "docs": docs})
|
||||
marker = f"Rang {rank}" if rank else "nicht gefunden"
|
||||
print(f" [{i}/{len(goldset)}] {marker:<15} {item['question'][:60]}")
|
||||
|
||||
return results
|
||||
|
||||
|
||||
def judge(results, model):
|
||||
"""Lässt ein Sprachmodell prüfen, welche der ersten JUDGE_K Treffer die Frage
|
||||
beantworten. Ergänzt je Frage judge_rank (erster passender Treffer) und judge_note."""
|
||||
import hashlib
|
||||
import json
|
||||
import re
|
||||
from langchain_openai import ChatOpenAI
|
||||
|
||||
cache = json.loads(JUDGE_CACHE.read_text(encoding="utf-8")) if JUDGE_CACHE.exists() else {}
|
||||
llm = ChatOpenAI(model=model)
|
||||
for i, r in enumerate(results, start=1):
|
||||
docs = r["docs"][:JUDGE_K]
|
||||
excerpts = "\n\n".join(
|
||||
f"[{n}] ({Path(d.metadata.get('source', '')).name}, Seite {d.metadata.get('page')})\n"
|
||||
f"{' '.join(d.page_content.split())}" for n, d in enumerate(docs, start=1))
|
||||
prompt = JUDGE_PROMPT.format(n=len(docs), frage=r["question"], auszuege=excerpts)
|
||||
key = hashlib.sha256(f"{model}\n{prompt}".encode()).hexdigest()
|
||||
if key not in cache:
|
||||
reply = llm.invoke(prompt)
|
||||
text = reply.content if hasattr(reply, "content") else str(reply)
|
||||
if isinstance(text, list): # manche Modelle liefern Inhaltsblöcke
|
||||
text = " ".join(part.get("text", "") if isinstance(part, dict) else str(part) for part in text)
|
||||
match = re.search(r"\{.*\}", text, re.S)
|
||||
try:
|
||||
verdict = json.loads(match.group(0)) if match else {}
|
||||
except json.JSONDecodeError:
|
||||
verdict = {}
|
||||
cache[key] = {"auszuege": sorted(int(n) for n in verdict.get("auszuege", []) if str(n).isdigit()),
|
||||
"begruendung": verdict.get("begruendung", text[:200])}
|
||||
JUDGE_CACHE.write_text(json.dumps(cache, ensure_ascii=False, indent=1), encoding="utf-8")
|
||||
hits = [n for n in cache[key]["auszuege"] if 1 <= n <= len(docs)]
|
||||
r["judge_rank"] = hits[0] if hits else None
|
||||
r["judge_note"] = cache[key]["begruendung"]
|
||||
marker = f"Treffer {r['judge_rank']}" if hits else "keine Antwort"
|
||||
print(f" [{i}/{len(results)}] {marker:<15} {r['question'][:60]}")
|
||||
|
||||
|
||||
def judge_report(results, model):
|
||||
"""Berichtsteil für die Prüfung durch das Sprachmodell."""
|
||||
n = len(results)
|
||||
found = [r for r in results if r.get("judge_rank")]
|
||||
page_hits = {id(r) for r in results if r["rank"] is not None and r["rank"] <= JUDGE_K}
|
||||
both = sum(1 for r in found if id(r) in page_hits)
|
||||
out = [
|
||||
"",
|
||||
f"Antwort im Kontext (Prüfung durch {model}, erste {JUDGE_K} Treffer)",
|
||||
f" Antwort@{JUDGE_K:<11} {len(found) / n:.2f} ({len(found)} von {n})",
|
||||
f" MRR (Antwort){'':<6} {sum(1 / r['judge_rank'] for r in found) / n:.2f}",
|
||||
f" Abgleich mit Seitenprüfung: beide ja {both}, nur Modell ja {len(found) - both}, "
|
||||
f"nur Seite ja {len(page_hits) - both}",
|
||||
"",
|
||||
" Einzelne Fragen (Treffer = erster Auszug, der die Frage beantwortet; Seite = Rang laut Fundstelle)",
|
||||
]
|
||||
for r in sorted(results, key=lambda r: (r.get("judge_rank") is None, r.get("judge_rank") or 0)):
|
||||
jr = r.get("judge_rank")
|
||||
pr = r["rank"] if r["rank"] is not None and r["rank"] <= JUDGE_K else None
|
||||
out.append(f" Treffer {jr if jr else '–':>2} | Seite {pr if pr else '–':>2} | {r['question']}")
|
||||
out.append(f" {r.get('judge_note', '')}")
|
||||
return out
|
||||
|
||||
|
||||
def recall_at(results, k):
|
||||
"""Anteil der Fragen, deren Fundstelle unter den ersten k Treffern liegt."""
|
||||
if not results:
|
||||
@@ -216,19 +302,24 @@ def build_report(results, embedding_model):
|
||||
"Ist das Dokument überhaupt im Index (rag.list_documents())?",
|
||||
]
|
||||
|
||||
if any("judge_rank" in r for r in results):
|
||||
out += judge_report(results, JUDGE_MODEL)
|
||||
|
||||
out.append("")
|
||||
return "\n".join(out)
|
||||
|
||||
|
||||
def main():
|
||||
global GOLDSET_PATH, VECTORSTORE_PATH, REPORT_PATH, USE_QUERY_INSTRUCTIONS
|
||||
parser = argparse.ArgumentParser(description="Retrieval-Auswertung ohne LLM")
|
||||
parser = argparse.ArgumentParser(description="Retrieval-Auswertung")
|
||||
parser.add_argument("--goldset", type=Path, default=GOLDSET_PATH)
|
||||
parser.add_argument("--index", default=VECTORSTORE_PATH)
|
||||
parser.add_argument("--report", type=Path, default=REPORT_PATH)
|
||||
parser.add_argument("--mode", choices=["dense", "hybrid", "union"], default=None,
|
||||
help="Suchmodus, Standard aus local_rag.RETRIEVAL_MODE")
|
||||
parser.add_argument("--no-rerank", action="store_true", help="Cross-Encoder abschalten")
|
||||
parser.add_argument("--judge", metavar="MODELL", default=None,
|
||||
help="zusätzlich prüfen lassen, ob die Antwort in den ersten Treffern steht")
|
||||
parser.add_argument("--query-instructions", action="store_true", default=USE_QUERY_INSTRUCTIONS,
|
||||
help="Zusatztext aus local_rag.QUERY_ADDITIONAL_INSTRUCTIONS anhängen")
|
||||
args = parser.parse_args()
|
||||
@@ -240,8 +331,8 @@ def main():
|
||||
print(f"{len(goldset)} Frage(n) geladen.\n")
|
||||
|
||||
# Lädt Embeddings und Vektorspeicher genau wie die Chat-Anwendung, damit
|
||||
# gemessen wird, was dort auch tatsächlich passiert. Es wird kein LLM
|
||||
# aufgerufen — nur die Ähnlichkeitssuche im Vektorspeicher.
|
||||
# gemessen wird, was dort auch tatsächlich passiert. Ein LLM wird nur mit
|
||||
# --judge aufgerufen, zur Beurteilung der Treffer, nicht zum Antworten.
|
||||
options = {}
|
||||
if args.mode:
|
||||
options["retrieval_mode"] = args.mode
|
||||
@@ -262,6 +353,11 @@ def main():
|
||||
INDEX_INFO = json.loads(info_file.read_text(encoding="utf-8"))
|
||||
RETRIEVAL_SETUP = f"{rag.retrieval_mode}, Reranker {rag.reranker_model or 'aus'}"
|
||||
results = evaluate(rag, goldset, max_k=max(K_VALUES))
|
||||
if args.judge:
|
||||
global JUDGE_MODEL
|
||||
JUDGE_MODEL = args.judge
|
||||
print(f"\nLasse {args.judge} prüfen, ob die Antwort in den ersten {JUDGE_K} Treffern steht ...")
|
||||
judge(results, args.judge)
|
||||
|
||||
report = build_report(results, rag.embeddings.model_name)
|
||||
print("\n" + report)
|
||||
|
||||
+8
-5
@@ -19,9 +19,10 @@ from langchain_text_splitters import RecursiveCharacterTextSplitter
|
||||
import docling_loader
|
||||
|
||||
# Pipeline tuning: used when adding documents (rebuild index after changing).
|
||||
# Characters, not tokens: 1500 characters of German prose are roughly 400 tokens.
|
||||
CHUNK_SIZE = 1500
|
||||
CHUNK_OVERLAP = 300
|
||||
# Characters, not tokens: 2000 characters of German prose are roughly 550 tokens.
|
||||
# With the reranker, 2000/400 beat 1500/300 on both Kafka goldsets (eval/matrix_2000.out).
|
||||
CHUNK_SIZE = 2000
|
||||
CHUNK_OVERLAP = 400
|
||||
|
||||
# Multilingual embedding model with a long input window (8192 tokens), so chunks
|
||||
# are never truncated. Changing it requires rebuilding the index.
|
||||
@@ -34,7 +35,9 @@ PDF_LOADER = "pypdf"
|
||||
PROCESSED_DIR = "corpus_processed/data_split"
|
||||
# Prefix every chunk with author and title from the file name (Docling: plus section),
|
||||
# so questions like "according to Lehmann ..." can match. See docling_loader.chunk_header.
|
||||
CHUNK_HEADERS = True
|
||||
# Needed for Docling (which drops running heads); neutral to slightly harmful for pypdf,
|
||||
# whose pages carry the author in the running head anyway.
|
||||
CHUNK_HEADERS = False
|
||||
|
||||
# Retrieval / query tuning
|
||||
RETRIEVAL_K = 5
|
||||
@@ -75,7 +78,7 @@ class LocalRAG:
|
||||
vectorstore_path="./vectorstore",
|
||||
llm_provider="ollama",
|
||||
ollama_model="gpt-oss:20b",
|
||||
openai_model="gpt-5-mini",
|
||||
openai_model="gpt-6-luna",
|
||||
ollama_base_url="http://localhost:11434",
|
||||
pdf_loader=PDF_LOADER,
|
||||
processed_dir=PROCESSED_DIR,
|
||||
|
||||
@@ -12,10 +12,11 @@ from pydantic import BaseModel
|
||||
from local_rag import LocalRAG
|
||||
|
||||
OLLAMA_MODEL = "gpt-oss:20b"
|
||||
OPENAI_MODEL = "gpt-5-mini"
|
||||
# Kafka corpus: Docling pipeline (split double pages) + chunk headers, bge-m3, hybrid search + reranker
|
||||
# built with: add_pdfs.py --data data --index ./vectorstore_docling_hdr --loader docling
|
||||
VECTORSTORE_PATH = "./vectorstore_docling_hdr"
|
||||
OPENAI_MODEL = "gpt-6-luna"
|
||||
# Kafka corpus: PyPDFLoader, chunks 2000/400 without headers, bge-m3, hybrid search + reranker.
|
||||
# Docling was not better at retrieval (eval/kafka_human_judge_*.txt), so pypdf stays for now.
|
||||
# built with: add_pdfs.py --data data --index ./vectorstore_pypdf_2000 --loader pypdf --no-headers
|
||||
VECTORSTORE_PATH = "./vectorstore_pypdf_2000"
|
||||
|
||||
# Dual RAG instances for on-the-fly provider switching
|
||||
rag_ollama = LocalRAG(
|
||||
|
||||
Reference in New Issue
Block a user