Reddit Search API結論の前に、問いを。

読解ライブラリー

フィールド内のANDを反例で説明する

二つの架空の量子化例で、titleまたはtext内のANDを説明します。フレーズ検索と区別し、未対応の重み付けやOR操作は示しません。

フィールドごとの例を描く

quantizationにmemoryを足す読者には、何が変わるかが必要です。現在のqはtitleとtextに対して、multi_match、type=best_fields、operator=andを使います。解析された語は、一致する一つのフィールド内に必要です。一語がtitleだけ、もう一語がtextだけでは足りません。ある検索語がタイトル、他方が本文にしかない場合は一致しません。これはフィールドの境界の説明であって、本文が問いに答えるという評価ではありません。

titleとtextの二列のワークシートを描き、例で仮定する解析語を書きます。架空の短文を使い、二つの語がそれぞれ別の解析語として残ると明示します。現実の一致はアナライザーに依存し、この図は語幹処理、同義語、句読点の扱い、文字単位の一致を証明しません。また両フィールドが同時に一致する必要もありません。一つのフィールドで条件を満たせますが、このANDの説明は語順や近接性を保証しません。

タイトルだけで一致する例を考える

最初の紙上例では、架空のタイトルにquantization memoryを置き、架空の本文はその二語と無関係にします。仮定したトークン条件では、タイトルが必要な両語を満たします。本文に同じ語は不要です。これは概念例であり、実在するアーカイブレコードでも実行済みテストの報告でもありません。そのタイトルが、読者の調査とは異なる条件を述べている可能性もあります。語の一致が提供するのは確認すべき材料だけです。

次にタイトルを保ち、読む目的を変えます。メモリ測定条件を知りたい人には、ハードウェア、モデル、方法が必要かもしれませんが、二語だけでは分かりません。その要件を別の読解メモとして示します。タイトルに高品質の印を付けたり、タイトル一致が本文一致より上位だと主張したりしないでください。取得は_doc順で、関連度、日付、スコア順ではありません。この例が示すのは適合条件であり、位置が有用性を保証するわけではありません。

語が別のフィールドに分かれる不一致を考える

二つ目の紙上例では、タイトルにquantizationだけ、本文にmemoryだけを置きます。どちらのフィールドにも相手の解析語はないものとします。レコード全体に二語があっても、各フィールドは二語のANDを満たしません。これは両列の語を合算する架空のフィールド横断検索とは違います。別々の文書を比較する例でも、近接条件の説明でもありません。足りないのは一つの適合フィールド内の二語であり、語が隣り合うこととは限りません。

実際の読解問題には慎重に当てはめます。見つからない理由が語のフィールド分離だとは証明できません。データの有無、他のフィルター、解析の挙動、検索ウィンドウも関係します。qをquantizationだけへ広げるなら、明示的な新規要求として以前の表現を比較用に残します。OR切り替え、フレーズ構文、自由なフィールド選択や重み付けが使えるとは案内しません。これらは公開フィルター契約に含まれず、隠れた設定で利用できるとも思わせないでください。

クエリの説明を書く

フォーム横の短い説明なら、「解析されたすべての検索語が、title内またはtext内で一致する必要があります」と書けます。詳細が必要なら二列の例を続けます。特に条件変更後は、送信した表現を応答の上に残します。説明文では完全一致フレーズや意味理解と区別し、qとsubreddit、author、kind、min_scoreも分けます。これらは別々に検索範囲を狭める条件で、min_scoreは関連度順への切り替えではありません。

後で自分のUIを試験するときは、語の追加で新しい1ページ目が始まり、古い応答が元の入力に対応したままか確認します。これはアプリ向けのテスト提案であり、本稿で実施済みではありません。追加の成功取得は空でも1クレジットです。「この要求では返りませんでした」を「この話題は議論されたことがない」と言い換えないよう、不確実性を残します。フィールド内ANDは説明可能な仕組みの一つであり、網羅性、完全な会話、最良の回答の証明ではありません。