IBMニュースレター
The DX Leaders
AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。登録の際はIBMプライバシー・ステートメントをご覧ください。
ニュースレターは日本語で配信されます。すべてのニュースレターに登録解除リンクがあります。サブスクリプションの管理や解除はこちらから。詳しくはIBMプライバシー・ステートメントをご覧ください。
LangChainが作成した LangGraph は、複雑な生成 AI エージェント・ワークフローを構築、展開、管理するために設計されたオープンソースの AI エージェント・フレームワークです。ユーザーが大規模言語モデル(LLM) をスケーラブルかつ効率的に作成、実行、最適化できるようにするツールとライブラリのセットを提供します。LangGraph は、本質的に、グラフベースのアーキテクチャのパワーを活用して、 AIエージェント・ワークフローのさまざまなコンポーネント間の複雑な関係をモデル化し、管理します。
こうした情報は何を意味するのでしょうか?LangGraphをより明確に理解できる例え話を紹介します。これらのグラフベースのアーキテクチャーを、強力で設定可能な地図、つまり「スーパーマップ」として活用することを考えてみましょう。ユーザーはAI ワークフローをこの「スーパーマップ」の「案内役」として考えることができます。そしてこの例では、ユーザーは「地図製作者」です。案内役は「スーパーマップ」上の各地点間の最適なルートを計画します。どれも「地図製作者」が作成したものです。
まとめると、グラフベースのアーキテクチャー(「スーパーマップ」)内の最適なルートは、AIワークフロー(「案内役」)によってグラフ化され探索されます。この例えはLangGraphを理解するための出発点として最適でしょう。地図が好きな人であれば、誰かが地図製作者という言葉を使っているのを見るのもまた楽しいことでしょう。
LangGraphは、AIワークフロー内のプロセスを明らかにし、エージェントの状態を完全に透明化します。LangGraph内では、state機能がAIによって処理されたすべての貴重な情報を記録および追跡するメモリ・バンクとなります。これはデジタル・ノートブックに似ており、システムがワークフローやグラフ分析のさまざまな段階を通るデータをキャプチャして更新します。
例えば気象を監視するエージェントを実行している場合、この機能は雪が降った回数を追跡し、変化する降雪量の傾向に基づいて提案を行うことができます。システムが複雑なタスクを完了するためにどのように機能するかを把握できるオブザーバビリティーは、初心者が状態管理についてより深く理解するのに役立ちます。状態管理は、アプリケーションの状態を一元化し、多くの場合、全体的なプロセスを短縮できるため、デバッグの際には役立ちます。
このアプローチにより、意思決定がより効果的になり、拡張性が向上し、全体的な性能が向上します。また、これらのプロセスに不慣れな人や、舞台裏で何が起こっているのかをより明確に知りたい人との関わりを増やすこともできます。
LangGraph は、AI アプリケーションを構築するための Python フレームワークであるLangChainを含め、いくつかの主要なテクノロジーに基づいて構築されています。LangChain には、LLMを構築・管理するためのライブラリが含まれています。LangGraphはまた、ヒューマン・イン・ザ・ループのアプローチを採用しています。これらのテクノロジーを一連の API およびツールと組み合わせることで、LangGraph は、チャットボット、状態グラフ、その他のエージェントベース システムを含む AI ソリューションとワークフローを開発するための多目的プラットフォームをユーザーに提供します。
LangGraphの主要な機能、メリット、ユースケースを通じて、LangGraphの世界をより深く掘り下げましょう。この記事を読み終える頃には、LangGraphを使用して次のステップに進むための知識と参考情報が得られます。
まずは、LangGraphを構成する主要なコンポーネントを理解することから始めましょう。このフレームワークは、ユーザーが複雑なAIワークフローを作成、管理できるように連携する複数の主要コンポーネントを中心に構築されています。これらのコンポーネントには、次のものが含まれます。
ヒューマン・イン・ザ・ループ:ヒューマン・イン・ザ・ループ (HITL)とは、プロセスのどこかの時点で人間による介入が必要になることを指します。機械学習(ML) の分野において、HITL とは、人間が機械の機能を増強し、モデルを構築しながら情報に基づいた意思決定を行う共同プロセスを指します。HITLは、最もクリティカルなデータ・ポイントを使用することにより、ランダム・サンプリング手法よりも機械学習の精度を向上させます。
ステートフル・グラフ :グラフの各ノードが計算のステップを表し、基本的に状態グラフを規定する概念。このアプローチにより、グラフは前のステップに関する情報を保持できるため、計算の展開に合わせて、継続的かつコンテキストに応じた情報処理が可能になります。ユーザーは、そのAPIを使用して、LangGraphのすべてのステートフル・グラフを管理できます。
循環グラフ : 循環グラフは、少なくとも 1 つのサイクルを含むグラフであり、エージェントのランタイムに不可欠です。これは、同じノードで開始・終了し、グラフ内にループを形成するパスが存在することを意味します。複雑なワークフローにはしばしば循環する依存関係が含まれます。この場合、あるステップの結果はループ内の前のステップに依存します。
ノード :LangGraphでは、ノードはAIワークフロー内の個々のコンポーネントまたはエージェントを表します。ノードは、特定の方法で相互に対話する「アクター」と考えることができます。例えばツール呼び出し用のノードを追加するには、ToolNodeを使用します。もう1つの例を挙げます。次のノードは、現在のノードの後に実行されるノードを指します。
エッジ : エッジは、現在の状態に基づいて次にどのノードを実行するかを決定するPython内の関数です。エッジは、条件付き分岐または固定遷移にすることができます。
RAG :検索拡張生成 (RAG) は、関連するドキュメントを取得して LLM の Power と外部ソースからのコンテキスト情報を組み合わせ、それをインプットとして回答生成に使用します。
ワークフロー :ワークフローはノードの一連のインタラクションであり、AIワークフローを定義します。ノードをワークフロー内に配置することで、個々のコンポーネントの強みを活用した、より複雑で動的なワークフローを作成できます。
API : LangGraph は、ユーザーがプログラムでコンポーネントと対話できるようにする一連のAPIを提供します。ユーザーは、APIキーを使用し、新しいノードを追加し、既存のワークフローを変更し、AIワークフローからデータを取得できます。
LangSmith: LangSmithは、LangGraph内でLLMの構築と管理を行うための専門的なAPIです。LLMの初期化、条件付きエッジの追加、性能の最適化のためのツールを提供します。これらのコンポーネントを革新的な方法で組み合わせることで、ユーザーは個々のコンポーネントの強みを活用した、より洗練されたAIワークフローを構築できます。
IBMニュースレター
AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。登録の際はIBMプライバシー・ステートメントをご覧ください。
ニュースレターは日本語で配信されます。すべてのニュースレターに登録解除リンクがあります。サブスクリプションの管理や解除はこちらから。詳しくはIBMプライバシー・ステートメントをご覧ください。
グラフベースのアーキテクチャを使用することで、LangGraphはユーザーが効率を低下させたり効率を犠牲にしたりすることなく、人工知能のワークフローを拡張できるようにします。LangGraphは、ノード間の複雑な関係をモデル化することで意思決定を強化しています。つまり、AIエージェントを使用して過去のアクションとフィードバックを分析することを意味します。LLMの分野では、このプロセスはリフレクションと呼ばれます。
意思決定の強化 :ノード間の複雑な関係をモデル化することで、LangGraphはより効果的な意思決定システムを構築するためのフレームワークを提供します。
柔軟性の向上 :オープンソースの性質とモジュール式の設計により、開発者が新しいコンポーネントを統合したり、既存のワークフローを適応させることができます。
マルチエージェント・ワークフロー: マルチエージェント・ワークフローを通じて複雑なタスクに取り組むことができます。このアプローチには、特定のタスクや専門分野に特化したLangChainエージェントの作成が含まれます。タスクを適切なLangChainエージェントにルーティングすることで、多様なワークロードの並列実行と効率的な処理が可能になります。このようなマルチエージェント・ネットワーク・アーキテクチャーは、エージェント・オートメーションの分散型調整の一例です。
優れた一例が、Joao Mouraが作ったLangChainとLangGraphでのCrewAIの利用です。自律型AIエージェントを調整するCrewAIにより、Eメールのチェックと草案作成が自動化され、複雑なタスクを効率的に共同作業で実行できるようになります。
チャットボット :ユーザーは、ノードベースのワークフローと有向非巡回グラフ(DAG)を使用して、休暇計画のためのエージェント・アプリケーションを構築できます。チャットボットは、最小限のユーザーインプットに応答することを学習し、推奨事項をカスタマイズします。現在、GoogleのDuplexなどのサービスでは、人間のような会話を模倣するために、同様の方法でLangGraphを使用しています。
エージェント・システム:LangGraphは、ロボティクス、自動運転車、ビデオ・ゲームなどのアプリケーションで使用できるエージェント・ベースのシステムを構築するためのフレームワークを提供します。
LLMアプリケーション :LangGraphの機能を活用することで、開発者は時間の経過とともに学習し、改善する、より洗練されたAIモデルを構築できます。Norwegian Cruise LineはLangGraphを使用して、ゲスト向けAIソリューションのコンパイル、構築、改良を行っています。この機能により、ゲスト・エクスペリエンスの向上とパーソナライズが可能になります。
LangGraphのエージェントは、OpenAIのGPT(生成事前トレーニング済みトランスフォーマー)モデルGPT-3.5およびGPT-4に基づいています。ただし、LangGraphとそのオープンソース・コミュニティは、AnthropicモデルやAzureChatOpenAIモデルなど、LLM API構成を通じて初期化される他のいくつかのモデルの追加に貢献しました。比較的小さいループは、Auto-GPTなどのプロジェクトに似ています。
LangGraphは、GitHubドキュメントサイトでオープンソースLLMと統合する方法の探索を容易にするYouTubeのチュートリアルを提供しています。LLMを統合するための最初のステップは、LLaMA-Factory、FastChat、Ollamaなどの推論リポジトリー(repo)を設定することです。このリポジトリーでは、認証情報を通じて構成された対応するLLMモデルのデプロイメントが可能になります。
ClarkAI、MetaGPT、AutoGenは、複雑なワークフローを処理できるマルチエージェント・フレームワークのほんの一例です。このオペレーションにより、多様な計算の課題に取り組むための、より柔軟で微妙なアプローチが可能になります。これらのフレームワークは、包括的なデバッグ機能を提供することで、開発者が問題を迅速に特定して解決できるようにし、より効率的な開発および最適化プロセスにつながります。
LangGraphは、ワークフロー開発用のビジュアル・インターフェイスであるLangGraph Studioも導入しました。LangGraph Studioでは、ユーザーはコードを書くことなく、グラフィカル・インターフェイスを使用してワークフローを設計および構築できます。ダウンロード可能なデスクトップ・アプリケーションにより、LangGraph Studioは初心者にとってより使いやすいものになっています。LangGraph Studioは以下の主要な機能も利用できるようにしています。
身につけやすい:LangGraphへのアクセスにLangGraph Studioが必要というわけではありません。しかし、LangGraph Studioのビジュアル・インターフェイスを使用することで、ユーザーはコードに縛られることなく、ワークフローの設計に集中できます。
コラボレーションの向上 :LangGraph Studioは、開発者のチームであるかクライアントであるかを問わず、他のユーザーとワークフローを共有することを可能にします。
デバッグ : グラフを構築するだけではなく、グラフが正確で信頼性が高いことを保証するためのデバッグ機能が含まれています。最先端の統合開発環境(IDE)を備えたLangGraph Studioは、LangGraphアプリケーション(アプリケーション)の視覚化とデバッグを支援します。
自然言語処理(NLP)の強化 : LangGraphは今後より高度なNLP機能を備え、自然言語をより深く理解し、より正確な応答を提供できるようになります。
機械学習の改善 :LangGraphは今後機械学習機能を改善し、時間の経過とともに学習および改善できるようになります。
新しいプラットフォームのサポート :LangGraphは、モバイル・デバイスやエッジコンピューティングなどの新しいプラットフォームをサポートし、テクノロジーをより利用しやすいものにします。
業界をリードするIBMのAI専門知識とソリューション製品群を使用すれば、ビジネスにAIを活用できます。
AIの導入で重要なワークフローと業務を再構築し、エクスペリエンス、リアルタイムの意思決定とビジネス価値を最大化します。