非完全一致検索のためのAI検索

私たちは、大学の学部のために、ナレッジベースおよびディスカッションフォーラムとして当サイトを使用しています。例えば、人々が次のようなことを尋ねたいと思うと想像できます。

  • 修士課程の成績はいつ利用可能になりますか?
  • 心理学修士課程の学生の合格点は何ですか?
  • 一度に何週間の休暇を予約できますか?
  • 学生がステージ1のモジュールに不合格になった場合はどうなりますか?
  • 学生が自傷行為をしている場合、大学は何を要求しますか?
  • 研究参加者にはいくら支払いますか?
  • 昇進するにはどうすればよいですか?
  • 博士課程の資金調達源は何がありますか、または学校の博士課程奨学金はいつリリースされますか?
  • プログラムのどこで、学生は繰り返し測定分散分析について学びますか?

これらの各ケースについて、かなり良い情報がありますが、従来の検索では要約するのに正しい結果が見つかりません。時には何も見つかりませんが、他の times は「正しい」答えではない古い議論を見つけます。

「いいね!」 5

フィードバックありがとうございます、ベン

PRキューは@falcoがHydeベースのセマンティック検索に取り組んでいるところです。準備ができたら、それ用のコマンドを追加してみます。

「いいね!」 2

FYI

多くのプログラマーではない方がここにいるため、キーワード検索とセマンティック検索の違いは混乱を招くように思えるかもしれません。また、それがどのように機能するかについて、より深く知りたいと思うかもしれません。以下はプログラマー向けですが、プログラマーでなくても、2つの検索方法の違いに関する主要な概念をいくつか学ぶことができるほど基本的なものです。

DeepLearning.AI は最近(2023年8月14日)、この無料の入門コースを追加しました。

Large Language Models with Semantic Search (ref)

これは、短期コースのページで見つけることができます。


AIの世界で誰が誰であるかに注意を払っている方なら、発表している数人の顔に見覚えがあるはずです。

「いいね!」 1

私のように研究論文が好きで、HyDE について知らなかった方のために、論文を紹介します。

Luyu Gao、Xueguang Ma、Jimmy Lin、Jamie Callan による「Precise Zero-Shot Dense Retrieval without Relevance Labels」(pdf

「いいね!」 1

リンクを提供していただけますか? (回答済み 以下)

すみません、見つけられませんでした。ボットコマンドについては学びました。 (参照)

@EricGT リンクありがとうございます。MLについてかなりの知識がないと、あの論文はかなり難解ですね。

要点は、ここで適用されているように、HyDEはLLMを使用して、まず質問に基づいて「架空の」回答を作成するということだと思います。この回答は、例えばフォーラム投稿の「形式」を持つかもしれませんが、幻覚を含み、事実と異なる可能性があります。なぜなら、その内容はLLMから来ているのであって、正典的なドキュメントセットから来ているわけではないからです。このドキュメントはユーザーには表示されませんが、巧妙な点は、このドキュメントがあなたのサイトの実際のドキュメント/トピックと意味的に類似していることです。検索は、「架空の」ドキュメントに最も類似した実際のドキュメントを返しますが、経験的に、これは生の検索語を埋め込みデータベース内の意味的に類似したドキュメントに単純に一致させるよりも効果的であるようです。

@sam Hyde ベースの検索はクールですね。試すのが楽しみです。これらのAI機能のいくつかについて、調整可能なノブを想定していますか?例えば、仮想ドキュメントの生成に使用されるプロンプトや、要約/回答を制御するためのプロンプトを編集できると便利だと思います。例えば、現在のチャットボットは、回答を見つけたときにかなり冗長になります。ChatGPT自体を使用するときによく行うように、「簡潔に」または「短く」をプロンプトの接頭辞として追加できると便利だと思います。

「いいね!」 4
「いいね!」 4

良いメモですね!


多くの人はこの声明に注意を払わないでしょうが、プロンプトの実行に実際のお金を払っているなら、それはあなたが理解する必要のある最も価値のある声明の1つです。

参照:

プロンプト

40-90%: プロンプトに「簡潔に」を追加することで節約できる金額

レスポンスごとにトークンで課金されることを覚えておくことが重要です。これは、LLMに簡潔にするように依頼することで、多くのお金を節約できることを意味します[1]。これは、単にプロンプトに「簡潔に」を追加することを超えて広げることができます。GPT-4を使用して10の代替案を考え出す場合、おそらく5つを依頼し、残りの半分のお金を節約できます。

「いいね!」 1

バックエンドは準備できていますが、UIが少しトリッキーなため、Discourseの検索結果ページに適切に統合するにはしばらく時間がかかります。

現在、プロンプトの制御は提供していませんが、機能がうまく動作するようになったら、将来的にカスタマイズ可能にする予定です。

「いいね!」 3

こちらで試すことができます。Metaにアクセスし、検索ページに移動して、いくつかの質問を試してみてください。結果を教えてください。

「いいね!」 2

素晴らしいです!特に、完全一致検索で「結果が見つかりません」と表示される検索フレーズを入力したときは。

Marketplace のクローズされたトピックに対して、意味的に正しい一致がかなり多く得られています。それらを返すのは有用かもしれませんが、リストの最下部に表示されるべきかもしれません。

検索を特定のカテゴリやタグに絞り込むことができるかもしれません。たとえば:

  • 「WordPress でユーザーがログインしたときにアクティベーションメールが送信されないようにするにはどうすればよいですか?」と検索した場合、最適な結果は Documentation または Support > WordPress で見つかるでしょう。

  • 「最も「いいね!」されたトピックを返す Data Explorer クエリを作成するにはどうすればよいですか?」と検索した場合、最適な結果は Data & reporting および Documentation カテゴリで見つかるでしょう。

可能であれば、最初の検索で最も可能性の高いカテゴリからの結果を返し、他のカテゴリに検索を拡張することを提案することができます。

Discourse をカスタマーサポートフォーラムとして使用する際の最初のステップとしてセマンティック検索を考えると、特定のカテゴリやタグを優先できると便利です。たとえば、Meta では、最初の検索で Documentation カテゴリの検索を優先することができます。

「いいね!」 4

まさに、この新機能で解決したかった問題の1つです。セマンティック検索は常に何かを見つけます。

現時点では、セマンティック検索はかなり基本的なものです。バックエンドの数行のコードで構成されており、意味的に最も近いものを返します。Search Improvements in 2.3 やその他の多くの機能など、過去10年間に標準検索に追加された検索機能はほとんどありません。このため、現在は補完的な結果セットとして提供されています。

この機能が好評で、製品のUIを完璧にすることができれば、Discourse固有の機能をセマンティック検索結果に組み込むことを試みます。

「いいね!」 5

はい、これは複雑なクエリにとって本当に素晴らしいです。

このクエリに対して投稿を見つけることはできませんでしたが、適切な場所を指し示す十分なトピックを見つけることができました!

「いいね!」 5