重要なポイント
- MITライセンス — ライブラリ自体の利用・改変・セルフホストが完全無料で、利用上限もない
- LangChain Inc.が開発。LangChain内の実験的エージェントモジュールとして存在した後、2024年1月に独立したインストール可能パッケージとして初公開
- コアリポジトリlangchain-ai/langgraphは41,000以上のGitHubスターを獲得
- LangGraph 1.0はLangChain 1.0とともに2025年10月に一般提供(GA)に到達し、2.0までブレーキングチェンジを行わないという共同のコミットメントが示された
- コアとなる考え方:エージェントをグラフ上のノードとエッジとして表現し、すべてのステップを通じて永続する共有の状態オブジェクトを持つ
- 組み込みのチェックポイント機能(インメモリセーバーやデータベースベースのものなど、差し替え可能なチェックポインタ経由)により、グラフは一時停止・任意の地点からの再開・プロセス再起動後の復旧が可能
- LangGraphエージェントの本番ホスティング(2025年までは「LangGraph Platform」として販売)は現在、有料LangSmithプラン内の従量課金機能であるLangSmith Deploymentとして販売されており、独自の価格表を持つ独立製品ではない
📍 一文で説明
LangGraphはLangChain Inc.が開発した無料・MITライセンスのオープンソースフレームワークで、AIエージェントをノードとエッジのグラフとしてモデル化し、明示的な状態、チェックポイント、ヒューマン・イン・ザ・ループの中断機能を備える。
💬 簡潔に説明
モデルを呼び出してうまくいくことを期待する単一のループとしてエージェントを書く代わりに、LangGraphではエージェントをフローチャートとして描く。各ステップはノード、ステップ間の可能な経路はエッジであり、エージェントの現在の進行状況は各ステップ後に保存される状態として扱われるため、一時停止、再開、クラッシュからの復旧が可能になる。
📌補足: LangGraphはコードを書いて利用するライブラリであり、ダウンロードするアプリではない。オープンソースフレームワーク自体にインストールすべきGUIは存在しない(別ツールであるLangGraph Studioという視覚的デバッグツールはオプション)。本レビューでは、LangChain Inc.が一体の連携スタックとして開発・販売しているオープンソースのLangGraphライブラリと有料の本番デプロイオプションの両方を扱う。
LangGraphは誰が開発し、どのように独自製品になったか
LangChain Inc.は、単純なループでは得られない信頼性を必要とするエージェント向けにLangChainの拡張としてLangGraphを開発し、その後独立したインストール可能パッケージとして切り出した。 初期のLangChainエージェント抽象化(2026年より前の「エージェント・エグゼキューター」パターン)は、中間ステップに対する制御が限定された固定ループとして動作していたため、リトライの追加、人間の判断のための一時停止、クラッシュ後のクリーンな復旧が難しかった。LangGraphは、GoogleのPregelやApache Beamの計算ステップ間で状態が移動する仕組みからアイデアを借りつつ、エージェントを明示的なグラフとしてモデル化することでこの問題に対応した。
LangGraphは2024年1月、コアパッケージlangchainとは別に、独自のスタンドアロンPythonパッケージとして出荷され、チームはLangChainフレームワークの残りの部分に依存することなくグラフベースのランタイムを採用できるようになった。LangChain Inc.はその後、それを中心にホスト型デプロイ製品を構築した。2024年半ばにLangGraph Cloudというベータ版が登場し、2025年5月にLangGraph Platformという名称で一般提供(GA)に到達した。2025年10月、LangChain 1.0とLangGraph 1.0の一般提供リリースとともに、このホスティング製品はLangSmith製品ファミリーに統合され、独立してブランド化されたプラットフォームではなくLangSmith Deploymentとして販売されるようになった。
LangChain内の実験的モジュール
- 日付:
- 2023
- 意味:
- 固定のエージェント・エグゼキューター・ループの限界に対応する、グラフベースのエージェントの初期アイデアがLangChainのコード内に存在
LangGraphが独立パッケージに
- 日付:
- 2024-01
- 意味:
- LangGraphがコアパッケージlangchainから独立した、独自にインストール可能なPythonパッケージとして出荷
LangGraph Cloud(ベータ)
- 日付:
- 2024-06
- 意味:
- LangGraphエージェント向けの初のホスト型デプロイ提供、ベータ段階
LangGraph Platform(GA)
- 日付:
- 2025-05
- 意味:
- ホスト型デプロイ製品がLangGraph Platformという名称で一般提供に到達
LangGraph 1.0
- 日付:
- 2025-10
- 意味:
- LangChain 1.0とともに一般提供に到達。2.0までブレーキングチェンジを行わない公式なコミットメント
LangSmith Deploymentへの統合
- 日付:
- 2025-10
- 意味:
- ホスト型デプロイが独立ブランドのプラットフォームではなく、従量課金のLangSmith機能として再販される
📌補足: オープンソースのLangGraphライブラリに付与されているMITライセンスは、このような再ポジショニングの影響を受けない。変化したのはホスト型デプロイ製品の名称と料金体系のみであり、pip installで入手できるライブラリの無料であるという状態は変わらない。
LangGraphとは何か
LangGraphは、ステートフルなグラフとしてエージェントを構築するためのオープンソースライブラリ(MITライセンス、github.com/langchain-ai/langgraph)であり、Python・JavaScript/TypeScript(LangGraph.jsとして)で利用可能です。呼び出しの直線的なチェーンではなく、LangGraphで構築されたエージェントは有向グラフです。ノードは作業単位(モデル呼び出し、ツール呼び出し、ビジネスロジックなど)であり、エッジは次に実行するノードを決定します — 現在の状態に基づいて分岐する条件付きエッジや、エージェントが再試行や再計画のために戻るサイクルも含まれます。
- 状態:すべてのノードが読み書きする単一の型付きオブジェクト(一般的にはPythonの
TypedDict)であり、グラフ全体がこれまでの経緯についての単一の真実の情報源を共有する - ノードとエッジ:ノードは現在の状態を受け取り、それに対する更新を返す単純な関数であり、エッジ(条件付きエッジを含む)はその状態に基づいて次に実行されるノードを決定する
- チェックポイントと永続化:差し替え可能なチェックポインタ(開発用のインメモリセーバー、または本番用のPostgresなどのデータベースベースのもの)が各ステップ後にグラフの状態をスレッドIDに紐づけて保存し、実行を中断した地点から正確に再開できるようにする
- ヒューマン・イン・ザ・ループ:
interrupt()関数はノード内で実行を一時停止し、呼び出し元のコードに制御を戻す。Command(resume=...)で再開すると、同じグラフの実行がまさにその地点から続行される — これがLangGraphが状態を失うことなく承認ステップを実装する方法である - マルチエージェントおよび階層型グラフ:ノード自体がコンパイル済みのサブグラフを呼び出せるため、LangGraphは同じプリミティブでシングルエージェント、マルチエージェント、階層型(スーパーバイザー+ワーカー)アーキテクチャをサポートする
- LangGraph Studio:実行中のグラフを検査・ステップ実行するためのオプションの視覚的ツールで、コアライブラリとは別に提供される
from typing_extensions import TypedDict
from langgraph.graph import StateGraph, START, END
from langgraph.checkpoint.memory import MemorySaver
class State(TypedDict):
topic: str
draft: str
def write_draft(state: State) -> dict:
return {"draft": f"Draft about {state['topic']}"}
def review_draft(state: State) -> dict:
return {"draft": state["draft"] + " (reviewed)"}
builder = StateGraph(State)
builder.add_node("write", write_draft)
builder.add_node("review", review_draft)
builder.add_edge(START, "write")
builder.add_edge("write", "review")
builder.add_edge("review", END)
graph = builder.compile(checkpointer=MemorySaver())
result = graph.invoke(
{"topic": "local LLMs"},
config={"configurable": {"thread_id": "1"}},
)
print(result["draft"])LangGraphの料金はいくらか
LangGraphライブラリ自体はMITライセンスの下で完全に無料であり、LangGraphエージェントの本番ホスティングが有料の従量課金追加機能です。 LangChain Inc.は、セルフホスト・商用利用・改変のいずれであっても、オープンソースライブラリに対して料金を請求しません。デプロイの収益はLangSmithプランから得られており、これはPromptQuorumのLangChainレビューで扱った別のLangSmithオブザーバビリティ/トレーシング階層を販売しているのと同じ企業製品です。
- LangGraph(ライブラリ):Python・JavaScript/TypeScript向けにMITライセンスの下で永久無料。セルフホストでも任意のアプリケーションへの組み込みでも可
- 自分のエージェントをセルフホストする:コンパイル済みのLangGraphグラフを自前のチェックポインタ(例:Postgres)とともに自分のサーバーで、LangChain Inc.への費用ゼロで実行可能 — 自主管理の本番利用にライセンス料はかからない
- LangSmith Developer階層:1シートあたり月額0ドル、シート数1、月間最大5,000ベーストレース、以降は従量課金 — マネージドデプロイは含まれない
- LangSmith Plus階層:1シートあたり月額39ドル、シート数無制限、月間最大10,000ベーストレースを含み、無料の小規模サーバーレスLangGraphデプロイ1件と、従量課金のDeployment・Engineおよび関連インフラへのアクセスを含む
- LangSmith Enterprise:個別見積もり。セルフホスト/ハイブリッドデプロイオプションとカスタムSLAを追加
- 含まれる範囲を超えるデプロイ利用は、トレース利用とは別に、コンピュートはLCU(1 LCU = 1.50ドル)、データベース利用はLSU(1 LSU = 1.00ドル)で、vCPU時間およびGiB時間単位で計測課金される
- 2025年まで「LangGraph Platform」として販売されていたものは、現在LangSmith Deploymentとして請求される — 独立したLangGraph Platformの価格表は存在せず、予算計画の対象はLangSmithプラン内の一項目となる
階層 | 価格 | 最適な対象 |
|---|---|---|
| LangGraphライブラリ | 無料(MITライセンス) | 全員 — セルフホスト、無料 |
| LangSmith Developer | $0/シート/月、5Kトレース | 個人開発者、プロトタイピング |
| LangSmith Plus | $39/シート/月、+従量課金 | ホスティングが必要なチーム |
| LangSmith Enterprise | 個別見積もり | セルフホスト/ハイブリッド、コンプライアンス |
料金は2026年9月時点でLangChainの公式料金ページに基づき検証済みで、世界的に米ドルで請求されます。同ページは地域別の料金を表示していないため、SaaS階層や計測課金レートは大きな告知なく変更されることがあるので、予算策定前に最新ページを確認してください。
LangGraphのインストールと始め方
LangGraphのインストールはpipまたはnpmコマンド1つで完了します — オープンソースライブラリ自体にアカウント、ライセンスキー、サーバーは不要です。 LangSmithを通じたマネージドデプロイはオプトインであり、他者向けにエージェントをホストしたい場合にのみ必要になります。
- 1パッケージをインストールする:
pip install -U langgraph(Python)またはnpm install @langchain/langgraph(JavaScript/TypeScript)。 - 2モデルプロバイダーのAPIキーを環境変数として設定する(例:
OPENAI_API_KEY)— LangGraph自体はモデルアクセスを提供・仲介しない。選択したモデルはノード内から呼び出す。 - 3状態スキーマ(
TypedDictなど)を定義し、それからStateGraphを構築し、add_nodeでノードを登録し、add_edgeまたは条件付きエッジで接続する。 - 4
.compile()でグラフをコンパイルし、checkpointerを渡す(開発用にはインメモリのMemorySaver、本番用にはデータベースベースのもの)ことで、ステップやプロセス再起動をまたいで状態が永続する。 - 5継続前に人間の判断が必要なノードで
interrupt()を使用し、同じスレッドIDに対するCommand(resume=...)で一時停止した実行を再開する。 - 6公式LangGraphドキュメントを読み、GitHubリポジトリで最新のAPIリファレンスとJavaScript/TypeScriptのクイックスタートを確認する。
- 7ローカル実行ではなく本番ホスティングが必要になったら、任意でLangSmith Deploymentにデプロイするか、コンパイル済みのグラフを自前のAPIサーバーの背後でセルフホストする。
LangGraphの利用にLangChain Inc.のアカウントは必要ですか。
いいえ。LangGraphライブラリはアカウントなしでインストール・実行でき、モデルプロバイダーのAPIキーは自分で用意します。アカウントが必要になるのは、トレーシングやマネージドデプロイのためにLangSmithを利用する場合のみです。
LangGraphのインストールにLangChainは必要ですか。
いいえ。LangGraphは独自パッケージとして提供されており、コアパッケージlangchainなしでインストール・利用できます。ただし多くのチームは、LangGraph上で動作するLangChainのcreate_agent抽象化をより高レベルな出発点として利用しています。
LangGraphはどんな人に向いているか
LangGraphは、状態・リトライ・人間の承認に対する明示的な制御を必要とする本番エージェントを構築するチームに向いています — すべてのエージェントがグラフを必要とするわけではありません。 分岐や永続化を必要としない、シンプルで直線的なツール呼び出しエージェントには向いていません。
LangGraphを使うべきでないのはどんな場合か
リトライ・分岐・一時停止をまたいだ状態の永続化が不要な、シンプルで直線的なワークフローにはLangGraphを避けましょう — グラフの抽象化は、直線的なスクリプトには不要なオーバーヘッドを追加します。 別のツールが優れている具体的な状況をいくつか挙げます。
- 常に同じ固定のステップ列を一度実行して結果を返すだけのワークフロー — 単純な関数呼び出しチェーンやLangChainの
create_agentのほうが少ないコードでこれをカバーできる - 明示的なノードとエッジで考えるのではなく、ペルソナ・目標・委任されたサブタスクを持つ名前付きエージェントというロールベースの考え方を求めるチーム — CrewAIはこの抽象化を中心に設計されている
- まだLangChainエコシステムに投資しておらず、可能な限り小さな依存関係を求め、状態とリトライを手動で管理することに抵抗がないチーム
- 明示的な制御フローグラフではなく、マルチエージェントの会話パターン(エージェント同士がチャットループで互いの出力を議論・レビューする)が主な要件であるプロジェクト — AutoGenはこのパターンを中心に構築されている
- ワークフローに実際にサイクル、条件分岐、人間の入力を待つ一時停止の必要があり、タスク途中の再起動に耐える必要がある場合は、代わりにLangGraphを使う
LangGraph vs. 代替ツール
LangGraphは他のエージェント・オーケストレーション・フレームワークと競合しており、それぞれがエージェントの構造化方法について異なる考え方を中心に構築されています。
ツール | 基本モデル | ライセンス | 運営元 | 最適な対象 |
|---|---|---|---|---|
| LangGraph | 明示的な状態グラフ | MIT | LangChain Inc.(VC出資) | ステートフルな本番エージェント |
| LangChain | Chains + create_agent | MIT | LangChain Inc.(VC出資) | 汎用LLMアプリケーション |
| CrewAI | ロールベースのエージェントチーム | MIT | CrewAI Inc.(VC出資) | 名前付きロールのマルチエージェントチーム |
| AutoGen | マルチエージェント会話 | MIT / CC-BY | Microsoft Research | チャットループ型のエージェントパターン |
| Semantic Kernel | プラグイン + プランナー | MIT | Microsoft | .NETファーストの企業アプリ |
LangGraph評価時によくある誤解
これらの誤解は、LangGraphをLangChainやLangGraph Platformと混同することや、よりシンプルなツールで十分な場面でグラフに頼ってしまうことから生じます。
よくある質問
LangGraphは無料で使えますか。
はい。LangGraphライブラリはMITライセンスの下でオープンソースであり、商用製品を含むあらゆる用途に無料で、利用制限もなく、本番環境で自身のエージェントをセルフホストするためのライセンス料もかかりません。
LangGraphは誰が開発しましたか。
LangGraphは、Harrison Chaseが創業した、LangChainの背後にいるベンチャー出資企業LangChain Inc.が開発しました。LangChain内の実験的なエージェントモジュールとして始まり、2024年1月に独立したパッケージとして公開されました。
LangGraphとLangChainの違いは何ですか。
LangChainは、チェーン、プロンプト、より高レベルなcreate_agent抽象化のための一般的なフレームワークを提供します。LangGraphは、create_agent自体がその上で動作する、より低レベルなグラフベースのランタイムです — create_agentが公開しない明示的な状態、サイクル、ヒューマン・イン・ザ・ループ制御が必要な場合は、LangGraphを直接利用してください。
LangGraph Platformはどうなりましたか。
LangGraph Platformは、2025年5月の一般提供開始から2025年10月まで使われていた、LangChain Inc.のホスト型エージェントデプロイ製品の名称でした。その後LangSmith製品ファミリーに統合され、独自の価格表を持つ独立ブランドのプラットフォームとしてではなく、有料LangSmithプランの従量課金機能であるLangSmith Deploymentとして販売されています。
本番環境でLangGraphエージェントをホストする費用はどれくらいですか。
LangSmith Plus階層(1シートあたり月額39ドル)には無料の小規模サーバーレスデプロイが1件含まれます。それを超える利用は、コンピュートはLCU(1 LCU = 1.50ドル)、データベース利用はLSU(1 LSU = 1.00ドル)として、vCPU時間・GiB時間単位で別途計測課金されます。Enterprise料金は個別見積もりです。
マネージドデプロイに料金を払う代わりに、LangGraphエージェントをセルフホストできますか。
はい。LangGraphはMITライセンスであるため、グラフをコンパイルし、自分のチェックポインタ(自主管理のPostgresデータベースなど)を選択し、自前のAPIサーバーやインフラの背後でライセンス費用なしに実行できます — LangSmithによるマネージドデプロイはオプションの利便性であり、必須ではありません。
LangGraphにおけるチェックポインタとは何ですか。
チェックポインタは、各ステップ後にグラフの状態をスレッドIDに紐づけて保存する差し替え可能なコンポーネントです。開発・テストではインメモリの MemorySaver が一般的で、本番デプロイでは通常、プロセス再起動後に実行を再開できるようデータベースベースのチェックポインタが使用されます。
LangGraphのヒューマン・イン・ザ・ループはどのように機能しますか。
ノード内でinterrupt()を呼び出すと、その時点でグラフの実行が一時停止し、状態がすでにチェックポイント済みの状態で呼び出し元コードに制御が戻ります。同じスレッドIDに対してCommand(resume=...)呼び出しで再開すると、一時停止した正確な地点から実行が続行されます。
LangGraphのGitHubスター数はどれくらいですか。
コアリポジトリlangchain-ai/langgraphは41,000以上のGitHubスターを獲得しています。これはコアのLangChainリポジトリ(140,000以上)より少なく、LangGraphが汎用フレームワークというよりも、より専門的で低レベルなライブラリであることを反映しています。
マルチエージェントシステムにはLangGraphとCrewAIのどちらが優れていますか。
どちらが厳密に優れているというわけではなく、マルチエージェントシステムのモデル化の方法が異なります。LangGraphはノード単位で制御する明示的な状態グラフを公開しており、きめ細かな制御や人間の承認ステップを必要とするチームに適しています。CrewAIは、目標と委任タスクを持つ名前付きエージェントというロールベースの抽象化を提供しており、低レベルな制御が少なくても構わないチームにとってより素早くセットアップできます。
