LangChainは、AI、ベクトル、埋め込みを扱うことを目的とした、人気のフレームワークです。さまざまなAIアプリケーションの構築を簡素化するために使用されます。
Elasticsearchは、LangChainと組み合わせて、3つの方法で使用できます:
- LangChain ElasticsearchStoreを使用して、Elasticsearchからのドキュメントを格納・取得します。
- LangChainセルフクエリリトリーバーを使用し、OpenAIなどのLLMによる支援を活用し、ユーザーのクエリをクエリ+フィルターに変換し、Elasticsearchから関連するドキュメントを取得します。
- Elasticsearchからドキュメントを取得する最も柔軟な方法として、LangChainElasticsearchRetrieverをご利用ください。
ElasticsearchとLangChainの導入に関するブログ記事
ノートブック
- LangChainとElasticsearchを使用した質問応答
- LangChainとElasticsearchを使用したチャットボット
- 自己クエリリトリーバーの例
- 質問応答のための自己クエリリトリーバー
- BM25検索を用いた自己クエリレトリーバー
LangServeテンプレート
LangChainを活用したRAGリファレンスアプリ
このリファレンスアプリは、LangChainを使用してRAG(Retrieval-Augmented Generation)モデルを強化する方法を示します。アプリはElasticsearchStoreを使用して、Elasticsearchからのドキュメントを格納・取得します。この方法により、LangChainとElasticsearchを簡単に使い始めることができます。
https://github.com/elastic/elasticsearch-labs/tree/main/example-apps/chatbot-rag-app