anthropic-api について
anthropic-api は Anthropic の Claude API を呼び出す OpenClaw スキルです。ツール利用、ストリーミング、拡張コンテキストに対応し、Claude モデルでテキスト処理や調査、複数段階のワークフローを構築する開発者向けです。
主な機能
- 01Claude モデルによるテキスト生成
- 02モデル呼び出し用ツールの定義
- 03最大 200K トークンのコンテキスト処理
- 04ストリーミング応答の受信
- 05生成パラメーターの調整
活用シーン
- 01長文ドキュメントの要約
- 02ツール利用によるコード生成
- 03複数段階の調査ワークフロー構築
- 04対話型テキストアプリの構築
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ alphaonedev/ openclaw-graph --skill anthropic-apiインストール後、Claude Code で/anthropic-apiを入力して読み込まれたか確認します。
詳細
anthropic-api
目的
このスキルは Anthropic の Claude API と連携し、ツールの使用や拡張コンテキストが必要なタスクで高度な AI モデルを活用します。これにより、関数呼び出しや長文処理などの複雑なやり取りが可能になります。
使用する場面
大規模なドキュメントの分析、ツールを使ったコード生成、複数ステップのワークフローへの対応など、高度な AI 推論を伴う場面でこのスキルを使用します。調査、自動化、インタラクティブなアプリケーションなど、標準的なモデルでは不十分な場合に最適です。
主な機能
- API 経由で Claude モデル(例:claude-3-haiku、claude-3-sonnet)にアクセスし、テキスト生成や補完を行います。
- ツールの使用をサポートし、JSON で定義されたツールに基づいて AI が外部関数を呼び出せます。
- 最大 200K トークンの拡張コンテキストに対応し、長い入力を処理できます。
- インタラクティブなセッション向けに、リアルタイムのストリーミング応答を提供します。
- temperature(0.0-1.0)や top_p(0-1)などのパラメーターを細かく制御できます。
使用パターン
OpenClaw でこのスキルを使用するには、まず API キーを環境変数として設定します(例:export ANTHROPIC_API_KEY=your_key)。モデルやプロンプトなどのパラメーターを渡して、OpenClaw の execute コマンドからスキルを呼び出します。HTTP ベースで連携する場合は、API エンドポイントに POST リクエストを送信します。必ず認証ヘッダーを含めてください。会話履歴を含む "messages" 配列と、関数定義を含む "tools" を JSON リクエストボディに設定します。
主なコマンド/API
- エンドポイント:POST https://api.anthropic.com/v1/messages
- 認証:ヘッダーに 'Authorization: Bearer $ANTHROPIC_API_KEY' を設定します(セキュリティのため、環境変数を使用してください)。
- 主なパラメーター:リクエストボディに "model"(例:"claude-3-5-sonnet-20241001")、"max_tokens"(例:1024)、"temperature"(例:0.7)、および JSON オブジェクトの配列として "tools"(例:[{"name": "get_weather", "description": "Fetch weather data"}])を含めます。
- CLI の例:テストには curl を使用します:curl -X POST https://api.anthropic.com/v1/messages -H "Authorization: Bearer $ANTHROPIC_API_KEY" -H "Content-Type: application/json" -d '{"model": "claude-3-haiku", "messages": [{"role": "user", "content": "Hello"}]}'
- コードスニペット(Python): import requests response = requests.post('https://api.anthropic.com/v1/messages', headers={'Authorization': f'Bearer {os.environ["ANTHROPIC_API_KEY"]}'}, json={'model': 'claude-3-haiku', 'messages': [{'role': 'user', 'content': 'Summarize this.'}]}) print(response.json())
- 設定形式:OpenClaw では、次のような YAML を使ってスキルの設定から構成します:api_key: $ANTHROPIC_API_KEY, default_model: claude-3-sonnet。
連携に関する注意
OpenClaw では openclaw load anthropic-api を使ってこのスキルを読み込みます。キーをハードコードしないよう、キー用の環境変数(例:ANTHROPIC_API_KEY)を設定してください。ツールと連携する場合は、プロンプト内でツールを JSON 配列として定義し、AI が生成したアクションを処理するためにループ内で応答を処理します。指数バックオフによる再試行ロジックを実装するなどして、アプリケーションがレート制限(例:1 分あたり 10 リクエスト)に対応できるようにしてください。本番環境で使用する前に、サンドボックス環境で連携をテストしてください。
エラー処理
よくあるエラーには、API キーが無効な場合の 401(未認証)があります。$ANTHROPIC_API_KEY が正しく設定されているか確認してください。429(レート制限)が発生した場合は、待機してから遅延を入れて再試行します(例:time.sleep(60))。400(不正なリクエスト)の場合は、特に "messages" の構造を確認し、JSON ペイロードが有効か検証してください。コードでは try-except ブロックを使用します:try: response = requests.post(...) except requests.exceptions.HTTPError as e: print(f"Error: {e.response.status_code} - {e.response.text}"); if e.response.status_code == 429: retry_after = int(e.response.headers.get('Retry-After', 60)); time.sleep(retry_after).
使用例
- テキスト補完タスク:要約を生成するには、OpenClaw で次のコマンドを使用します:openclaw execute anthropic-api --prompt "Summarize the key points of quantum computing" --model claude-3-haiku。これにより POST リクエストが送信され、AI の応答が直接返されます。
- ツール使用例:データを取得するには、ツールを定義して次のようにプロンプトを指定します:openclaw execute anthropic-api --prompt "Get the current weather for New York" --tools '[{"name": "get_weather", "description": "Fetch weather", "parameters": {"location": "string"}}]'。AI はツール呼び出しを返すので、関数を実行して結果を渡すことで処理します。
グラフの関連性
- 関連クラスター:ai-apis
- タグ:ai-apis、api
- 関連スキル:openai-api(AI 機能の比較用)、function-caller(ツール連携の強化用)