Source: https://aiprimetech.io/ja/learn/use-claude-api-with-langchain/ [ホーム](/ja/) / [学習](/ja/learn/) / LangChain の ChatAnthropic:インポート、base_url、ストリーミング、ツール、エラー # LangChainのChatAnthropic:インポート、base_url、ストリーミング、ツール、エラー ChatAnthropic 次のパッケージの langchain-anthropic パッケージに含まれる、LangChain の Claude チャットモデルです。公式の Anthropic Python SDK をラップしているため、ゲートウェイに接続するには、引数をひとつ指定するだけです。その引数は base_urlで、ホストのルートに設定します。チェーン、エージェント、ツールのその他の部分はすべてそのまま使えます。 ## インストールとインポート ターミナルコピー ``` pip install -U langchain-anthropic ``` app.pyコピー ``` from langchain_anthropic import ChatAnthropic llm = ChatAnthropic( model="claude-sonnet-5", base_url="https://aiprimetech.io", # host root: the SDK adds /v1/messages api_key="your_gateway_key", # or set ANTHROPIC_API_KEY ) print(llm.invoke("Say hello in one word.").text) ``` なし /v1 の提供先: base_url をここで指定します。内部の Anthropic SDK が末尾に追加するのは /v1/messages です。これは自動で追加されるため、さらに追加すると /v1 結果は /v1/v1/messages および 404 page not found. ## 環境変数から設定する base_url は次の別名です: anthropic_api_url、および api_key は次の別名です: anthropic_api_key。これらを渡さない場合、ChatAnthropic が最初に読み取るのは ANTHROPIC_API_URL で、次に ANTHROPIC_BASE_URLを読み取り、キーの読み取り元は ANTHROPIC_API_KEYです。明示的に指定した引数が常に優先されます。 ターミナルコピー ``` export ANTHROPIC_API_KEY=your_gateway_key export ANTHROPIC_API_URL=https://aiprimetech.io ``` app.pyコピー ``` from langchain_anthropic import ChatAnthropic llm = ChatAnthropic(model="claude-sonnet-5") # picks up the gateway from the environment ``` ## ストリーミング app.pyコピー ``` for chunk in llm.stream("Explain backpressure in two sentences."): print(chunk.text, end="", flush=True) ``` .text は各チャンクのテキストブロックだけを収集するため、モデルが思考ブロックやツール使用ブロックも出力する場合でも、出力を整理された状態に保てます。長い回答にはストリーミングを使ってください。長時間の非ストリーミングリクエストは、タイムアウトの一般的な原因です。 ## ツールと構造化出力 tools.pyコピー ``` from langchain_core.tools import tool @tool def get_time(city: str) -> str: """Return the current local time in a city.""" return "12:00" msg = llm.bind_tools([get_time]).invoke("What time is it in Tokyo?") print(msg.tool_calls) ``` structured.pyコピー ``` from pydantic import BaseModel class Weather(BaseModel): city: str temperature_c: float print(llm.with_structured_output(Weather).invoke("It is 21 degrees in Lisbon today.")) ``` ## 再試行、タイムアウト、max_tokens max_retries デフォルトは2で、Anthropic SDKと同じです。接続エラー、429、5xxレスポンスを再試行します。 timeout (別名: default_request_timeout)の単位は秒です。 max_tokens を未設定にすると、モデルのプロファイルから取得されます。 app.pyコピー ``` llm = ChatAnthropic( model="claude-sonnet-5", base_url="https://aiprimetech.io", max_retries=4, timeout=120, max_tokens=8000, ) ``` バッチ処理では、キーの同時実行数の制限を超えないように並列実行数を制限してください。 llm.batch(inputs, config={"max_concurrency": 3}). ## ChatOpenAIを使う代替方法 コードを ChatOpenAIに統一している場合、ゲートウェイのOpenAI互換エンドポイントでClaudeも利用できます。この経路では /v1 を末尾に付ける必要があり、ChatAnthropicとは逆です。 app.pyコピー ``` from langchain_openai import ChatOpenAI llm = ChatOpenAI(model="claude-sonnet-5", base_url="https://aiprimetech.io/v1", api_key="your_gateway_key") ``` ClaudeにはChatAnthropicを推奨します。プロンプトキャッシュや思考ブロックなどのネイティブ機能を維持できます。 ## トラブルシューティング | 表示される内容 | 原因 | 対処方法 | 404 page not found | /v1 ChatAnthropicの次の設定内: base_url | ホストのルートを使用してください。 https://aiprimetech.io | Model "..." is not supported | キーのグループで提供されていないID、または日付付きの古い名前 | 下の表にある現行のIDを使用してください | AuthenticationError | ANTHROPIC_API_KEY 実行中のプロセスで空になっている、または別のエンドポイント用のキーである | 次の値を渡してください: api_key= を明示的に指定してテストしてください | RateLimitError: Concurrency limit exceeded | 並列呼び出しが多すぎる(batch、async gather) | max_concurrency をバッチ設定内で指定 | APITimeoutError | ストリーミングを使わない長時間の生成 | ストリーミングを使うか、次の値を増やす: timeout | モデルID | 用途 | claude-sonnet-5 | コーディングとエージェント作業の標準モデル:高速、高性能、中程度の価格。 | claude-opus-5-5 | より難しい推論、大規模なリファクタリング、長時間のエージェント実行。 | claude-fable-5-1 | 最も高性能で最も高価。最も難しいタスクに絞って使いましょう。 | claude-haiku-4-5 | 低価格で高速:タイトル、要約、分類、小さな処理。 ## よくある質問 ChatAnthropicをインポートするにはどうすればよいですか? pip install -U langchain-anthropicを実行し、その後from langchain_anthropic import ChatAnthropicでインポートします。 ChatAnthropicのbase_urlには/v1が必要ですか? いいえ。https://aiprimetech.io;などのホストのルートを渡してください。Anthropic SDKが/v1/messagesを追加します。ChatOpenAIは逆で、/v1が必要です。 ChatAnthropicはどの環境変数を読み取りますか? キーにはANTHROPIC_API_KEYを使用します。base_urlが渡されていない場合、エンドポイントにはANTHROPIC_API_URL、次にANTHROPIC_BASE_URLを使用します。 base_urlはanthropic_api_urlと同じですか? はい。base_urlはanthropic_api_urlの別名で、api_keyはanthropic_api_keyの別名です。 数分でClaudeの利用を開始 APIキーを取得 — Anthropicアカウントもウェイトリストへの登録も不要です。[APIキーを取得](/register) AI Prime Techは独立したAPIゲートウェイです。Anthropicとの提携関係はなく、同社の承認を受けておらず、同社の再販業者でもありません。Claudeおよび関連するモデル名は、それぞれの所有者の商標です。 ## Claude APIのその他のガイド [Claude APIキーの取得方法](/ja/learn/how-to-get-a-claude-api-key/)[Claude API の料金を解説](/ja/learn/claude-api-pricing-explained/)[Claude APIを最も安く利用する方法](/ja/learn/cheapest-way-to-use-claude-api/)[Claude APIでCursorを無制限に利用](/learn/use-claude-api-with-cursor/)[Claude Codeへの無制限アクセス](/ja/learn/use-claude-api-with-claude-code/)[Claude APIゲートウェイとAnthropicへの直接接続の比較](/ja/learn/claude-api-vs-anthropic-direct/)[OpenAI互換API経由でClaudeを使う](/ja/learn/openai-compatible-claude-api/)[Claude モデルを解説:Claude Opus、Sonnet、Haiku、Fable のモデル比較 — すべての Claude API モデル、Anthropic のモデル名と料金(2026)](/ja/learn/claude-api-models-compared/)[暗号資産でClaude APIの料金を支払う](/ja/learn/claude-api-with-crypto-payment/)[ウェイティングリストなしでClaude APIを利用](/ja/learn/claude-api-without-waitlist/)[Claudeのトークン使用量を削減する方法](/ja/learn/how-to-reduce-claude-token-usage/)[Claude APIでClineを無制限に利用](/ja/learn/use-claude-api-with-cline/)[Claude APIでRoo Codeを無制限に利用](/ja/learn/use-claude-api-with-roo-code/)[JetBrains IDEでClaudeを無制限に利用](/ja/learn/use-claude-api-with-jetbrains/)[Claude APIでAiderを無制限に使う](/ja/learn/use-claude-api-with-aider/)[VS CodeでClaudeを無制限に利用](/ja/learn/use-claude-api-with-vscode/)[Claude向けのOpenCode設定:opencode.jsonの設定、モデル、よくあるエラー](/ja/learn/use-claude-api-with-opencode/)[ClaudeでHermesエージェントを無制限に実行する](/ja/learn/run-hermes-agent-with-claude-api/)[ClaudeでOpenClawを無制限に実行](/ja/learn/run-openclaw-with-claude-api/)[Anthropic互換APIとは](/ja/learn/anthropic-compatible-api/)[Claude CodeのAPIキー — ANTHROPIC_API_KEY:取得方法、設定方法、代わりにclaude setup-tokenを使うべき場合](/ja/learn/claude-code-api-key-setup/)[Claude Code APIのコスト — 料金と削減方法](/ja/learn/claude-code-api-costs/)[Claude APIエラーを解説:サーバーエラー500、過負荷529、レート制限429、不正なリクエスト400 — それぞれの解決方法](/ja/learn/claude-api-errors-troubleshooting/)[Claude APIクレジットの購入方法 — Claudeクレジットがどの「Claudeアカウント購入」のオファーよりも優れている理由](/ja/learn/buy-claude-api-credits/)[Claudeの無料API:無料のClaude APIキーはあるのか、2026に実際に無料で使えるものは?](/ja/learn/claude-api-free-trial/)[Claude APIとClaude Pro/Maxサブスクリプション — どちらを選ぶべきか](/ja/learn/claude-api-vs-subscription/)[ClaudeでCodex CLIを実行する](/ja/learn/use-claude-api-with-codex/)[Claudeをn8nに接続する](/ja/learn/use-claude-api-with-n8n/)[LiteLLMからClaudeへのルーティング](/ja/learn/use-claude-api-with-litellm/)[Kilo CodeでClaudeを使う](/ja/learn/use-claude-api-with-kilo-code/)[GitHub CopilotにClaudeを導入する](/ja/learn/use-claude-api-with-github-copilot/)[ゲートウェイ経由でZedをClaudeに接続する](/ja/learn/use-claude-api-with-zed/)[Cherry StudioをClaudeに接続](/ja/learn/use-claude-api-with-cherry-studio/)[Anthropic Python SDK:インストール、base_urlの設定、ストリーミング、エラー処理](/ja/learn/anthropic-python-sdk/)[Vercel AI SDKでClaudeを使用:createAnthropicのbaseURL、ストリーミング、問題の修正](/ja/learn/use-claude-api-with-vercel-ai-sdk/)[ClaudeでFactory Droidを実行](/ja/learn/use-claude-api-with-factory-droid/)[Claude Code APIの仕組みを解説](/ja/learn/claude-code-api/)[アプリケーションへのClaude APIの統合](/ja/learn/claude-api-integration/)[Claudeを無制限に利用する方法 — 「Claude Codeのクラック版」が存在しない理由](/ja/learn/get-unlimited-claude-usage/)