Text CompletionsからMessagesへの移行
role
とcontent
があります。
\n\nHuman:
と\n\nAssistant:
のターンを期待しますが、Messages APIはuser
とassistant
のロールを期待します。「human」または「user」のターンを参照するドキュメントを見ることがあるかもしれません。これらは同じロールを指し、今後は「user」になります。completion
値で返されます:
content
値で、これはコンテンツブロックのリストです:
assistant
ロールを持たせることで同じ結果を得ることができます:
content
は最後の入力メッセージのcontent
から続きます:
\n\nHuman:
ターンの前にテキストを追加することで指定されます:
system
パラメータでシステムプロンプトを指定します:
claude-sonnet-4-20250514
)を指定する必要があります。
以前はメジャーバージョン番号のみ(例:claude-2
)の指定をサポートしており、これによりマイナーバージョンへの自動アップグレードが行われていました。しかし、この統合パターンはもはや推奨されておらず、Messagesではサポートされていません。
stop_reason
を持ちます:
"stop_sequence"
:モデルが自然にターンを終了したか、カスタム停止シーケンスの1つが生成されました。"max_tokens"
:モデルが指定されたmax_tokens
のコンテンツを生成したか、絶対最大値に達しました。stop_reason
を持ちます:
"end_turn"
:会話のターンが自然に終了しました。"stop_sequence"
:指定されたカスタム停止シーケンスの1つが生成されました。"max_tokens"
:(変更なし)max_tokens_to_sample
パラメータ。検証なし、ただしモデルごとに上限値があります。max_tokens
パラメータ。モデルがサポートする値より高い値を渡すと、検証エラーが返されます。"stream": true
を使用する場合、レスポンスにはcompletion
、ping
、error
のサーバー送信イベントのいずれかが含まれます。詳細についてはText Completionsストリーミングを参照してください。
Messagesは様々なタイプの複数のコンテンツブロックを含むことができるため、そのストリーミング形式はやや複雑です。詳細についてはMessagesストリーミングを参照してください。