Claude Platform Docs
  • メッセージ
  • マネージドエージェント
  • 管理

Search...
⌘K
はじめに
Claudeの紹介クイックスタート
Claudeで構築する
機能の概要Messages APIの使用停止理由とフォールバック拒否とフォールバックフォールバッククレジット
モデルの機能
拡張思考適応型思考エフォートタスク予算(ベータ版)高速モード(リサーチプレビュー)構造化出力引用メッセージのストリーミングバッチ処理検索結果拒否のストリーミング多言語サポート埋め込み
ツール
概要ツール使用の仕組みチュートリアル:ツールを使うエージェントの構築ツールの定義ツール呼び出しの処理並列ツール使用Tool Runner(SDK)厳密なツール使用プロンプトキャッシングを使ったツール使用サーバーツールトラブルシューティングWeb検索ツールWeb取得ツールコード実行ツールアドバイザーツールメモリツールBashツールコンピュータ使用ツールテキストエディタツール
ツールインフラストラクチャ
ツールリファレンスツールコンテキストの管理ツールの組み合わせツール検索プログラムによるツール呼び出しきめ細かいツールストリーミング
コンテキスト管理
コンテキストウィンドウコンパクションコンテキスト編集プロンプトキャッシング会話途中のシステムメッセージオーケストレーションモードの構築キャッシュ診断(ベータ版)トークンカウント
ファイルの操作
Files APIPDFサポート画像とビジョン
スキル
概要クイックスタートベストプラクティスエンタープライズ向けスキルAPIでのスキル
MCP
リモートMCPサーバーMCPコネクタ
クラウドプラットフォーム上のClaude
Amazon BedrockAmazon Bedrock(レガシー)AWS上のClaude PlatformMicrosoft FoundryVertex AI

Log in
トークンカウント
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Claude Platform Docs

Solutions

  • AI agents
  • Code modernization
  • Coding
  • Customer support
  • Education
  • Financial services
  • Government
  • Life sciences

Partners

  • Claude on AWS
  • Claude on Google Cloud

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Company

  • Anthropic
  • Careers
  • Economic Futures
  • Research
  • News
  • Responsible Scaling Policy
  • Security and compliance
  • Transparency

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Help and security

  • Availability
  • Status
  • Support
  • Discord

Terms and policies

  • Privacy policy
  • Responsible disclosure policy
  • Terms of service: Commercial
  • Terms of service: Consumer
  • Usage policy
メッセージ/コンテキスト管理

トークンカウント

Claudeに送信する前にメッセージ内のトークンをカウントします。トークン数を使用してレート制限とコストを管理し、モデルルーティングの判断を行い、プロンプトを目標の長さに収めます。

トークンカウントを使用すると、Claudeにメッセージを送信する前に、そのメッセージ内のトークン数を確認できます。これにより、プロンプトと使用量について情報に基づいた判断を下すことができます。トークンカウントを使用すると、次のことが可能になります。

  • レート制限とコストを事前に管理する
  • 賢明なモデルルーティングの判断を行う
  • プロンプトを特定の長さに最適化する


この機能はZero Data Retention(ZDR)の対象です。組織がZDR契約を締結している場合、この機能を通じて送信されたデータは、APIレスポンスが返された後に保存されることはありません。


メッセージトークンのカウント方法

トークンカウントエンドポイントは、メッセージ作成時と同じ構造化された入力リストを受け付けます。これにはシステムプロンプト、ツール、画像、PDFのサポートが含まれます。レスポンスには入力トークンの合計数が含まれます。



トークン数は推定値と見なしてください。場合によっては、メッセージ作成時に実際に使用される入力トークン数がわずかに異なることがあります。

トークン数には、システム最適化のためにAnthropicによって自動的に追加されたトークンが含まれる場合があります。システムによって追加されたトークンに対しては課金されません。課金はお客様のコンテンツのみを反映します。

サポートされているモデル

すべてのアクティブなモデルがトークンカウントをサポートしています。

基本的なメッセージのトークンをカウントする

client = anthropic.Anthropic()

response = client.messages.count_tokens(
    model="claude-opus-4-8",
    system="You are a scientist",
    messages=[{"role": "user", "content": "Hello, Claude"}],
)

print(response.json())
Output
{ "input_tokens": 14 }

ツールを含むメッセージのトークンをカウントする



サーバーツールのトークン数は、最初のサンプリング呼び出しにのみ適用されます。

client = anthropic.Anthropic()

response = client.messages.count_tokens(
    model="claude-opus-4-8",
    tools=[
        {
            "name": "get_weather",
            "description": "Get the current weather in a given location",
            "input_schema": {
                "type": "object",
                "properties": {
                    "location": {
                        "type": "string",
                        "description": "The city and state, e.g. San Francisco, CA",
                    }
                },
                "required": ["location"],
            },
        }
    ],
    messages=[{"role": "user", "content": "What's the weather like in San Francisco?"}],
)

print(response.json())
Output
{ "input_tokens": 403 }

画像を含むメッセージのトークンをカウントする

import base64
import httpx

image_url = "https://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg"
image_media_type = "image/jpeg"
image_data = base64.standard_b64encode(httpx.get(image_url).content).decode("utf-8")

client = anthropic.Anthropic()

response = client.messages.count_tokens(
    model="claude-opus-4-8",
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": image_media_type,
                        "data": image_data,
                    },
                },
                {"type": "text", "text": "Describe this image"},
            ],
        }
    ],
)
print(response.json())
Output
{ "input_tokens": 1551 }

拡張思考を含むメッセージのトークンをカウントする



詳細については、拡張思考でのコンテキストウィンドウの計算方法を参照してください

  • 以前のアシスタントターンの思考ブロックは無視され、入力トークンにはカウントされません
  • 現在のアシスタントターンの思考は入力トークンにカウントされます
client = anthropic.Anthropic()

response = client.messages.count_tokens(
    model="claude-sonnet-4-6",
    thinking={"type": "enabled", "budget_tokens": 16000},
    messages=[
        {
            "role": "user",
            "content": "Are there an infinite number of prime numbers such that n mod 4 == 3?",
        },
        {
            "role": "assistant",
            "content": [
                {
                    "type": "thinking",
                    "thinking": "This is a nice number theory question. Let's think about it step by step...",
                    "signature": "EuYBCkQYAiJAgCs1le6/Pol5Z4/JMomVOouGrWdhYNsH3ukzUECbB6iWrSQtsQuRHJID6lWV...",
                },
                {
                    "type": "text",
                    "text": "Yes, there are infinitely many prime numbers p such that p mod 4 = 3...",
                },
            ],
        },
        {"role": "user", "content": "Can you write a formal proof?"},
    ],
)

print(response.json())
Output
{ "input_tokens": 88 }

PDFを含むメッセージのトークンをカウントする



トークンカウントは、Messages APIと同じ制限事項でPDFをサポートしています。

import base64
import anthropic

client = anthropic.Anthropic()

with open("document.pdf", "rb") as pdf_file:
    pdf_base64 = base64.standard_b64encode(pdf_file.read()).decode("utf-8")

response = client.messages.count_tokens(
    model="claude-opus-4-8",
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "document",
                    "source": {
                        "type": "base64",
                        "media_type": "application/pdf",
                        "data": pdf_base64,
                    },
                },
                {"type": "text", "text": "Please summarize this document."},
            ],
        }
    ],
)

print(response.json())
Output
{ "input_tokens": 2188 }

Claude Fable 5およびClaude Mythos 5でのトークン数

Claude Fable 5およびClaude Mythos 5は、Claude Opus 4.7で導入されたトークナイザーを使用しており、同じテキストに対してClaude Opus 4.7より前のモデルと比べて約30%多くのトークンを生成します。トークンカウントエンドポイントは、渡されたmodelのトークナイザーに基づいたカウントを返すため、ご自身のワークロードでの差を測定するには、同じリクエストを2回カウントしてください。1回は現在のモデルで、もう1回はmodel: "claude-fable-5"(または"claude-mythos-5")でカウントし、2つのinput_tokens値を比較します。



課金と移行: Claude Fable 5およびClaude Mythos 5での使用量と課金は、このトークナイザーのカウントを反映します。Claude Opus 4.7より前のモデルから移行する場合、同じコンテンツで約30%多くのトークンが消費されます。ワークロードをClaude Fable 5およびClaude Mythos 5に移行する際は、Claude Opus 4.7より前のモデルで測定したトークン数を、コストやコンテキストウィンドウへの適合の見積もりに再利用しないでください。model: "claude-fable-5"(または"claude-mythos-5")でプロンプトをカウントしてください。


料金とレート制限

トークンカウントは無料で使用できますが、使用ティアに基づいた1分あたりのリクエスト数のレート制限が適用されます。より高い制限が必要な場合は、Claude Consoleから営業担当にお問い合わせください。

使用ティア1分あたりのリクエスト数(RPM)
1100
22,000
34,000
48,000


トークンカウントとメッセージ作成には、それぞれ独立した別個のレート制限があります。一方の使用は、もう一方の制限にはカウントされません。


FAQ


次のステップ


メッセージトークンをカウントする

トークンカウントエンドポイントの完全なAPIリファレンスをお読みください。

コンテキストウィンドウ

トークン数を使用して、プロンプトをモデルのコンテキストウィンドウ内に収めます。

レート制限

リクエストを送信する前にトークン数を確認し、使用ティア内に収めます。

プロンプトキャッシング

プロンプトプレフィックスをキャッシュすることで、繰り返しのプロンプトのコストとレイテンシを削減します。

Was this page helpful?

  • メッセージトークンのカウント方法
  • サポートされているモデル
  • 基本的なメッセージのトークンをカウントする
  • ツールを含むメッセージのトークンをカウントする
  • 画像を含むメッセージのトークンをカウントする
  • 拡張思考を含むメッセージのトークンをカウントする
  • PDFを含むメッセージのトークンをカウントする
  • Claude Fable 5およびClaude Mythos 5でのトークン数
  • 料金とレート制限
  • FAQ
  • 次のステップ