• Pesan
  • Managed Agents
  • Admin
Search...
⌘K
Langkah pertama
Pengenalan ClaudeMulai cepat
Membangun dengan Claude
Ikhtisar fiturMenggunakan Messages APIAlasan berhenti dan fallbackPenolakan dan fallbackKredit fallback
Kemampuan model
Pemikiran diperpanjangPemikiran adaptifUpayaAnggaran tugas (beta)Mode cepat (pratinjau riset)Output terstrukturSitasiStreaming PesanPemrosesan batchHasil pencarianStreaming penolakanDukungan multibahasaEmbeddings
Alat
IkhtisarCara kerja penggunaan alatTutorial: Membangun agen yang menggunakan alatMendefinisikan alatMenangani panggilan alatPenggunaan alat paralelTool Runner (SDK)Penggunaan alat ketatPenggunaan alat dengan caching promptAlat serverPemecahan masalahAlat pencarian webAlat pengambilan webAlat eksekusi kodeAlat penasihatAlat memoriAlat BashAlat penggunaan komputerAlat editor teks
Infrastruktur alat
Referensi alatMengelola konteks alatKombinasi alatPencarian alatPemanggilan alat terprogramStreaming alat terperinci
Manajemen konteks
Jendela konteksPemadatanPengeditan konteksCaching promptPesan sistem di tengah percakapanMembangun mode orkestrasiDiagnostik cache (beta)Penghitungan token
Bekerja dengan file
Files APIDukungan PDFGambar dan visi
Skills
IkhtisarMulai cepatPraktik terbaikSkills untuk enterpriseSkills di API
MCP
Server MCP jarak jauhKonektor MCP
Claude di platform cloud
Amazon BedrockAmazon Bedrock (lama)Claude Platform di AWSMicrosoft FoundryVertex AI
Log in
Kredit fallback
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Solutions

  • AI agents
  • Code modernization
  • Coding
  • Customer support
  • Education
  • Financial services
  • Government
  • Life sciences

Partners

  • Amazon Bedrock
  • Google Cloud's Vertex AI

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Company

  • Anthropic
  • Careers
  • Economic Futures
  • Research
  • News
  • Responsible Scaling Policy
  • Security and compliance
  • Transparency

Learn

  • Blog
  • Courses
  • Use cases
  • Connectors
  • Customer stories
  • Engineering at Anthropic
  • Events
  • Powered by Claude
  • Service partners
  • Startups program

Help and security

  • Availability
  • Status
  • Support
  • Discord

Terms and policies

  • Privacy policy
  • Responsible disclosure policy
  • Terms of service: Commercial
  • Terms of service: Consumer
  • Usage policy
Pesan/Membangun dengan Claude

Kredit fallback

Hindari membayar biaya cache prompt dua kali ketika Anda mencoba ulang permintaan Claude Fable 5 yang ditolak pada model lain.

Cache prompt bersifat per-model. Ketika Claude Fable 5 menolak sebuah permintaan dan Anda mencoba ulang pada model lain, prefiks percakapan yang sudah di-cache untuk Claude Fable 5 harus ditulis ke dalam cache model baru dari awal, dan penulisan cache lebih mahal daripada pembacaan cache. Kredit fallback menghilangkan biaya tambahan tersebut: penolakan membawa token kredit, Anda menyertakan kembali token tersebut pada percobaan ulang, dan percobaan ulang ditagih seolah-olah percakapan telah berada di model baru sejak awal.

Anda memerlukan halaman ini hanya ketika Anda membangun percobaan ulang sendiri: pada SDK Ruby atau PHP, melalui HTTP mentah, atau dengan logika percobaan ulang kustom. Fallback sisi server dan middleware SDK menerapkan kredit fallback secara otomatis. Jika Anda menggunakan salah satunya, lewati halaman ini.

Penolakan dan fallback membahas cara mendeteksi penolakan dan memilih pendekatan fallback. Caching prompt menjelaskan pembacaan cache dan penulisan cache jika istilah tersebut masih baru bagi Anda.

Alur dasar

  1. 1

    Aktifkan dengan header beta

    Kirim permintaan yang mungkin ditolak dengan header anthropic-beta: fallback-credit-2026-06-01. Header server-side-fallback-2026-06-01 juga memberikan field yang sama.

  2. 2

    Baca dua field dari penolakan

    Pada penolakan, stop_details menyertakan fallback_credit_token, sebuah string opaque yang merepresentasikan kredit, dan fallback_has_prefill_claim, sebuah Boolean yang memberi tahu Anda bentuk body percobaan ulang mana yang harus digunakan. Keduanya bernilai null ketika tidak ada kredit yang tersedia untuk penolakan tersebut.

  3. 3

    Bangun percobaan ulang

    Mulai dari body permintaan yang ditolak. Atur model ke model fallback dan tambahkan token sebagai parameter fallback_credit_token tingkat atas. Pilih bentuk body dari tabel di bawah.

  4. 4

    Kirim percobaan ulang dengan header yang sama

    Kirim percobaan ulang dengan header beta fallback-credit-2026-06-01 yang sama. Percobaan ulang memerlukan header tersebut untuk menukarkan token.

Field fallback_has_prefill_claim memberi tahu Anda apakah percobaan ulang dapat melanjutkan output parsial dari model yang ditolak alih-alih memulai dari awal:

fallback_has_prefill_claimBody percobaan ulang
trueBody permintaan yang ditolak, tanpa perubahan, ditambah satu pesan assistant yang ditambahkan di akhir yang content-nya menyalin content dari respons yang ditolak. Model percobaan ulang melanjutkan respons dari titik di mana model yang ditolak berhenti, dan panggilan alat server yang sudah selesai tidak dieksekusi ulang.
falseBody permintaan yang ditolak, tanpa perubahan.

Contoh

Contoh di bawah ini membuat permintaan yang mungkin ditolak, menukarkan token kredit pada percobaan ulang terhadap Claude Opus 4.8, dan menurunkan tingkatannya melalui tangga penolakan yang dibahas dalam Ketika percobaan ulang ditolak.

client = Anthropic()

request = {
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": "Hello, Claude"}],
}


def send(model, body):
    return client.beta.messages.create(
        model=model, betas=["fallback-credit-2026-06-01"], **body
    )


response = send("claude-fable-5", request)

if (
    response.stop_reason == "refusal"
    and (details := response.stop_details)
    and (token := details.fallback_credit_token)
):
    exact_body = request | {"fallback_credit_token": token}
    # Utamakan bentuk kelanjutan kecuali klaimnya False
    if details.fallback_has_prefill_claim is not False:
        # Gemakan konten penolakan, hapus spasi kosong di akhir dari
        # blok teks terakhir (validator prefill menolaknya; pencocokan sisi server
        # menoleransi editan ini). Permintaan yang memakai alat juga menghilangkan
        # blok tool_use tak berpasangan, lalu hapus lagi spasi kosong setelah penghilangan.
        echoed = [block.model_dump() for block in response.content]
        match echoed:
            case [*_, {"type": "text"} as final_block]:
                final_block["text"] = final_block["text"].rstrip()
        attempt = exact_body | {
            "messages": [
                *request["messages"],
                {"role": "assistant", "content": echoed},
            ]
        }
    else:
        attempt = exact_body

    try:
        response = send("claude-opus-4-8", attempt)
    except BadRequestError as error:
        if "redemption temporarily unavailable" in str(error):
            raise  # Transient: retry with the token within its five-minute window
        try:
            # Kembali ke isi yang tidak diubah, tetap dengan token tersebut
            response = send("claude-opus-4-8", exact_body)
        except BadRequestError as error:
            if "redemption temporarily unavailable" in str(error):
                raise  # Transient: retry with the token within its five-minute window
            # Token itu sendiri ditolak: lepaskan dan coba lagi tanpanya.
            response = send("claude-opus-4-8", request)

print(json.dumps({"stop_reason": response.stop_reason, "model": response.model}))

Di mana ini berfungsi

Kredit fallback tersedia dalam versi beta pada Claude API, Claude Platform di AWS, Amazon Bedrock, Vertex AI, dan Microsoft Foundry. Token kredit yang dikembalikan dalam hasil Message Batches tidak dapat ditukarkan; penukaran hanya berlaku untuk permintaan Messages API langsung.

Model percobaan ulang harus merupakan salah satu target fallback yang diizinkan dari model yang ditolak. Pada saat peluncuran, target yang diizinkan untuk Claude Fable 5 adalah Claude Opus 4.8 (claude-opus-4-8).

Memeriksa bahwa kredit telah diterapkan

Pengembalian dana terlihat dalam usage percobaan ulang: cache_creation_input_tokens lebih rendah, dan cache_read_input_tokens lebih tinggi dengan jumlah yang sama, dibandingkan dengan yang akan dilaporkan oleh permintaan yang sama tanpa token. Pergeseran sebesar nol berarti token dihormati tetapi tidak ada yang perlu dihargai ulang, misalnya karena cache model percobaan ulang sudah hangat.

Ketika percobaan ulang ditolak

Sebagian besar percobaan ulang berhasil ditukarkan pada upaya pertama. Ketika tidak berhasil, API mengembalikan error 400 yang memberi tahu Anda apa yang harus dicoba selanjutnya.

  1. 1

    Kelanjutan ditolak: kirim ulang body tanpa perubahan

    Jika percobaan ulang yang menambahkan pesan assistant ditolak dengan error 400, kirim ulang body permintaan yang ditolak tanpa perubahan, tetap dengan token.

  2. 2

    Token ditolak: hapus token

    Jika body tanpa perubahan juga ditolak dengan error 400 yang pesannya menyebutkan fallback_credit_token, coba ulang tanpa token. Kredit hangus, tetapi percobaan ulang itu sendiri tetap berjalan.

Jika permintaan yang ditolak mengeksekusi alat server, percobaan ulang tanpa token akan menjalankan ulang dan menagih ulang alat-alat tersebut. Dalam kasus tersebut, tampilkan error 400 kepada pemanggil Anda alih-alih melanjutkan ke percobaan ulang tanpa token.

Referensi

Bagian-bagian di bawah ini membahas kasus-kasus khusus dan aturan penukaran lengkap. Sebagian besar integrasi tidak memerlukannya.

Langkah selanjutnya

Penolakan dan fallback

Deteksi penolakan dan pilih antara fallback sisi server, middleware SDK, dan percobaan ulang manual.

Caching prompt

Bagaimana pembacaan cache dan penulisan cache ditagih.

Stop reason dan fallback

Setiap nilai stop_reason dan cara menanganinya.

Middleware SDK

Helper SDK yang menerapkan kredit fallback secara otomatis.

Was this page helpful?

  • Alur dasar
  • Contoh
  • Di mana ini berfungsi
  • Memeriksa bahwa kredit telah diterapkan
  • Ketika percobaan ulang ditolak
  • Referensi
  • Langkah selanjutnya