AI・機械学習
上級

LangChain(ラングチェーン)

LLMアプリ開発の定番フレームワーク。プロンプト・モデル・ツール・メモリ・検索を抽象化したコンポーネントを連結(チェーン)し、RAGやエージェントを構築できる。Python/JS対応のエコシステム中核。

0 回閲覧
0 いいね
2026/5/31 更新
関連タグ
LLMフレームワーク
LangChain
エージェント
RAG

概要

LangChainは、LLMアプリ開発の定番フレームワークです。2022年に登場し、プロンプト・モデル・ツール・メモリ・検索(Retriever)といった要素を抽象化したコンポーネントとして提供し、それらを連結(チェーン)してRAGやエージェントを構築できます。LCEL(LangChain Expression Language)により処理を宣言的にパイプ連結でき、Python/JavaScript両対応。数百のLLM・ベクトルDB・外部ツール統合を備え、監視ツールLangSmithやグラフ実行のLangGraphを擁するエコシステムの中核として、LLMアプリ開発のデファクトスタンダードとなっています。

主な特徴・仕組み

  • コンポーネント抽象化: LLM/Retriever/Tool/Memoryを共通IFで扱う
  • LCEL: |演算子で処理を宣言的に連結、ストリーミング対応
  • 豊富な統合: OpenAI/Anthropic/各種ベクトルDB/API
  • エージェント: ツール呼び出しで自律的にタスク遂行
  • LangSmith連携: トレース・評価・監視
  • Python/JS対応: 両言語でほぼ同等のAPI

スペック比較表

項目LangChainLlamaIndexLangGraph
主眼汎用LLMアプリデータ/RAG特化グラフ制御
抽象度高い中低い(明示制御)
エージェント対応対応状態機械で精密
エコシステム最大RAG充実LangChain系

具体例・対応製品

RAGチャットボット、社内ドキュメント検索、ツール連携エージェントなど幅広い用途で使われます。OpenAI・Anthropic・ローカルLLM(Ollama)を切り替えて統合でき、PineconeやChroma等のベクトルDBと組み合わせてRAGを数十行で構築できます。複雑な制御が必要ならLangGraphへ発展させます。

選び方・注意点

抽象度が高く素早く構築できる反面、内部挙動が見えにくく、複雑なエージェント制御ではデバッグが難しくなります。バージョン更新でAPIが変わることがあり、langchain-coreなどパッケージ分割の理解が必要です。精密な状態制御が必要ならLangGraph、データ中心ならLlamaIndexの併用が有効です。

関連用語との違い

LlamaIndexがデータ取り込み・インデックス・RAGに特化するのに対し、LangChainは汎用的なLLMアプリ全般をカバーします。LangGraphはLangChain系で、チェーンより低レベルな状態機械(グラフ)で精密にエージェントを制御する補完的存在です。

よくある質問(FAQ)

Q1: LCELとは何ですか? A: 処理を|で連結する宣言的記法で、ストリーミングや並列実行、フォールバックを簡潔に書けるLangChainの中核機能です。

Q2: LlamaIndexとどちらを使うべき? A: 汎用LLMアプリやエージェントはLangChain、データ取り込み・RAG特化ならLlamaIndexが得意です。併用も一般的です。

Q3: 本番運用に向きますか? A: LangSmithで監視・評価でき本番利用例も多いですが、複雑な制御はLangGraphで明示化するとデバッグ性が上がります。

まとめ

  • LLMアプリ開発のデファクトな汎用フレームワーク
  • LCELでRAG・エージェントを宣言的に構築
  • LangGraph/LangSmithを擁する最大のエコシステム
この記事について
カテゴリーAI・機械学習
難易度上級
作成日2026/4/20