Suchergebnisse sollten dem ersten Beitrag im Thema Vorrang geben, wenn der Titel mit dem Suchbegriff übereinstimmt.

Kürzlich habe ich bemerkt, dass bei der Suche nach einem bestimmten Thema die Suchergebnisse mich zu einem Beitrag mitten im Thema führen, anstatt zum ersten Beitrag. Dies geschieht, wenn ein Beitrag im Thema denselben Suchbegriff enthält, der auch im Titel des Themas vorkommt. Hier sind zwei aktuelle Beispiele von http://community.wanikani.com:

Die Suche nach „Self Study Quiz“ oder „Self-Study Quiz“ führt mich zu [Userscript] Self-Study Quiz - #731 by prouleau - API And Third-Party Apps - WaniKani Community statt zum ersten Beitrag.

Die Suche nach „ご注文はうさぎですか“ führt mich zu ご注文はうさぎですか miscellaneous discussion - #93 by seanblue - Book Clubs - WaniKani Community statt zum ersten Beitrag.

Ich habe dies unter #feature eingeordnet, da ich nicht zu 100 % sicher bin, dass dies jemals so funktioniert hat, wie ich es beschreibe. Allerdings suche ich mehrmals im Jahr nach dem zweiten Begriff oben, und ich bin mir ziemlich sicher, dass die Suchergebnisse früher den ersten Beitrag im Thema zurückgegeben haben. Falls dies versehentlich geändert wurde, könntet ihr dies als bug betrachten.

Ich weiß, dass es eine erweiterte Suchoption gibt, um nur nach Thementiteln zu suchen, aber das scheint in diesem Fall unnötig. Da der Suchbegriff sowohl in vielen Beiträgen des Themas als auch im Titel selbst vorkommt, denke ich, sollte die Übereinstimmung mit dem Titel automatisch priorisiert werden und der erste Beitrag zurückgegeben werden.

6 „Gefällt mir“

Dies ist das Ergebnis der Änderungen von @tgxworld und @sam an der Suche in letzter Zeit. Vielleicht können sie darauf antworten.

4 „Gefällt mir“

Ja, wir haben das ausführlich diskutiert. Insgesamt bevorzuge ich, dass die Suche sehr simpel ist und immer die erste Übereinstimmung im Thema priorisiert, unabhängig vom Ranking. Das ist viel einfacher für die Leute zu erklären, denn ein Ranking wirkt willkürlich und wie Magie.

7 „Gefällt mir“

Ich verstehe die Anfrage im OT, die Suche den Beitrag selbst (d. h. den ersten Beitrag) referenzieren zu lassen, wenn der Thementitel den Suchkriterien entspricht. Andernfalls soll auf den konkreten Beitrag verwiesen werden, in dem die Übereinstimmung stattfindet.

3 „Gefällt mir“

Das Problem ist, dass wir in einem Thema möglicherweise 15 Treffer haben, wobei einer der 15 den höchsten „Rang

4 „Gefällt mir“

Um ehrlich zu sein, solange der erste Beitrag (über eine Titelübereinstimmung) vor allem anderen priorisiert wird, ist mir der Rest ziemlich egal. Aber was du sagst, klingt für mich vernünftig. Wenn ein Dutzend Beiträge im Thema exakt die gesuchte Phrase enthalten, wirkt das aktuelle Ergebnis der Suche definitiv willkürlich. Immer den frühesten passenden Beitrag im Thema zurückzugeben, erscheint mir als gute Lösung.

Trotzdem sollte der Suchalgorithmus wahrscheinlich zumindest weiterhin exakte Übereinstimmungen priorisieren, um sicherzustellen, dass ein früherer Beitrag, der nur teilweise mit dem Suchbegriff übereinstimmt, nicht vor einem späteren Beitrag priorisiert wird, der exakt passt. Ich weiß nicht, ob das relevant ist, da ich mit dem Algorithmus nicht so vertraut bin. Wie auch immer, wie ich bereits sagte, denke ich, dass all diese Details weit weniger wichtig sind als die Priorisierung der Titelübereinstimmung vor allem anderen.

6 „Gefällt mir“

Ich werde ständig von Leuten getaggt, die auf einen meiner Beiträge verlinken, der mitten in einem Thema steht, obwohl sie eigentlich das Thema selbst teilen wollten. Der aktuelle Ansatz führt definitiv zu Verwirrung.

1 „Gefällt mir“

Ja, @tgxworld und @sam, das muss wirklich geändert werden. Wir sind hier längst weit über der Regel der 3 hinaus. Die Titelauswahl sollte bei der Rangfolge ein massives Supernova-Schwarzes Loch an Gewicht haben.

9 „Gefällt mir“

Ich glaube nicht, dass die Sache so einfach ist, immer den ersten Beitrag eines Themas zu priorisieren, da eine Änderung eines bestimmten Suchszenarios ein anderes beeinflusst. Betrachten wir folgendes Szenario:

  1. Thema X und Thema Y enthalten beide Beiträge, die den Suchbegriff „discourse
2 „Gefällt mir“

Ich glaube nicht, dass hier jemand genau das vorschlägt. Wir sagen, dass Titel-Übereinstimmungen höher gewichtet werden sollen, was nicht der Fall ist, den du gerade beschrieben hast. Wenn der Titel mit dem Suchbegriff übereinstimmt, sollte dies speziell das Ranking des ersten Beitrags erhöhen, nicht aller Beiträge im Thema.

Ich stimme dieser Einschätzung nicht zu. Nutzern geht es nicht speziell darum, Beiträge zu finden, sondern vielmehr um das Auffinden von Inhalten. Wenn Themen angemessen benannt sind, ist der Titel oft der beste Indikator dafür, was der Nutzer sucht, und das bedeutet in den meisten Fällen, beim ersten Beitrag zu beginnen.

Zumindest in der Community, die ich nutze, gibt es in bestimmten Unterkategorien Themen, die häufig gesucht werden, um sie zu teilen, wenn andere Nutzer Hilfe anfragen. Wenn aus den Suchergebnissen stattdessen ein zufälliger Beitrag im Thema angezeigt wird, führt das dazu, dass falsche Beiträge geteilt werden. Das hat zur Folge, dass Nutzer nicht so schnell Hilfe erhalten, wie sie könnten.

Egal ob zum Teilen oder für den persönlichen Gebrauch: Ich denke auch, du unterschätzt, wie oft Nutzer einfach dasselbe Thema immer wieder suchen möchten. In diesen Fällen wollen die Nutzer in der überwiegenden Mehrzahl der Fälle entweder den ersten Beitrag sehen oder dort weitermachen, wo sie aufgehört haben.

5 „Gefällt mir“

Das von dir beschriebene Szenario war die Funktionsweise der Suche in Discourse in der Vergangenheit und stellt ein fehlerhaftes Verhalten dar.

Ich denke, das war eine unglückliche Formulierung. Die Suche durchsucht standardmäßig eine Kombination aus dem Titel des Themas und dem Inhalt des Beitrags.

Obwohl dies zutreffen mag, ist dies nicht immer der Fall, da dies voraussetzt, dass der Suchbegriff immer mit dem Titel des Themas übereinstimmt. Auf Coding-Foren suche ich manchmal nach Code-Snippets, die nicht im Titel erscheinen.

Was vorgeschlagen wird, ist nicht unmöglich, obwohl wir einige technische Entscheidungen und Abwägungen treffen müssen. Zum Beispiel müssen wir den Titel des Themas aus PostSearchData für Beiträge entfernen, die nicht der erste Beitrag sind. Dies stellt sicher, dass Titelübereinstimmungen des Themas den ersten Beitrag höher ranken als die anderen Beiträge im Thema, aber es bedeutet immer noch, dass wir dem Ranking-Algorithmus von Postgres ausgeliefert sind.

4 „Gefällt mir“

Hier ist ein weiteres Beispiel, um meinen Anwendungsfall zu veranschaulichen. Ich habe auf https://community.wanikani.com nach „special kanji

3 „Gefällt mir“

[quote=“seanblue, Beitrag: 13, Thema: 175154”]
Nur weil die Wörter „special

4 „Gefällt mir“

Das fühlt sich für mich wirklich unangenehm an. Das ist nicht offensichtlich, es sei denn, der Nutzer hat die Gewohnheit, die beim Hovern angezeigten Linkdaten zu lesen (und zu interpretieren).


Vielleicht sollte man eine zweistufige Suche in Betracht ziehen?

  • Suche nach Beitragstiteln, wobei nur EXACT_MATCH (exakte Übereinstimmung) und CONTAINS_ALL (enthält alle) berücksichtigt werden
    • Diese werden ganz oben in den Ergebnissen platziert, wobei EXACT_MATCH Priorität hat
  • Fülle dann den Rest der Ergebnisse mit der aktuellen gewichteten Suche aus, ohne die Beitragsstarter-Beiträge, die bereits in der ersten Stufe erfasst wurden.
3 „Gefällt mir“

Die Idee ist, dass wir UX-Änderungen vornehmen werden, um dies offensichtlich zu machen.

Die Idee ist gut, aber ich denke nicht, dass wir die PostgreSQL-Suchanfrage effizient ausführen können, da es keine Indexunterstützung gibt, wenn versucht wird, mit den Operatoren like und ilike abzugleichen. Ein weiterer zu berücksichtigender Faktor ist, dass es keine Möglichkeit gibt, exakte Übereinstimmungen oder Übereinstimmungen mit „enthält“ zu bewerten. Aus diesem Grund verlassen wir uns auf die von PostgreSQL bereitgestellten Volltextsuchfunktionen.

1 „Gefällt mir“

Ich denke, du bräuchtest wahrscheinlich eine offensichtlichere Möglichkeit, den ersten Beitrag und die Treffer-Beitrags-Links zu unterscheiden. Ich glaube nicht, dass dein Vorschlag intuitiv wäre. (Aber ich verstehe, dass es nur ein Beispiel war.)

Eine Möglichkeit, an die ich gedacht habe, ist, alle passenden Beiträge aus einem Thema anzuzeigen, vielleicht mit einer Art Aufklapp-/Zuklapp-Mechanismus. So würdest du den am besten passenden Beitrag aus allen relevanten Themen ähnlich wie in der aktuellen Ansicht anzeigen, aber daneben gäbe es einen Pfeil oder etwas Ähnliches neben jedem relevanten Thema, um die Liste zu erweitern und alle passenden Beiträge in diesem Thema anzuzeigen. Das könnte jedoch übertrieben sein, ich weiß es nicht.

Ich denke, das wäre auf jeden Fall einen Versuch wert. Es würde das Problem lösen, über das ich mich beschwert habe, indem Titel-Treffer priorisiert werden. Aber es würde auch das Szenario lösen, das du für Codierungsforen erwähnt hast, @tgxworld, da, wie du sagtest, die Code-Snippets nicht im Titel stehen würden.

Natürlich, wenn es unpraktisch ist, ist das eine andere Geschichte. Vielleicht weiß jemand anderes einen Weg, es performant genug zu machen.

Sich auf bestehende Technologien zu verlassen ist großartig, aber nur, wenn sie deinen Anwendungsfall richtig lösen. Es klingt so, als wäre die Volltextsuche von PostgreSQL allein angesichts der in diesem Thema angesprochenen Probleme unzureichend. Es klingt nach einem hybriden Ansatz wie dem, den @Sailsman63 vorgeschlagen hat, wäre ideal, wenn es einen Weg gibt, dies machbar zu machen.

Da es aktuell keine „einfache Lösung“ zu geben scheint, denke ich ehrlich, dass dies die beste Option ist, während an einer vollständigeren Lösung gearbeitet wird. Jede UX-Änderung oder ein neuer Algorithmus, der Datenbankoptimierungen oder andere Leistungsüberlegungen erfordert, könnte eine Weile dauern, bis er richtig funktioniert. Daher halte ich die Rückkehr zum alten Verhalten als vorübergehende Lösung für angemessen.

Leider ist es nicht so einfach zu sagen, dass wir einfach auf etwas Besseres für uns wechseln werden. Wir müssen sowohl geschäftliche als auch technische Abwägungen berücksichtigen, bevor wir eine eigene Entscheidung treffen.

Ich zögere, dies zu tun, da es uns nicht zu einer besseren Lösung führt. Tatsächlich bin ich der festen Überzeugung, dass das alte Verhalten falsch ist. Die in diesem Thema beschriebenen Fälle basieren auf einem einzigen Szenario, bei dem es intuitiv erscheint, dass das Suchergebnis nur auf den ersten Beitrag verweist, weil der suchende Nutzer genau weiß, welches Thema er durchsuchen möchte. Ich würde sogar so weit gehen zu argumentieren, dass Nutzer, die bereits den Titel des gesuchten Themas kennen, den erweiterten Suchfilter in:title verwenden sollten. In den meisten Suchfällen ist der Inhalt des Beitrags entscheidend, und eine Teilübereinstimmung im Beitragstitel sollte nicht bedeuten, dass nur der erste Beitrag des Themas angezeigt wird.

1 „Gefällt mir“

Ja, das ist wohl fair.

Das wäre vielleicht ausreichend, wenn die Erweiterte Suche einfacher wäre. Persönlich finde ich sie unglaublich schwer zu bedienen, da es schlichtweg zu viele Optionen gibt, was es schwierig macht, die benötigte Option zu finden. Vielleicht liege ich ja nur allein damit :man_shrugging:

Vielleicht wäre es angebracht, das Kontrollkästchen in:title dauerhaft sichtbar zu machen. Oder noch besser: Vielleicht würde ein Dropdown-Menü links neben dem Eingabefeld mit Optionen wie „Alle“, „Titel“ und „Beiträge“ Sinn ergeben, damit der Benutzer den Suchbereich angeben kann. Diese Art von Suchfilter ist meines Erachtens recht verbreitet, sodass sie (hoffentlich) intuitiv für Nutzer ist, sie zu verwenden oder zu ignorieren, wie sie es für richtig halten. Als vergleichbares Beispiel lässt IMDb Sie nach „Alle“, „Titel“, „Schauspieler“ usw. suchen (die genauen Optionen fallen mir im Moment nicht ein). Man müsste herausfinden, wie man „Alle“ und „Beiträge“ unterscheidet, da sie im Grunde derzeit ein und dasselbe sind, aber vielleicht ist dieser Ansatz eine Überlegung wert.

2 „Gefällt mir“

Das ist genau das, was wir tun sollten – es ergibt für mich absolut keinen Sinn, dass alle Beiträge im Thema den Beitragstitel zugeordnet haben.

2 „Gefällt mir“

Das muss ich mit @sam klären, da unser Suchindex bisher immer so aufgebaut war. Tatsächlich enthält der Suchindex für jeden Beitrag den Titel, den Kategorienamen sowie die Tag-Namen, selbst wenn es sich nicht um den ersten Beitrag handelt.

1 „Gefällt mir“