<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
  <channel>
    <title><![CDATA[Jhon Guzmán - Elasticsearch Labs]]></title>
    <description><![CDATA[Articles and tutorials from the Search team at Elastic]]></description>
    <copyright><![CDATA[© 2026. Elasticsearch B.V. All Rights Reserved]]></copyright>
    <image>
      <title><![CDATA[Jhon Guzmán - Elasticsearch Labs]]></title>
      <url>https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt1121c0bf0e8a6e65/6a88da6340a1841030ef456f/search-labs-thumbnail.png</url>
      <link>https://www.elastic.co/de/search-labs/author/jhon-guzman</link>
    </image>
    <link>https://www.elastic.co/de/search-labs/author/jhon-guzman</link>
    <atom:link href="https://www.elastic.co/de/search-labs/rss/author/jhon-guzman.xml" rel="self" type="application/rss+xml"/>
    <language><![CDATA[de]]></language>
    <lastBuildDate>Tue, 22 Sep 2026 18:28:52 GMT</lastBuildDate>
  <item>
    <title><![CDATA[Bewertung der Relevanz von Suchanfragen mit Bewertungslisten]]></title>
    <description><![CDATA[Erfahren Sie, wie Sie Bewertungslisten erstellen, um die Relevanz von Suchanfragen objektiv zu bewerten und Leistungsmetriken wie den Recall zu verbessern – für skalierbare Suchtests in Elasticsearch.]]></description>
    <content:encoded><![CDATA[<p>Entwickler:innen, die an Suchmaschinen arbeiten, stoßen oft auf dasselbe Problem: Das Business-Team ist mit einer bestimmten Suche nicht zufrieden, weil die Dokumente, die es an erster Stelle der Suchergebnisse erwartet, an dritter oder vierter Stelle in der Ergebnisliste erscheinen.</p><p>Bei der Behebung dieses einen Problems werden jedoch versehentlich andere Abfragen beeinträchtigt, da nicht alle Fälle manuell getestet werden konnten. Aber wie können Sie oder Ihr QA-Team testen, ob eine Änderung in einer Abfrage Auswirkungen auf andere Abfragen hat? Noch wichtiger: Wie können Sie sicher sein, dass Ihre Änderungen eine Abfrage tatsächlich verbessert haben?</p><h2>In Richtung einer systematischen Bewertung</h2><p>Hier kommen Bewertungslisten ins Spiel. Anstatt bei jeder Änderung auf manuelle und subjektive Tests angewiesen zu sein, können Sie einen festen Satz von Abfragen festlegen, die für Ihren Anwendungsfall relevant sind, zusammen mit den entsprechenden Ergebnissen.</p><p>Dieser Satz wird zu Ihrer Referenzgrundlage. Bei jeder Änderung, die Sie vornehmen, nutzen Sie diese, um zu bewerten, ob sich Ihre Suche tatsächlich verbessert hat oder nicht.</p><p>Der Wert dieses Ansatzes liegt in Folgendem:</p><ul><li><p><strong>Beseitigt Unsicherheit</strong>: Sie müssen sich nicht mehr fragen, ob Ihre Änderungen andere Anfragen beeinflussen; die Daten werden es Ihnen mitteilen.</p></li><li><p><strong>Stoppt das manuelle Testen</strong>: Sobald die Bewertungssätze aufgezeichnet sind, erfolgt der Test automatisch.</p></li><li><p><strong>Unterstützt Veränderungen</strong>: Sie können klare Metriken zeigen, die die Vorteile einer Veränderung untermauern.</p></li></ul><h2>So beginnen Sie mit dem Erstellen Ihrer Bewertungsliste</h2><p>Eine der einfachsten Möglichkeiten ist die Auswahl einer repräsentativen Abfrage und die manuelle Auswahl der relevanten Dokumente. Zur Erstellung dieser Liste haben Sie zwei Möglichkeiten:</p><ul><li><p><strong>Binäre Bewertungen:</strong> Jedes Dokument, das mit einer Suchanfrage verknüpft ist, erhält ein <strong>einfaches Tag</strong>: <em>relevant</em> (in der Regel mit einer Punktzahl von „1“) und nicht relevant („0“).</p></li><li><p><strong>Abgestufte Bewertungen:</strong> Hier erhält jedes Dokument eine Punktzahl mit unterschiedlichen Stufen. Beispiel: Festlegung einer Skala von 0 bis 4, ähnlich einer <a href="https://en.wikipedia.org/wiki/Likert_scale">Likert-Skala</a>, wobei 0 = „überhaupt nicht relevant” und 4 = „vollkommen relevant” bedeutet, mit Varianten wie „relevant”, „eher relevant” usw.</p></li></ul><p>Binäre Urteile funktionieren gut, wenn die Suchintention klare Grenzen hat: Sollte dieses Dokument in den Ergebnissen enthalten sein oder nicht?</p><p>Abgestufte Bewertungen sind vor allem bei Grauzonen sinnvoll: Einige Ergebnisse sind besser als andere, sodass Sie „sehr gute“, „gute“ und „nutzlose“ Ergebnisse erhalten und Metriken verwenden können, die die Reihenfolge der Ergebnisse und das Feedback der Benutzer bewerten. Allerdings haben abgestufte Skalen auch Nachteile: Verschiedene Prüfer können die Bewertungsstufen unterschiedlich anwenden, was die Ergebnisse weniger konsistent macht. Und da bei abgestuften Metriken höhere Werte stärker gewichtet werden, kann selbst eine kleine Änderung (z. B. eine Bewertung von 3 statt 4) zu einer viel größeren Verschiebung der Metrik führen, als vom Prüfer beabsichtigt. Diese zusätzliche Subjektivität macht abgestufte Bewertungen im Laufe der Zeit unübersichtlicher und schwieriger zu verwalten.</p><h2>Muss ich die Dokumente selbst klassifizieren?</h2><p>Nicht unbedingt, da es verschiedene Möglichkeiten gibt, Ihre Bewertungsliste zu erstellen, jede mit ihren eigenen Vor- und Nachteilen:</p><ul><li><p><strong>Explizite Bewertungen:</strong> Hier gehen SMEs jede Anfrage/jedes Dokument durch und entscheiden manuell, ob (oder inwieweit) sie relevant ist. Obwohl dies Qualität und Kontrolle bietet, ist die Skalierbarkeit geringer.</p></li><li><p><strong>Implizite Bewertungen:</strong> Mit dieser Methode leiten Sie die relevanten Dokumente auf der Grundlage des tatsächlichen Nutzerverhaltens wie Klicks, Abwanderungsraten und Käufe ab. Mit diesem Ansatz können Sie Daten automatisch erfassen, allerdings könnten die Ergebnisse verzerrt sein. Zum Beispiel klicken Nutzer häufiger auf Top-Ergebnisse, auch wenn sie nicht relevant sind.</p></li><li><p><strong>KI-generierte Bewertungen:</strong> Diese letzte Option verwendet Modelle (wie LLMs), um Anfragen und Dokumente automatisch zu bewerten, oft als <a href="https://en.wikipedia.org/wiki/LLM-as-a-Judge">LLM-Jurys</a> bezeichnet. Sie lässt sich schnell und einfach skalieren, doch die Qualität der Daten hängt von der Qualität des verwendeten Modells und davon ab, wie gut die LLM-Trainingsdaten mit Ihren <a href="http://interests.as/">Geschäftsinteressen</a> übereinstimmen. Wie bei menschlichen Bewertungen können auch LLM-Jurys ihre eigenen Vorurteile oder Inkonsistenzen einbringen. Daher ist es wichtig, ihre Ergebnisse anhand einer kleineren Gruppe vertrauenswürdiger Bewertungen zu validieren. LLM-Modelle sind von Natur aus probabilistisch, daher ist es nicht ungewöhnlich, dass ein LLM-Modell dem gleichen Ergebnis unterschiedliche Bewertungen zuweist, unabhängig davon, ob <a href="https://www.ibm.com/think/topics/llm-temperature">der Temperaturparameter</a> auf 0 gesetzt wird.</p></li></ul><p>Unten finden Sie einige Empfehlungen zur Auswahl der besten Methode für die Erstellung Ihres Bewertungssatzes:</p><ul><li><p>Entscheiden Sie, wie kritisch einige Features für Sie sind, die nur Nutzer richtig bewerten können (wie Preis, Marke, Sprache, Stil und Produktdetails). Wenn diese kritisch sind, benötigen Sie <strong>explizite Bewertungen</strong> für mindestens einen Teil Ihrer <em>Bewertungsliste</em>.</p></li><li><p>Verwenden Sie <strong>implizite Bewertungen</strong>, wenn Ihre Suchmaschine bereits genügend Traffic hat, sodass Sie Metriken zu Klicks, Conversions und Verweildauer nutzen können, um Nutzungstrends zu erkennen. Sie sollten diese dennoch sorgfältig interpretieren und sie mit Ihren expliziten Bewertungssätzen vergleichen, um Verzerrungen zu vermeiden (z. B.: Nutzer neigen dazu, häufiger auf die Ergebnisse mit den höchsten Platzierungen zu klicken, auch wenn Ergebnisse mit niedrigeren Platzierungen relevanter sind)</p></li></ul><p>Um dieses Problem zu beheben, werden mithilfe von Techniken zur Positionsentzerrung Klickdaten angepasst oder neu gewichtet, um das tatsächliche Interesse der Nutzer besser widerzuspiegeln. Mögliche Ansätze hierfür sind:</p><ul><li><p><strong>Ergebnisse neu mischen</strong>: Ändern Sie die Reihenfolge der Suchergebnisse für eine Untergruppe von Nutzern, um zu schätzen, wie sich die Position auf die Klicks auswirkt.</p></li><li><p>Zu den <strong>Click-Modellen </strong>gehören<a href="https://wiki.math.uwaterloo.ca/statwiki/index.php?title=a_Dynamic_Bayesian_Network_Click_Model_for_web_search_ranking">Dynamic Bayesian Network </a><a href="https://wiki.math.uwaterloo.ca/statwiki/index.php?title=a_Dynamic_Bayesian_Network_Click_Model_for_web_search_ranking"><strong>DBN</strong></a>, <a href="https://rsrikant.com/papers/kdd10.pdf">Nutzer Browsing Model </a><a href="https://rsrikant.com/papers/kdd10.pdf"><strong>UBM</strong></a>. Diese statistischen Modelle schätzen die Wahrscheinlichkeit, dass ein Klick echtes Interesse widerspiegelt und nicht nur die Position, indem sie Muster wie Scrollverhalten, Verweildauer, Klicksequenz und Rückkehr zur Ergebnisseite verwenden.</p></li></ul><h2>Beispiel: App zur Filmbewertung</h2><h3>Voraussetzungen</h3><p>Um dieses Beispiel auszuführen, benötigen Sie einen laufenden Elasticsearch 8.x-Cluster, <a href="https://www.elastic.co/downloads/elasticsearch">lokal</a> oder <a href="https://www.elastic.co/cloud/cloud-trial-overview">Elastic Cloud Hosted</a> (gehostet oder serverlos), sowie Zugriff auf die <a href="https://www.elastic.co/docs/reference/elasticsearch/rest-apis">REST API</a> oder Kibana.</p><p>Stellen Sie sich eine App vor, in der Nutzer ihre Meinungen zu Filmen hochladen und auch nach Filmen suchen können, die sie sich ansehen möchten. Da die Texte von den Nutzern selbst geschrieben werden, können sie Tippfehler und viele Ausdrucksvariationen aufweisen. Daher ist es unerlässlich, dass die Suchmaschine diese Vielfalt interpretieren und den Nutzern hilfreiche Ergebnisse liefern kann.</p><p>Um Abfragen wiederholen zu können, ohne das gesamte Suchverhalten zu beeinträchtigen, hat das Business-Team in Ihrem Unternehmen anhand der häufigsten Suchanfragen die folgenden binären Bewertungssätze erstellt:</p><p>Abfrage</p><p>DocID</p><p>Text</p><p>Leistung von DiCaprio</p><p>doc1</p><p>Die Leistung von DiCaprio in The Revenant war atemberaubend.</p><p>Leistung von DiCaprio</p><p>doc2</p><p>Inception zeigt Leonardo DiCaprio in einer seiner ikonischsten Rollen.</p><p>Leistung von DiCaprio</p><p>doc3</p><p>Brad Pitt liefert in diesem Krimi-Thriller eine solide Leistung ab.</p><p>Leistung von DiCaprio</p><p>doc4</p><p>Ein actiongeladenes Abenteuer mit atemberaubenden visuellen Effekten.</p><p>Traurige Filme, die einen zum Weinen bringen</p><p>doc5</p><p>Eine herzzerreißende Geschichte über Liebe und Verlust, bei der ich stundenlang geweint habe.</p><p>Traurige Filme, die einen zum Weinen bringen</p><p>doc6</p><p>Einer der traurigsten Filme, die je gedreht wurden – Taschentücher bereithalten!</p><p>Traurige Filme, die einen zum Weinen bringen</p><p>doc7</p><p>Eine unbeschwerte Komödie, die Sie zum Lachen bringen wird</p><p>Traurige Filme, die einen zum Weinen bringen</p><p>doc8</p><p>Ein Science-Fiction-Epos voller Action und Spannung.</p><p>Erstellung des Indexes:</p>PUT movies
{
  "mappings": {
    "properties": {
      "text": {
        "type": "text"
      }
    }
  }
}<p>BULK-Anfrage:</p>POST /movies/_bulk
{ "index": { "_id": "doc1" } }
{ "text": "DiCaprio performance in The Revenant was breathtaking." }
{ "index": { "_id": "doc2" } }
{ "text": "Inception shows Leonardo DiCaprio in one of his most iconic roles." }
{ "index": { "_id": "doc3" } }
{ "text": "Brad Pitt delivers a solid performance in this crime thriller." }
{ "index": { "_id": "doc4" } }
{ "text": "An action-packed adventure with stunning visual effects." }
{ "index": { "_id": "doc5" } }
{ "text": "A heartbreaking story of love and loss that made me cry for hours." }
{ "index": { "_id": "doc6" } }
{ "text": "One of the saddest movies ever made -- bring tissues!" }
{ "index": { "_id": "doc7" } }
{ "text": "A lighthearted comedy that will make you laugh." }
{ "index": { "_id": "doc8" } }
{ "text": "A science-fiction epic full of action and excitement." }<p>Nachfolgend finden Sie die Elasticsearch-Abfrage, die die App verwendet:</p>GET movies/_search
{
 "query": {
   "match": {
     "text": {
       "query": "DiCaprio performance",
       "minimum_should_match": "100%"
     }
   }
 }
}<h3>Von der Bewertung zu den Metriken</h3><p>Für sich genommen liefern Bewertungslisten nicht viele Informationen; sie stellen lediglich eine Erwartung der Ergebnisse unserer Abfragen dar. Ihre wahre Stärke zeigen sie, wenn wir sie zur Berechnung objektiver Metriken zur Messung unserer Suchleistung verwenden.</p><p>Heutzutage umfassen die meisten gängigen Metriken Folgendes:</p><ul><li><p><a href="https://www.elastic.co/docs/reference/elasticsearch/rest-apis/search-rank-eval#k-precision"><strong>Genauigkeit</strong></a><strong>: </strong>Misst den Anteil der Ergebnisse, die innerhalb aller Suchergebnisse tatsächlich relevant sind.</p></li><li><p><a href="https://www.elastic.co/docs/reference/elasticsearch/rest-apis/search-rank-eval#k-recall"><strong>Recall</strong></a><strong>: </strong>Misst den Anteil relevanter Ergebnisse, die die Suchmaschine unter den x Ergebnissen gefunden hat.</p></li><li><p><a href="https://www.elastic.co/docs/reference/elasticsearch/rest-apis/search-rank-eval#_discounted_cumulative_gain_dcg"><strong>Discounted Cumulative Gain (DCG):</strong></a>Misst die Qualität der Rangfolge der Ergebnisse, wobei die relevantesten Ergebnisse ganz oben stehen sollten.</p></li><li><p><a href="https://www.elastic.co/docs/reference/elasticsearch/rest-apis/search-rank-eval#_mean_reciprocal_rank"><strong>Mean Reziprocal Rank (MRR):</strong></a> Misst die Position des ersten relevanten Ergebnisses. Je höher es in der Liste steht, desto höher ist der Score.</p></li></ul><p>Anhand derselben App zur Bewertung von Filmen berechnen wir die Recall-Metrik, um festzustellen, ob Informationen in unseren Abfragen ausgelassen werden.</p><p>In Elasticsearch können wir die <em>Bewertungslisten</em> nutzen, um Metriken über die <a href="https://www.elastic.co/docs/reference/elasticsearch/rest-apis/search-rank-eval">Ranking Evaluation API</a> zu berechnen. Diese API erhält als Eingabe die Bewertungsliste, die Abfrage und die zu bewertende Metrik und gibt einen Wert zurück, der einen Vergleich des Abfrageergebnisses mit der Bewertungsliste darstellt.</p><p>Lassen Sie uns die Ergebnisliste für die beiden vorliegenden Anfragen ausführen:</p>POST /movies/_rank_eval
{
 "requests": [
   {
     "id": "dicaprio-performance",
     "request": {
       "query": {
         "match": {
           "text": {
             "query": "DiCaprio performance",
             "minimum_should_match": "100%"
           }
         }
       }
     },
     "ratings": [
       {
         "_index": "movies",
         "_id": "doc1",
         "rating": 1
       },
       {
         "_index": "movies",
         "_id": "doc2",
         "rating": 1
       },
       {
         "_index": "movies",
         "_id": "doc3",
         "rating": 0
       },
       {
         "_index": "movies",
         "_id": "doc4",
         "rating": 0
       }
     ]
   },
   {
     "id": "sad-movies",
     "request": {
       "query": {
         "match": {
           "text": {
             "query": "sad movies that make you cry",
             "minimum_should_match": "100%"
           }
         }
       }
     },
     "ratings": [
       {
         "_index": "movies",
         "_id": "doc5",
         "rating": 1
       },
       {
         "_index": "movies",
         "_id": "doc6",
         "rating": 1
       },
       {
         "_index": "movies",
         "_id": "doc7",
         "rating": 0
       },
       {
         "_index": "movies",
         "_id": "doc8",
         "rating": 0
       }
     ]
   }
 ],
 "metric": {
   "recall": {
     "k": 10,
     "relevant_rating_threshold": 1
     }
 }
}<p>Wir verwenden zwei Anfragen an _rank_eval: eine für die DiCaprio-Abfrage und eine für traurige Filme. Jede Anfrage enthält eine Fragestellung und die dazugehörige Bewertungsliste (Bewertungen). Wir müssen nicht alle Dokumente bewerten, da diejenigen, die nicht in die Bewertung einbezogen werden, als unbewertet gelten. Für die Berechnungen berücksichtigt Recall nur den „relevanten Satz“, also die Dokumente, die für die Bewertung als relevant gelten.</p><p>In diesem Fall hat die DiCaprio-Abfrage einen Recall von 1, während die traurigen Filme einen Recall von 0 haben. Das bedeutet, dass wir bei der ersten Abfrage alle relevanten Ergebnisse erhalten haben, während wir bei der zweiten Abfrage keine Ergebnisse erhalten haben. Der durchschnittliche Recall beträgt daher 0,5.</p>{
 "metric_score": 0.5,
 "details": {
   "dicaprio-performance": {
     "metric_score": 1,
     "unrated_docs": [],
     "hits": [
       {
         "hit": {
           "_index": "movies",
           "_id": "doc1",
           "_score": 2.4826927
         },
         "rating": 1
       },
       {
         "hit": {
           "_index": "movies",
           "_id": "doc2",
           "_score": 2.0780432
         },
         "rating": 1
       }
     ],
     "metric_details": {
       "recall": {
         "relevant_docs_retrieved": 2,
         "relevant_docs": 2
       }
     }
   },
   "sad-movies": {
     "metric_score": 0,
     "unrated_docs": [],
     "hits": [],
     "metric_details": {
       "recall": {
         "relevant_docs_retrieved": 0,
         "relevant_docs": 2
       }
     }
   }
 },
 "failures": {}
}<p>Vielleicht sind wir mit dem Parameter <strong>minimum_should_match </strong>zu streng, da wir durch die Forderung, dass 100 % der Wörter in der Suchanfrage in den Dokumenten vorkommen müssen, wahrscheinlich relevante Ergebnisse auslassen. Entfernen wir den Parameter <strong>minimum_should_match</strong>, damit ein Dokument als relevant angesehen wird, wenn nur ein Wort aus der Suchanfrage darin vorkommt.</p>POST /movies/_rank_eval
{
 "requests": [
   {
     "id": "dicaprio-performance",
     "request": {
       "query": {
         "match": {
           "text": {
             "query": "DiCaprio performance"
           }
         }
       }
     },
     "ratings": [
       {
         "_index": "movies",
         "_id": "doc1",
         "rating": 1
       },
       {
         "_index": "movies",
         "_id": "doc2",
         "rating": 1
       },
       {
         "_index": "movies",
         "_id": "doc3",
         "rating": 0
       },
       {
         "_index": "movies",
         "_id": "doc4",
         "rating": 0
       }
     ]
   },
   {
     "id": "sad-movies",
     "request": {
       "query": {
         "match": {
           "text": {
             "query": "sad movies that make you cry"
           }
         }
       }
     },
     "ratings": [
       {
         "_index": "movies",
         "_id": "doc5",
         "rating": 1
       },
       {
         "_index": "movies",
         "_id": "doc6",
         "rating": 1
       },
       {
         "_index": "movies",
         "_id": "doc7",
         "rating": 0
       },
       {
         "_index": "movies",
         "_id": "doc8",
         "rating": 0
       }
     ]
   }
 ],
 "metric": {
   "recall": {
     "k": 10,
     "relevant_rating_threshold": 1
     }
 }
}<p>Wie Sie sehen können, erhalten wir durch Entfernen des Parameters <strong>minimum_should_match</strong> in einer der beiden Abfragen nun in beiden Fällen einen durchschnittlichen Recall von 1.</p>{
  "metric_score": 1,
  "details": {
    "dicaprio-performance": {
      "metric_score": 1,
      "unrated_docs": [],
      "hits": [
        {
          "hit": {
            "_index": "movies",
            "_id": "doc1",
            "_score": 2.0661702
          },
          "rating": 1
        },
        {
          "hit": {
            "_index": "movies",
            "_id": "doc3",
            "_score": 0.732218
          },
          "rating": 0
        },
        {
          "hit": {
            "_index": "movies",
            "_id": "doc2",
            "_score": 0.6271719
          },
          "rating": 1
        }
      ],
      "metric_details": {
        "recall": {
          "relevant_docs_retrieved": 2,
          "relevant_docs": 2
        }
      }
    },
    "sad-movies": {
      "metric_score": 1,
      "unrated_docs": [],
      "hits": [
        {
          "hit": {
            "_index": "movies",
            "_id": "doc7",
            "_score": 2.1307156
          },
          "rating": 0
        },
        {
          "hit": {
            "_index": "movies",
            "_id": "doc5",
            "_score": 1.3160692
          },
          "rating": 1
        },
        {
          "hit": {
            "_index": "movies",
            "_id": "doc6",
            "_score": 1.190063
          },
          "rating": 1
        }
      ],
      "metric_details": {
        "recall": {
          "relevant_docs_retrieved": 2,
          "relevant_docs": 2
        }
      }
    }
  },
  "failures": {}
}<p>Zusammenfassend lässt sich sagen, dass durch das Entfernen der Klausel „minimum_should_match: 100%“ eine perfekte Trefferquote für beide Abfragen erzielt werden kann.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltaf4f08a8a2915180/6a170df61949f76cbfe7aaba/24d055da4348c63827ba7046fe8cafb6f47cadd8-546x628.png" alt="" /><p>Wir haben es geschafft! Richtig?</p><p>Nicht so schnell!</p><p>Durch die Verbesserung des Recalls öffnen wir die Tür zu einer größeren Bandbreite an Ergebnissen. Jede Anpassung impliziert jedoch einen Kompromiss. Deshalb ist es wichtig, vollständige Testfälle festzulegen und verschiedene Metriken zur Bewertung von Änderungen zu verwenden.</p><p>Die Verwendung von Bewertungslisten und Metriken verhindert, dass Sie Änderungen blind vornehmen, da Sie nun über Daten verfügen, die diese stützen. Die Validierung erfolgt nicht mehr manuell und wiederholt, und Sie können Ihre Änderungen in mehr als nur einem Anwendungsfall testen. Darüber hinaus können Sie mit A/B-Tests live testen, welche Konfiguration für Ihre Nutzer und Ihren Anwendungsfall am besten geeignet ist, wodurch sich der Kreis von technischen Metriken und realen Metriken schließt.</p><h2>Abschließende Empfehlungen zur Verwendung von Bewertungslisten</h2><p>Bei der Arbeit mit Bewertungslisten geht es nicht nur um das Messen, sondern auch darum, einen Rahmen zu schaffen, der es Ihnen ermöglicht, mit Zuversicht zu iterieren. Zu diesem Zweck beachten Sie folgende Empfehlungen:</p><ol><li><p><strong>Fangen Sie klein an, aber fangen Sie an</strong>. Sie benötigen keine 10.000 Anfragen mit jeweils 50 Bewertungslisten. Sie müssen lediglich die 5 bis 10 wichtigsten Suchanfragen für Ihren Anwendungsfall identifizieren und festlegen, welche Dokumente Ihrer Meinung nach ganz oben in den Ergebnissen erscheinen sollten. Damit haben Sie bereits eine Grundlage. Sie möchten in der Regel mit den Top-Suchanfragen sowie den Suchanfragen ohne Ergebnisse beginnen. Sie können auch mit einer einfach zu konfigurierenden Metrik wie Genauigkeit beginnen und sich dann in der Komplexität steigern.</p></li><li><p><strong>Validieren Sie mit Nutzern.</strong> Ergänzen Sie die Zahlen durch A/B-Tests in der Produktion. Auf diese Weise können Sie feststellen, ob Änderungen, die in den Metriken gut aussehen, auch tatsächlich Auswirkungen haben.</p></li><li><p><strong>Führen Sie die Liste weiter.</strong> Ihr Anwendungsfall wird sich weiterentwickeln. Und damit auch Ihre kritischen Fragen. Aktualisieren Sie Ihre Bewertung regelmäßig, um neue Anforderungen zu berücksichtigen.</p></li><li><p><strong>Integrieren Sie sie in Ihren Workflow.</strong> Integrieren Sie Bewertungslisten in Ihre Entwicklungs-Pipelines. Stellen Sie sicher, dass jede Konfigurationsänderung, jedes Synonym und jede Textanalyse automatisch mit Ihrer Basisliste abgeglichen wird.</p></li><li><p><strong>Verbinden Sie technisches Wissen mit Strategie.</strong> Beschränken Sie sich nicht auf die Messung technischer Metriken wie Genauigkeit oder Recall. Nutzen Sie Ihre Bewertungsergebnisse, um die Geschäftsergebnisse zu verbessern.</p></li></ol>]]></content:encoded>
    <link>https://www.elastic.co/search-labs/blog/judgment-lists-search-query-relevance-elasticsearch</link>
    <guid isPermaLink="true">https://www.elastic.co/search-labs/blog/judgment-lists-search-query-relevance-elasticsearch</guid>
    <category><![CDATA[Relevanz]]></category>
    <category><![CDATA[Inside Elastic]]></category>
    <dc:creator><![CDATA[Jhon Guzmán]]></dc:creator>
    <enclosure url="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltcadfd2fb1cc95b4c/6a170df7acf0887798be9bd0/25478d0ffb228afd5d65d82312998ec1c299c565-700x490.png" length="0" type="image/png"/>
    <pubDate>Thu, 11 Dec 2025 00:00:00 GMT</pubDate>
  </item>
  <item>
    <title><![CDATA[Einführung der Elasticsearch-Abfrageregeln-Benutzeroberfläche in Kibana]]></title>
    <description><![CDATA[Erfahren Sie, wie Sie mit der Elasticsearch Query Rules UI Dokumente mithilfe anpassbarer Regelsätze in Kibana zu Suchanfragen hinzufügen oder ausschließen können, ohne das organische Ranking zu beeinträchtigen.]]></description>
    <content:encoded><![CDATA[<p>Die Aufgabe einer Suchmaschine besteht darin, relevante Ergebnisse zu liefern. Es gibt jedoch geschäftliche Anforderungen, die darüber hinausgehen – wie die Hervorhebung von Sonderangeboten, die Priorisierung saisonaler Produkte oder die Präsentation gesponserter Artikel – und Entwickler können dies nicht immer in der Suchanfrage umsetzen.</p><p>Darüber hinaus sind diese Anwendungsfälle in der Regel zeitkritisch, und das Durchlaufen der typischen Entwicklungsphasen (Erstellen eines Codezweigs und anschließendes Warten auf eine neue Version) ist ein zeitaufwändiger Prozess.</p><p>Was wäre, wenn wir diesen gesamten Prozess mit einem einzigen API-Aufruf oder, noch besser, mit nur wenigen Klicks in Kibana erledigen könnten?</p><h2>Benutzeroberfläche für Abfrageregeln</h2><p>Elasticsearch 8.10 führte <a href="https://www.elastic.co/blog/introducing-query-rules-elasticsearch-8-10"><strong>Abfrageregeln</strong></a> und <a href="https://www.elastic.co/docs/reference/elasticsearch/rest-apis/retrievers/rule-retriever"><strong>Regelabrufer</strong></a> ein. Hierbei handelt es sich um Tools, die entwickelt wurden, um <a href="https://www.elastic.co/docs/reference/query-languages/query-dsl/query-dsl-pinned-query"><em>festgelegte Ergebnisse</em></a> in die Suchanfragen einzufügen, ohne die Rangfolge der organischen Ergebnisse gemäß den Regeln zu beeinträchtigen. Sie fügen den Ergebnissen lediglich auf deklarative und einfache Weise Geschäftslogik hinzu.</p><p>Einige gängige Anwendungsfälle für Abfrageregeln sind:</p><ul><li><p><strong>Hervorhebung von beworbenen Angeboten oder Verkäufen</strong>: Anzeige von reduzierten oder gesponserten Artikeln ganz oben.</p></li><li><p><strong>Ausschluss nach Kontext oder Standort</strong>: Ausblenden bestimmter Elemente, wenn deren Anzeige aufgrund lokaler Vorschriften nicht zulässig ist.</p></li><li><p><strong>Priorisierung wichtiger Ergebnisse</strong>: Sicherstellen, dass beliebte oder feste Suchanfragen unabhängig vom organischen Ranking immer ganz oben stehen.</p></li></ul><p>Um auf die Benutzeroberfläche zuzugreifen und mit diesen Tools zu interagieren, müssen Sie im Kibana-Seitenmenü auf <strong>„Abfrageregeln“</strong> unter <strong>„Relevanz“ klicken:</strong></p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltac12541cddd58e36/6a170853a29299941cd00fc2/242e33e89d1a07ffa0e76009c46b3a9236722741-458x1010.png" alt="Zugriff auf Abfrageregeln in Elasticsearch unter Relevanz" /><p>Sobald das Menü mit den Abfrageregeln erscheint, klicken Sie auf <strong>„Erstes Regelset erstellen“:</strong></p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltcc28329c0f3c3aa9/6a17085547d49c67e22d893b/30b3a91bbbf243d314cf38298e01ca5cff784430-1600x945.png" alt="Erstellen Ihres ersten Abfrageregelsatzes in Elasticsearch" /><p>Als Nächstes müssen Sie Ihrem Regelsatz einen Namen geben.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/bltb37d271297a4f148/6a170856a29299782cd00fc6/26c5462f88678867776f933b5655ca0df0d72a16-708x446.png" alt="Benennung Ihres Abfrageregelsatzes in Elasticsearch" /><p>Das Formular zur Definition jeder Regel besteht aus drei Hauptkomponenten:</p><ul><li><p><strong>Kriterien</strong>: Die Bedingungen, die erfüllt sein müssen, damit die Regel Anwendung findet. Zum Beispiel: „wenn das Feld query_string den Wert <em>Christmas</em> enthält“ oder „wenn das Feld country <em>CO ist“.</em></p></li><li><p><strong>Aktion</strong>: Das soll passieren, wenn die Bedingungen erfüllt sind. Es kann angeheftet (ein Dokument wird an der Spitze der Suchergebnisse fixiert) oder ausgeschlossen (ein Dokument wird ausgeblendet) werden.</p></li><li><p><strong>Metadaten</strong>: Dies sind die Felder, die bei der Ausführung der Abfrage mitgeführt werden. Sie können sowohl Benutzerinformationen (wie Standort oder Sprache) als auch Suchdaten (Query-String) enthalten. Dies sind die Werte, anhand derer die Kriterien entscheiden, ob eine Regel angewendet werden soll oder nicht.</p></li></ul><h2>Beispiel: beliebte Artikel</h2><p>Stellen wir uns vor, wir hätten eine E-Commerce-Website mit verschiedenen Artikeln. Bei der Überprüfung der Kennzahlen stellen wir fest, dass einer der meistverkauften Artikel in der Kategorie Konsolen der „DualShock 4 Wireless Controller“ ist, insbesondere wenn Nutzer nach den Schlüsselwörtern „PS4“ oder „PlayStation 4“ suchen. Deshalb haben wir beschlossen, dieses Produkt ganz oben in den Suchergebnissen anzuzeigen, wenn ein Nutzer nach diesen Schlüsselwörtern sucht.</p><p>Als Erstes indizieren wir die Dokumente für jeden Artikel mithilfe einer Bulk-API-Anfrage:</p>POST _bulk
{ "index": { "_index": "products", "_id": "1" } }
{ "id": "1", "name": "PlayStation 4 Slim 1TB", "category": "console", "brand": "Sony", "price": 1200 }
{ "index": { "_index": "products", "_id": "2" } }
{ "id": "2", "name": "DualShock 4 Wireless Controller", "category": "accessory", "brand": "Sony", "price": 250 }
{ "index": { "_index": "products", "_id": "3" } }
{ "id": "3", "name": "PlayStation 4 Camera", "category": "accessory", "brand": "Sony", "price": 200 }
{ "index": { "_index": "products", "_id": "4" } }
{ "id": "4", "name": "PlayStation 4 VR Headset", "category": "accessory", "brand": "Sony", "price": 900 }
{ "index": { "_index": "products", "_id": "5" } }
{ "id": "5", "name": "Charging Station for DualShock 4", "category": "accessory", "brand": "Sony", "price": 80 }<p>Wenn wir nicht in die Abfrage eingreifen, erscheint der Eintrag normalerweise an vierter Stelle. Hier die Anfrage:</p>GET products/_search
{
 "query": {
   "match": {
     "name": "PlayStation 4"
   }
 }
}<p>Und hier sind die Ergebnisse.</p>{
 "took": 1,
 "timed_out": false,
 "_shards": {
   "total": 1,
   "successful": 1,
   "skipped": 0,
   "failed": 0
 },
 "hits": {
   "total": {
     "value": 5,
     "relation": "eq"
   },
   "max_score": 0.6973252,
   "hits": [
     {
       "_index": "products",
       "_id": "3",
       "_score": 0.6973252,
       "_source": {
         "id": "3",
         "name": "PlayStation 4 Camera",
         "category": "accessory",
         "brand": "Sony",
         "price": 200
       }
     },
     {
       "_index": "products",
       "_id": "1",
       "_score": 0.6260078,
       "_source": {
         "id": "1",
         "name": "PlayStation 4 Slim 1TB",
         "category": "console",
         "brand": "Sony",
         "price": 1200
       }
     },
     {
       "_index": "products",
       "_id": "4",
       "_score": 0.6260078,
       "_source": {
         "id": "4",
         "name": "PlayStation 4 VR Headset",
         "category": "accessory",
         "brand": "Sony",
         "price": 900
       }
     },
     {
       "_index": "products",
       "_id": "2",
       "_score": 0.08701137,
       "_source": {
         "id": "2",
         "name": "DualShock 4 Wireless Controller",
         "category": "accessory",
         "brand": "Sony",
         "price": 250
       }
     },
     {
       "_index": "products",
       "_id": "5",
       "_score": 0.07893815,
       "_source": {
         "id": "5",
         "name": "Charging Station for DualShock 4",
         "category": "accessory",
         "brand": "Sony",
         "price": 80
       }
     }
   ]
 }
}<p>Lasst uns eine Abfrageregel erstellen, um dies zu ändern. Als Erstes fügen wir es dem Regelwerk folgendermaßen hinzu:</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt1576d4f4a2e60548/6a170858cdacbfccb07d298d/fdc42646fb3e76a09bca7d19047a76efe343f7a2-1600x650.png" alt="Wie man einen Regelsatz für Abfrageregeln in Elasticsearch bearbeitet" /><p>Oder eine entsprechende <a href="https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-query-rules-put-ruleset">API-Anfrage</a>:</p>PUT _query_rules/my-rules
{
  "rules": [
    {
      "rule_id": "rule-1232",
      "type": "pinned",
      "criteria": [
        {
          "type": "exact",
          "metadata": "query_string",
          "values": [
            "PS4",
            "PlayStation 4"
          ]
        }
      ],
      "actions": {
        "docs": [
          {
            "_index": "products",
            "_id": "2"
          }
        ]
      }
    }
  ]
}<p>Um das <strong>Regelset </strong>in unserer Abfrage verwenden zu können, müssen wir einen Abfrageregeltyp verwenden. Diese Art von Anfrage besteht aus zwei Hauptteilen:</p>GET /products/_search
{
 "retriever": {
   "rule": {
     "retriever": {
       "standard": {
         "query": {
           "match": { "name": "PlayStation 4" }
         }
       }
     },
     "match_criteria": {
       "query_string": "PlayStation 4"
     },
     "ruleset_ids": ["my-rules"]
   }
 }
}<ul><li><p><strong>match_criteria</strong>: Dies sind die Metadaten, die zum Vergleich mit der Benutzeranfrage verwendet werden. In diesem Beispiel wird das Regelset aktiviert, wenn das Feld query_string den Wert „PlayStation 4“ hat.</p></li><li><p><strong>Suchanfrage</strong>: Die eigentliche Suchanfrage, die verwendet wird, um die organischen Suchergebnisse zu finden.</p></li></ul><p>Auf diese Weise führen Sie zuerst die organische Abfrage aus, und anschließend wendet Elasticsearch die Regeln aus Ihrem Regelsatz an:</p>{
 "took": 17,
 "timed_out": false,
 "_shards": {
   "total": 1,
   "successful": 1,
   "skipped": 0,
   "failed": 0
 },
 "hits": {
   "total": {
     "value": 5,
     "relation": "eq"
   },
   "max_score": 1.7014122e+38,
   "hits": [
     {
       "_index": "products",
       "_id": "2",
       "_score": 1.7014122e+38,
       "_source": {
         "id": "2",
         "name": "DualShock 4 Wireless Controller",
         "category": "accessory",
         "brand": "Sony",
         "price": 250
       }
     },
     {
       "_index": "products",
       "_id": "3",
       "_score": 0.6973252,
       "_source": {
         "id": "3",
         "name": "PlayStation 4 Camera",
         "category": "accessory",
         "brand": "Sony",
         "price": 200
       }
     },
     {
       "_index": "products",
       "_id": "1",
       "_score": 0.6260078,
       "_source": {
         "id": "1",
         "name": "PlayStation 4 Slim 1TB",
         "category": "console",
         "brand": "Sony",
         "price": 1200
       }
     },
     {
       "_index": "products",
       "_id": "4",
       "_score": 0.6260078,
       "_source": {
         "id": "4",
         "name": "PlayStation 4 VR Headset",
         "category": "accessory",
         "brand": "Sony",
         "price": 900
       }
     },
     {
       "_index": "products",
       "_id": "5",
       "_score": 0.07893815,
       "_source": {
         "id": "5",
         "name": "Charging Station for DualShock 4",
         "category": "accessory",
         "brand": "Sony",
         "price": 80
       }
     }
   ]
 }
}<h2>Beispiel: benutzerbasierte Metadaten</h2><p>Eine weitere interessante Anwendung von Abfrageregeln besteht darin, Metadaten zu verwenden, um bestimmte Dokumente basierend auf Kontextinformationen des Benutzers oder der Webseite anzuzeigen.</p><p>Nehmen wir beispielsweise an, wir möchten Artikel oder personalisierte Angebote basierend auf dem Loyalitätsgrad eines Nutzers hervorheben, der als numerischer Wert dargestellt wird.</p><p>Dies erreichen wir, indem wir diese Metadaten direkt in die Abfrage einbinden, sodass die Regeln aktiviert werden, wenn der genannte Wert bestimmte Kriterien erfüllt.</p><p>Zunächst indexieren wir ein Dokument, das nur Nutzer mit einer hohen Loyalitätsstufe sehen können:</p>POST _bulk
{ "index": { "_index": "products", "_id": "6" } }
{ "id": "6", "name": "PlayStation Plus Deluxe Card - 12 months", "category": "membership", "brand": "Sony", "price": 300 }<p>Jetzt erstellen wir eine neue Regel innerhalb desselben Regelsatzes, sodass der Artikel ganz oben in den Ergebnissen erscheint, wenn der Loyalitätswert (loyality_level) gleich oder höher als 80 ist.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt158578005df8c76d/6a17085aab7f086dc0db9de3/58de12dff93305440608f51465462fcc68653a08-1421x496.png" alt="Wie man einen Regelsatz für Abfrageregeln in Elasticsearch bearbeitet" /><p>Speichern Sie die Regel und das Regelwerk.</p><p>Hier ist die entsprechende REST-Anfrage:</p>PUT _query_rules/my-rules
{
  "rules": [
    {
      "rule_id": "pin-premiun-user",
      "type": "pinned",
      "criteria": [
        {
          "type": "gte",
          "metadata": "loyalty_level",
          "values": [
            80
          ]
        }
      ],
      "actions": {
        "docs": [
          {
            "_index": "products",
            "_id": "6"
          }
        ]
      }
    }
  ]
}<p>Beim Ausführen einer Abfrage muss nun der neue Parameter <strong>loyalty_level </strong>in die Metadaten aufgenommen werden. Wenn die Bedingung in der Regel erfüllt ist, erscheint das neue Dokument ganz oben in den Suchergebnissen.</p><p>Beispiel: Senden einer Anfrage, bei der der Loyalitätsgrad 80 beträgt:</p>POST /products/_search
{
  "retriever": {
    "rule": {
      "retriever": {
        "standard": {
          "query": {
            "match": {
              "name": "PlayStation"
            }
          }
        }
      },
      "match_criteria": {
        "query_string": "PlayStation",
        "loyalty_level": 80
      },
      "ruleset_ids": ["my-rules"]
    }
  }
}<p>Das Treuezertifikat wird oben auf den Ergebnissen angezeigt:</p>{
  "took": 31,
  "timed_out": false,
  "_shards": {
    "total": 1,
    "successful": 1,
    "skipped": 0,
    "failed": 0
  },
  "hits": {
    "total": {
      "value": 4,
      "relation": "eq"
    },
    "max_score": 1.7014122e+38,
    "hits": [
      {
        "_index": "products",
        "_id": "6",
        "_score": 1.7014122e+38,
        "_source": {
          "id": "6",
          "name": "PlayStation Plus Deluxe Card - 12 months",
          "category": "membership",
          "brand": "Sony",
          "price": 300
        }
      },
      {
        "_index": "products",
        "_id": "3",
        "_score": 0.5054567,
        "_source": {
          "id": "3",
          "name": "PlayStation 4 Camera",
          "category": "accessory",
          "brand": "Sony",
          "price": 200
        }
      },
      {
        "_index": "products",
        "_id": "1",
        "_score": 0.45618832,
        "_source": {
          "id": "1",
          "name": "PlayStation 4 Slim 1TB",
          "category": "console",
          "brand": "Sony",
          "price": 1200
        }
      },
      {
        "_index": "products",
        "_id": "4",
        "_score": 0.45618832,
        "_source": {
          "id": "4",
          "name": "PlayStation 4 VR Headset",
          "category": "accessory",
          "brand": "Sony",
          "price": 900
        }
      }
    ]
  }
}<p>Im folgenden Fall ist die Regel aufgrund des Loyalitätslevels von 70 nicht erfüllt, und der Artikel sollte nicht oben erscheinen:</p>POST /products/_search
{
  "retriever": {
    "rule": {
      "retriever": {
        "standard": {
          "query": {
            "match": {
              "name": "PlayStation"
            }
          }
        }
      },
      "match_criteria": {
        "query_string": "PlayStation",
        "loyalty_level": 70
      },
      "ruleset_ids": ["my-rules"]
    }
  }
}<p>Hier die Ergebnisse:</p>{
  "took": 7,
  "timed_out": false,
  "_shards": {
    "total": 1,
    "successful": 1,
    "skipped": 0,
    "failed": 0
  },
  "hits": {
    "total": {
      "value": 4,
      "relation": "eq"
    },
    "max_score": 0.5054567,
    "hits": [
      {
        "_index": "products",
        "_id": "3",
        "_score": 0.5054567,
        "_source": {
          "id": "3",
          "name": "PlayStation 4 Camera",
          "category": "accessory",
          "brand": "Sony",
          "price": 200
        }
      },
      {
        "_index": "products",
        "_id": "1",
        "_score": 0.45618832,
        "_source": {
          "id": "1",
          "name": "PlayStation 4 Slim 1TB",
          "category": "console",
          "brand": "Sony",
          "price": 1200
        }
      },
      {
        "_index": "products",
        "_id": "4",
        "_score": 0.45618832,
        "_source": {
          "id": "4",
          "name": "PlayStation 4 VR Headset",
          "category": "accessory",
          "brand": "Sony",
          "price": 900
        }
      },
      {
        "_index": "products",
        "_id": "6",
        "_score": 0.3817649,
        "_source": {
          "id": "6",
          "name": "PlayStation Plus Deluxe Card - 12 months",
          "category": "membership",
          "brand": "Sony",
          "price": 300
        }
      }
    ]
  }
}<h2>Beispiel: sofortiger Ausschluss</h2><p>Nehmen wir an, unser <strong>DualShock 4 Wireless-Controller (ID 2)</strong> ist vorübergehend nicht verfügbar und kann nicht verkauft werden. Anstatt das Dokument manuell zu löschen oder auf die Verarbeitung der Daten zu warten, beschließt das Business-Team, es in der Zwischenzeit aus den Suchergebnissen zu entfernen.</p><p>Wir werden ein ähnliches Verfahren anwenden wie das, das wir gerade bei den beliebten Artikeln angewendet haben, aber diesmal wählen wir anstelle von <em>"Angeheftet"</em> <em>die Option "Ausschließen"</em>. Diese Regel funktioniert wie eine Art Blacklist. Ändern Sie das Kriterium auf <strong>„Immer“</strong> , damit der Ausschluss bei jeder Ausführung der Abfrage funktioniert.</p><p>Die Regel sollte folgendermaßen aussehen:</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt38564c0b7f4a6ee2/6a17085c1949f78692e7a989/f10971e4f1bc9520105111adfa3a476581a27130-1600x623.png" alt="Beispiel für einen sofortigen Ausschlussregelsatz in Elasticsearch" /><p>Speichern Sie die Regel und das Regelset, um die Änderungen anzuwenden. Hier ist die entsprechende REST-Anfrage:</p>PUT _query_rules/my-rules
{
  "rules": [
    {
      "rule_id": "rule-6358",
      "type": "pinned",
      "criteria": [
        {
          "type": "always"
        }
      ],
      "actions": {
        "docs": [
          {
            "_index": "products",
            "_id": "2"
          }
        ]
      }
    }
  ]
}<p>Wenn wir die Abfrage nun erneut ausführen, werden Sie feststellen, dass das Element nicht mehr in den Ergebnissen enthalten ist, obwohl die vorherige Regel vorsah, es zu fixieren. Dies liegt daran, dass <strong>Ausschlüsse Vorrang vor dem Anheften von Ergebnissen haben</strong>.</p>{
 "took": 6,
 "timed_out": false,
 "_shards": {
   "total": 1,
   "successful": 1,
   "skipped": 0,
   "failed": 0
 },
 "hits": {
   "total": {
     "value": 4,
     "relation": "eq"
   },
   "max_score": 2.205655,
   "hits": [
     {
       "_index": "products",
       "_id": "3",
       "_score": 2.205655,
       "_source": {
         "id": "3",
         "name": "PlayStation 4 Camera",
         "category": "accessory",
         "brand": "Sony",
         "price": 200
       }
     },
     {
       "_index": "products",
       "_id": "1",
       "_score": 1.9738505,
       "_source": {
         "id": "1",
         "name": "PlayStation 4 Slim 1TB",
         "category": "console",
         "brand": "Sony",
         "price": 1200
       }
     },
     {
       "_index": "products",
       "_id": "4",
       "_score": 1.9738505,
       "_source": {
         "id": "4",
         "name": "PlayStation 4 VR Headset",
         "category": "accessory",
         "brand": "Sony",
         "price": 900
       }
     },
     {
       "_index": "products",
       "_id": "5",
       "_score": 0.69247496,
       "_source": {
         "id": "5",
         "name": "Charging Station for DualShock 4",
         "category": "accessory",
         "brand": "Sony",
         "price": 80
       }
     }
   ]
 }
}<h2>Fazit</h2><p><strong>Mit Abfrageregeln</strong> lässt sich die Relevanz ganz einfach und ohne Codeänderungen anpassen. Die neue <strong>Kibana</strong> <strong>-Benutzeroberfläche </strong>ermöglicht IhnenDiese Änderungen lassen sich in Sekundenschnelle vornehmen, wodurch Sie und Ihr Team mehr Kontrolle über Ihre Suchergebnisse erhalten.</p><p>Über den E-Commerce hinaus können Abfrageregeln in vielen anderen Szenarien eingesetzt werden: Hervorhebung von Anleitungen zur Fehlerbehebung in Supportportalen, Auffinden wichtiger interner Dokumente in Wissensdatenbanken, Förderung aktueller Meldungen auf Nachrichtenseiten oder Herausfiltern abgelaufener Stellen- oder Inhaltsangebote. Sie können sogar Compliance-Regeln durchsetzen, wie beispielsweise das Ausblenden von eingeschränktem Material nach Benutzerrolle oder Region.</p>]]></content:encoded>
    <link>https://www.elastic.co/search-labs/blog/elasticsearch-query-rules-ui-introduction</link>
    <guid isPermaLink="true">https://www.elastic.co/search-labs/blog/elasticsearch-query-rules-ui-introduction</guid>
    <category><![CDATA[Grundlagen]]></category>
    <category><![CDATA[Entwicklererfahrung]]></category>
    <dc:creator><![CDATA[Jhon Guzmán]]></dc:creator>
    <enclosure url="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt565ed0eb407e098d/6a17085d8b73cb363d189fb1/1fb10bd31c509cc9b9bb4f71f49970f140e6c36f-1600x945.png" length="0" type="image/png"/>
    <pubDate>Fri, 07 Nov 2025 00:00:00 GMT</pubDate>
  </item>
  </channel>
</rss>