Penggunaan alat - Amazon Bedrock

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Penggunaan alat

Dengan Anthropic Claude model, Anda dapat menentukan alat yang dapat digunakan model untuk menjawab pesan. Misalnya, Anda dapat menentukan alat yang mendapatkan lagu paling populer di stasiun radio. Jika pengguna melewati pesan Apa lagu paling populer di WZPZ? , model menentukan bahwa alat yang Anda tentukan dapat membantu menjawab pertanyaan. Dalam tanggapannya, model meminta Anda menjalankan alat atas namanya. Anda kemudian menjalankan alat dan meneruskan hasil alat ke model, yang kemudian menghasilkan respons untuk pesan asli. Untuk informasi selengkapnya, lihat Penggunaan alat (pemanggilan fungsi) dalam Anthropic Claude dokumentasi.

Tip

Kami menyarankan Anda menggunakan Converse API untuk mengintegrasikan penggunaan alat ke dalam aplikasi Anda. Untuk informasi selengkapnya, lihat Gunakan alat untuk menyelesaikan respons model Amazon Bedrock.

Anda menentukan alat yang ingin Anda sediakan untuk model di tools bidang. Contoh berikut adalah untuk alat yang mendapatkan lagu paling populer di stasiun radio.

[ { "name": "top_song", "description": "Get the most popular song played on a radio station.", "input_schema": { "type": "object", "properties": { "sign": { "type": "string", "description": "The call sign for the radio station for which you want the most popular song. Example calls signs are WZPZ and WKRP." } }, "required": [ "sign" ] } } ]

Ketika model membutuhkan alat untuk menghasilkan respons terhadap pesan, ia mengembalikan informasi tentang alat yang diminta, dan input ke alat, di content bidang pesan. Ini juga menetapkan alasan berhenti untuk menanggapitool_use.

{ "id": "msg_bdrk_01USsY5m3XRUF4FCppHP8KBx", "type": "message", "role": "assistant", "model": "claude-3-sonnet-20240229", "stop_sequence": null, "usage": { "input_tokens": 375, "output_tokens": 36 }, "content": [ { "type": "tool_use", "id": "toolu_bdrk_01SnXQc6YVWD8Dom5jz7KhHy", "name": "top_song", "input": { "sign": "WZPZ" } } ], "stop_reason": "tool_use" }

Dalam kode Anda, Anda memanggil alat atas nama alat. Anda kemudian meneruskan hasil alat (tool_result) dalam pesan pengguna ke model.

{ "role": "user", "content": [ { "type": "tool_result", "tool_use_id": "toolu_bdrk_01SnXQc6YVWD8Dom5jz7KhHy", "content": "Elemental Hotel" } ] }

Dalam tanggapannya, model menggunakan hasil alat untuk menghasilkan respons untuk pesan asli.

{ "id": "msg_bdrk_012AaqvTiKuUSc6WadhUkDLP", "type": "message", "role": "assistant", "model": "claude-3-sonnet-20240229", "content": [ { "type": "text", "text": "According to the tool, the most popular song played on radio station WZPZ is \"Elemental Hotel\"." } ], "stop_reason": "end_turn" }

Streaming alat berbutir halus

Streaming alat berbutir halus adalah kemampuan Anthropic Claude model yang tersedia denganClaude Sonnet 4, dan 4. Claude Opus Dengan streaming alat berbutir halus, Claude pengembang dapat melakukan streaming parameter penggunaan alat tanpa buffering atau validasi JSON, mengurangi latensi untuk mulai menerima parameter besar.

catatan

Saat menggunakan streaming alat berbutir halus, Anda berpotensi menerima input JSON yang tidak valid atau sebagian. Pastikan untuk memperhitungkan kasus tepi ini dalam kode Anda.

Untuk menggunakan fitur ini, cukup tambahkan header fine-grained-tool-streaming-2025-05-14 ke permintaan penggunaan alat.

Berikut adalah contoh cara menentukan header streaming alat berbutir halus:

{ "anthropic_version": "bedrock-2023-05-31", "max_tokens": 1024, "anthropic_beta": ["fine-grained-tool-streaming-2025-05-14"], "messages": [ { "role": "user", "content": "Can you write a long poem and make a file called poem.txt?" } ], "tools": [ { "name": "make_file", "description": "Write text to a file", "input_schema": { "type": "object", "properties": { "filename": { "type": "string", "description": "The filename to write text to" }, "lines_of_text": { "type": "array", "description": "An array of lines of text to write to the file" } }, "required": [ "filename", "lines_of_text" ] } } ] }

Dalam contoh ini, streaming alat berbutir halus memungkinkan Claude untuk mengalirkan baris puisi panjang ke dalam panggilan alat make_file tanpa buffering untuk memvalidasi jika parameternya adalah JSON yang valid. lines_of_text Ini berarti Anda dapat melihat aliran parameter saat tiba, tanpa harus menunggu seluruh parameter untuk buffer dan memvalidasi.

Dengan streaming alat berbutir halus, potongan penggunaan alat mulai streaming lebih cepat, dan seringkali lebih lama dan mengandung lebih sedikit jeda kata. Ini karena perbedaan perilaku chunking.

Misalnya, tanpa streaming berbutir halus (penundaan 15 detik):

Chunk 1: '{"' Chunk 2: 'query": "Ty' Chunk 3: 'peScri' Chunk 4: 'pt 5.0 5.1 ' Chunk 5: '5.2 5' Chunk 6: '.3' Chunk 8: ' new f' Chunk 9: 'eatur' ...

Dengan streaming berbutir halus (penundaan 3 detik):

Chunk 1: '{"query": "TypeScript 5.0 5.1 5.2 5.3' Chunk 2: ' new features comparison'
catatan

Karena streaming halus mengirimkan parameter tanpa buffering atau validasi JSON, tidak ada jaminan bahwa aliran yang dihasilkan akan selesai dalam string JSON yang valid. Khususnya, jika alasan berhenti max_tokens tercapai, aliran mungkin berakhir di tengah parameter dan mungkin tidak lengkap. Anda biasanya harus menulis dukungan khusus untuk menangani kapan max_tokens tercapai.

Penggunaan komputer (Beta)

Penggunaan komputer adalah kemampuan Anthropic Claude model (dalam versi beta) yang tersedia dengan Claude 3.5 Sonnet v2,, Claude 3.7 SonnetClaude Sonnet 4, dan 4. Claude Opus Dengan penggunaan komputer, Claude dapat membantu Anda mengotomatiskan tugas melalui tindakan GUI dasar.

Awas

Fitur penggunaan komputer tersedia untuk Anda sebagai 'Layanan Beta' sebagaimana didefinisikan dalam Ketentuan AWS Layanan. Ini tunduk pada Perjanjian Anda dengan AWS dan Ketentuan AWS Layanan, dan model EULA yang berlaku. Perlu diketahui bahwa Computer Use API menimbulkan risiko unik yang berbeda dari fitur API standar atau antarmuka obrolan. Risiko ini meningkat saat menggunakan Computer Use API untuk berinteraksi dengan Internet. Untuk meminimalkan risiko, pertimbangkan untuk mengambil tindakan pencegahan seperti:

  • Mengoperasikan fungsionalitas penggunaan komputer dalam Mesin Virtual khusus atau wadah dengan hak istimewa minimal untuk mencegah serangan sistem langsung atau kecelakaan.

  • Untuk mencegah pencurian informasi, hindari memberikan akses API Penggunaan Komputer ke akun atau data sensitif.

  • Membatasi komputer menggunakan akses APIs internet ke domain yang diperlukan untuk mengurangi paparan konten berbahaya.

  • Untuk memastikan pengawasan yang tepat, pertahankan manusia dalam lingkaran untuk tugas-tugas sensitif (seperti membuat keputusan yang dapat memiliki konsekuensi dunia nyata yang berarti) dan untuk apa pun yang memerlukan persetujuan afirmatif (seperti menerima cookie, melaksanakan transaksi keuangan, atau menyetujui persyaratan layanan).

Konten apa pun yang Anda aktifkan Claude untuk dilihat atau diakses berpotensi mengesampingkan instruksi atau Claude menyebabkan kesalahan atau melakukan tindakan yang tidak diinginkan. Mengambil tindakan pencegahan yang tepat, seperti mengisolasi Claude dari permukaan sensitif, sangat penting - termasuk untuk menghindari risiko yang terkait dengan injeksi segera. Sebelum mengaktifkan atau meminta izin yang diperlukan untuk mengaktifkan fitur penggunaan komputer dalam produk Anda sendiri, harap beri tahu pengguna akhir tentang risiko yang relevan, dan dapatkan persetujuan mereka sebagaimana mestinya.

API penggunaan komputer menawarkan beberapa alat penggunaan komputer yang telah ditentukan sebelumnya untuk Anda gunakan. Anda kemudian dapat membuat prompt dengan permintaan Anda, seperti “kirim email ke Ben dengan catatan dari pertemuan terakhir saya” dan tangkapan layar (bila diperlukan). Respons berisi daftar tool_use tindakan dalam format JSON (misalnya, scroll_down, left_button_press, screenshot). Kode Anda menjalankan tindakan komputer dan menyediakan tangkapan layar Claude yang menampilkan output (saat diminta).

Sejak rilis Claude 3.5 v2, parameter alat telah diperbarui untuk menerima jenis alat polimorfik; tool.type properti ditambahkan untuk membedakannya. typebersifat opsional; jika dihilangkan, alat ini diasumsikan sebagai alat khusus (sebelumnya satu-satunya jenis alat yang didukung). Untuk mengakses penggunaan komputer, Anda harus menggunakan anthropic_beta parameter, dengan enum yang sesuai, yang nilainya tergantung pada versi model yang digunakan. Lihat tabel berikut untuk informasi lebih lanjut.

Hanya permintaan yang dibuat dengan parameter ini dan enum yang dapat menggunakan alat penggunaan komputer. Hal ini dapat ditentukan sebagai berikut:"anthropic_beta": ["computer-use-2025-01-24"].

Model Header beta

Claude Opus4.1

Claude Opus4

Claude Sonnet 4

Claude 3.7 Sonnet

penggunaan komputer-2025-01-24
Claude 3.5 Sonnet v2 penggunaan komputer-2024-10-22

Untuk informasi selengkapnya, lihat Penggunaan komputer (beta) dalam Anthropic dokumentasi.

Berikut ini adalah contoh respons yang mengasumsikan permintaan berisi tangkapan layar desktop Anda dengan ikon Firefox.

{ "id": "msg_123", "type": "message", "role": "assistant", "model": "anthropic.claude-3-5-sonnet-20241022-v2:0", "content": [ { "type": "text", "text": "I see the Firefox icon. Let me click on it and then navigate to a weather website." }, { "type": "tool_use", "id": "toolu_123", "name": "computer", "input": { "action": "mouse_move", "coordinate": [ 708, 736 ] } }, { "type": "tool_use", "id": "toolu_234", "name": "computer", "input": { "action": "left_click" } } ], "stop_reason": "tool_use", "stop_sequence": null, "usage": { "input_tokens": 3391, "output_tokens": 132 } }

Anthropicalat yang ditentukan

Anthropicmenyediakan seperangkat alat untuk memungkinkan Claude model tertentu untuk menggunakan komputer secara efektif. Saat menentukan alat yang Anthropic ditentukan, tool_schema bidang description dan tidak diperlukan atau diizinkan. Anthropicalat yang ditentukan ditentukan olehAnthropic, tetapi Anda harus secara eksplisit mengevaluasi hasil alat dan mengembalikannya ketool_results. Claude Seperti halnya alat apa pun, model tidak secara otomatis menjalankan alat. Setiap alat Anthropic yang ditentukan memiliki versi yang dioptimalkan untuk model tertentu Claude 3.5 Sonnet (baru) danClaude 3.7 Sonnet:

Model

Alat

Catatan

ClaudeClaude Opus4.1

ClaudeClaude Opus4

Claude Sonnet 4

{ "type": "text_editor_20250124", "name": "str_replace_based_edit_tool" }

Perbarui ke str_replace_editor alat yang ada

Claude 3.7 Sonnet

{ "type": "computer_20250124", "name": "computer" }

Termasuk tindakan baru untuk kontrol yang lebih tepat

Claude 3.7 Sonnet

{ "type": "text_editor_20250124", "name": "str_replace_editor" }

Kemampuan yang sama dengan versi 20241022

Claude 3.5 Sonnet v2

{ "type": "bash_20250124", "name": "bash" }

Kemampuan yang sama dengan versi 20241022

Claude 3.5 Sonnet v2

{ "type": "text_editor_20241022", "name": "str_replace_editor" }

Claude 3.5 Sonnet v2

{ "type": "bash_20241022", "name": "bash" }

Claude 3.5 Sonnet v2

{ "type": "computer_20241022", "name": "computer" }

typeBidang mengidentifikasi alat dan parameternya untuk tujuan validasi, name bidang adalah nama alat yang diekspos ke model.

Jika Anda ingin meminta model untuk menggunakan salah satu alat ini, Anda dapat secara eksplisit merujuk alat berdasarkan bidang. name nameBidang harus unik dalam daftar alat; Anda tidak dapat mendefinisikan alat dengan alat yang name sama dengan alat yang Anthropic ditentukan dalam panggilan API yang sama.

Pertimbangan biaya untuk penggunaan alat

Permintaan penggunaan alat diberi harga berdasarkan faktor-faktor berikut:

  1. Jumlah total token input yang dikirim ke model (termasuk dalam parameter alat).

  2. Jumlah token output yang dihasilkan.

Harga alat sama dengan semua permintaan Claude API lainnya, tetapi menyertakan token tambahan per permintaan. Token tambahan dari penggunaan alat berasal dari yang berikut:

  • toolsParameter dalam permintaan API. Misalnya, nama alat, deskripsi, dan skema.

  • tool_useKonten apa pun memblokir permintaan dan tanggapan API.

  • tool_resultKonten apa pun memblokir permintaan API.

Saat Anda menggunakan alat, Anthropic model secara otomatis menyertakan prompt sistem khusus yang memungkinkan penggunaan alat. Jumlah token penggunaan alat yang diperlukan untuk setiap model tercantum dalam tabel berikut. Tabel ini tidak termasuk token tambahan yang dijelaskan sebelumnya. Perhatikan bahwa tabel ini mengasumsikan setidaknya satu alat disediakan. Jika tidak ada alat yang disediakan, maka pilihan alat tidak ada menggunakan 0 token prompt sistem tambahan.

Model Pilihan alat Alat menggunakan jumlah token prompt sistem

Claude Opus4.1

Claude Opus4

Claude Sonnet 4

Claude 3.7 Sonnet

Claude 3.5 Sonnet v2

auto atau none 346

Claude Opus4.1

Claude Opus4

Claude Sonnet 4

Claude 3.7 Sonnet

Claude 3.5 Sonnet v2

any atau tool 313

Claude 3.5 Sonnet

auto atau none 294

Claude 3.5 Sonnet

any atau tool 261

Claude 3 Opus

auto atau none 530

Claude 3 Opus

any atau tool 281

Claude 3 Sonnet

auto atau none 159

Claude 3 Sonnet

any atau tool 235

Claude 3 Haiku

auto atau none 264

Claude 3 Haiku

any atau tool 340