3行でいうと
- 公式SDKは、ストリーミング・再試行・エラー処理を最初から持つ。Claudeは7言語、OpenAIは6言語。
- 間に入る部品は役割が違う。LangChainはエージェント、LlamaIndexはデータ検索、Vercel AI SDKはTypeScriptの画面側。
- Anthropicは2024年12月の記事で「まずAPIを直接使う」ことを勧めた。ただし記事に「その後状況が変わった」との注記がある。
この記事は、実際に使って確かめた記録ではありません。この記事は公式の文書を読んでまとめたものです。公式の文書と数字は2026年10月22日に読み直しました。ソフトの版は、毎日のように変わります。
先に結論
- 「AIに文章を送って返事を受け取る」だけなら、公式SDKで足ります。ストリーミング(返事を少しずつ受け取る処理)、再試行、エラー処理を最初から持っています。
- 自社の文書をAIに読ませて答えさせたい(RAGといいます。答える前に関係する資料を探して添える方式)なら、LlamaIndexが候補です。
- 複数社のモデルを切り替えたい、または画面をTypeScriptで作るなら、Vercel AI SDKが候補です。
- AIが道具を呼びながら仕事を進める仕組み(エージェント)を会社をまたいで作るなら、LangChainが候補です。
前提:言葉の整理
- SDKは、ある会社のAIを自分のプログラムから呼ぶための、開発用の部品セットです。電話の回線にあたるAPIを、使いやすく包んだものです。
- フレームワークは、SDKより上の層で、複数の処理を組み合わせる骨組みです。この記事ではLangChain、LlamaIndex、Vercel AI SDKを指します。会社の公式SDKとは別のプロジェクトです。
- ツール呼び出しは、AIが「この関数をこの引数で呼んでほしい」と返し、プログラム側が実行して結果を返す仕組みです。
公式SDKが持っているもの
- Anthropic(Claude):クライアントSDKは7言語(Python、TypeScript、C#、Go、Java、PHP、Ruby)。どれも型の安全性、ストリーミング、再試行、エラー処理を持つと書かれています。道具を呼ぶ往復は、自分で書くか、SDKの「ツールランナー」に任せられます。ただしツールランナーは公式ページで「ベータ版」とされ、人の承認を挟みたいときは自分で書く方法が案内されています。
- OpenAI:公式の「Libraries」ページの言語は6つ(JavaScript/TypeScript、Python、.NET、Java、Go、Ruby)。Rust、Swift、Kotlin、PHPは外部の開発者によるもので、OpenAIは正しさも安全性も確認していないと明記されています。さらに、エージェント向けの「Agents SDK」(PythonとTypeScript)があります。
- エージェント向けの公式部品:OpenAIのAgents SDKは、基本の部品を「エージェント」「ハンドオフ(別のエージェントへ仕事を渡す)」「ガードレール(入出力の検査)」と説明し、追跡、セッション、人の確認も内蔵と書いています。Claude Agent SDKは、Claude Codeと同じ動かし方をPythonまたはTypeScriptのライブラリにしたもので、組み込みの道具、フック、サブエージェント、MCP(外部の道具をつなぐ共通規格)、権限を持つと説明されています。Claude Agent SDKの概要ページの比較表には、Anthropic側で動かしてもらう「Managed Agents」も別の選択肢として並んでいます(この記事では中身を読んでいません)。
Claude Agent SDKには認証の注意があります。公式文書によると、事前の承認なく、第三者がclaude.aiのログインや利用上限を自分の製品として提供することは認められていません。APIキーでの認証を使う、と書かれています。
間に入る部品が持っているもの
| 部品 | 中心の役割(公式文書の説明) | 言語 | ライセンス |
|---|---|---|---|
| LangChain | create_agentでモデル・道具・指示・ミドルウェアからエージェントを作る。モデルの差をそろえる共通の窓口。LangGraph(処理の流れを細かく組む低い層)の上に作られている |
Python(JavaScript版は別にLangChain.js) | MIT |
| LlamaIndex | データの取り込み、索引(ベクトルストア)、質問応答、エージェント、ワークフロー | Python | MIT |
| Vercel AI SDK | 文章や構造化データの生成、ツール呼び出し、チャット画面用の部品。提供元は文書の一覧で23社 | TypeScript | Apache License 2.0 |
ライセンスは、LlamaIndexとVercel AI SDKはGitHubのLICENSEファイルの冒頭で、LangChainはGitHubのページの表示で確かめました。ライセンスの解釈は条文を読むべき話で、個別の判断は専門家に相談してください。
LangChainの文書には、LangGraphの機能(途中で止めて再開できる実行、人の確認、状態の保存)が使えると書かれています。LlamaIndexには、難しい文書(スキャンしたPDFなど)向けのLlamaParseがありますが、利用には別のサービスのAPIキーが必要と書かれていました。Vercel AI SDKはGitHubのREADMEで、Node.js 22以上が必要とされています。
版の数字と、公式文書の短い例
2026年10月22日に、PyPI(Pythonの部品の配布所)の各プロジェクトのページと、npm(JavaScriptの配布所)のレジストリの「最新」の印で確認した版です。10月8日の確認から、llama-index(同じ0.14.25)以外は版が上がっていました。aiのnpmの値は、レジストリの「最新」の印と最新版の記載で7.0.148でした。
| 部品 | 最新の版 | 配布所 |
|---|---|---|
| langchain / langgraph | 1.4.6 / 1.2.16 | PyPI |
| llama-index | 0.14.25 | PyPI |
| openai-agents | 0.24.0 | PyPI |
| ai(Vercel AI SDK) | 7.0.148 | npm |
OpenAI Agents SDKの文書にある、最も短い例です。公式文書の例です。この記事では、実行していません。
from agents import Agent, Runner
agent = Agent(name="Assistant", instructions="You are a helpful assistant")
result = Runner.run_sync(agent, "Write a haiku about recursion in programming.")
print(result.final_output)
「OpenAI互換」で済ませる手の限界
AnthropicはOpenAIのSDKからClaudeを呼べる互換の層を用意しています。公式文書の注意は次のとおりです。
- 主目的はモデルの能力を試して比べることで、長期的・本番向けの解決策とは考えない。
- 関数呼び出しの
strict指定は無視され、JSONが指定の形に従う保証はない。 - プロンプトキャッシュ(同じ前置きの繰り返しを安くする仕組み)は使えない。
- 対応しない項目の多くは、エラーにならず黙って無視される。
見立てです。「黙って無視される」点が要注意です。動いているように見えても、割引や保証が効いていない可能性があります。会社を切り替える共通の窓口を使うときは、各社固有の機能がどこまで通るかを、先に確認したほうが安全です。Vercel AI SDKの文書にも、機能はモデルごとに違い、表は網羅的でないと書かれています。
Anthropicの記事は何と言っているか
Anthropicの「Building effective agents」(2024年12月19日公開)は、うまくいっている実装は複雑なフレームワークより単純で組み合わせやすい型で作られていることが多い、と述べます。フレームワークは始めやすい反面、中のプロンプトと応答を見えにくくしてデバッグを難しくするので、まずAPIを直接使い、使うなら中のコードを理解すること、という内容です。
ただし、記事の冒頭に「ここで述べた道具の状況は2024年12月以降に変わった」との注記があり、最近の考え方としてAnthropicのManaged Agentsの資料を案内しています。考え方は参考になりますが、具体的な道具の状況は古い、と読むのが安全です。また一社の見解で、LangChainなど他の側の見解ではありません。
選び方の目安
見立てです。公式資料から、僕らは次のように整理しました。
| やりたいこと | 最初の候補 |
|---|---|
| 1社のAIに質問する、要約する | 公式SDKだけ |
| 1社のAIで道具を呼ぶ仕事を作る | 公式SDK+その会社のエージェント向けSDK |
| 自社の文書を検索して答える | LlamaIndex、または検索部分だけ自作 |
| 複数社のモデルを切り替える | Vercel AI SDK(TypeScript)かLangChain |
| 画面で返事を少しずつ表示する | Vercel AI SDK |
迷ったときは、まず公式SDKで一番小さく作り、手書きが増えて困った所だけ部品を足し、足した部品が隠している動きを1回は中身まで読む、という順がよいと僕らは考えます。
よくあるつまずき
- 版の更新で動かなくなる。版番号は大きく動きます。古い解説のコードはそのまま動かないことがあるので、版を固定して使います。
- 共通の窓口に頼りすぎる。会社をまたぐ窓口を使っても、モデルの能力は同じになりません。Anthropicの互換性の文書にも、OpenAI向けに調整したプロンプトはClaude向けに見直すよう書かれています。
- ライセンスと規約を混同する。MITやApache 2.0は部品のコードの条件です。呼ぶ先の会社の規約(Claude Agent SDKはAnthropicの商用利用規約の下にあります)は別に確認が必要です。
気をつけること
- この記事は、実際に使って確かめた記録ではありません。公式の文書とGitHub、PyPI、npmの表記に基づきます。
- 文書のページに版やライセンスが書かれていないものがありました。そのためライセンスはLICENSEファイルの原文かGitHubの表示、版は配布所のページで確かめました。PyPIの各プロジェクトのページのライセンス欄は、langchain、langgraph、llama-index、openai-agentsとも「MIT」でした。版や「対応する会社の数」は確認した日のものです。
- Anthropicの記事は2024年12月のもので、注記のとおり状況が変わっています。
- 「どの部品が優れている」とは、公式資料からは言えません。この記事は役割と制約を並べたものです。
- LlamaIndexやLlamaParseの料金は確認していません。
出典
- SDKs, CLI, and libraries(Claude Platform Docs、Anthropic、2026年10月22日確認)
- OpenAI SDK compatibility(Claude Platform Docs、Anthropic、2026年10月22日確認)
- Tool runner (SDK)(Claude Platform Docs、Anthropic、2026年10月22日確認)
- Agent SDK overview(Claude Code Docs、Anthropic、2026年10月22日確認)
- Building effective agents(Anthropic、2024年12月19日公開、2026年10月22日確認)
- Libraries(OpenAI API、OpenAI、2026年10月22日確認)
- OpenAI Agents SDK(OpenAI、2026年10月22日確認)
- LangChain overview(LangChain Docs、LangChain、2026年10月22日確認)
- langchain-ai/langchain(GitHub、LangChain、2026年10月22日確認)
- LlamaIndex Python framework(LlamaIndex Docs、LlamaIndex、2026年10月22日確認)
- llama_index LICENSE(GitHub、2026年10月22日確認)
- AI SDK Introduction(AI SDK Docs、Vercel、2026年10月22日確認)
- Providers and Models(AI SDK Docs、Vercel、2026年10月22日確認)
- vercel/ai(GitHub、Vercel、2026年10月22日確認)
- vercel/ai LICENSE(GitHub、Vercel、2026年10月22日確認)
- langchain(PyPI、2026年10月22日確認)
- langgraph(PyPI、2026年10月22日確認)
- llama-index(PyPI、2026年10月22日確認)
- openai-agents(PyPI、2026年10月22日確認)
- npm registry(npm、2026年10月22日確認)
更新履歴
- 2026年10月25日 書き方を直しました。
- 前:運営者が使っていないと読める書き方 → いま:「この記事は、実際に使って確かめた記録ではありません」。公式の資料を読んでまとめた記事で、使い心地は書いていない、という意味に直した
