APIMaster.ai

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