Kompatibilitas OpenAI SDK (beta)
Dengan beberapa perubahan kode, Anda dapat menggunakan OpenAI SDK untuk menguji API Anthropic. Anthropic menyediakan lapisan kompatibilitas yang memungkinkan Anda mengevaluasi kemampuan model Anthropic dengan usaha minimal.
Sebelum Anda memulai
Lapisan kompatibilitas ini ditujukan untuk menguji dan membandingkan kemampuan model dengan usaha pengembangan minimal dan tidak dianggap sebagai solusi jangka panjang atau siap produksi untuk kebanyakan kasus penggunaan. Untuk pengalaman terbaik dan akses ke rangkaian fitur lengkap API Anthropic (dukungan PDF, kutipan, pemikiran diperpanjang, dan caching prompt), kami merekomendasikan menggunakan API Anthropic asli.
Memulai dengan OpenAI SDK
Untuk menggunakan fitur kompatibilitas OpenAI SDK, Anda perlu:
- Menggunakan OpenAI SDK resmi
- Mengubah hal-hal berikut
- Perbarui URL dasar Anda untuk mengarah ke API Anthropic
- Ganti kunci API Anda dengan kunci API Anthropic
- Perbarui nama model Anda untuk menggunakan model Claude
- Tinjau dokumentasi di bawah untuk fitur-fitur yang didukung
Contoh mulai cepat
Batasan penting kompatibilitas OpenAI
Perilaku API
Berikut adalah perbedaan paling substansial dari penggunaan OpenAI:
- Parameter
strict
untuk pemanggilan fungsi diabaikan, yang berarti JSON penggunaan alat tidak dijamin mengikuti skema yang disediakan - Input audio tidak didukung; ini akan diabaikan dan dihapus dari input
- Caching prompt tidak didukung, tetapi didukung di SDK Anthropic
- Pesan sistem/pengembang diangkat dan digabungkan ke awal percakapan, karena Anthropic hanya mendukung satu pesan sistem awal.
Sebagian besar bidang yang tidak didukung diabaikan secara diam-diam daripada menghasilkan kesalahan. Semua ini didokumentasikan di bawah.
Pertimbangan kualitas output
Jika Anda telah melakukan banyak penyesuaian pada prompt Anda, kemungkinan akan disetel dengan baik khusus untuk OpenAI. Pertimbangkan untuk menggunakan penyempurna prompt di Anthropic Console sebagai titik awal yang baik.
Pengangkatan pesan sistem / pengembang
Sebagian besar input ke SDK OpenAI dengan jelas dipetakan langsung ke parameter API Anthropic, tetapi satu perbedaan yang berbeda adalah penanganan prompt sistem / pengembang. Kedua prompt ini dapat diletakkan di seluruh percakapan chat melalui OpenAI. Karena Anthropic hanya mendukung pesan sistem awal, kami mengambil semua pesan sistem/pengembang dan menggabungkannya bersama dengan satu baris baru (\n
) di antara mereka. String lengkap ini kemudian disediakan sebagai satu pesan sistem di awal pesan.
Dukungan pemikiran diperpanjang
Anda dapat mengaktifkan kemampuan pemikiran diperpanjang dengan menambahkan parameter thinking
. Meskipun ini akan meningkatkan penalaran Claude untuk tugas-tugas kompleks, SDK OpenAI tidak akan mengembalikan proses pemikiran terperinci Claude. Untuk fitur pemikiran diperpanjang lengkap, termasuk akses ke output penalaran langkah demi langkah Claude, gunakan API Anthropic asli.
Batas rate
Batas rate mengikuti batas standar Anthropic untuk endpoint /v1/messages
.
Dukungan API Kompatibel OpenAI Terperinci
Bidang permintaan
Bidang sederhana
Bidang | Status dukungan |
---|---|
model | Gunakan nama model Claude |
max_tokens | Didukung sepenuhnya |
max_completion_tokens | Didukung sepenuhnya |
stream | Didukung sepenuhnya |
stream_options | Didukung sepenuhnya |
top_p | Didukung sepenuhnya |
parallel_tool_calls | Didukung sepenuhnya |
stop | Semua urutan stop non-whitespace berfungsi |
temperature | Antara 0 dan 1 (inklusif). Nilai lebih besar dari 1 dibatasi pada 1. |
n | Harus tepat 1 |
logprobs | Diabaikan |
metadata | Diabaikan |
response_format | Diabaikan |
prediction | Diabaikan |
presence_penalty | Diabaikan |
frequency_penalty | Diabaikan |
seed | Diabaikan |
service_tier | Diabaikan |
audio | Diabaikan |
logit_bias | Diabaikan |
store | Diabaikan |
user | Diabaikan |
modalities | Diabaikan |
top_logprobs | Diabaikan |
Reasoning_effort | Diabaikan |
Bidang tools
/ functions
Bidang array messages
Bidang respons
Bidang | Status dukungan |
---|---|
id | Didukung sepenuhnya |
choices[] | Akan selalu memiliki panjang 1 |
choices[].finish_reason | Didukung sepenuhnya |
choices[].index | Didukung sepenuhnya |
choices[].message.role | Didukung sepenuhnya |
choices[].message.content | Didukung sepenuhnya |
choices[].message.tool_calls | Didukung sepenuhnya |
object | Didukung sepenuhnya |
created | Didukung sepenuhnya |
model | Didukung sepenuhnya |
finish_reason | Didukung sepenuhnya |
content | Didukung sepenuhnya |
usage.completion_tokens | Didukung sepenuhnya |
usage.prompt_tokens | Didukung sepenuhnya |
usage.total_tokens | Didukung sepenuhnya |
usage.completion_tokens_details | Selalu kosong |
usage.prompt_tokens_details | Selalu kosong |
choices[].message.refusal | Selalu kosong |
choices[].message.audio | Selalu kosong |
logprobs | Selalu kosong |
service_tier | Selalu kosong |
system_fingerprint | Selalu kosong |
Kompatibilitas pesan kesalahan
Lapisan kompatibilitas mempertahankan format kesalahan yang konsisten dengan API OpenAI. Namun, pesan kesalahan terperinci tidak akan setara. Kami merekomendasikan hanya menggunakan pesan kesalahan untuk pencatatan dan debugging.
Kompatibilitas header
Meskipun SDK OpenAI secara otomatis mengelola header, berikut adalah daftar lengkap header yang didukung oleh API Anthropic untuk pengembang yang perlu bekerja dengan mereka secara langsung.
Header | Status Dukungan |
---|---|
x-ratelimit-limit-requests | Didukung sepenuhnya |
x-ratelimit-limit-tokens | Didukung sepenuhnya |
x-ratelimit-remaining-requests | Didukung sepenuhnya |
x-ratelimit-remaining-tokens | Didukung sepenuhnya |
x-ratelimit-reset-requests | Didukung sepenuhnya |
x-ratelimit-reset-tokens | Didukung sepenuhnya |
retry-after | Didukung sepenuhnya |
x-request-id | Didukung sepenuhnya |
openai-version | Selalu 2020-10-01 |
authorization | Didukung sepenuhnya |
openai-processing-ms | Selalu kosong |
Was this page helpful?