Multi Vector Retrieverの概要

以下のlangchainのMulti Vector Retrieverの記事を読んでまとめました.

MultiVector Retriever | 🦜️🔗 Langchain

ドキュメントごとに複数の埋め込みベクトルを保存したいときにどのようにするのが良いか? 以下の方法が考えられ,Multi Vector Retrieverではその方法を提供する.

  • Smaller chunks: ドキュメントを小さなチャンクに分割し,埋め込む(ParentDocumentRetriever)
  • Summary: 各文書の要約を作成し、文書と一緒に(または文書の代わりに)埋め込む
  • Hypothetical questions: 各文書が答えるのに適切であろう仮定の質問を作成し、その質問を文書とともに(または文書の代わりに)埋め込む。

Smaller Chunks

小さなチャンクにすることで,できるだけ意味的に近いものを取得し、 かつできるだけ多くのコンテキストを下流に渡すことができるようになる.

Summary

LLMによる要約を行い,その内容を埋め込む.要約はチャンクの内容をより正確に抽出することができ、より良い検索につながる。

Hypothetical Queries

LLMはまた、特定の文書に尋ねられる可能性のある仮定の質問のリストを生成するために使用することができる。それらの質問を埋め込む.