

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Anthropic Messages API を使用した推論
<a name="inference-messages-api"></a>

Anthropic Messages API は、Anthropic リクエストおよびレスポンス形式を使用して Claude モデルへのネイティブアクセスを提供します。Messages API は `bedrock-mantle`と `bedrock-runtime`エンドポイントの両方で使用でき、アプリケーションに適した認証と統合スタイルを柔軟に選択できます。


| **Endpoint** | **ベース URL** | **ユースケース** | 
| --- | --- | --- | 
| bedrock-mantle | https://bedrock-mantle.{region}.api.aws/anthropic/v1/messages | 新しいアプリケーションに推奨されます。API キー認証と をサポートします[WorkSpaces (Anthropic 互換)](workspaces.md)。 | 
| bedrock-runtime | https://bedrock-runtime.{region}.amazonaws.com | 既存の AWS SDK 統合と呼び出しログ記録で を使用します。 | 

## サポート対象のリージョン
<a name="inference-messages-api-supported"></a>

Messages API は、 がサポートするすべてのリージョンの`bedrock-mantle`エンドポイントで使用できます `bedrock-mantle` (「」を参照[サポートされているリージョンとエンドポイント](bedrock-mantle.md#bedrock-mantle-supported))。`bedrock-runtime` エンドポイントでは、Claude モデルが利用可能なすべてのリージョンで使用できます。詳細については、「[リージョン別の可用性](models-region-compatibility.md)」を参照してください。

## 前提条件
<a name="inference-messages-api-prereq"></a>

Messages API を使用する前に、以下があることを確認してください。
+ **モデルアクセス** – Amazon Bedrock コンソールで Claude モデルへのアクセスをリクエストします。「[モデルへのアクセスをリクエストする](model-access.md)」を参照してください。
+ **認証** – エンドポイントによって異なります。
  + `bedrock-mantle` – Amazon Bedrock API キー (「」を参照[API キー](api-keys.md)) または AWS SigV4 認証情報を使用します。
  + `bedrock-runtime` – AWS SDK (boto3 など) 経由で AWS SigV4 認証情報を使用します。
+ **Anthropic バージョンヘッダー** – すべてのリクエストには API バージョンが必要です。
  + `bedrock-mantle`: を HTTP ヘッダー`anthropic-version: 2023-06-01`として設定します。
  + `bedrock-runtime`: リクエスト本文`"anthropic_version": "bedrock-2023-05-31"`で を設定します。

## 基本リクエスト
<a name="inference-messages-api-basic"></a>

Claude モデルに基本的なメッセージを送信するには、任意の方法のタブを選択し、ステップに従います。

------
#### [ bedrock-mantle (curl) ]

```
curl -X POST https://bedrock-mantle.us-east-1.api.aws/anthropic/v1/messages \
  -H "x-api-key: $BEDROCK_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic.claude-sonnet-4-6-v1",
    "max_tokens": 1024,
    "messages": [
        {"role": "user", "content": "Explain quantum computing in one sentence."}
    ]
  }'
```

------
#### [ bedrock-runtime (Python) ]

```
import boto3
import json

client = boto3.client("bedrock-runtime", region_name="us-east-1")

response = client.invoke_model(
    modelId="anthropic.claude-sonnet-4-6-v1",
    body=json.dumps({
        "anthropic_version": "bedrock-2023-05-31",
        "max_tokens": 1024,
        "messages": [
            {"role": "user", "content": "Explain quantum computing in one sentence."}
        ]
    })
)

result = json.loads(response["body"].read())
print(result["content"][0]["text"])
```

------
#### [ bedrock-runtime (curl) ]

 AWS CLI を使用してモデルを呼び出します。

```
aws bedrock-runtime invoke-model \
  --model-id anthropic.claude-sonnet-4-6-v1 \
  --body '{
    "anthropic_version": "bedrock-2023-05-31",
    "max_tokens": 1024,
    "messages": [
        {"role": "user", "content": "Explain quantum computing in one sentence."}
    ]
  }' \
  --cli-binary-format raw-in-base64-out \
  output.json
```

------

## ストリームレスポンス
<a name="inference-messages-api-streaming"></a>

生成されたレスポンストークンを段階的に受信するには、任意の方法のタブを選択し、ステップに従います。

------
#### [ bedrock-mantle (curl) ]

```
curl -X POST https://bedrock-mantle.us-east-1.api.aws/anthropic/v1/messages \
  -H "x-api-key: $BEDROCK_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "anthropic.claude-sonnet-4-6-v1",
    "max_tokens": 1024,
    "stream": true,
    "messages": [
        {"role": "user", "content": "Write a short poem about cloud computing."}
    ]
  }'
```

------
#### [ bedrock-runtime (Python) ]

```
import boto3
import json

client = boto3.client("bedrock-runtime", region_name="us-east-1")

response = client.invoke_model_with_response_stream(
    modelId="anthropic.claude-sonnet-4-6-v1",
    body=json.dumps({
        "anthropic_version": "bedrock-2023-05-31",
        "max_tokens": 1024,
        "messages": [
            {"role": "user", "content": "Write a short poem about cloud computing."}
        ]
    })
)

for event in response["body"]:
    chunk = json.loads(event["chunk"]["bytes"])
    if chunk["type"] == "content_block_delta":
        print(chunk["delta"]["text"], end="")
```

------

## サポートされている機能
<a name="inference-messages-api-features"></a>

Messages API は、Claude モデルで次の高度な機能をサポートしています。
+ **システムプロンプト** – `system`パラメータを使用してモデルの動作を設定します。
+ **マルチターン会話** – 交代メッセージ`user`と `assistant`メッセージを渡します。
+ **ツールの使用** – モデルが呼び出すことができるツールを定義します。「[ツールを使用して Amazon Bedrock のモデルレスポンスを完成させる](tool-use.md)」を参照してください。
+ **ビジョン** – `content`配列内のイメージをテキストとともに送信します。
+ **思考の拡張** – chain-of-thoughtの推論を有効にします。「[モデル推論を使用してモデルのレスポンスを強化する](inference-reasoning.md)」を参照してください。
+ **プロンプトキャッシュ** – 頻繁に使用されるコンテキストをキャッシュして、レイテンシーとコストを削減します。

すべてのパラメータと機能を含む、完全な Messages API リクエストとレスポンスの形式については、「」を参照してください[Anthropic Claude Messages API](model-parameters-anthropic-claude-messages.md)。

## トークンのカウント
<a name="inference-messages-api-count-tokens"></a>

リクエストが推論のために送信する前に消費する入力トークンの数をカウントするには、`bedrock-mantle`エンドポイントで Anthropic `count_tokens`パスを使用します。これは、クロスリージョン推論 (CRIS) でのみ起動する Claude モデルなど、リージョン固有のエンドポイント`bedrock-runtime`では利用できない Claude モデルでサポートされている唯一のトークンカウントパスです。詳細と例については、「[bedrock-mantle エンドポイントを使用してトークンをカウントする](count-tokens.md#count-tokens-mantle)」を参照してください。