Loading...
    • 構築
    • 管理
    • モデルと価格
    • クライアントSDK
    • APIリファレンス
    Search...
    ⌘K
    最初のステップ
    Claudeの紹介クイックスタート
    Claudeで構築
    機能概要Messages APIの使用Claude APIスキル停止理由の処理
    モデル機能
    拡張思考適応的思考努力タスク予算(ベータ版)高速モード(ベータ版:研究プレビュー)構造化出力引用ストリーミングメッセージバッチ処理検索結果ストリーミング拒否多言語サポート埋め込み
    ツール
    概要ツール使用の仕組みウェブ検索ツールウェブ取得ツールコード実行ツールアドバイザーツールメモリツールBashツールコンピュータ使用ツールテキストエディタツール
    ツールインフラストラクチャ
    ツールリファレンスツール検索プログラマティックツール呼び出し細粒度ツールストリーミング
    コンテキスト管理
    コンテキストウィンドウ圧縮コンテキスト編集プロンプトキャッシングトークンカウント
    ファイルの操作
    Files APIPDFサポート画像とビジョン
    スキル
    概要クイックスタートベストプラクティスエンタープライズ向けスキルAPI内のスキル
    MCP
    リモートMCPサーバーMCPコネクタ
    プロンプトエンジニアリング
    概要プロンプティングのベストプラクティスConsoleプロンプティングツール
    テストと評価
    成功を定義して評価を構築ConsoleでEvaluation Toolを使用レイテンシの削減
    ガードレールの強化
    幻覚の削減出力の一貫性向上ジェイルブレイク対策プロンプトリークの削減
    リソース
    用語集
    リリースノート
    Claude Platform
    Console
    Log in
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...

    Solutions

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

    Partners

    • Amazon Bedrock
    • Google Cloud's Vertex AI

    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で構築

    Messages APIの使用

    Messages APIを効果的に使用するための実践的なパターンと例

    Was this page helpful?

    • Claudeの口に言葉を入れる

    Anthropic offers two ways to build with Claude, each suited to different use cases:

    Messages APIClaude Managed Agents
    What it isDirect model prompting accessPre-built, configurable agent harness that runs in managed infrastructure
    Best forCustom agent loops and fine-grained controlLong-running tasks and asynchronous work
    Learn moreMessages API docsClaude Managed Agents docs

    このガイドでは、基本的なリクエスト、マルチターン会話、プリフィル技術、ビジョン機能など、Messages APIを使用するための一般的なパターンについて説明します。完全なAPI仕様については、Messages APIリファレンスを参照してください。

    This feature is eligible for Zero Data Retention (ZDR). When your organization has a ZDR arrangement, data sent through this feature is not stored after the API response is returned.

    基本的なリクエストとレスポンス

    message = anthropic.Anthropic().messages.create(
        model="claude-opus-4-7",
        max_tokens=1024,
        messages=[{"role": "user", "content": "Hello, Claude"}],
    )
    print(message)
    Output
    {
      "id": "msg_01XFDUDYJgAACzvnptvVoYEL",
      "type": "message",
      "role": "assistant",
      "content": [
        {
          "type": "text",
          "text": "Hello!"
        }
      ],
      "model": "claude-opus-4-7",
      "stop_reason": "end_turn",
      "stop_sequence": null,
      "usage": {
        "input_tokens": 12,
        "output_tokens": 6
      }
    }

    複数の会話ターン

    Messages APIはステートレスです。つまり、常にAPIに完全な会話履歴を送信します。このパターンを使用して、時間をかけて会話を構築できます。以前の会話ターンは必ずしもClaudeから実際に発信される必要はありません。合成されたassistantメッセージを使用できます。

    Output
    {
      "id": "msg_018gCsTGsXkYJVqYPxTgDHBU",
      "type": "message",
      "role": "assistant",
      "content": [
        {
          "type": "text",
          "text": "Sure, I'd be happy to provide..."
        }
      ],
      "stop_reason": "end_turn",
      "stop_sequence": null,
      "usage": {
        "input_tokens": 30,
        "output_tokens": 309
      }
    }

    Claudeの口に言葉を入れる

    入力メッセージリストの最後の位置にClaudeのレスポンスの一部をプリフィルできます。これはClaudeのレスポンスを形作るために使用できます。以下の例では、"max_tokens": 1を使用してClaudeから単一の多肢選択回答を取得します。

    Output
    {
      "id": "msg_01Q8Faay6S7QPTvEUUQARt7h",
      "type": "message",
      "role": "assistant",
      "content": [
        {
          "type": "text",
          "text": "C"
        }
      ],
      "model": "claude-sonnet-4-5",
      "stop_reason": "max_tokens",
      "stop_sequence": null,
      "usage": {
        "input_tokens": 42,
        "output_tokens": 1
      }
    }

    プリフィルはClaude Mythos Preview、Claude Opus 4.7、Claude Opus 4.6、およびClaude Sonnet 4.6ではサポートされていません。これらのモデルでプリフィルを使用するリクエストは400エラーを返します。代わりに構造化出力またはシステムプロンプト指示を使用してください。移行パターンについては移行ガイドを参照してください。

    ビジョン

    Claude はリクエスト内のテキストと画像の両方を読むことができます。画像は base64、url、または file ソースタイプを使用して提供できます。file ソースタイプは Files API を通じてアップロードされた画像を参照します。サポートされているメディアタイプは image/jpeg、image/png、image/gif、および image/webp です。詳細については ビジョンガイド を参照してください。

    Output
    {
      "id": "msg_01EcyWo6m4hyW8KHs2y2pei5",
      "type": "message",
      "role": "assistant",
      "content": [
        {
          "type": "text",
          "text": "This image shows an ant, specifically a close-up view of an ant. The ant is shown in detail, with its distinct head, antennae, and legs clearly visible. The image is focused on capturing the intricate details and features of the ant, likely taken with a macro lens to get an extreme close-up perspective."
        }
      ],
      "model": "claude-opus-4-7",
      "stop_reason": "end_turn",
      "stop_sequence": null,
      "usage": {
        "input_tokens": 1551,
        "output_tokens": 71
      }
    }

    ツール使用とコンピュータ使用

    Messages API でツールを使用する方法の例については、ツール使用ガイド を参照してください。 Messages API でデスクトップコンピュータ環境を制御する方法の例については、コンピュータ使用ガイド を参照してください。 保証された JSON 出力については、構造化出力 を参照してください。

    message = anthropic.Anthropic().messages.create(
        model="claude-opus-4-7",
        max_tokens=1024,
        messages=[
            {"role": "user", "content": "Hello, Claude"},
            {"role": "assistant", "content": "Hello!"},
            {"role": "user", "content": "Can you describe LLMs to me?"},
        ],
    )
    print(message)
    message = anthropic.Anthropic().messages.create(
        model="claude-sonnet-4-5",
        max_tokens=1,
        messages=[
            {
                "role": "user",
                "content": "What is latin for Ant? (A) Apoidea, (B) Rhopalocera, (C) Formicidae",
            },
            {"role": "assistant", "content": "The answer is ("},
        ],
    )
    print(message)
    import base64
    import httpx
    
    # Option 1: Base64-encoded image
    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")
    
    message = anthropic.Anthropic().messages.create(
        model="claude-opus-4-7",
        max_tokens=1024,
        messages=[
            {
                "role": "user",
                "content": [
                    {
                        "type": "image",
                        "source": {
                            "type": "base64",
                            "media_type": image_media_type,
                            "data": image_data,
                        },
                    },
                    {"type": "text", "text": "What is in the above image?"},
                ],
            }
        ],
    )
    print(message)
    
    # Option 2: URL-referenced image
    message_from_url = anthropic.Anthropic().messages.create(
        model="claude-opus-4-7",
        max_tokens=1024,
        messages=[
            {
                "role": "user",
                "content": [
                    {
                        "type": "image",
                        "source": {
                            "type": "url",
                            "url": "https://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg",
                        },
                    },
                    {"type": "text", "text": "What is in the above image?"},
                ],
            }
        ],
    )
    print(message_from_url)