[アップデート] Amazon Nova Pro モデルがレイテンシー最適化推論をサポートしました
こんにちは!クラウド事業本部コンサルティング部のたかくに(@takakuni_)です。
Amazon Nova Pro がレイテンシー最適化推論をサポートしました。
レイテンシー最適化
レイテンシー最適化推論は、推論サーバーに Trainium 2 の利用やソフトウェアの最適化を行い、従来の推論よりも精度を損なうことなくレイテンシーの低い応答が見込めるオプションです。
re:Invent 2024で登場した機能で現時点でパブリックプレビューの機能になります。
Monday Night Live では、 Anthropic Claude Haiku 3.5 モデルが 60% ほど推論スピードが早くなったと紹介され、話題となりました。
アップデート内容
アップデート前までは Anthropic Claude 3.5 Haiku と Meta Llama 3.1 405B Instruct, Llama 3.1 70B Instruct がサポートされていましたが、新たに Amazon Nova Pro が追加となりました。
最新情報は以下をご覧ください。
なお、 Amazon Nova Pro においては、バージニア北部、オハイオ、オレゴンの 3 リージョンによるクロスリージョン推論でサポートされています。
Latency optimized inference is available for Amazon Nova Pro in the US East (N. Virginia), US East (Ohio), and US West (Oregon) regions via cross-region inference.
料金
料金周りについて触れていきます。Latency Optimized を利用する場合は 25 % ほど上乗せでの利用になります。他のモデルと同様でした。
Amazon Nova models | Price per 1,000 input tokens | Price per 1,000 output tokens |
---|---|---|
Amazon Nova Pro | $0.0008 | $0.0032 |
Amazon Nova Pro (w/ latency optimized inference) | $0.001 | $0.004 |
やってみる
それでは Latency Optimized Inference を利用して、推論にかかった記録を計測してみたいと思います。
import json
import boto3
def extract_answer(response):
"""レスポンスから回答テキストを抽出する"""
try:
return response["output"]["message"]["content"][0]["text"]
except (KeyError, IndexError) as e:
return f"回答の抽出に失敗しました: {str(e)}"
def main():
aws_region = "us-east-1"
model_id = "us.amazon.nova-pro-v1:0"
performance_config_latencies = ['standard', 'optimized']
user_prompt = "日本で一番長い川は何ですか?その理由を教えてください"
num_iterations = 5
bedrock = boto3.client(
'bedrock-runtime',
region_name=aws_region
)
for performance_config_latency in performance_config_latencies:
for i in range(num_iterations):
try:
response = bedrock.converse(
modelId=model_id,
messages=[
{
'role': 'user',
'content': [
{'text': user_prompt}
]
}
],
performanceConfig={
'latency': performance_config_latency
}
)
except Exception as e:
print(f"エラーが発生しました: {str(e)}")
if __name__ == "__main__":
main()
CloudWatch Logs で平均値を測ってみます。まずはスタンダードを検索します。
filter modelId = "us.amazon.nova-pro-v1:0" and performanceConfig.latency = "OPTIMIZED"
| stats avg(output.outputBodyJson.metrics.latencyMs) as AverageLatency
3835.5625 ms でした。
続いて OPTIMIZED
にしてみます。
filter modelId = "us.amazon.nova-pro-v1:0" and performanceConfig.latency = "OPTIMIZED"
| stats avg(output.outputBodyJson.metrics.latencyMs) as AverageLatency
3581.1875 ms でした。私のテスト環境下の場合は約 7 % 弱の速度向上でした。もっと試行回数を増やしたり、異なるユースケースで試すとさらに速度向上が見込めるかもしれません。
まとめ
以上、「Amazon Nova Pro モデルがレイテンシー最適化推論をサポートしました。」でした。
このブログがどなたかの参考になれば幸いです。
クラウド事業本部コンサルティング部のたかくに(@takakuni_)でした!