説明

Claudeシリーズモデルは、公式のネイティブインターフェースを介した呼び出しをサポートしています。使用する前に、anthropicの依存関係をインストールまたはアップグレードしてください。
pip install -U anthropic
Claude以外のモデルは、OpenAIのインターフェース形式で呼び出してください。

モデル情報

モデル名Claude Opus 4Claude Sonnet 4Claude Sonnet 3.7Claude Sonnet 3.5Claude Haiku 3.5Claude Opus 3Claude Haiku 3
拡張思考のサポートはいはいはいいいえいいえいいえいいえ
コンテキストウィンドウサイズ200K200K200K200K200K200K200K
最大出力長32000トークン64000トークン64000トークン8192トークン8192トークン4096トークン4096トークン
トレーニングデータカットオフ2025年3月2025年3月2024年11月2024年4月2024年7月2023年8月2023年8月
  1. 3.5以上のモデルの場合、4096トークンを超える出力を必要とする場合は、上記の表の「最長出力長」を参照して、明確な「max_tokens」値を渡してください。
  2. Sonnet 3.7の場合、リクエストボディにextra_headers={"anthropic-beta": "output-128k-2025-02-19"}を渡すことで、最大出力を64Kから128Kに拡張できます。以下の「ストリーミング128K」呼び出しを参照するか、Claude公式のベータヘッダーの説明を参照してください。

Claude 4 新機能

新しい拒否停止理由 (Refusal Stop Reason)

Claude 4モデルは、安全上の理由でモデルがコンテンツの生成を拒否した場合に、新しいrefusal停止理由を導入しました。
{
  "id": "msg_014XEDjypDjFzgKVWdFUXxZP",
  "type": "message",
  "role": "assistant",
  "model": "claude-sonnet-4-20250514",
  "content": [{"type": "text", "text": "喜んでお手伝いさせていただきます。"}],
  "stop_reason": "refusal",
  "stop_sequence": null,
  "usage": {
    "input_tokens": 564,
    "cache_creation_input_tokens": 0,
    "cache_read_input_tokens": 0,
    "output_tokens": 22
  }
}
Claude 4に移行する際は、refusal停止理由を処理するようにアプリケーションを更新する必要があります。

拡張思考 (Extended Thinking)

拡張思考を有効にすると、Claude 4モデルのMessages APIは、Claudeの完全な思考プロセスの要約を返します。要約思考は、拡張思考のすべてのインテリジェントな利点を提供しながら、悪用を防ぎます。 APIはClaude 3.7と4モデル間で一貫していますが、拡張思考のストリーミング応答は「チャンク」伝送モードで返される可能性があり、ストリーミングイベント間に遅延が発生する可能性があります。 要約は、リクエストで指定したモデルとは異なるモデルによって処理されます。思考モデルは要約出力を表示しません。

交互思考 (Interleaved Thinking)

Claude 4モデルは、ツール使用と拡張思考を交互に行うことをサポートしており、ツール使用と応答が通常のメッセージと混在する、より自然な会話を可能にします。 交互思考は現在ベータ段階です。交互思考を有効にするには、APIリクエストにテストヘッダーinterleaved-thinking-2025-05-14を追加します。
extra_headers={
    "anthropic-beta": "interleaved-thinking-2025-05-14"
}
エンドポイント(Endpoint): POST /v1/messages

呼び出し

curl https://aihubmix.com/v1/messages \
     --header "x-api-key: $ANTHROPIC_API_KEY" \ # AiHubMixで生成したキーに置き換えてください
     --header "anthropic-version: 2023-06-01" \
     --header "content-type: application/json" \
     --data \
'{
    "model": "claude-3-5-sonnet-20241022",
    "max_tokens": 1024,
    "messages": [
        {"role": "user", "content": "Hello, world"}
    ]
}'

Body リクエスト構造

{
  "model": "claude-3-5-sonnet-20241022",
  "max_tokens": 1024,
  "messages": [
    {
      "role": "user",
      "content": "What is the meaning of life?"
    }
  ]
}

リクエストパラメータ

名前位置タイプ必須説明
x-api-keyheaderstringいいえBearer AIHUBMIX_API_KEY
Content-Typeheaderstringいいえなし
bodybodyobjectいいえなし
» modelbodystringはいなし
» messagesbody[object]はいなし
»» rolebodystringいいえなし
»» contentbodystringはいなし
» max_tokensbodynumberはいなし

戻り値の例

200 Response
{
  "id": "msg_013Uf6CwwyjSe35n3yVaPbLM",
  "type": "message",
  "role": "assistant",
  "model": "claude-3-5-sonnet-20241022",
  "content": [
    {
      "type": "text",
      "text": "それは人類の最も永続的で複雑な哲学的問いの一つです!普遍的な答えはありませんが、私はその複雑さを認識しながら、そのような問いを思慮深く探求することを目指しています。私は意味のある会話をし、できる限り助けることに集中しようとします。あなたにとって人生の意味とは何ですか?"
    }
  ],
  "stop_reason": "end_turn",
  "stop_sequence": null,
  "usage": {
    "input_tokens": 14,
    "cache_creation_input_tokens": 0,
    "cache_read_input_tokens": 0,
    "output_tokens": 61
  }
}

戻り値の結果

状態码状態码含义説明データモデル
200OKなしインライン

Claude 4への移行

Claude 3.7からClaude 4モデルに移行する場合は、以下の変更点に注意してください。

モデル名の更新

# Claude 3.7から
model="claude-3-7-sonnet-20250219"

# Claude 4へ移行
model="claude-sonnet-4-20250514"  # または "claude-opus-4-20250514"

新しい停止理由の処理

新しいrefusal停止理由を処理するようにアプリケーションを更新してください。
if response.stop_reason == "refusal":
    print("Claudeはコンテンツの生成を拒否しました")
elif response.stop_reason == "end_turn":
    print("正常に完了しました")

サポートされていない機能の削除

  • トークン効率の良いツール使用:Claude Sonnet 3.7でのみ利用可能で、Claude 4ではサポートされていません。
  • 拡張出力output-128k-2025-02-19テストヘッダーはClaude Sonnet 3.7でのみ利用可能です。
Claude Sonnet 3.7から移行する場合は、これらのテストヘッダーをリクエストから削除することをお勧めします。
# これらのヘッダーを削除(存在する場合)
# "token-efficient-tools-2025-02-19"
# "output-128k-2025-02-19"

アプリケーションでの使用(Lobe-Chatを例に)

  • 設定ページに入り、モデルプロバイダーClaudeを選択します。
  • APIキーには当サイトのキーを入力します。
  • インターフェースプロキシアドレスには、以下のURLを直接入力します。
https://aihubmix.com
  • 「クライアントリクエストモードを使用」をオンにすることをお勧めします。
  • 最後に、モデルリストに自分で使用したいモデルを追加します(当サイトの設定ページからモデル名をコピー&ペーストすることをお勧めします)。 画像 画像

Claude テキスト編集ツール

Claudeは、Anthropicが定義したテキスト編集ツールを使用してテキストファイルを表示および変更でき、コードやその他のテキストドキュメントのデバッグ、修正、改善に役立ちます。これにより、Claudeはファイルと直接対話し、提案だけでなく実際の操作支援を提供できます。

テキスト編集ツールを使用する前の準備

互換性のあるモデルを選択 Anthropicのテキスト編集ツールは、以下のClaudeモデルをサポートしています。
  • Claude 4 シリーズモデル (claude-opus-4-20250514, claude-sonnet-4-20250514): text_editor_20250429
  • Claude 3.7 Sonnet (claude-3-7-sonnet-20250219): text_editor_20250124
  • Claude 3.5 Sonnet (claude-3-5-sonnet-20241022): text_editor_20241022
Claude 4モデルは新しいテキスト編集ツールを使用しており、古いバージョンとは互換性がありません。正しいツールタイプと名前を使用していることを確認してください。

モデルに対応するツール設定

モデルバージョンツールタイプツール名サポートされる機能
Claude 4 (Opus/Sonnet)text_editor_20250429str_replace_based_edit_toolview, str_replace, create
Claude 3.7 Sonnettext_editor_20250124str_replace_editorview, str_replace, create, undo_edit
Claude 3.5 Sonnettext_editor_20241022str_replace_editorview, str_replace, create, undo_edit
重要な変更点: Claude 4モデルはundo_editコマンドをサポートしなくなりました。コードからこの機能への依存を削除してください。

使用シナリオの評価

以下は、テキスト編集ツールを使用する典型的なシナリオです。
  • コードデバッグ:構文エラーから論理的な問題まで、コードの問題を特定して修正するのに役立ちます。
  • コードリファクタリング:ターゲットを絞った編集により、コードの構造、可読性、パフォーマンスを向上させます。
  • ドキュメント生成:コードベースにドキュメント文字列、コメント、またはREADMEファイルを追加します。
  • テスト作成:実装の理解に基づいて単体テストを作成します。

テキスト編集ツールの使用

Messages APIを介してClaudeにテキスト編集ツール(str_replace_editorという名前)を提供します。 anthropicパッケージをインストールする必要があります。
pip install anthropic
呼び出し例:
import anthropic

client = anthropic.Anthropic(
    api_key="sk-***", # AiHubMixで生成したキーに置き換えてください
    base_url="https://aihubmix.com"
)

response = client.messages.create(
    model="claude-sonnet-4-20250514",  # または claude-opus-4-20250514
    max_tokens=1024,
    tools=[
        {
            "type": "text_editor_20250429",
            "name": "str_replace_based_edit_tool"
        }
    ],
    messages=[
        {
            "role": "user", 
            "content": "primes.pyファイルに構文エラーがあります。修正を手伝っていただけますか?"
        }
    ]
)

print("応答コンテンツ:")
for message in response.content:
    print(message.text)

Claude 4への移行(テキスト編集ツール)

Claude 3.7 SonnetからClaude 4モデルに移行する場合は、以下の変更点に注意してください。

ツール設定の更新

python
# Claude 3.7 Sonnet
tools=[
    {
        "type": "text_editor_20250124",
        "name": "str_replace_editor"
    }
]

# Claude 4 (Opus/Sonnet)
tools=[
    {
        "type": "text_editor_20250429",
        "name": "str_replace_based_edit_tool"
    }
]

サポートされていない機能の削除

  • undo_editコマンド:Claude 4モデルは編集の取り消し機能をサポートしなくなりました。
  • undo_editに依存するロジックはコードから削除してください。
戻り値の例:
{
  "id": "msg_bdrk_012xyNaFCQg4zsVcTk5VkDAe",
  "type": "message",
  "role": "assistant",
  "content": [
    {
      "type": "text",
      "text": "primes.pyファイルの構文エラーを修正するお手伝いをさせていただきます。まず、ファイルを確認して問題点を特定させてください。"
    },
    {
      "type": "tool_use",
      "text": "",
      "id": "toolu_bdrk_01P6jQG6suDSsDjzugqGVHWC",
      "name": "str_replace_based_edit_tool",
      "input": {
        "command": "view",
        "path": "/repo/primes.py"
      }
    }
  ],
  "model": "claude-sonnet-4-20250514",
  "stop_reason": "tool_use",
  "usage": {
    "input_tokens": 1042,
    "output_tokens": 115
  }
}