LangChainは、LLM(大規模言語モデル)を活用したアプリケーション開発のための最も広く使われているフレームワークだ。2022年10月にHarrison Chaseが開発を開始し、2026年現在ではPython版で8万以上のGitHubスターを獲得している。
この記事では、LangChainの基本概念からインストール、主要コンポーネントの使い方、実践的なRAGパイプラインの構築まで、入門に必要な情報を網羅する。
LangChainとは——なぜ必要なのか
LLMのAPIを直接呼び出すだけでは、実用的なアプリケーションを構築するのは難しい。外部データの接続、会話履歴の管理、複数のAPIの連携——これらの「配管工事」を効率化するのがLangChainの役割だ。
| 課題 | 直接API呼び出し | LangChain |
|---|---|---|
| 外部データ接続 | 自前で検索→プロンプト構築 | Retriever/Document Loaderで標準化 |
| 会話履歴管理 | 自前でメモリ管理 | Memory モジュールで自動管理 |
| 複数LLMの切り替え | 各APIの仕様に個別対応 | 統一インターフェースで切り替え |
| ツール連携 | 自前で関数呼び出しを実装 | Agent + Tools で標準化 |
LangChainの主要コンポーネント
LangChainは複数のパッケージに分かれている。2026年現在の構成を整理する。
| パッケージ | 役割 | 主な機能 |
|---|---|---|
| langchain-core | 基盤 | LCEL(LangChain Expression Language)、基本型 |
| langchain | 高レベルAPI | Chain、Agent、Memory |
| langchain-community | インテグレーション | 各社LLM/ベクトルDB接続 |
| langchain-openai | OpenAI連携 | GPT-4o/GPT-5.4呼び出し |
| langchain-anthropic | Anthropic連携 | Claude呼び出し |
| langgraph | エージェント構築 | 有向グラフベースのワークフロー |
| langsmith | 監視・評価 | トレーシング、評価、デバッグ |
2025年以降、LangChainはLCEL(LangChain Expression Language)を中心に再設計された。パイプ演算子( | )でコンポーネントを連結する直感的な記法が特徴だ。
LCEL——パイプラインの構築方法
LCEL(LangChain Expression Language)は、LangChainの現在の推奨パターンだ。
| 概念 | 説明 | 例 |
|---|---|---|
| Runnable | 入力→出力を持つ実行単位 | LLM、Retriever、Parser |
| Pipe(パイプ) | Runnableを連結 | prompt → llm → parser |
| RunnableParallel | 並列実行 | 複数の処理を同時実行 |
| RunnableBranch | 条件分岐 | 入力に応じて処理を切り替え |
LCELの最大の利点は、ストリーミング、バッチ処理、非同期実行が自動的にサポートされる点だ。一度パイプラインを定義すれば、.stream()、.batch()、.ainvoke() で実行方法を切り替えられる。
RAGパイプラインの構築
LangChainで最も頻繁に構築されるのがRAG(Retrieval-Augmented Generation)パイプラインだ。
| ステップ | コンポーネント | 役割 |
|---|---|---|
| 1. 文書の読み込み | Document Loader | PDF/Web/DBから文書を取得 |
| 2. テキスト分割 | Text Splitter | 文書をチャンクに分割 |
| 3. Embedding生成 | Embeddings | テキストをベクトルに変換 |
| 4. ベクトル格納 | Vector Store | Pinecone/Chroma等に格納 |
| 5. 検索 | Retriever | 類似文書を検索 |
| 6. 回答生成 | LLM + Prompt | 検索結果を基に回答生成 |
RAGの詳細についてはRAG完全ガイド、より高度な手法はAdvanced RAGテクニックで解説している。
LangGraph——エージェントの構築
LangGraphは、LangChainのエージェント構築用パッケージだ。有向グラフとしてエージェントのワークフローを定義する。
| 概念 | 説明 | 用途 |
|---|---|---|
| State | エージェントの状態を保持 | 会話履歴、中間結果の管理 |
| Node | 処理単位(関数) | LLM呼び出し、ツール実行 |
| Edge | ノード間の遷移 | 条件分岐、ループ |
| Checkpoint | 状態の永続化 | 中断・再開、デバッグ |
LangGraphの最大の強みは「ヒューマン・イン・ザ・ループ」だ。エージェントの処理を途中で一時停止し、人間の確認を挟んでから再開できる。Agentic RAGの構築にも広く利用されており、詳細はAgentic RAG完全ガイドを参照してほしい。
LangChainは「AIアプリ開発の共通言語」になりつつある。まずは簡単なRAGパイプラインから始めて、徐々にエージェントへと発展させていくのが王道のステップだ。あなたが次に作るLLMアプリは、どんな問題を解決するだろうか。
出典・参考
- LangChain公式ドキュメント
- LangGraph公式ドキュメント
- Harrison Chase「LangChain Blog」

