MENU

LangChain vs LangGraph|2026年版AIアプリ開発の選び方

この記事を読むとわかること
  • LangChainとLangGraphの違い
  • どちらを選ぶべきかの判断基準
  • 2026年の推奨技術スタック
  • 今すぐ始められるおすすめリポジトリ4選
目次

「どっちを使えばいいの?」という悩み

生成AIを使ったアプリを作りたい。ChatGPTみたいなチャットボットや、自動で文章を生成するツールを自分で作ってみたい。

そう思ってPythonで調べると、必ず出てくるのが「LangChain」と「LangGraph」という2つのライブラリ。

でも、両方ともAIアプリを作るためのツールらしい。一体どっちを使えばいいの?

結論から言うと、2026年の今、新規で作るなら「LangGraph」を選ぶのが正解です。

この記事では、LangChainLangGraphの違いを「工場のベルトコンベア」と「チームでの仕事」というイメージで説明します。専門用語も全部噛み砕いて解説するので、安心して読み進めてください。


LangChainとは何か?工場のベルトコンベアをイメージしよう

LangChainは、AIに複数の処理をさせるときに使うPythonライブラリです。

「Chain(チェーン) 」って何?

Chain(チェーン) とは、処理を順番に「一本道」でつなげたものです。
入力→加工→出力と、ベルトコンベアのように流れていきます。

イメージしてください。
工場のベルトコンベアに材料を乗せると、

  1. まず形を整える機械を通り
  2. 次に色を塗る機械を通り
  3. 最後に検品されて完成品が出てくる

LangChainも同じです。
ユーザーの質問を入れると、

  1. まずプロンプト(AIへの指示)を作り
  2. 次にAI(LLM)が回答を生成し
  3. 最後に出力を整形して返す
【LangChainの処理フロー】
入力 → [プロンプト作成] → [AI回答生成] → [出力整形] → 完了
        ↓               ↓               ↓
        一方通行で流れていく(戻れない)

LangChainが得意なこと

  • シンプルな処理: 翻訳、要約、フォーマット変換など
  • 一発で終わる作業: 「この文章を英語にして」のような単純なタスク
  • 学習コスト: 比較的簡単。数行で動くものが作れる

LangChainの限界

ただし、途中でやり直しができない

AIが間違った回答を出しても、ベルトコンベアはそのまま流れていきます。「ちょっと待って、もう一回」ができないんです。

これが、現実のAIアプリ開発で問題になります。


LangGraphとは何か?チームでの仕事をイメージしよう

LangGraphは、LangChainの「一方通行」を解決するために生まれたライブラリです。

「Graph(グラフ) 」って何?

Graph(グラフ) とは、処理を「自由に」つなげる構造のこと。戻ったり、分岐したりできます。

ベルトコンベアではなく、オフィスでのチーム作業をイメージしてください。

  1. 担当者Aが書類を作る
  2. 担当者Bがチェックする
  3. ダメなら担当者Aに差し戻す
  4. OKなら上司に提出
【LangGraphの処理フロー】
入力 → [担当者A: 作成] → [担当者B: チェック]
                ↑                    ↓
        (不合格なら戻る) ←← [条件分岐] →→ 完了

この「戻る」「分岐する」ができるのが、LangGraphの最大の特徴です。

LangGraphの専門用語を噛み砕く

LangGraphを理解するには、4つの用語を押さえればOKです。

専門用語意味例えるなら
State(ステート)今の状態を記録する「メモ帳」進捗管理シート
Node(ノード)各処理の「担当者」チームメンバー
Edge(エッジ)ノード同士を「つなぐ線」仕事の流れ
Human-in-the-loop人間が途中で確認・修正できる仕組み上司の承認

State(ステート) は特に重要です。LangChainは「ステートレス」(状態を覚えない、毎回「初めまして」状態)でしたが、LangGraphは「ステートフル」(状態を覚える、前回の続きから対応できる)です。

Human-in-the-loopとは?

Human-in-the-loop(ヒューマン・イン・ザ・ループ)は、AIが勝手に暴走しないための仕組みです。

AIが「この回答でいいですか?」と人間に確認を求め、人間が「OK」と言うまで先に進まない。これにより、AIが間違った判断をしても、人間がストップをかけられます。

実務では超重要な機能です。例えば、日報を自動生成するAIが「今日の売上は1億円」と書いたとき、人間が「いや、10万円の間違いだろ」と修正できる。これがないと、AIの間違いがそのまま公開されてしまいます。


どっちを選ぶ?判断チャート

比較表

項目LangChainLangGraph
構造のメタファー工場のベルトコンベアオフィスでのチーム作業
基本構造直線的・一方向(A → B → C)循環的・ループ可能(A ⇄ B)
状態管理ステートレス(覚えない)ステートフル(覚える)
やり直しできないできる
人間の介入困難Human-in-the-loop対応
学習コスト低い中程度
向いている用途翻訳、要約、単純なRAG推敲、異常検知、自律型エージェント

ユースケース別の推奨

LangChainが適している場面

  • 領収書データを決まったフォーマットのJSONに変換するだけ
  • 過去の履歴を単純にプロンプトに含めて回答を生成するだけ
  • 「一発で終わる」シンプルなタスク

LangGraphが適している場面

  • AIが「異常」と判断したが、確信度が低い場合に再分析させたい
  • AIが生成した日報に対し、人間が「修正・承認」ボタンを押すまで待機させたい
  • 目標を達成するために、AIが自分でツールを選んで試行錯誤させたい

結論:迷ったらLangGraph

2026年の今、新規でAIアプリを作るなら、LangGraphを選んでおけば間違いない

理由はシンプルです。

  1. 実務では「やり直し」が必要になる
  2. AIを野放しにするのは危険(Human-in-the-loopが必須)
  3. LangChainの機能はLangGraphでも使える

LangChainが不要というわけではありません。LangGraphの中でLangChainの機能を呼び出すこともできます。ただ、設計の出発点としては「グラフ構造」で考えた方が、後々困りません。


実際に手を動かす:記事作成AIの例

LangChain版:書いたら出しっぱなし

# LangChain版(LCEL記法)
# 非常に簡潔だが、やり直しができない

chain = (
    {"topic": RunnablePassthrough()}  # 入力をそのまま流す
    | writer_prompt                    # プロンプトを作成
    | model                            # AIが記事を生成
    | StrOutputParser()                # 文字列として出力
)

result = chain.invoke("IoT導入のメリット")
# → 生成された記事がそのまま出力される(チェックなし)

LCEL(LangChain Expression Language)は、LangChainの新しい書き方です。パイプ(|)で処理をつなげていく、シンプルな記法。

LangGraph版:合格するまでループ

# LangGraph版
# 状態を管理し、合格するまでループする

# 1. 状態(State)の定義
class State(TypedDict):
    content: str   # 生成された記事
    is_ok: bool    # チェック結果

# 2. 各担当者(Node)の定義
def writer(state: State):
    # AIが記事を執筆
    return {"content": "生成された記事内容..."}

def critic(state: State):
    # 別のAIが内容をチェック
    # 100文字以上ならOK、未満ならNG
    check = True if len(state["content"]) > 100 else False
    return {"is_ok": check}

# 3. グラフの構築
builder = StateGraph(State)
builder.add_node("writer", writer)    # 執筆担当
builder.add_node("critic", critic)    # チェック担当

builder.set_entry_point("writer")     # 最初はwriterから
builder.add_edge("writer", "critic")  # writer → critic

# 条件分岐:OKなら終了、NGならwriterに戻る
builder.add_conditional_edges(
    "critic",
    lambda x: END if x["is_ok"] else "writer"
)

graph = builder.compile()

違いが分かるでしょうか?

LangGraph版では、critic(チェック担当)が「NG」を出したら、writer(執筆担当)に差し戻すことができます。納得いくまでループして、品質を担保できるんです。


2026年の推奨技術スタック

AIアプリを本格的に作るなら、以下の3点セットを覚えておいてください。

1. LangGraph:ロジックの本体

AIの「考え方」を定義する部分。今回説明したグラフ構造で、複雑な処理フローを組み立てます。

2. LangGraph Platform:デプロイの新標準

LangGraph Platformは、LangGraphで作ったエージェントをクラウド環境にデプロイするための公式プラットフォームです。以下の機能を標準でサポートしています。

  • 永続化とメモリ管理
  • Human-in-the-loop(人間による承認フロー)
  • 高負荷時のスケーリング
  • 長時間実行タスクのバックグラウンド処理
  • Webhookとスケジュール実行(Cron)

⚠️ LangServeは非推奨になりました

従来のLangServeは現在メンテナンスモードに入っています。LangChain公式は新規プロジェクトにはLangGraph Platformの利用を推奨しています。

  • 既存のLangServeプロジェクトは引き続き動作します
  • バグ修正のみ受け付け、新機能の追加はありません
  • 移行ガイド: LangGraph Platform Migration Guide

FastAPIベースのカスタムAPIを構築したい場合は、agent-service-toolkitを参考に、LangGraphを直接FastAPIに統合することも可能です。

3. LangSmith:可視化・デバッグツール

LangSmith(ラングスミス)は、AIが「中で何を考えてその回答を出したか」を追跡・可視化するツールです。

大規模開発や商用サービスでは、デバッグが詰みます。「なんでこの回答になったの?」を追跡できないと、問題を特定できない。LangSmithを繋いでおけば、GUIでAIの思考プロセスを全部追跡できます。

これが2026年現在の推奨アーキテクチャです。


今すぐ手を動かしたい人へ:おすすめリソース

「説明は分かった。で、具体的に何を見ればいいの?」

そんな人のために、習得順に整理しました。

2025年10月のLangGraph v1.0リリースに伴う重要な変更

以前の langchain/templates パスは廃止されました。これは、数が増えすぎて保守が困難になったことと、「Chain(連鎖)」から「Graph(グラフ)」への設計方針の転換によるものです。現在は以下の新しいリソースが標準となっています。

おすすめリポジトリ4選(2026年最新版)

リポジトリ名カテゴリ主な目的推奨される用途
memory-template公式テンプレート長期記憶(Memory)の実装ユーザーの好みを覚えるエージェントを作りたい時
langgraph-example公式テンプレートデプロイの最小構成LangGraph Platformで最短で公開したい時
agent-service-toolkitインフラ/ツールAPI + UIのフルセット公式クラウドを使わず、自前でサーバーを立てたい時
GPT Researcher応用アプリ自律型のリサーチ実行ネット検索とレポート作成を自動化したい時

公式リソース

リソース名URLこんな人におすすめ
LangGraph公式ドキュメント(v1.0+)langchain-ai.github.io/langgraphまず最初に読むべき「正解」
LangGraph StudioLangGraph Studioコードをグラフで可視化しながら開発したい人
LangMem SDKgithub.com/langchain-ai/langmemエージェントに長期記憶を持たせたい人

各リソースの特徴

1. memory-template(機能の雛形)

LangGraphで「過去の会話を反映させる」ための長期記憶サービスを作るための公式テンプレートです。単なる履歴保存ではなく、会話から重要な事実を抽出・更新するロジックが含まれています。複数のエージェントから参照できる「共通の記憶層」を作りたい場合に非常に参考になります。

具体的なユースケース:

  • ユーザーの好み(「辛いものが苦手」「ですます調が好き」)を覚えて次回以降に反映させたい
  • カスタマーサポートAIで、過去の問い合わせ履歴を踏まえた対応をさせたい
  • 学習アプリで、生徒の苦手分野を記録して出題を最適化したい

使用フロー:

1. memory-templateをクローン
2. メモリスキーマをカスタマイズ(何を覚えさせるか定義)
3. 既存のチャットボットに記憶層として統合
4. LangGraph Platformまたは自前サーバーにデプロイ

2. langgraph-example(デプロイの雛形)

LangGraph公式が提供する、Platformへデプロイするための最小構成です。設定ファイル(langgraph.json)の書き方など、本番環境へ載せるための「作法」が示されています。新しいプロジェクトを公式の推奨環境でクリーンに始めたい場合に最適です。

具体的なユースケース:

  • LangGraph Platformで最短で公開したい(インフラ管理不要)
  • 公式推奨の構成でプロジェクトをスタートしたい
  • チェックポイント、中断・再開の機能を標準で使いたい

使用フロー:

1. langgraph-exampleをフォーク
2. src/agent.py を自分のロジックに書き換え
3. langgraph.json を設定
4. LangGraph Platform にデプロイ(GitHub連携でワンクリック)

3. agent-service-toolkit(自前運用のためのセット)

公式のPlatformを使わず、自前のインフラ(AWSやGCPなど)でエージェントを運用したい人向けのツールキットです。FastAPI(バックエンド)とStreamlit(フロントエンド)が同梱されており、ボタン一つでチャット画面まで立ち上がります。「APIサーバーとして公開したい」「独自のUIでユーザーに使わせたい」という開発ニーズに最も合致しています。

具体的なユースケース:

  • 社内のGCPやAWSでエージェントAPIを運用したい
  • 既存のWebアプリにAIチャット機能をAPIで組み込みたい
  • 公式クラウドの料金体系が合わない、またはデータを外部に出せない

使用フロー:

1. agent-service-toolkitをクローン
2. Docker Composeで開発環境を起動
3. src/agents/ 配下でエージェントロジックを実装
4. FastAPI経由でAPIエンドポイントを公開
5. Streamlit UIまたは自前フロントエンドから呼び出し

4. GPT Researcher(完成されたアプリケーション)

LangGraphを使ったマルチエージェント・アプリケーションの完成形の一つです。複数のエージェントが「計画」「検索」「執筆」「校正」を分担して行い、引用付きの長文レポートを生成します。「LangGraphでこれほど高度なことができるのか」という実例を知りたい時、あるいはそのままリサーチツールとして使いたい時に有用です。

具体的なユースケース:

  • 競合調査や市場分析のレポートを自動生成したい
  • 技術調査を自動化して、エンジニアの時間を節約したい
  • マルチエージェント設計のベストプラクティスを学びたい

使用フロー:

1. gpt-researcherをクローン
2. APIキー(OpenAI、Tavily等)を設定
3. python -m gpt_researcher でCLI実行、または FastAPI UIを起動
4. 調査テーマを入力 → 自動でWeb検索 → レポート生成

結論:どれを選ぶべき?

  • 「LangGraphの基本を学び、公式環境で動かしたい」langgraph-example をベースにしましょう
  • 「特定の機能をAIに覚えさせたい」memory-template の中身を参考にロジックを組み込みましょう
  • 「自社のサーバーでAPIや管理画面まで含めて構築したい」agent-service-toolkit をForkして開発を始めましょう
  • 「すぐに役立つリサーチツールが欲しい / 高度な設計を盗みたい」gpt-researcher を動かしてみましょう

開発環境のセットアップ(2026年版)

現在は以下の方法でプロジェクトを開始します。

# langgraph-cliをインストール
pip install "langgraph-cli[inmem]"

# 開発サーバーを起動(ホットリロード対応)
langgraph dev

# または、LangGraph Studioを使用してGUIで開発

LangGraph Studioは、AIの思考プロセスをグラフで可視化しながら開発できるIDEです。ステップ実行、リアルタイムでの状態編集、タイムトラベルデバッグが可能。現在はApple Silicon版のデスクトップアプリが利用可能で、VS Code拡張も存在します。


まとめ

押さえておくべき3つのポイント

  1. LangChain = ベルトコンベア(一方通行)、LangGraph = チーム作業(戻れる)
  2. 実務では「やり直し」と「人間の確認」が必要 → LangGraphが必須
  3. 本格開発なら LangGraph + LangGraph Platform + LangSmith の3点セット(LangServeは非推奨)

結論

2026年の今、AIアプリ開発を始めるなら、迷ったらLangGraph

LangChainが悪いわけではありません。ただ、設計の出発点として「グラフ構造」で考えた方が、後から「やり直しが必要だった」「人間のチェックが必要だった」となったときに困りません。

最初からLangGraphで設計しておけば、シンプルな一方通行の処理も、複雑なループ処理も、どちらも実現できます。


今日からできること

  1. LangGraph公式チュートリアルを最新版でやり直す
  • Quickstart で基礎を押さえる
  • v1.0以降のドキュメントだけを見る(古い情報は無視)
  1. langgraph-cliをインストールして開発サーバーを動かす
   pip install "langgraph-cli[inmem]"
   langgraph dev
  1. langgraph-exampleをクローンして動かしてみる
  • git clone https://github.com/langchain-ai/langgraph-example
  • State、Node、Edgeの概念を手で覚える
  1. LangGraph Studioで可視化を体験する
  • コードがどうグラフ化されるか視覚的に理解する
  1. 自分のアプリで「やり直しが必要な場面」を洗い出す
  • その場面がLangGraphの出番

参考動画

FastAPIとLangGraph、MCPツールを組み合わせた実践的なエージェント構築の解説動画です。
Human-in-the-loop(承認フロー)の実装方法も学べます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

やまとのアバター やまと DX推進者

元工場・自衛官の社内SEです。
毎日ひたすら開発とブログ記事を書いてます。

コメント

コメントする

目次