LangChain と Google Cloud データベースを使用して強化された生成 AI アプリケーションを構築する
Google Cloud Japan Team
※この投稿は米国時間 2024 年 3 月 6 日に、Google Cloud blog に投稿されたものの抄訳です。
生成 AI を活用すれば、ML 未経験の開発者でも革新的な AI アプリケーションを構築できます。まず、大規模言語モデル(LLM)およびその他の基盤モデルをオペレーショナル データベースと統合し、既存のエンタープライズ システムを含むさまざまなデータソースから関連情報を取得するためのプロンプトを作成する必要があります。
生成 AI におけるデータベースの役割
開発者たちは、高品質でハルシネーションを抑制するエンタープライズ向け生成 AI アプリを構築するには、独自の大規模言語モデルだけでは不十分であることに気づき始めています。オペレーショナル データベースは、LLM とアプリケーションを実際のエンタープライズ データに根拠付けることで、LLM とエンタープライズ向け生成 AI アプリの間のギャップを解消します。これは、検索拡張生成(RAG)と呼ばれる生成 AI の手法で、多くのアプリケーションで採用されています。この手法により、データベースから外部のナレッジソースを組み込み、より正確でドメイン固有の最新結果を得ることができます。ベクトルが有効なデータベースは、セキュリティと即応性を損なうことのないセマンティック検索を提供するだけでなく、使いやすく、データの移動を必要としません。
LangChain と Google Cloud データベースによる RAG ワークフローの合理化
Google は、RAG アプリケーションを迅速かつ効率的に構築できるツールをアプリケーション デベロッパーに提供するため、人気のオープンソース LLM オーケストレーション フレームワークである LangChain とのより緊密なインテグレーションを構築しました。昨年、Google は生成 AI アプリケーションを構築するために、Vertex AI エンべディング、基盤モデル、ベクトル検索機能を活用するためのリファレンス パターンを LangChain と共有しました。これによりデベロッパーは、LangChain パッケージ スイートにアクセスして、Google Cloud のデータベース ポートフォリオ を活用し、柔軟性とカスタマイズ性を強化してプライベート データから最大限の価値を引き出すことができるようになりました。
各パッケージには、最大 3 つの LangChain インテグレーションがあります。
-
ドキュメントから情報を読み込んで保存するドキュメント ローダ
-
ベクトルをサポートする Google のデータベースでセマンティック検索を可能にするベクトル ストア
-
チェーンによって以前の会話を確認できるチャット メッセージ メモリ
これにより、デベロッパーは複雑なワークフローを柔軟に構築できるようになり、特定のユースケースで必要に応じて基礎となるコンポーネント(ベクトル データベースなど)を簡単に入れ替えることができます。例として、おすすめ商品のパーソナライズ、質問応答、ドキュメントの検索と統合、カスタマー サービスの自動化などのケースが挙げられます。
LangChain ベクトル ストアのインテグレーションは、AlloyDB、Cloud SQL for PostgreSQL、Memorystore for Redis、Spanner など、ベクトルをサポートする Google Cloud データベースで利用できます。
ドキュメント ローダとメモリのインテグレーションは、AlloyDB、Cloud SQL for MySQL、PostgreSQL、SQL Server、Firestore、Bigtable、Memorystore for Redis、Oracle データベース向け El Carro、Spanner など、すべての Google Cloud データベースで利用できます。
次の表に現在利用可能なパッケージのリストを示します。
Python パッケージ
LangChain と Google Cloud データベースのインテグレーションにより、組織のデータベースに保存されている正確で信頼性の高い情報へのアクセスが可能になり、LLM レスポンスの信用度と信頼性が強化されます。さらに、データベースからコンテキスト情報を取得することでコンテキストの理解を深め、ユーザーのニーズに合わせて関連性の高いパーソナライズされたレスポンスを実現できます。次のような利点があります。
-
開発の加速: LangChain は RAG アプリケーションのベスト プラクティスをエンコードするため、開発チームが迅速に作業を開始できます。
-
相互運用性: LangChain は、RAG アプリケーションの構築に必要なさまざまなコンポーネントに対応する標準インターフェースを提供するため、デベロッパーはさまざまなコンポーネントを柔軟かつ簡単に入れ替えることができます。
-
オブザーバビリティ: LLM は RAG アプリケーションの中心的なコンポーネントであることから、本質的に大量の不確実さが存在します。このため、オブザーバビリティがこれまで以上に重要になっています。デベロッパーは、組み込みのオブザーバビリティ プラットフォームである LangSmith にアクセスできます。
生成 AI アプリケーション開発の新時代
LangChain とのコラボレーションは、オープンで統合された革新的なデータベース プラットフォームになるという Google の長期的な取り組みを後押しするものです。幅広いリーチ(月間 500 万以上のダウンロード)を誇る LangChain との今回のインテグレーションにより AI 開発の新時代が訪れます。アプリケーション デベロッパーは、インテリジェントなだけでなく、ナレッジソースを基に現実に即した最先端の生成 AI アプリケーションを構築できるようになります。
上述のサービスに加えて、Vertex AI は、RAG アプリケーション向けにフルマネージドの専用検索エンジンも提供します。詳しくは、こちらのリンクをご覧ください。
使ってみる
Google Cloud と LangChain のインテグレーションにご興味をお持ちの場合は、まずサンプルのクイックスタート アプリケーションをお試しください。関連資料として、LangChain ドキュメント ローダ、ベクトル ストア、チャット メッセージ メモリのインテグレーションの使用方法についてノートブックに詳しく記載しています。また、詳しい手順については次の Codelab でもご確認いただけます。
-
Cloud SQL for PostgreSQL GitHub のリンク、Colab
-
Memorystore GitHub のリンク、Colab
-
AlloyDB for PostgreSQL GitHub のリンク、Colab
-
Spanner GitHub のリンク、Colab
これらの機能の詳細については、2024 年 3 月 7 日午前 9 時から 10 時(太平洋標準時)にライブ配信される Data Cloud Innovation(データクラウド イノベーション)ウェブキャストをご視聴ください。プロダクト エンジニアリング チームが AlloyDB for PostgreSQL、Spanner、BigQuery、Looker にまつわる最新のイノベーションをご紹介します。
ー Google Cloud データベース、AI プロダクト マネージャー Hamsa Buvaraghan
ー LangChain、共同創業者 / CEO Harrison Chase 氏