feat: integrate Google semantic search and branded desktop launcher
Core CI / core (ubuntu-latest) (push) Failing after 3m27s
Core CI / core (macos-latest) (push) Canceled after 0s
Core CI / core (windows-latest) (push) Canceled after 0s
Core CI / desktop (ubuntu-latest) (push) Successful in 5m45s
Core CI / desktop (macos-latest) (push) Canceled after 0s
Core CI / desktop (windows-latest) (push) Canceled after 0s
Core CI / core (ubuntu-latest) (push) Failing after 3m27s
Core CI / core (macos-latest) (push) Canceled after 0s
Core CI / core (windows-latest) (push) Canceled after 0s
Core CI / desktop (ubuntu-latest) (push) Successful in 5m45s
Core CI / desktop (macos-latest) (push) Canceled after 0s
Core CI / desktop (windows-latest) (push) Canceled after 0s
This commit is contained in:
1 parent
a90df15503
commit
caf6a2f82e
80 files changed
+14971
-837
No files matched your search
@@ -0,0 +1,14 @@
|
||||
# Retrieval regression corpus
|
||||
|
||||
This synthetic seed corpus contains 20 documents and 24 predetermined queries:
|
||||
exact filenames, error/invoice identifiers, remembered concepts and English/German
|
||||
cross-language retrieval. Each query labels one expected file. Supplier-contract
|
||||
termination and meeting cancellation deliberately share words but differ in intent.
|
||||
|
||||
Report top-1 accuracy, recall@10, per-query rank and latency. Keep failures in
|
||||
reports; do not rewrite expected answers or remove difficult queries to make a
|
||||
model pass. Evaluate lexical, semantic and hybrid modes on the same corpus.
|
||||
|
||||
This corpus is a regression fixture, not a representative user dataset. Production
|
||||
quality needs a larger independently labelled corpus, varied document lengths,
|
||||
PDF/OCR/media cases, ambiguous/no-answer queries and measured filter correctness.
|
||||
@@ -0,0 +1,51 @@
|
||||
{
|
||||
"description": "Synthetic seed corpus for hybrid retrieval regression, not production quality certification.",
|
||||
"documents": [
|
||||
{"id":"supplier-contract","filename":"supplier-agreement.txt","text":"Our supplier agreement requires sixty days written notice to terminate the partnership. Notify the procurement contact before ending the contract."},
|
||||
{"id":"apartment-lease","filename":"mietvertrag.txt","text":"Im Mietvertrag steht: Haustiere sind nach schriftlicher Zustimmung des Vermieters erlaubt. Die Kaution beträgt drei Monatsmieten."},
|
||||
{"id":"invoice","filename":"INV-2026-1042.txt","text":"Invoice INV-2026-1042. Office chairs purchased in October. Payment reference OFFICE-CHAIRS-42. Total amount 420 euros."},
|
||||
{"id":"travel-expenses","filename":"reisekosten.txt","text":"Reisekosten für die Dienstreise nach Berlin: Hotelrechnung und Bahnticket bitte zusammen einreichen. Die Erstattung erfolgt nach Freigabe."},
|
||||
{"id":"conference-agenda","filename":"conference-agenda.txt","text":"The engineering conference begins with registration at nine, followed by a database performance workshop. The afternoon session discusses accessible interfaces."},
|
||||
{"id":"deployment","filename":"deployment-runbook.txt","text":"Deploy a release by checking migrations, preparing the new build, switching traffic, and monitoring errors. Roll back to the previous build if health checks fail."},
|
||||
{"id":"backup-restore","filename":"backup-recovery.txt","text":"To recover deleted files, select the most recent successful backup snapshot. Restore into a separate folder, verify file hashes, and only then replace the damaged originals."},
|
||||
{"id":"api-retry","filename":"retry-design.txt","text":"Retry temporary API failures using exponential backoff and random jitter. Stop after five attempts. Do not retry authentication errors or requests that could duplicate a payment."},
|
||||
{"id":"oauth","filename":"authentication-notes.txt","text":"Access tokens expire quickly. A refresh token obtains a new access token after expiry. Store refresh tokens securely and revoke them when a user signs out."},
|
||||
{"id":"network-outage","filename":"network-incident.txt","text":"The network outage was caused by a failed switch power supply. Replacement power restored connectivity. Monitoring should alert when the switch becomes unreachable."},
|
||||
{"id":"launch-plan","filename":"product-launch.txt","text":"The product launch plan schedules the public announcement after the beta feedback review. Publish the release notes and prepare the customer onboarding guide."},
|
||||
{"id":"research-budget","filename":"research-budget.txt","text":"The research budget allocates funds to user interviews, prototype testing and accessibility studies. Review spending with the research lead each month."},
|
||||
{"id":"vacation-policy","filename":"urlaubsrichtlinie.txt","text":"Urlaub muss im Teamkalender eingetragen und von der Teamleitung genehmigt werden. Während der Abwesenheit übernimmt die benannte Vertretung dringende Aufgaben."},
|
||||
{"id":"recipe","filename":"tomato-soup.txt","text":"For tomato soup, roast tomatoes with garlic, blend with vegetable stock, and finish with fresh basil. Serve with toasted bread."},
|
||||
{"id":"renovation","filename":"renovation-estimate.txt","text":"The renovation estimate covers replacing kitchen cabinets, repainting the walls and installing new lights. Flooring work is excluded from this quote."},
|
||||
{"id":"warranty","filename":"monitor-warranty.txt","text":"The monitor warranty covers manufacturing defects for two years. Keep the receipt and serial number. Accidental damage is excluded."},
|
||||
{"id":"search-architecture","filename":"search-engine-design.txt","text":"The file search engine combines exact filenames, ranked keyword matches and semantic embeddings. Indexing runs in bounded background workers while queries use the committed index."},
|
||||
{"id":"garden","filename":"gartenplanung.txt","text":"Die Gartenplanung sieht ein Hochbeet für Tomaten, Kräuter und Salat vor. Die Regentonne versorgt das Beet bei trockenem Wetter mit Wasser."},
|
||||
{"id":"cancellation-email","filename":"meeting-cancellation.txt","text":"Cancel tomorrow's planning meeting because the participants are unavailable. Send a new invitation for next week. This note does not change any supplier contract."},
|
||||
{"id":"error-code","filename":"support-error.txt","text":"Error E_SEARCH_071 means the local search database schema is newer than this app. Upgrade the application before opening that index."}
|
||||
],
|
||||
"queries": [
|
||||
{"text":"supplier-agreement.txt","expected":"supplier-contract","language":"exact"},
|
||||
{"text":"INV-2026-1042","expected":"invoice","language":"identifier"},
|
||||
{"text":"E_SEARCH_071","expected":"error-code","language":"identifier"},
|
||||
{"text":"How can we end our relationship with the supplier?","expected":"supplier-contract","language":"en"},
|
||||
{"text":"Wie kündigen wir die Zusammenarbeit mit unserem Lieferanten?","expected":"supplier-contract","language":"de-crosslingual"},
|
||||
{"text":"Can I keep a pet in the rented apartment?","expected":"apartment-lease","language":"en-crosslingual"},
|
||||
{"text":"Wo steht etwas über die Kaution für die Wohnung?","expected":"apartment-lease","language":"de"},
|
||||
{"text":"How do I claim my train and hotel costs?","expected":"travel-expenses","language":"en-crosslingual"},
|
||||
{"text":"Wann ist der Workshop zur Datenbankleistung?","expected":"conference-agenda","language":"de-crosslingual"},
|
||||
{"text":"What should we do if the new release fails its health check?","expected":"deployment","language":"en"},
|
||||
{"text":"Ich habe Dateien gelöscht und brauche sie aus der Sicherung zurück","expected":"backup-restore","language":"de-crosslingual"},
|
||||
{"text":"How should the app retry a temporary server failure?","expected":"api-retry","language":"en"},
|
||||
{"text":"How do we obtain another access token after it expires?","expected":"oauth","language":"en"},
|
||||
{"text":"Warum war der Netzwerkswitch nicht erreichbar?","expected":"network-outage","language":"de-crosslingual"},
|
||||
{"text":"The plan for announcing the new product after beta testing","expected":"launch-plan","language":"en"},
|
||||
{"text":"Money allocated for interviews and prototype usability studies","expected":"research-budget","language":"en"},
|
||||
{"text":"Who approves my time off and who covers urgent work?","expected":"vacation-policy","language":"en-crosslingual"},
|
||||
{"text":"A soup made with roasted tomatoes and basil","expected":"recipe","language":"en"},
|
||||
{"text":"Does the kitchen renovation quote include new flooring?","expected":"renovation","language":"en"},
|
||||
{"text":"The document about replacing a defective display under warranty","expected":"warranty","language":"en"},
|
||||
{"text":"How can keyword results and embeddings be combined for file search?","expected":"search-architecture","language":"en"},
|
||||
{"text":"Where is the plan for the raised vegetable bed and rainwater barrel?","expected":"garden","language":"en-crosslingual"},
|
||||
{"text":"Cancel tomorrow's planning meeting","expected":"cancellation-email","language":"en"},
|
||||
{"text":"OFFICE-CHAIRS-42","expected":"invoice","language":"identifier"}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,852 @@
|
||||
{
|
||||
"background_prewarm_ms": 128.4059,
|
||||
"device": "cpu",
|
||||
"documents": 20,
|
||||
"embedding_report": {
|
||||
"chunks": 20,
|
||||
"generation": 1,
|
||||
"model_fingerprint": "google/embeddinggemma-2:bfcd298762cc34d0357ece5ebdd31791a3a374d8:q8_0:llama-b11461-no-logits-v1:mean:l2:query512:doc2048:windows-overlap128:prompts-v1",
|
||||
"passages": 20
|
||||
},
|
||||
"first_foreground_ms": 99.1915,
|
||||
"first_foreground_top1": "supplier-agreement.txt",
|
||||
"hybrid": {
|
||||
"recall_at10": 1.0,
|
||||
"recall_at3": 1.0,
|
||||
"top1_accuracy": 1.0
|
||||
},
|
||||
"hybrid_p50_ms": 92.2909,
|
||||
"hybrid_p95_ms": 106.83239999999999,
|
||||
"indexing_ms": 3765.0646,
|
||||
"lexical": {
|
||||
"recall_at10": 0.20833333333333334,
|
||||
"recall_at3": 0.20833333333333334,
|
||||
"top1_accuracy": 0.20833333333333334
|
||||
},
|
||||
"limitation": "Synthetic seed corpus only; no production quality or large-corpus latency certification",
|
||||
"load_ms": 7215.3678,
|
||||
"model": "google/embeddinggemma-2",
|
||||
"queries": 24,
|
||||
"rankings": [
|
||||
{
|
||||
"expected": "supplier-contract",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "supplier-agreement.txt",
|
||||
"match_kind": "exact_filename",
|
||||
"source": null
|
||||
},
|
||||
{
|
||||
"filename": "meeting-cancellation.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "INV-2026-1042.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "exact",
|
||||
"lexical_rank": 1,
|
||||
"query": "supplier-agreement.txt",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "invoice",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "INV-2026-1042.txt",
|
||||
"match_kind": "filename",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "meeting-cancellation.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "network-incident.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "identifier",
|
||||
"lexical_rank": 1,
|
||||
"query": "INV-2026-1042",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "error-code",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "support-error.txt",
|
||||
"match_kind": "exact_identifier",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "search-engine-design.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "INV-2026-1042.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "identifier",
|
||||
"lexical_rank": 1,
|
||||
"query": "E_SEARCH_071",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "supplier-contract",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "supplier-agreement.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "meeting-cancellation.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "retry-design.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "en",
|
||||
"lexical_rank": null,
|
||||
"query": "How can we end our relationship with the supplier?",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "supplier-contract",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "supplier-agreement.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "meeting-cancellation.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "mietvertrag.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "de-crosslingual",
|
||||
"lexical_rank": null,
|
||||
"query": "Wie kündigen wir die Zusammenarbeit mit unserem Lieferanten?",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "apartment-lease",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "mietvertrag.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "support-error.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "urlaubsrichtlinie.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "en-crosslingual",
|
||||
"lexical_rank": null,
|
||||
"query": "Can I keep a pet in the rented apartment?",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "apartment-lease",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "mietvertrag.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "reisekosten.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "monitor-warranty.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "de",
|
||||
"lexical_rank": null,
|
||||
"query": "Wo steht etwas über die Kaution für die Wohnung?",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "travel-expenses",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "reisekosten.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "INV-2026-1042.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "conference-agenda.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "en-crosslingual",
|
||||
"lexical_rank": null,
|
||||
"query": "How do I claim my train and hotel costs?",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "conference-agenda",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "conference-agenda.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "support-error.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "search-engine-design.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "de-crosslingual",
|
||||
"lexical_rank": null,
|
||||
"query": "Wann ist der Workshop zur Datenbankleistung?",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "deployment",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "deployment-runbook.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "product-launch.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "support-error.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "en",
|
||||
"lexical_rank": null,
|
||||
"query": "What should we do if the new release fails its health check?",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "backup-restore",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "backup-recovery.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "network-incident.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "meeting-cancellation.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "de-crosslingual",
|
||||
"lexical_rank": null,
|
||||
"query": "Ich habe Dateien gelöscht und brauche sie aus der Sicherung zurück",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "api-retry",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "retry-design.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "deployment-runbook.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "network-incident.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "en",
|
||||
"lexical_rank": null,
|
||||
"query": "How should the app retry a temporary server failure?",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "oauth",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "authentication-notes.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "retry-design.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "backup-recovery.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "en",
|
||||
"lexical_rank": null,
|
||||
"query": "How do we obtain another access token after it expires?",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "network-outage",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "network-incident.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "meeting-cancellation.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "backup-recovery.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "de-crosslingual",
|
||||
"lexical_rank": null,
|
||||
"query": "Warum war der Netzwerkswitch nicht erreichbar?",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "launch-plan",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "product-launch.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "research-budget.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "deployment-runbook.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "en",
|
||||
"lexical_rank": null,
|
||||
"query": "The plan for announcing the new product after beta testing",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "research-budget",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "research-budget.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "INV-2026-1042.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "retry-design.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "en",
|
||||
"lexical_rank": null,
|
||||
"query": "Money allocated for interviews and prototype usability studies",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "vacation-policy",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "urlaubsrichtlinie.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "meeting-cancellation.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "INV-2026-1042.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "en-crosslingual",
|
||||
"lexical_rank": null,
|
||||
"query": "Who approves my time off and who covers urgent work?",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "recipe",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "tomato-soup.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "gartenplanung.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "INV-2026-1042.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "en",
|
||||
"lexical_rank": null,
|
||||
"query": "A soup made with roasted tomatoes and basil",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "renovation",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "renovation-estimate.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "INV-2026-1042.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "meeting-cancellation.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "en",
|
||||
"lexical_rank": null,
|
||||
"query": "Does the kitchen renovation quote include new flooring?",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "warranty",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "monitor-warranty.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "network-incident.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "backup-recovery.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "en",
|
||||
"lexical_rank": null,
|
||||
"query": "The document about replacing a defective display under warranty",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "search-architecture",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "search-engine-design.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "support-error.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "backup-recovery.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "en",
|
||||
"lexical_rank": null,
|
||||
"query": "How can keyword results and embeddings be combined for file search?",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "garden",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "gartenplanung.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "meeting-cancellation.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "renovation-estimate.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "en-crosslingual",
|
||||
"lexical_rank": null,
|
||||
"query": "Where is the plan for the raised vegetable bed and rainwater barrel?",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "cancellation-email",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "meeting-cancellation.txt",
|
||||
"match_kind": "hybrid",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "urlaubsrichtlinie.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "conference-agenda.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "en",
|
||||
"lexical_rank": 1,
|
||||
"query": "Cancel tomorrow's planning meeting",
|
||||
"semantic_rank": 1
|
||||
},
|
||||
{
|
||||
"expected": "invoice",
|
||||
"hybrid_rank": 1,
|
||||
"hybrid_top3": [
|
||||
{
|
||||
"filename": "INV-2026-1042.txt",
|
||||
"match_kind": "exact_identifier",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "meeting-cancellation.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"filename": "search-engine-design.txt",
|
||||
"match_kind": "semantic",
|
||||
"source": {
|
||||
"kind": "line",
|
||||
"number": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"language": "identifier",
|
||||
"lexical_rank": 1,
|
||||
"query": "OFFICE-CHAIRS-42",
|
||||
"semantic_rank": 1
|
||||
}
|
||||
],
|
||||
"semantic": {
|
||||
"recall_at10": 1.0,
|
||||
"recall_at3": 1.0,
|
||||
"top1_accuracy": 1.0
|
||||
},
|
||||
"startup_init_ms": 6966.2571,
|
||||
"threads": 1
|
||||
}
|
||||
Reference in new issue
Block a user