Tutorial Python Claude API 2026 | APIMaster.ai
Cara menggunakan Claude API dengan Python. Contoh lengkap menggunakan Anthropic SDK dan klien yang kompatibel dengan OpenAI—chat, streaming, visi, dan pemanggilan fungsi—melalui APIMaster.ai.
Tutorial Python Claude API
Panduan ini mencakup penggunaan Claude API di Python dengan Anthropic SDK asli dan klien yang kompatibel dengan OpenAI. Semua contoh berfungsi dengan APIMaster.ai—ganti URL dasar dan kunci API Anda sendiri.
Instalasi
pip install anthropic # Anthropic SDK asli
pip install openai # Kompatibel dengan OpenAI (opsional)
Pengaturan Dasar
import anthropic
client = anthropic.Anthropic(
api_key="KUNCI_APIMASTER_ANDA",
base_url="https://apimaster.ai", # Tanpa /v1 untuk Anthropic SDK
)
Atau dengan OpenAI SDK (lebih mudah jika Anda sudah menggunakan OpenAI):
from openai import OpenAI
client = OpenAI(
api_key="KUNCI_APIMASTER_ANDA",
base_url="https://apimaster.ai/v1",
)
Panggilan Claude API Pertama Anda
import anthropic
client = anthropic.Anthropic(
api_key="KUNCI_APIMASTER_ANDA",
base_url="https://apimaster.ai",
)
message = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
messages=[
{"role": "user", "content": "Jelaskan perbedaan antara list dan tuple di Python."}
],
)
print(message.content[0].text)
Prompt Sistem
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=512,
system="Anda adalah insinyur Python senior. Bersikaplah ringkas dan gunakan contoh kode.",
messages=[
{"role": "user", "content": "Apa cara tercepat untuk meratakan daftar bersarang?"}
],
)
print(response.content[0].text)
Percakapan Multi-Turn
conversation = []
def chat(user_message):
conversation.append({"role": "user", "content": user_message})
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
messages=conversation,
)
assistant_message = response.content[0].text
conversation.append({"role": "assistant", "content": assistant_message})
return assistant_message
print(chat("Apa itu dekorator di Python?"))
print(chat("Bisakah Anda menunjukkan contoh praktis?"))
Respons Streaming
Streaming mengembalikan token saat dihasilkan—pengalaman pengguna yang lebih baik untuk keluaran panjang:
with client.messages.stream(
model="claude-sonnet-4-6",
max_tokens=1024,
messages=[{"role": "user", "content": "Tulis web scraper Python menggunakan requests dan BeautifulSoup."}],
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)
print() # baris baru di akhir
Visi: Menganalisis Gambar
Claude Sonnet dan Opus mendukung input gambar (base64 atau URL):
import base64
with open("chart.png", "rb") as f:
image_data = base64.standard_b64encode(f.read()).decode("utf-8")
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=512,
messages=[
{
"role": "user",
"content": [
{
"type": "image",
"source": {
"type": "base64",
"media_type": "image/png",
"data": image_data,
},
},
{"type": "text", "text": "Ringkas apa yang ditunjukkan grafik ini."},
],
}
],
)
print(response.content[0].text)
Penggunaan Alat (Pemanggilan Fungsi)
tools = [
{
"name": "get_weather",
"description": "Dapatkan cuaca saat ini untuk sebuah kota",
"input_schema": {
"type": "object",
"properties": {
"city": {"type": "string", "description": "Nama kota"},
},
"required": ["city"],
},
}
]
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=256,
tools=tools,
messages=[{"role": "user", "content": "Bagaimana cuaca di Tokyo?"}],
)
# Periksa apakah Claude ingin memanggil alat
if response.stop_reason == "tool_use":
tool_call = next(b for b in response.content if b.type == "tool_use")
print(f"Alat: {tool_call.name}, Input: {tool_call.input}")
Penggunaan Async
import asyncio
import anthropic
async def main():
client = anthropic.AsyncAnthropic(
api_key="KUNCI_APIMASTER_ANDA",
base_url="https://apimaster.ai",
)
response = await client.messages.create(
model="claude-sonnet-4-6",
max_tokens=256,
messages=[{"role": "user", "content": "Halo!"}],
)
print(response.content[0].text)
asyncio.run(main())
Penanganan Error
import anthropic
try:
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=256,
messages=[{"role": "user", "content": "Halo"}],
)
except anthropic.AuthenticationError:
print("Kunci API tidak valid")
except anthropic.RateLimitError:
print("Batas kecepatan—tambahkan logika percobaan ulang")
except anthropic.APIStatusError as e:
print(f"Error API {e.status_code}: {e.message}")
Memilih Model Claude yang Tepat untuk Proyek Python
| Tugas | Model | Alasan |
|---|---|---|
| Chatbot, Tanya Jawab | claude-haiku-4-5 | Cepat + murah |
| Pembuatan kode | claude-sonnet-4-6 | Keseimbangan terbaik |
| Penalaran kompleks | claude-opus-4-8 | Akurasi tertinggi |
| Analisis dokumen | claude-sonnet-4-6 | Konteks 1M |
Dapatkan Akses Claude API
Pertanyaan yang Sering Diajukan
Bagaimana cara menginstal pustaka Python Claude API?
Jalankan pip install anthropic untuk SDK resmi, atau pip install openai untuk menggunakan titik akhir yang kompatibel dengan OpenAI milik APIMaster dengan model Claude.
SDK Python mana yang harus saya gunakan untuk Claude API?
SDK anthropic adalah pilihan resmi dan mendukung semua fitur khusus Claude (penggunaan alat, visi, streaming). SDK openai berfungsi melalui lapisan kompatibilitas APIMaster—berguna jika Anda sudah menggunakan OpenAI dan ingin mengganti model.
Bagaimana cara melakukan streaming respons Claude API di Python?
Berikan stream=True dengan pustaka openai, atau gunakan client.messages.stream() dengan SDK anthropic. Lihat contoh streaming di atas.
Apakah Claude API mendukung pemanggilan fungsi (penggunaan alat)?
Ya—Claude mendukung penggunaan alat baik di Anthropic SDK asli maupun melalui titik akhir yang kompatibel dengan OpenAI milik APIMaster menggunakan parameter tools standar.
Berapa jendela konteks maksimum untuk Claude di Python?
Claude Sonnet 4.6 dan Opus 4.8 masing-masing mendukung 1M token. Anda dapat memberikan dokumen yang sangat panjang langsung di larik messages.
Daftar di APIMaster.ai untuk mendapatkan akses Claude API melalui titik akhir terpadu, dengan harga langsung dan data verifikasi sidik jari.
Lihat juga: Harga Claude API · Cara Mendapatkan Kunci Claude API