Closed2
LangChainのContextual Compression Retrieverを試す
参考
Contextual Compression Retriever
LangChainには元々QAボット向けのQAChainが用意されている。
ただし、QAChainでは「単純に分割」されたドキュメントを「類似検索」しているだけなので、
- ユーザの質問に対してコンテキストにあっているドキュメントを正しく抽出できているのか?正しくない場合もあるのではないか?
- 正しくないドキュメントが含まれていると、
- 無駄にトークンを使ってしまう
- LLMが無駄な情報を含めてしまい回答精度が下がる
という可能性がある。
そこで、上記に対して、以下の抽象レイヤーを追加したのがContextual Compression Retriever。
- 抽出したドキュメントを圧縮・フィルタリングすることで、余計な情報を削る
これにより、「より関連性が高い」情報を「より多く」LLMに渡すことにより、「より精度の高い」回答を得ることが実現できる、というものの様子。
ただQAChainでもchain_typeを選択することで「より精度の高い」回答を得るという手段は用意されていたと思うので、Contextual Compression Retrieverがどういう違いを生むのか?を念頭に試しに実装してみる。
色々変わったのと、最近はLangChain使わずに素で書いてるので、一旦クローズ。
このスクラップは2023/10/13にクローズされました