Materi
Alat (tool) adalah fungsi milik aplikasimu yang boleh diminta model. Definisinya berisi nama, deskripsi tentang kapan dan bagaimana alat dipakai, dan skema masukan berupa JSON Schema. Halaman How tool use works Anthropic menyebutnya kontrak: model tidak pernah menjalankan apa pun sendiri. Model mengeluarkan permintaan terstruktur, kodemu menjalankannya, lalu hasilnya dikirim kembali ke percakapan.
{"name": "cek_jadwal", "description": "Mencari jadwal dokter klinik. Pakai bila pasien bertanya hari praktik.",
"input_schema": {"type": "object", "properties": {"dokter": {"type": "string"}}, "required": ["dokter"]}}
{"type": "tool_use", "id": "t7", "name": "cek_jadwal", "input": {"dokter": "drg. Wulan"}}
{"type": "tool_result", "tool_use_id": "t7", "content": "Senin dan Kamis", "is_error": false}Permintaan itu berupa blok tool_use dengan id, name, dan input. Aplikasi menjalankan fungsi yang namanya cocok, lalu membalas dengan blok tool_result yang memuat tool_use_id yang sama, isi hasil, dan is_error bernilai true bila alat gagal. OpenAI memakai pola yang sama dengan nama call_id dan argumen berupa teks JSON yang harus diurai dulu. Panduan function calling OpenAI juga meminta aplikasi menganggap satu respons bisa berisi nol, satu, atau beberapa panggilan.
Panduan yang sama meminta model tidak disuruh mengisi argumen yang sudah diketahui aplikasi. Id pelanggan dari sesi login diisi kodemu, bukan ditebak model; ini juga menutup celah model diarahkan ke data pelanggan lain.