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 penting dari dokumen hukum
  • Bantuan penerjemahan untuk dokumen
  • Mengonversi informasi dokumen ke dalam format terstruktur

Sebelum Anda mulai

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 perhatikan bahwa kedua batas tersebut berlaku untuk seluruh muatan permintaan, termasuk konten lain yang dikirim bersama PDF.

Karena dukungan PDF mengandalkan kemampuan vision Claude, dukungan ini tunduk pada batasan dan pertimbangan yang sama seperti tugas vision 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)
  • Claude Sonnet 3.5 models (claude-3-5-sonnet-20241022, claude-3-5-sonnet-20240620)
  • Claude Haiku 3.5 (claude-3-5-haiku-20241022)

Fungsi ini akan segera didukung di Amazon Bedrock.


Proses PDF dengan Claude

Kirim permintaan PDF pertama Anda

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

  1. Sebagai referensi URL ke PDF yang di-host secara 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": "What are the key findings in this document?"
         }]
     }]
 }'

Opsi 2: Dokumen PDF yang dikodekan Base64

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

# Method 1: Fetch and encode a remote PDF
curl -s "https://assets.anthropic.com/m/1cd9d098ac3e6467/original/Claude-3-Model-Card-October-Addendum.pdf" | base64 | tr -d '\n' > pdf_base64.txt

# Method 2: Encode a local PDF file
# base64 document.pdf | tr -d '\n' > pdf_base64.txt

# Create a JSON request file using the pdf_base64.txt content
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": "What are the key findings in this document?"
        }]
    }]
}' > request.json

# Send the API request using the JSON file
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:

# First, upload your PDF to the 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"

# Then use the returned file_id in your message
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": "What are the key findings in this document?"
      }]
    }]
  }'

Bagaimana dukungan PDF bekerja

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 lebih memahami dokumen.

  • 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:

  • Caching prompt: Untuk meningkatkan kinerja untuk analisis berulang.
  • Pemrosesan batch: Untuk pemrosesan dokumen volume tinggi.
  • Penggunaan alat: Untuk mengekstrak informasi spesifik dari dokumen untuk digunakan sebagai input alat.

Perkirakan biaya Anda

Jumlah token file PDF bergantung 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 mudah dibaca
  • Putar halaman ke orientasi tegak yang benar
  • Gunakan nomor halaman logis (dari penampil PDF) dalam prompt
  • Pisahkan PDF besar menjadi potongan-potongan jika diperlukan
  • Aktifkan caching prompt untuk analisis berulang

Skalakan implementasi Anda

Untuk pemrosesan volume tinggi, pertimbangkan pendekatan ini:

Gunakan caching prompt

Cache PDF untuk meningkatkan kinerja pada kueri berulang:

# Create a JSON request file using the pdf_base64.txt content
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": "Which model has the highest human preference win rates across each use-case?"
        }]
    }]
}' > request.json

# Then make the API call using the JSON file
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:

# Create a JSON request file using the pdf_base64.txt content
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": "Which model has the highest human preference win rates across each use-case?"
                        }
                    ]
                }
              ]
          }
      },
      {
          "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": "Extract 5 key insights from this document."
                        }
                    ]
                }
              ]
          }
      }
  ]
}
' > request.json

# Then make the API call using the JSON file
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