API Lama

API Text Completions adalah API lama. Model dan fitur mendatang akan memerlukan penggunaan API Messages, dan kami menyarankan untuk bermigrasi sesegera mungkin.

Saat membuat Text Completion, Anda dapat mengatur "stream": true untuk mengalirkan respons secara bertahap menggunakan server-sent events (SSE). Jika Anda menggunakan pustaka klien kami, penguraian event ini akan ditangani secara otomatis untuk Anda. Namun, jika Anda membangun integrasi API langsung, Anda perlu menangani event ini sendiri.

Contoh

Shell
curl https://api.anthropic.com/v1/complete \
     --header "anthropic-version: 2023-06-01" \
     --header "content-type: application/json" \
     --header "x-api-key: $ANTHROPIC_API_KEY" \
     --data '
{
  "model": "claude-2",
  "prompt": "\n\nHuman: Hello, world!\n\nAssistant:",
  "max_tokens_to_sample": 256,
  "stream": true
}
'
Response
event: completion
data: {"type": "completion", "completion": " Hello", "stop_reason": null, "model": "claude-2.0"}

event: completion
data: {"type": "completion", "completion": "!", "stop_reason": null, "model": "claude-2.0"}

event: ping
data: {"type": "ping"}

event: completion
data: {"type": "completion", "completion": " My", "stop_reason": null, "model": "claude-2.0"}

event: completion
data: {"type": "completion", "completion": " name", "stop_reason": null, "model": "claude-2.0"}

event: completion
data: {"type": "completion", "completion": " is", "stop_reason": null, "model": "claude-2.0"}

event: completion
data: {"type": "completion", "completion": " Claude", "stop_reason": null, "model": "claude-2.0"}

event: completion
data: {"type": "completion", "completion": ".", "stop_reason": null, "model": "claude-2.0"}

event: completion
data: {"type": "completion", "completion": "", "stop_reason": "stop_sequence", "model": "claude-2.0"}

Event

Setiap event mencakup jenis event bernama dan data JSON terkait.

Jenis event: completion, ping, error.

Jenis event error

Kami terkadang dapat mengirimkan error dalam aliran event. Misalnya, selama periode penggunaan tinggi, Anda mungkin menerima overloaded_error, yang biasanya sesuai dengan HTTP 529 dalam konteks non-streaming:

Example error
event: completion
data: {"completion": " Hello", "stop_reason": null, "model": "claude-2.0"}

event: error
data: {"error": {"type": "overloaded_error", "message": "Overloaded"}}

Versi API lama

Jika Anda menggunakan versi API sebelum 2023-06-01, bentuk respons akan berbeda. Lihat versioning untuk detailnya.