レイテンシの削減
Claude Haiku 5.5のような高速なモデルを選択し、プロンプトと出力のトークンを削減し、レスポンスをストリーミングすることで、Claudeの応答レイテンシを削減します。
「latency」(レイテンシ)とは、モデルがプロンプトを処理して出力を生成するのにかかる時間を指します。レイテンシは、モデルのサイズ、プロンプトの複雑さ、モデルとインタラクションポイントを支える基盤インフラストラクチャなど、さまざまな要因の影響を受けます。
レイテンシの測定方法
レイテンシについて議論する際、いくつかの用語や指標に出会うことがあります。
- ベースラインレイテンシ: 1秒あたりの入力トークン数や出力トークン数を考慮せずに、モデルがプロンプトを処理してレスポンスを生成するのにかかる時間です。モデルの速度についての大まかな目安となります。
- 「Time to first token」(最初のトークンまでの時間)、すなわちTTFT: この指標は、プロンプトが送信されてからモデルがレスポンスの最初のトークンを生成するまでにかかる時間を測定します。「streaming」(ストリーミング)を使用していて(詳細は後述)、ユーザーに応答性の高い体験を提供したい場合に特に重要です。
これらの用語をより深く理解するには、用語集を参照してください。
レイテンシを削減する方法
1. 適切なモデルを選択する
レイテンシを削減する最も直接的な方法の1つは、ユースケースに適したモデルを選択することです。Anthropicは、さまざまな機能とパフォーマンス特性を持つ幅広いモデルを提供しています。具体的な要件を考慮し、速度と出力品質の観点からニーズに最も適したモデルを選択してください。
速度が重要なアプリケーションでは、Claude Haiku 5.5が高い知能を維持しながら最速の応答時間を提供します。このモデルでは、エフォートが速度とコストを制御するための主要な手段です。エフォートを使用して思考を制御するを参照してください。次の例では、最も安価で最速のレベルであるlowで実行し、思考のためにmax_tokensに余裕を持たせています。
client = anthropic.Anthropic()
# 時間的制約のあるアプリケーションでは、Claude Haiku 5.5 をlowエフォートで使用します
message = client.messages.create(
model="claude-haiku-5-5",
max_tokens=1024,
output_config={"effort": "low"},
messages=[
{
"role": "user",
"content": "Summarize this customer feedback in 2 sentences: [feedback text]",
}
],
)
print(next(block.text for block in message.content if block.type == "text"))モデルの指標の詳細については、モデル概要ページを参照してください。
2. プロンプトと出力の長さを最適化する
高いパフォーマンスを維持しながら、入力プロンプトと期待される出力の両方のトークン数を最小限に抑えます。モデルが処理・生成しなければならないトークンが少ないほど、レスポンスは速くなります。
プロンプトと出力を最適化するためのヒントをいくつか紹介します。
- 明確かつ簡潔に: プロンプトでは意図を明確かつ簡潔に伝えることを目指してください。不要な詳細や冗長な情報は避けつつ、Claudeはユースケースに関するコンテキストを持っていないため、指示が不明確な場合は意図した推論を行わない可能性があることに留意してください。
- 短い応答を求める: Claudeに直接簡潔にするよう求めてください。Claudeが不要に長い出力をしている場合は、冗長さを減らすようClaudeに求めてください。
- 適切な出力制限を設定する:
max_tokensパラメータを使用して、生成されるレスポンスの最大長にハードリミットを設定します。これにより、Claudeが過度に長い出力を生成するのを防ぎます。
プロンプトの明確さ、出力品質、トークン数の間で適切なバランスを見つけるには、ある程度の実験が必要になるかもしれません。
3. レスポンスをストリーミングする
ストリーミングは、出力全体が完成する前にモデルがレスポンスの送信を開始できる機能です。ユーザーがモデルの出力をリアルタイムで確認できるため、アプリケーションの体感的な応答性を大幅に向上させることができます。
ストリーミングを有効にすると、モデルの出力が到着するたびに処理し、ユーザーインターフェースを更新したり、他のタスクを並行して実行したりできます。
ユースケースに合わせてストリーミングを実装する方法については、メッセージのストリーミングをご覧ください。
次のステップ
不確実性を許容し、レスポンスを直接引用に基づかせ、引用によって主張を検証することで、Claudeの出力におけるハルシネーションを最小限に抑えます。
テキスト、ツール使用、拡張思考のデルタを含むMessages APIのレスポンスを、サーバー送信イベントで段階的にストリーミングします。
このページは役に立ちましたか?