Anda sekarang dapat bertanya kepada Claude tentang teks, gambar, grafik, dan tabel apa pun dalam PDF yang Anda berikan. Beberapa contoh kasus penggunaan:

  • Menganalisis laporan keuangan dan memahami grafik/tabel
  • Mengekstrak informasi kunci dari dokumen hukum
  • Bantuan terjemahan untuk dokumen
  • Mengonversi informasi dokumen ke dalam format terstruktur

Sebelum Anda memulai

Periksa persyaratan PDF

Claude bekerja dengan PDF standar apa pun. Namun, Anda harus memastikan ukuran permintaan Anda memenuhi persyaratan ini saat menggunakan dukungan PDF:

PersyaratanBatas
Ukuran permintaan maksimum32MB
Halaman maksimum per permintaan100
FormatPDF standar (tanpa kata sandi/enkripsi)

Harap dicatat bahwa kedua batas tersebut berlaku untuk seluruh payload permintaan, termasuk konten lain yang dikirim bersama PDF.

Karena dukungan PDF bergantung pada kemampuan visi Claude, ini tunduk pada keterbatasan dan pertimbangan yang sama seperti tugas visi lainnya.

Platform dan model yang didukung

Dukungan PDF saat ini didukung melalui akses API langsung dan Google Vertex AI pada:

  • Claude Opus 4 (claude-opus-4-20250514)
  • Claude Sonnet 4 (claude-sonnet-4-20250514)
  • Claude Sonnet 3.7 (claude-3-7-sonnet-20250219)
  • Model Claude Sonnet 3.5 (claude-3-5-sonnet-20241022, claude-3-5-sonnet-20240620)
  • Claude Haiku 3.5 (claude-3-5-haiku-20241022)

Fungsionalitas ini akan segera didukung di Amazon Bedrock.

Untuk file non-PDF seperti .csv, .xlsx, .docx, .md, atau .txt, lihat Bekerja dengan format file lain.


Proses PDF dengan Claude

Kirim permintaan PDF pertama Anda

Mari mulai dengan contoh sederhana menggunakan Messages API. Anda dapat menyediakan PDF kepada Claude dengan tiga cara:

  1. Sebagai referensi URL ke PDF yang dihosting online
  2. Sebagai PDF yang dikodekan base64 dalam blok konten document
  3. Dengan file_id dari Files API

Opsi 1: Dokumen PDF berbasis URL

Pendekatan paling sederhana adalah mereferensikan PDF langsung dari URL:

 curl https://api.anthropic.com/v1/messages \
   -H "content-type: application/json" \
   -H "x-api-key: $ANTHROPIC_API_KEY" \
   -H "anthropic-version: 2023-06-01" \
   -d '{
     "model": "claude-opus-4-20250514",
     "max_tokens": 1024,
     "messages": [{
         "role": "user",
         "content": [{
             "type": "document",
             "source": {
                 "type": "url",
                 "url": "https://assets.anthropic.com/m/1cd9d098ac3e6467/original/Claude-3-Model-Card-October-Addendum.pdf"
             }
         },
         {
             "type": "text",
             "text": "Apa temuan kunci dalam dokumen ini?"
         }]
     }]
 }'

Opsi 2: Dokumen PDF yang dikodekan Base64

Jika Anda perlu mengirim PDF dari sistem lokal Anda atau ketika URL tidak tersedia:

# Metode 1: Ambil dan kodekan PDF jarak jauh
curl -s "https://assets.anthropic.com/m/1cd9d098ac3e6467/original/Claude-3-Model-Card-October-Addendum.pdf" | base64 | tr -d '\n' > pdf_base64.txt

# Metode 2: Kodekan file PDF lokal
# base64 document.pdf | tr -d '\n' > pdf_base64.txt

# Buat file permintaan JSON menggunakan konten pdf_base64.txt
jq -n --rawfile PDF_BASE64 pdf_base64.txt '{
    "model": "claude-opus-4-20250514",
    "max_tokens": 1024,
    "messages": [{
        "role": "user",
        "content": [{
            "type": "document",
            "source": {
                "type": "base64",
                "media_type": "application/pdf",
                "data": $PDF_BASE64
            }
        },
        {
            "type": "text",
            "text": "Apa temuan kunci dalam dokumen ini?"
        }]
    }]
}' > request.json

# Kirim permintaan API menggunakan file JSON
curl https://api.anthropic.com/v1/messages \
  -H "content-type: application/json" \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -d @request.json

Opsi 3: Files API

Untuk PDF yang akan Anda gunakan berulang kali, atau ketika Anda ingin menghindari overhead pengkodean, gunakan Files API:

# Pertama, unggah PDF 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 "file=@document.pdf"

# Kemudian gunakan file_id yang dikembalikan dalam pesan Anda
curl https://api.anthropic.com/v1/messages \
  -H "content-type: application/json" \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "anthropic-beta: files-api-2025-04-14" \
  -d '{
    "model": "claude-opus-4-20250514", 
    "max_tokens": 1024,
    "messages": [{
      "role": "user",
      "content": [{
        "type": "document",
        "source": {
          "type": "file",
          "file_id": "file_abc123"
        }
      },
      {
        "type": "text",
        "text": "Apa temuan kunci dalam dokumen ini?"
      }]
    }]
  }'

Cara kerja dukungan PDF

Ketika Anda mengirim PDF ke Claude, langkah-langkah berikut terjadi:

1

Sistem mengekstrak konten dokumen.

  • Sistem mengonversi setiap halaman dokumen menjadi gambar.
  • Teks dari setiap halaman diekstrak dan disediakan bersama dengan gambar setiap halaman.
2

Claude menganalisis teks dan gambar untuk memahami dokumen dengan lebih baik.

  • Dokumen disediakan sebagai kombinasi teks dan gambar untuk analisis.
  • Ini memungkinkan pengguna untuk meminta wawasan tentang elemen visual PDF, seperti grafik, diagram, dan konten non-tekstual lainnya.
3

Claude merespons, mereferensikan konten PDF jika relevan.

Claude dapat mereferensikan konten tekstual dan visual saat merespons. Anda dapat lebih meningkatkan kinerja dengan mengintegrasikan dukungan PDF dengan:

  • Prompt caching: Untuk meningkatkan kinerja untuk analisis berulang.
  • Batch processing: Untuk pemrosesan dokumen volume tinggi.
  • Tool use: Untuk mengekstrak informasi spesifik dari dokumen untuk digunakan sebagai input alat.

Perkirakan biaya Anda

Jumlah token file PDF tergantung pada total teks yang diekstrak dari dokumen serta jumlah halaman:

  • Biaya token teks: Setiap halaman biasanya menggunakan 1.500-3.000 token per halaman tergantung pada kepadatan konten. Harga API standar berlaku tanpa biaya PDF tambahan.
  • Biaya token gambar: Karena setiap halaman dikonversi menjadi gambar, perhitungan biaya berbasis gambar yang sama diterapkan.

Anda dapat menggunakan penghitungan token untuk memperkirakan biaya untuk PDF spesifik Anda.


Optimalkan pemrosesan PDF

Tingkatkan kinerja

Ikuti praktik terbaik ini untuk hasil optimal:

  • Tempatkan PDF sebelum teks dalam permintaan Anda
  • Gunakan font standar
  • Pastikan teks jelas dan terbaca
  • Putar halaman ke orientasi tegak yang tepat
  • Gunakan nomor halaman logis (dari penampil PDF) dalam prompt
  • Bagi PDF besar menjadi potongan-potongan saat diperlukan
  • Aktifkan prompt caching untuk analisis berulang

Skalakan implementasi Anda

Untuk pemrosesan volume tinggi, pertimbangkan pendekatan ini:

Gunakan prompt caching

Cache PDF untuk meningkatkan kinerja pada kueri berulang:

# Buat file permintaan JSON menggunakan konten pdf_base64.txt
jq -n --rawfile PDF_BASE64 pdf_base64.txt '{
    "model": "claude-opus-4-20250514",
    "max_tokens": 1024,
    "messages": [{
        "role": "user",
        "content": [{
            "type": "document",
            "source": {
                "type": "base64",
                "media_type": "application/pdf",
                "data": $PDF_BASE64
            },
            "cache_control": {
              "type": "ephemeral"
            }
        },
        {
            "type": "text",
            "text": "Model mana yang memiliki tingkat kemenangan preferensi manusia tertinggi di setiap kasus penggunaan?"
        }]
    }]
}' > request.json

# Kemudian lakukan panggilan API menggunakan file JSON
curl https://api.anthropic.com/v1/messages \
  -H "content-type: application/json" \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -d @request.json

Proses batch dokumen

Gunakan Message Batches API untuk alur kerja volume tinggi:

# Buat file permintaan JSON menggunakan konten pdf_base64.txt
jq -n --rawfile PDF_BASE64 pdf_base64.txt '
{
  "requests": [
      {
          "custom_id": "my-first-request",
          "params": {
              "model": "claude-opus-4-20250514",
              "max_tokens": 1024,
              "messages": [
                {
                    "role": "user",
                    "content": [
                        {
                            "type": "document",
                            "source": {
 "type": "base64",
 "media_type": "application/pdf",
 "data": $PDF_BASE64
                            }
                        },
                        {
                            "type": "text",
                            "text": "Model mana yang memiliki tingkat kemenangan preferensi manusia tertinggi di setiap kasus penggunaan?"
                        }
                    ]
                }
              ]
          }
      },
      {
          "custom_id": "my-second-request",
          "params": {
              "model": "claude-opus-4-20250514",
              "max_tokens": 1024,
              "messages": [
                {
                    "role": "user",
                    "content": [
                        {
                            "type": "document",
                            "source": {
 "type": "base64",
 "media_type": "application/pdf",
 "data": $PDF_BASE64
                            }
                        },
                        {
                            "type": "text",
                            "text": "Ekstrak 5 wawasan kunci dari dokumen ini."
                        }
                    ]
                }
              ]
          }
      }
  ]
}
' > request.json

# Kemudian lakukan panggilan API menggunakan file JSON
curl https://api.anthropic.com/v1/messages/batches \
  -H "content-type: application/json" \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -d @request.json

Langkah selanjutnya