Panduan ini menjelaskan cara bekerja dengan gambar di Claude, termasuk praktik terbaik, contoh kode, dan keterbatasan yang perlu diingat.

Cara menggunakan visi

Gunakan kemampuan visi Claude melalui:
  • claude.ai. Unggah gambar seperti Anda mengunggah file, atau seret dan lepas gambar langsung ke jendela obrolan.
  • Console Workbench. Jika Anda memilih model yang menerima gambar (hanya model Claude 3 dan 4), tombol untuk menambahkan gambar muncul di sudut kanan atas setiap blok pesan Pengguna.
  • Permintaan API. Lihat contoh dalam panduan ini.

Sebelum Anda mengunggah

Dasar dan Batas

Anda dapat menyertakan beberapa gambar dalam satu permintaan (hingga 20 untuk claude.ai dan 100 untuk permintaan API). Claude akan menganalisis semua gambar yang disediakan saat merumuskan responsnya. Ini dapat membantu untuk membandingkan atau membedakan gambar. Jika Anda mengirimkan gambar yang lebih besar dari 8000x8000 px, gambar akan ditolak. Jika Anda mengirimkan lebih dari 20 gambar dalam satu permintaan API, batas ini adalah 2000x2000 px.
Meskipun API mendukung 100 gambar per permintaan, ada batas ukuran permintaan 32MB untuk titik akhir standar.

Evaluasi ukuran gambar

Untuk kinerja optimal, kami merekomendasikan mengubah ukuran gambar sebelum mengunggah jika gambar terlalu besar. Jika tepi panjang gambar Anda lebih dari 1568 piksel, atau gambar Anda lebih dari ~1.600 token, gambar akan terlebih dahulu diskalakan ke bawah, mempertahankan rasio aspek, hingga berada dalam batas ukuran. Jika gambar input Anda terlalu besar dan perlu diubah ukurannya, hal ini akan meningkatkan latensi time-to-first-token, tanpa memberikan Anda kinerja model tambahan. Gambar yang sangat kecil di bawah 200 piksel di tepi mana pun dapat menurunkan kinerja.
Untuk meningkatkan time-to-first-token, kami merekomendasikan mengubah ukuran gambar menjadi tidak lebih dari 1,15 megapiksel (dan dalam 1568 piksel di kedua dimensi).
Berikut adalah tabel ukuran gambar maksimal yang diterima oleh API kami yang tidak akan diubah ukurannya untuk rasio aspek umum. Dengan model Claude Sonnet 3.7, gambar-gambar ini menggunakan sekitar 1.600 token dan sekitar $4,80/1K gambar.
Rasio aspekUkuran gambar
1:11092x1092 px
3:4951x1268 px
2:3896x1344 px
9:16819x1456 px
1:2784x1568 px

Hitung biaya gambar

Setiap gambar yang Anda sertakan dalam permintaan ke Claude dihitung terhadap penggunaan token Anda. Untuk menghitung biaya perkiraan, kalikan jumlah token gambar perkiraan dengan harga per-token model yang Anda gunakan. Jika gambar Anda tidak perlu diubah ukurannya, Anda dapat memperkirakan jumlah token yang digunakan melalui algoritma ini: tokens = (width px * height px)/750 Berikut adalah contoh tokenisasi perkiraan dan biaya untuk ukuran gambar berbeda dalam batasan ukuran API kami berdasarkan harga per-token Claude Sonnet 3.7 sebesar $3 per juta token input:
Ukuran gambarJumlah TokenBiaya / gambarBiaya / 1K gambar
200x200 px(0,04 megapiksel)~54~$0,00016~$0,16
1000x1000 px(1 megapiksel)~1334~$0,004~$4,00
1092x1092 px(1,19 megapiksel)~1590~$0,0048~$4,80

Memastikan kualitas gambar

Saat memberikan gambar ke Claude, pertimbangkan hal berikut untuk hasil terbaik:
  • Format gambar: Gunakan format gambar yang didukung: JPEG, PNG, GIF, atau WebP.
  • Kejelasan gambar: Pastikan gambar jelas dan tidak terlalu buram atau piksel.
  • Teks: Jika gambar berisi teks penting, pastikan teks dapat dibaca dan tidak terlalu kecil. Hindari memotong konteks visual kunci hanya untuk memperbesar teks.

Contoh prompt

Banyak dari teknik prompting yang bekerja dengan baik untuk interaksi berbasis teks dengan Claude juga dapat diterapkan pada prompt berbasis gambar. Contoh-contoh ini mendemonstrasikan struktur prompt praktik terbaik yang melibatkan gambar.
Sama seperti penempatan dokumen-kueri, Claude bekerja paling baik ketika gambar datang sebelum teks. Gambar yang ditempatkan setelah teks atau diinterpolasi dengan teks masih akan berkinerja baik, tetapi jika kasus penggunaan Anda memungkinkan, kami merekomendasikan struktur gambar-kemudian-teks.

Tentang contoh prompt

Contoh-contoh berikut mendemonstrasikan cara menggunakan kemampuan visi Claude menggunakan berbagai bahasa pemrograman dan pendekatan. Anda dapat memberikan gambar ke Claude dengan tiga cara:
  1. Sebagai gambar yang dikodekan base64 dalam blok konten image
  2. Sebagai referensi URL ke gambar yang dihosting online
  3. Menggunakan Files API (unggah sekali, gunakan berkali-kali)
Prompt contoh base64 menggunakan variabel-variabel ini:
    # Untuk gambar berbasis URL, Anda dapat menggunakan URL langsung dalam permintaan JSON Anda
    
    # Untuk gambar yang dikodekan base64, Anda perlu terlebih dahulu mengenkode gambar
    # Contoh cara mengenkode gambar ke base64 di bash:
    BASE64_IMAGE_DATA=$(curl -s "https://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg" | base64)
    
    # Data yang dikodekan sekarang dapat digunakan dalam panggilan API Anda
Di bawah ini adalah contoh cara menyertakan gambar dalam permintaan Messages API menggunakan gambar yang dikodekan base64 dan referensi URL:

Contoh gambar yang dikodekan base64

curl https://api.anthropic.com/v1/messages \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-sonnet-4-5",
    "max_tokens": 1024,
    "messages": [
      {
        "role": "user",
        "content": [
          {
            "type": "image",
            "source": {
              "type": "base64",
              "media_type": "image/jpeg",
              "data": "'"$BASE64_IMAGE_DATA"'"
            }
          },
          {
            "type": "text",
            "text": "Jelaskan gambar ini."
          }
        ]
      }
    ]
  }'

Contoh gambar berbasis URL

curl https://api.anthropic.com/v1/messages \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-sonnet-4-5",
    "max_tokens": 1024,
    "messages": [
      {
        "role": "user",
        "content": [
          {
            "type": "image",
            "source": {
              "type": "url",
              "url": "https://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg"
            }
          },
          {
            "type": "text",
            "text": "Jelaskan gambar ini."
          }
        ]
      }
    ]
  }'

Contoh gambar Files API

Untuk gambar yang akan Anda gunakan berulang kali atau ketika Anda ingin menghindari overhead pengodean, gunakan Files API:
# Pertama, unggah gambar Anda ke Files API
curl -X POST https://api.anthropic.com/v1/files \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "anthropic-beta: files-api-2025-04-14" \
  -F "[email protected]"

# Kemudian gunakan file_id yang dikembalikan dalam pesan Anda
curl https://api.anthropic.com/v1/messages \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "anthropic-beta: files-api-2025-04-14" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-sonnet-4-5",
    "max_tokens": 1024,
    "messages": [
      {
        "role": "user",
        "content": [
          {
            "type": "image",
            "source": {
              "type": "file",
              "file_id": "file_abc123"
            }
          },
          {
            "type": "text",
            "text": "Jelaskan gambar ini."
          }
        ]
      }
    ]
  }'
Lihat contoh Messages API untuk lebih banyak contoh kode dan detail parameter.
Sebaiknya tempatkan gambar lebih awal dalam prompt daripada pertanyaan tentang gambar atau instruksi untuk tugas yang menggunakannya.Minta Claude untuk menjelaskan satu gambar.
PeranKonten
Pengguna[Gambar] Jelaskan gambar ini.
Berikut adalah panggilan API yang sesuai menggunakan model Claude Sonnet 3.7.
Python
message = client.messages.create(
    model="claude-sonnet-4-5",
    max_tokens=1024,
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": image1_media_type,
                        "data": image1_data,
                    },
                },
                {
                    "type": "text",
                    "text": "Jelaskan gambar ini."
                }
            ],
        }
    ],
)
Dalam situasi di mana ada beberapa gambar, perkenalkan setiap gambar dengan Gambar 1: dan Gambar 2: dan seterusnya. Anda tidak perlu baris baru antara gambar atau antara gambar dan prompt.Minta Claude untuk menjelaskan perbedaan antara beberapa gambar.
PeranKonten
PenggunaGambar 1: [Gambar 1] Gambar 2: [Gambar 2] Bagaimana perbedaan gambar-gambar ini?
Berikut adalah panggilan API yang sesuai menggunakan model Claude Sonnet 3.7.
Python
message = client.messages.create(
    model="claude-sonnet-4-5",
    max_tokens=1024,
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "text",
                    "text": "Gambar 1:"
                },
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": image1_media_type,
                        "data": image1_data,
                    },
                },
                {
                    "type": "text",
                    "text": "Gambar 2:"
                },
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": image2_media_type,
                        "data": image2_data,
                    },
                },
                {
                    "type": "text",
                    "text": "Bagaimana perbedaan gambar-gambar ini?"
                }
            ],
        }
    ],
)
Minta Claude untuk menjelaskan perbedaan antara beberapa gambar, sambil memberikannya prompt sistem tentang cara merespons.
Konten
SistemHanya merespons dalam bahasa Spanyol.
PenggunaGambar 1: [Gambar 1] Gambar 2: [Gambar 2] Bagaimana perbedaan gambar-gambar ini?
Berikut adalah panggilan API yang sesuai menggunakan model Claude Sonnet 3.7.
Python
message = client.messages.create(
    model="claude-sonnet-4-5",
    max_tokens=1024,
    system="Hanya merespons dalam bahasa Spanyol.",
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "text",
                    "text": "Gambar 1:"
                },
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": image1_media_type,
                        "data": image1_data,
                    },
                },
                {
                    "type": "text",
                    "text": "Gambar 2:"
                },
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": image2_media_type,
                        "data": image2_data,
                    },
                },
                {
                    "type": "text",
                    "text": "Bagaimana perbedaan gambar-gambar ini?"
                }
            ],
        }
    ],
)
Kemampuan visi Claude bersinar dalam percakapan multimodal yang mencampur gambar dan teks. Anda dapat memiliki pertukaran bolak-balik yang diperpanjang dengan Claude, menambahkan gambar baru atau pertanyaan tindak lanjut kapan saja. Ini memungkinkan alur kerja yang kuat untuk analisis gambar berulang, perbandingan, atau menggabungkan visual dengan pengetahuan lain.Minta Claude untuk membedakan dua gambar, kemudian ajukan pertanyaan tindak lanjut membandingkan gambar pertama dengan dua gambar baru.
PeranKonten
PenggunaGambar 1: [Gambar 1] Gambar 2: [Gambar 2] Bagaimana perbedaan gambar-gambar ini?
Asisten[Respons Claude]
PenggunaGambar 1: [Gambar 3] Gambar 2: [Gambar 4] Apakah gambar-gambar ini mirip dengan dua gambar pertama?
Asisten[Respons Claude]
Saat menggunakan API, cukup masukkan gambar baru ke dalam array Pesan dalam peran user sebagai bagian dari struktur percakapan multiturn standar apa pun.

Keterbatasan

Meskipun kemampuan pemahaman gambar Claude canggih, ada beberapa keterbatasan yang perlu diketahui:
  • Identifikasi orang: Claude tidak dapat digunakan untuk mengidentifikasi (yaitu, menyebutkan nama) orang dalam gambar dan akan menolak untuk melakukannya.
  • Akurasi: Claude mungkin mengalami halusinasi atau membuat kesalahan saat menafsirkan gambar berkualitas rendah, diputar, atau sangat kecil di bawah 200 piksel.
  • Penalaran spasial: Kemampuan penalaran spasial Claude terbatas. Mungkin kesulitan dengan tugas yang memerlukan lokalisasi presisi atau tata letak, seperti membaca wajah jam analog atau menjelaskan posisi pion catur yang tepat.
  • Penghitungan: Claude dapat memberikan perkiraan jumlah objek dalam gambar tetapi mungkin tidak selalu akurat, terutama dengan jumlah besar objek kecil.
  • Gambar yang dihasilkan AI: Claude tidak tahu apakah gambar dihasilkan AI dan mungkin salah jika ditanya. Jangan mengandalkannya untuk mendeteksi gambar palsu atau sintetis.
  • Konten yang tidak pantas: Claude tidak akan memproses gambar yang tidak pantas atau eksplisit yang melanggar Kebijakan Penggunaan yang Dapat Diterima kami.
  • Aplikasi kesehatan: Meskipun Claude dapat menganalisis gambar medis umum, Claude tidak dirancang untuk menafsirkan pemindaian diagnostik kompleks seperti CT atau MRI. Output Claude tidak boleh dianggap sebagai pengganti nasihat medis profesional atau diagnosis.
Selalu tinjau dan verifikasi interpretasi gambar Claude dengan hati-hati, terutama untuk kasus penggunaan berisiko tinggi. Jangan gunakan Claude untuk tugas yang memerlukan presisi sempurna atau analisis gambar sensitif tanpa pengawasan manusia.

FAQ

Claude saat ini mendukung format gambar JPEG, PNG, GIF, dan WebP, khususnya:
  • image/jpeg
  • image/png
  • image/gif
  • image/webp
Ya, Claude sekarang dapat memproses gambar dari URL dengan blok sumber gambar URL kami di API. Cukup gunakan tipe sumber “url” alih-alih “base64” dalam permintaan API Anda. Contoh:
{
  "type": "image",
  "source": {
    "type": "url",
    "url": "https://upload.wikimedia.org/wikipedia/commons/a/a7/Camponotus_flavomarginatus_ant.jpg"
  }
}
Ya, ada batas:
  • API: Maksimal 5MB per gambar
  • claude.ai: Maksimal 10MB per gambar
Gambar yang lebih besar dari batas ini akan ditolak dan mengembalikan kesalahan saat menggunakan API kami.
Batas gambar adalah:
  • Messages API: Hingga 100 gambar per permintaan
  • claude.ai: Hingga 20 gambar per giliran
Permintaan yang melebihi batas ini akan ditolak dan mengembalikan kesalahan.
Tidak, Claude tidak mengurai atau menerima metadata apa pun dari gambar yang diteruskan kepadanya.
Tidak. Unggahan gambar bersifat sementara dan tidak disimpan di luar durasi permintaan API. Gambar yang diunggah secara otomatis dihapus setelah diproses.
Silakan lihat halaman kebijakan privasi kami untuk informasi tentang cara kami menangani gambar yang diunggah dan data lainnya. Kami tidak menggunakan gambar yang diunggah untuk melatih model kami.
Jika interpretasi gambar Claude tampak tidak benar:
  1. Pastikan gambar jelas, berkualitas tinggi, dan berorientasi dengan benar.
  2. Coba teknik prompt engineering untuk meningkatkan hasil.
  3. Jika masalah berlanjut, tandai output di claude.ai (jempol ke atas/bawah) atau hubungi tim dukungan kami.
Umpan balik Anda membantu kami meningkatkan!
Tidak, Claude adalah model pemahaman gambar saja. Claude dapat menafsirkan dan menganalisis gambar, tetapi tidak dapat menghasilkan, menghasilkan, mengedit, memanipulasi, atau membuat gambar.

Selami lebih dalam visi

Siap mulai membangun dengan gambar menggunakan Claude? Berikut adalah beberapa sumber daya yang berguna: Jika Anda memiliki pertanyaan lain, jangan ragu untuk menghubungi tim dukungan kami. Anda juga dapat bergabung dengan komunitas pengembang kami untuk terhubung dengan kreator lain dan mendapatkan bantuan dari para ahli Anthropic.