API Legacy

L’API di Completamenti di Testo è un’API legacy. I modelli e le funzionalità future richiederanno l’uso dell’API Messages, e raccomandiamo di migrare il prima possibile.

Quando crei un Completamento di Testo, puoi impostare "stream": true per trasmettere incrementalmente la risposta utilizzando eventi inviati dal server (SSE). Se stai utilizzando le nostre librerie client, l’analisi di questi eventi sarà gestita automaticamente per te. Tuttavia, se stai costruendo un’integrazione API diretta, dovrai gestire questi eventi da solo.

Esempio

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"}

Eventi

Ogni evento include un tipo di evento denominato e dati JSON associati.

Tipi di eventi: completion, ping, error.

Tipi di eventi di errore

Occasionalmente potremmo inviare errori nel flusso di eventi. Ad esempio, durante periodi di utilizzo elevato, potresti ricevere un overloaded_error, che normalmente corrisponderebbe a un HTTP 529 in un contesto non di streaming:

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

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

Versioni API precedenti

Se stai utilizzando una versione API precedente a 2023-06-01, la forma della risposta sarà diversa. Vedi versioning per i dettagli.