Memanggil API Anthropic: messages
Gunakan API messages Anthropic: perbedaan dari OpenAI, penempatan prompt sistem, dan praktik terbaik khusus Claude.
Memanggil API Anthropic: messages adalah pelajaran AI Agents gratis di CoddyKit. Ini adalah pelajaran 2 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar AI Agents, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus AI Agents mencakup 4 pelajaran total.
Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.
Mengapa Anthropic?
Model Claude sering kali memiliki kemampuan mengikuti instruksi yang lebih kuat, penggunaan alat yang lebih baik, dan jendela konteks yang lebih panjang daripada model OpenAI yang setara — dan terkadang lebih murah.
Sebagian besar agen produksi mendukung kedua penyedia sebagai fallback.
Install the SDK
# pip install anthropic
import anthropic
client = anthropic.Anthropic() # reads ANTHROPIC_API_KEY from envPanggilan Pertama Anda
Titik akhirnya adalah messages.create:
response = client.messages.create(
model='claude-sonnet-4-5',
max_tokens=512,
system='You are a concise assistant.',
messages=[
{'role': 'user', 'content': 'Capital of France?'},
],
)
print(response.content[0].text)
# 'Paris.'Perbedaan Utama dari OpenAI
systemadalah parameter tingkat atas, bukan pesanmax_tokensbersifat REQUIREDcontentadalah daftar blok (teks, penggunaan alat, dan sebagainya)- Tidak ada parameter
n— gunakan beberapa panggilan
Blok Konten
Bahkan respons teks hadir sebagai daftar blok:
response.content # list of blocks
response.content[0].type # 'text' or 'tool_use'
response.content[0].text # the text content
response.stop_reason # 'end_turn' / 'max_tokens' / 'tool_use'
response.usage.input_tokens
response.usage.output_tokensKonten Multi-Blok
Anda juga dapat mengirimkan daftar blok konten dalam pesan pengguna (gambar, hasil alat):
messages = [{
'role': 'user',
'content': [
{'type': 'text', 'text': 'What is in this image?'},
{'type': 'image', 'source': {
'type': 'base64',
'media_type': 'image/png',
'data': image_base64
}}
]
}]Mengisi Awal Asisten
Paksa respons untuk dimulai dengan cara tertentu:
messages = [
{'role': 'user', 'content': 'Return a JSON object.'},
{'role': 'assistant', 'content': '{'}
]
response = client.messages.create(
model='claude-sonnet-4-5',
max_tokens=512,
messages=messages,
)
# Output starts after '{', guaranteed to be JSON.Penggunaan Alat
Format alat Anthropic mirip dengan OpenAI, tetapi menggunakan input_schema:
tools = [{
'name': 'get_weather',
'description': 'Get current weather',
'input_schema': {
'type': 'object',
'properties': {'city': {'type': 'string'}},
'required': ['city']
}
}]
response = client.messages.create(
model='claude-sonnet-4-5',
max_tokens=1024,
tools=tools,
messages=messages,
)
if response.stop_reason == 'tool_use':
for block in response.content:
if block.type == 'tool_use':
print(block.name, block.input)Mengembalikan Hasil Alat
Hasil alat dimasukkan ke dalam pesan pengguna dengan blok tool_result:
messages.append({
'role': 'user',
'content': [{
'type': 'tool_result',
'tool_use_id': 'toolu_abc',
'content': json.dumps(weather_data)
}]
})Penyimpanan Prompt
Anthropic mendukung penyimpanan prompt — tandai awalan statis yang panjang dengan cache_control dan bayar 10% saat cache digunakan:
system = [
{'type': 'text', 'text': '...long system prompt...',
'cache_control': {'type': 'ephemeral'}}
]
for block in system:
print(f"type={block['type']} cache_control={block['cache_control']}")
print("text preview:", block['text'][:30])
Penalaran Diperluas
Claude memiliki mode "penalaran diperluas" yang memungkinkannya bernalar secara internal sebelum menjawab:
response = client.messages.create(
model='claude-sonnet-4-5',
max_tokens=4096,
thinking={'type': 'enabled', 'budget_tokens': 2048},
messages=messages,
)Lokasi Prompt Sistem
Di mana prompt sistem ditempatkan dalam API Anthropic?
Rangkuman
Sekarang Anda dapat memanggil kedua penyedia utama. Perbedaannya kecil, tetapi nyata — sebagian besar tim membuat adaptor tipis untuk beralih di antara keduanya.
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Memanggil API Anthropic: messages” gratis?
Ya — teks lengkap “Memanggil API Anthropic: messages” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus AI Agents, upgrade ke CoddyKit PRO. Kursus AI Agents mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Memanggil API Anthropic: messages”?
Gunakan API messages Anthropic: perbedaan dari OpenAI, penempatan prompt sistem, dan praktik terbaik khusus Claude. Kamu berlatih AI Agents dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai AI Agents?
Tidak diperlukan pengalaman sebelumnya. AI Agents di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 2 dari 4.
Berapa lama pelajaran “Memanggil API Anthropic: messages” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran AI Agents ini?
Ya. Setiap pelajaran AI Agents menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Memanggil API OpenAI: chat.completions
- Memanggil API Anthropic: messages
- Mengalirkan Respons (SSE)
- Kesadaran Biaya: Penghitungan Token dan Anggaran