Loading...
  • Bangun
  • Admin
  • Model & harga
  • Client SDK
  • Referensi API
Search...
⌘K
Log in
Penggunaan alat ketat
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
Bangun/Alat

Penggunaan alat yang ketat

Paksakan kepatuhan JSON Schema pada input alat Claude dengan sampling yang dibatasi tata bahasa.

Mengatur strict: true pada definisi alat menggunakan sampling yang dibatasi tata bahasa untuk menjamin input alat Claude sesuai dengan JSON Schema Anda. Halaman ini mencakup mengapa mode ketat penting untuk agen, cara mengaktifkannya, dan kasus penggunaan umum. Untuk subset JSON Schema yang didukung, lihat Batasan JSON Schema. Untuk panduan skema non-ketat, lihat Tentukan alat.

Penggunaan alat yang ketat memvalidasi parameter alat, memastikan Claude memanggil fungsi Anda dengan argumen yang diketik dengan benar. Gunakan penggunaan alat yang ketat ketika Anda perlu:

  • Memvalidasi parameter alat
  • Membangun alur kerja yang bersifat agen
  • Memastikan panggilan fungsi yang aman tipe
  • Menangani alat kompleks dengan properti bersarang

Mengapa penggunaan alat yang ketat penting untuk agen

Membangun sistem agen yang andal memerlukan kepatuhan skema yang dijamin. Tanpa mode ketat, Claude mungkin mengembalikan tipe yang tidak kompatibel ("2" bukan 2) atau bidang yang diperlukan hilang, merusak fungsi Anda dan menyebabkan kesalahan runtime.

Penggunaan alat yang ketat menjamin parameter yang aman tipe:

  • Fungsi menerima argumen yang diketik dengan benar setiap saat
  • Tidak perlu memvalidasi dan mencoba ulang panggilan alat
  • Agen siap produksi yang bekerja secara konsisten dalam skala besar

Misalnya, anggaplah sistem pemesanan memerlukan passengers: int. Tanpa mode ketat, Claude mungkin memberikan passengers: "two" atau passengers: "2". Dengan strict: true, respons akan selalu berisi passengers: 2.

Mulai cepat

Format respons: Blok penggunaan alat dengan input yang divalidasi dalam response.content[x].input

Output
{
  "type": "tool_use",
  "name": "get_weather",
  "input": {
    "location": "San Francisco, CA"
  }
}

Jaminan:

  • Input alat input secara ketat mengikuti input_schema
  • Nama alat name selalu valid (dari alat yang disediakan atau alat server)

Cara kerjanya

  1. 1

    Tentukan skema alat Anda

    Buat skema JSON untuk input_schema alat Anda. Skema menggunakan format JSON Schema standar dengan beberapa batasan (lihat Batasan JSON Schema).

  2. 2

    Tambahkan strict: true

    Atur "strict": true sebagai properti tingkat atas dalam definisi alat Anda, bersama dengan name, description, dan input_schema.

  3. 3

    Tangani panggilan alat

    Ketika Claude menggunakan alat, bidang input dalam blok tool_use akan secara ketat mengikuti input_schema Anda, dan name akan selalu valid.

Kasus penggunaan umum

Retensi data

Penggunaan alat ketat mengompilasi definisi input_schema alat menjadi tata bahasa menggunakan pipeline yang sama seperti keluaran terstruktur. Skema alat disimpan dalam cache sementara selama hingga 24 jam sejak penggunaan terakhir. Prompt dan respons tidak disimpan setelah respons API.

Penggunaan alat ketat memenuhi syarat HIPAA, tetapi PHI tidak boleh disertakan dalam definisi skema alat. API menyimpan skema yang dikompilasi secara terpisah dari konten pesan, dan skema yang disimpan dalam cache ini tidak menerima perlindungan PHI yang sama seperti prompt dan respons. Jangan sertakan PHI dalam nama properti input_schema, nilai enum, nilai const, atau ekspresi reguler pattern. PHI hanya boleh muncul dalam konten pesan (prompt dan respons), di mana dilindungi di bawah perlindungan HIPAA.

Untuk kelayakan ZDR dan HIPAA di semua fitur, lihat Retensi API dan data.

Was this page helpful?

  • Mengapa penggunaan alat yang ketat penting untuk agen
  • Mulai cepat
  • Cara kerjanya
  • Kasus penggunaan umum
  • Retensi data
client = anthropic.Anthropic()

response = client.messages.create(
    model="claude-opus-4-7",
    max_tokens=1024,
    messages=[{"role": "user", "content": "What's the weather like in San Francisco?"}],
    tools=[
        {
            "name": "get_weather",
            "description": "Get the current weather in a given location",
            "strict": True,  # Enable strict mode
            "input_schema": {
                "type": "object",
                "properties": {
                    "location": {
                        "type": "string",
                        "description": "The city and state, e.g. San Francisco, CA",
                    },
                    "unit": {
                        "type": "string",
                        "enum": ["celsius", "fahrenheit"],
                        "description": "The unit of temperature, either 'celsius' or 'fahrenheit'",
                    },
                },
                "required": ["location"],
                "additionalProperties": False,
            },
        }
    ],
)
print(response.content)